# 协作方式与运行模式 Reasonix 桌面端输入框左下角的菜单包含两条互相独立的轴: - **计划模式**:先只读分析并产出计划,确认后再执行。 - **目标模式**:给 Reasonix 一个目标,让它持续推进直到完成、阻塞或停止。 - **运行模式**:在“轻量”“均衡”“交付优先”三档之间选择成本与交付质量倾向。 计划模式和目标模式属于“协作方式”轴,通常二选一;运行模式是独立轴,可以和普通聊天、计划模式、目标模式任意组合。 ## 计划模式 计划模式适合在动手前先确认方案。开启后,Reasonix 会先读取必要上下文、分析问题并给出计划;在你确认前,不会执行写文件、改代码、提交、删除、发布等有副作用的操作。 ### 怎么开启 - 点击输入框左下角的“协作方式”按钮,选择“计划”。 - 也可以使用 `Shift+Tab` 切换计划模式。 - 开启后输入框下方会显示“计划”标签;点击该标签或再次使用 `Shift+Tab` 可退出。 ### 建议使用场景 - 你还不确定实现方案,希望先看 Reasonix 的拆解。 - 改动范围可能跨多个文件、模块或配置。 - 需要先评估风险、测试面、兼容性或发布影响。 - 你希望先让 Reasonix 只读代码和文档,再决定是否继续实施。 ### 注意事项 - 计划模式不是“自动完成任务”。它会先暂停在计划阶段,等待你确认。 - 计划模式会减少误改风险,但会多一次确认步骤。 - 如果你已经明确要直接改一个小问题,普通模式通常更快。 - 计划模式只控制“先规划再执行”的流程,不决定成本或交付倾向;可按任务选择任一运行模式。 ## 目标模式 目标模式适合给 Reasonix 一个更长线的目标,让它持续推进。目标启动后,Reasonix 会围绕该目标工作,直到任务完成、遇到阻塞、被你停止,或需要你确认关键决策。 ### 怎么开启 - 点击“协作方式”按钮,选择“目标”。 - 如果输入框里已有文字,选择“目标”会把当前文字作为目标启动。 - 如果输入框为空,选择“目标”后会进入目标输入状态,输入目标并发送即可启动。 - 开启后输入框下方会显示“目标”标签;点击该标签可退出目标模式。 ### 建议使用场景 - 你希望 Reasonix 连续完成一组相关步骤,例如“修复这个问题并补测试”。 - 任务需要探索、实现、验证多个阶段。 - 你希望减少中途反复下指令,让 Reasonix 在目标范围内持续推进。 - 目标明显是长周期研究、排障或优化,例如“持续排查直到根因明确”“彻底实现并验证” “不要原地打转”。这类目标会自动进入 AutoResearch 策略,把状态写到 `.reasonix/autoresearch//`。 ### 推荐目标写法 复杂目标可以写成一份任务合约:Context、Request、Output format、Constraints、Pause policy。 Goal 模式会把这些部分当作任务边界;除非下一步涉及不可逆或对外可见操作、任务范围变化, 或需要你提供信息,否则会继续完成任务后再汇报。完整模板见 [`TASK_CONTRACT.zh-CN.md`](./TASK_CONTRACT.zh-CN.md)。 ### 注意事项 - 目标要写得具体。推荐包含范围、成功标准和限制,例如“只改桌面端输入栏,补前端测试,不改后端协议”。 - 目标模式不是跳过审批。遇到高风险操作、权限限制、阻塞或需要产品判断时,仍可能停下来询问。 - 如果目标过大或边界不清,Reasonix 可能需要更多探索轮次,也会消耗更多 token。 - AutoResearch 是 Goal 的自动持久化策略,不是独立的后台 daemon,也不是 Settings 里的全局 skill。 可以用 `/goal --research <目标>` 强制启用,或用 `/goal --simple <目标>` 强制保持轻量 Goal。 - 普通聊天里命中非常强的长周期信号时,Reasonix 会自动升级为 Goal + AutoResearch;弱表达 如“长期来看”“优化一下”“研究一下”不会触发。 - 目标模式和计划模式是同一协作轴。切到计划模式时,会退出目标草稿/目标显示状态;运行模式不会因此改变。 ## 运行模式 运行模式决定会话启动时的工具面和执行合约。每个标签页独立保存选择;切换模式会重建当前会话运行时,但保留会话历史。 ### 轻量 · 节省 Token(Economy) Economy 对应原来的“省 token”模式。它精简初始技能索引和工具 schema,将 Skills、MCP、CodeGraph/LSP、`web_fetch`、安装来源和 subagent 等可选能力放到 `connect_tool_source` 后按需启用。 - 适合日常问答、代码解释、小范围阅读和成本敏感任务。 - 主要降低每轮固定携带的提示词与工具 schema token,不会降低模型本身的推理能力。 - 首次使用某类可选工具时可能多一个按需启用步骤。 ### 均衡 · 默认(Balanced) Balanced 是默认档,对应旧版本持久化值 `full`。它一次性提供完整工具面,不增加额外执行合约,由模型根据任务自主决定探索、实现与验证深度。 - 适合大多数普通开发与聊天任务。 - `--profile balanced` 和不传 `--profile` 保持旧默认 provider 请求字节不变。 - 旧 session/tab 中空值或 `full` 都会继续解释为 Balanced。 ### 交付优先 · 完整验证(Delivery) Delivery 使用与 Balanced 相同的完整工具面,额外增加稳定的能力代理工具 `use_capability`(inspect/call/decline,用于按需调用含 `auto_start=false` 的 MCP,且不把动态工具写入主 Registry),并增加稳定的交付合约:明确验收标准;条件允许时先复现;检查项目规则和相关代码;修复根因;运行聚焦验证;复审 diff 与相邻行为;没有证据时不宣称成功,并明确标注未验证项或假设。 - 适合编码、修 bug、跨文件实现和需要可靠交付证据的任务。 - 通常会使用更多模型调用和 token,耗时也可能更长。 - 宿主会在变更或验证命令前检查是否已有具体的 `todo_write` 验收清单;缺失时直接阻止执行并要求补齐。 - 发生变更后,宿主会要求在最后一次变更之后复查结果、运行成功的验证命令,并用引用该命令的 `complete_step` 正式签收;不满足时拦截最终回答并自动要求继续。 - 对明确要求实现、修复或修改的任务,如果没有观察到真实变更,宿主会拒绝“已经完成”的纯文本声明;只读分析仍可凭读取/检查证据正常结束。 - Skill/MCP 的 `require`/`prefer` 路由由宿主门禁强制:`require` 必须成功调用(宿主确认不可用时可带真实 blocker 结束),`prefer` 缺失会提醒一次,之后必须调用或 `use_capability(action="decline")` 提交非空理由。 - 中/高风险改动会强制运行结构化 `review` / `security_review`(通过审查子 Agent 的 `review_report`);`task`/`run_skill` 等元工具本身不算 mutation,子 Agent 的真实写入会回传父级证据账本。 - Delivery 的 system contract 与 `use_capability` Schema 是每个该 Profile 会话固定的 provider 前缀;按需连接 MCP 不会改变主 Registry Schema。Balanced 的提示词和工具 Schema 仍保持字节兼容。从其他 Profile 切换过来会产生一次新的缓存前缀。 ### 怎么选择 - 桌面端点击输入框左下角菜单,在“运行模式”下选择“轻量 · 节省 Token”“均衡 · 默认”或“交付优先 · 完整验证”。 - 轻量和交付优先模式会在输入框下方显示“轻量”或“交付优先”标签;点击标签可回到均衡模式。 - CLI 启动时使用 `reasonix --profile economy|balanced|delivery`,非交互运行使用 `reasonix run --profile ...`。 - TUI 会话内使用 `/work-mode economy|balanced|delivery` 热切换;不带参数的 `/work-mode` 会列出三档并标记当前项。`/profile` 保留为技术兼容别名,但帮助和补全以 `/work-mode` 为主。 - 会话内切换会在保留 history、session 路径、审批/Yolo 状态的前提下原子重建 Controller。当前 turn、审批/询问或后台任务仍在运行时不能切换;构建失败时旧运行时继续可用。 - `/work-mode` 只修改当前会话,不写入全局默认值。跨 Profile 切换会形成一次新的 provider 缓存前缀;同一 Profile 内的 system contract 与工具 Schema 保持稳定。 ## 协作方式与 Profile 如何组合 | 组合 | 是否支持 | 说明 | | --- | --- | --- | | 普通 + 轻量 | 支持 | 日常聊天的低开销选择。 | | 计划 + 均衡 | 支持 | 先用完整工具面研究并确认方案,再执行。 | | 目标 + 交付优先 | 支持 | 持续推进明确目标,并强调实现与验证闭环。 | | 计划 + 目标 | 不建议同时使用 | 两者都是协作方式轴,切换计划会退出目标草稿/目标显示状态。 | | 工具权限(询问/自动/Yolo)+ 任一组合 | 支持 | 工具权限只控制是否自动批准工具调用。 | 工具权限的详细区别和使用场景,见 [`TOOL_APPROVAL_MODES.zh-CN.md`](./TOOL_APPROVAL_MODES.zh-CN.md)。 ## 推荐选择 - **不确定怎么选**:保持均衡和普通模式。 - **成本敏感或简单问答**:选择轻量。 - **担心 Reasonix 改错**:开启计划模式,先确认方案。 - **想让 Reasonix 持续推进一个明确目标**:开启目标模式,目标写清楚成功标准。 - **编码、修 bug 或复杂实现更看重最终质量**:选择交付优先,可再搭配目标模式。