交互¶
minacode 以终端对话的形式运行。你输入任务,agent 使用工具完成工作;整个过程中你都可以继续引导、回答问题并审查修改。
追加指令¶
minacode 工作时仍可继续输入。如果又开始了一个模型 step,提交的追加指令会加入当前任务;否则会成为下一个任务。中断不会提交编辑器中尚未发送的草稿——第一次 Ctrl-C 会先丢弃它。
分隔线以下的内容都在等待。Agent 会在下一个 step 取走这些消息;消息进入请求后,会移到分隔线上方的日志中。
按键 |
使用时机 |
作用 |
|---|---|---|
|
Agent 工作时 |
将追加指令排入下一个模型 step |
|
Agent 工作时 |
丢弃编辑器中的草稿;编辑器为空时中断任务——若 agent 尚未回答则撤回该消息,若已回答则记录这次中断 |
|
空闲 prompt |
清空输入行 |
|
任意提示符 |
清空整行输入,当前 turn 继续运行 |
|
Agent 工作且编辑器为空时 |
取回最新的排队消息 |
中断分两种情况。如果 agent 尚未回答,Ctrl-C 会撤回该消息:它被丢弃,不会进入对话记录或保存的 session,就像从未发送过一样(输入历史仍可用 Ctrl-P 召回)。一旦 agent 已经开口或运行过工具,Ctrl-C 会中断:已经展示的内容保留,该轮被标记为已中断,让 minacode 知道它提前结束了。
Bash 输出¶
Bash 运行时,实时输出会留在 working 分隔线上方,并以一个空行将最后一行实时输出与分隔线隔开。命令结束后,minacode 会将预览折叠为灰色的 output · Ctrl-O to expand 行,让 transcript 保持简洁。按 Ctrl-O 浏览最近十次已完成的 Bash 预览,并按从新到旧排列。使用 j/k 或方向键选择,按 Enter 打开;按 Esc 返回列表,按 Ctrl-O 或 q 关闭 viewer。即使预览已折叠,完整结果仍保存在对应的 tr.N key 下。每个 viewer 界面都会在低调的带标签分隔线上方留出一个空行,使其与终端回滚内容分开。
命令¶
在 prompt 中输入 / 命令,可以查看状态、切换模型、管理 session 或即时修改 runtime 行为。运行 /help 查看内置参考。
查看状态¶
/status — 一览 runtime 全貌:工作目录、session id、当前 provider 和模型、计算出的 compaction 预算占用百分比、对话历史、prompt-cache 命中率、代码索引状态、后台任务以及是否有可用更新。
/status 输出概览。¶
/diff — 审查最近一轮或整个 session 的修改。见下方审查修改。
两个 tab 用于选择范围;每行代表一个已修改文件,并显示新增和删除行数。按 Enter 打开所选文件的 diff。
/ps — 列出活动的后台任务(见工具)。每行显示任务 id、状态、命令和运行时间。
/skills — 按名称、来源和描述列出所有已安装 skill。
/config — 显示当前配置:provider block、runtime 设置及其解析后的值。
代码索引¶
/index [force] — 构建或重建 InspectCode 使用的代码符号索引。首次构建扫描所有源文件,后续同步很快。加上 force 可从头重建。详见代码符号索引。
切换模型¶
/provider [NAME] — 显示或切换当前 provider。不带参数时列出配置中的全部 provider,并打开交互式选择器;提供名称时立即切换。
/model [MODEL] — 显示或切换当前 provider 的模型。不带参数时打开选择器,显示已配置和发现的模型。切换模型时还会要求选择 reasoning effort。
/reason [EFFORT] — 显示或设置 reasoning effort(OpenAI o-series 与 DeepSeek R1)。可选值:off、minimal、low、medium、high、xhigh。不带参数时打开选择器。
在 session 中切换 provider 和模型。¶
管理 session¶
/compact — 立即总结并缩短对话。minacode 会自动控制长 session 的预算;/compact 用于按需压缩。
/yolo — 切换操作确认。永久关闭前请阅读安全。
/strict — 切换严格 tool-call schema(OpenAI / DeepSeek)。
/set KEY VALUE — 为当前 session 设置 provider.* 或 runtime.*。例如:/set provider.model deepseek-v4-flash。
/resend — 取消并重新发送正在进行的模型请求,而不重新开始当前轮次。仅在模型请求等待响应时输入;agent 正在运行工具或处于两次模型调用之间时,该命令不会生效。分隔线会短暂显示重试状态,同时保留已用时间和等待脉冲,随后在替代请求继续期间恢复为 working:
MCP¶
/mcp — 管理 MCP server 连接。子命令如下:
用法 |
作用 |
|---|---|
|
列出 server 及连接状态 |
|
立即连接 server |
|
断开一个 server |
|
列出已连接 server 的工具 |
帮助与退出¶
/help — 显示内置命令和工具参考。
/exit, /quit — 退出 minacode。Session 会自动保存,可使用 -c 或 --resume 恢复。
引用¶
支持两种行内引用,输入时均可按 Tab 补全:
按键与输入编辑¶
交互式选择器(模型选择器、MCP 管理器、diff viewer)支持:
使用
j/k或方向键移动使用
g/G跳到顶部或底部使用
/搜索,Enter确认,Esc取消
输入行支持:
历史记录与补全
Ctrl-C— 清空当前输入;运行时若输入为空则中断当前轮(若 agent 尚未回答则撤回它)Ctrl-U— 清空整行输入,空闲提示符和后续消息编辑器中行为一致Ctrl-D— 在空 prompt 中退出Ctrl-R— 反向搜索历史记录Ctrl-O— 浏览最近十次已完成的 Bash 输出预览;再次按下即可关闭Ctrl-X Ctrl-E或Ctrl-G— 在$VISUAL/$EDITOR中编辑当前输入(找不到时使用 vim)
在外部编辑器中输入追加指令。¶
当你在回复 agent 时打开编辑器,它最近一次的回复会被追加到一条 git 风格剪刀线下方,方便你在撰写时阅读所要回答的内容(全屏编辑器会遮住那部分滚动历史):
剪刀线及其下方的所有内容都会在消息发送前被剥离;你自己输入的剪刀线则原样保留。过长的回复只保留最近的若干行。
Session¶
工作会自动保存:对话、编辑和 diff 都与启动时所在的项目目录关联,因此中断后可以从原处继续。默认会在启动时删除超过七天未使用的 session;设置 runtime.session_retention_days = 0 可永久保留。
从命令行恢复:
minacode -c # resume the latest session in this project
minacode --resume # same, explicit
minacode --resume UID # resume a specific session by id, from any directory
Session 按项目分开存储,因此 -c 和不带参数的 --resume 不会读取其他项目的历史,即使你最近一次 session 发生在别处也是如此。而 UID 会在所有项目中查找,所以你可以在任意目录下按 id 恢复某个 session。
恢复 session 时会把对话重新输出到终端回滚缓冲区,其中也包含每次编辑产生的 diff。这里的长 diff 会被截断;/diff 中始终保留完整内容。
审查修改¶
/diff 会打开带 tab 的交互式 viewer,包含两个视图:
Latest — 最近一轮请求产生的修改
Session — 从 session 开始至今的净 diff
使用 j/k、g/G 和 / 搜索进行导航;按 Esc 关闭。
选择要查看 diff 的文件。¶
文件 diff 的并排详情视图。¶
长 session¶
minacode 会按需总结较早的 context,自动将长对话控制在可工作预算内,因此 session 可以持续运行。使用 /compact 立即压缩,或使用 /status 查看当前 context 和 token 使用情况。