Skip to content

终端 TUI 模式

偏好命令行交互?终端 TUI 模式(v0.9.8 起)可以把一个任务分栏从图形对话切换成 CLI 原生的终端交互界面(TUI,即 Claude Code / Codex / OpenCode / Qoder / Kimi 自己的命令行对话界面),并续接同一个会话——终端里能看到并继续 GUI 中的对话,切回对话视图后终端里新聊的内容也会回读进对话记录(按 CLI 支持程度,见下表)。

相关基础:多任务分屏集成终端

截图:分栏处于终端模式,嵌入的终端里运行着 Claude Code 交互界面并显示此前的对话,分栏标题栏的切换按钮变为对话图标

与「集成终端」的区别

集成终端是工作区的 Shell 终端(跑构建、装依赖);终端 TUI 模式则是把AI 对话本身换到 CLI 原生界面里继续,两者互不影响。


进入终端模式

点击分栏标题栏右侧的切换到终端模式按钮(终端图标,在切分 / 关闭按钮旁)。分栏主区随即嵌入一个终端,按任务当前配置拉起对应 CLI 的交互界面并恢复当前会话;终端模式下同一按钮变为切换到对话模式(对话气泡图标)。

进入的前提是任务空闲——正在运行时按钮禁用并提示「任务正在运行,结束后可进入终端」。

对于 Codex / OpenCode / Kimi 任务,还要求任务已有会话(至少成功发过一条消息),否则提示「先在对话里发送一条消息,才能进入终端」;Claude 与 Qoder 任务自 v0.10.1 起不再有这条限制(见下文从草稿直接进入终端)。Kimi 任务额外要求 Kimi Code 已登录(设置 → 模型供应商 → Kimi OAuth),未登录时进入终端会直接提示去登录。

配置随任务注入

进入终端时,任务当前的模型、思考深度、执行授权、模型供应商(接口地址 / 密钥)、网络代理与自定义环境变量会等价注入 CLI,终端行为与图形界面保持一致。配置在进入时刻冻结——想换模型或权限档,先结束终端会话、改完再进。

Qoder 任务例外:进入终端时只带入会话与自定义环境变量,模型 / 思考深度 / 执行授权不随任务注入,终端里沿用 qodercli 自身的配置;需要调整时请在 Qoder 的交互界面内切换。

Kimi 任务例外:模型 / 供应商 / 网络代理经环境变量注入(与图形界面同源),但执行授权不传 flag,终端里跟随会话保存的权限 / Plan 状态;需要调整权限时请在 Kimi 交互界面内切换。


各 CLI 的支持程度

能力Claude CodeQoderCodexOpenCodeKimi
按任务配置注入(模型 / 权限 / 供应商 / 代理)✅ 完整⚠️ 仅会话与环境变量(模型 / 思考深度 / 权限沿用 qodercli 自身设置)✅ 完整(启动时固定)✅ 配置共享⚠️ 模型 / 供应商 / 代理经环境变量注入(外部供应商模型用 KIMI_MODEL_* 覆盖);权限不传 flag,跟随会话保存态
续接同一会话✅ 直接恢复✅ 直接恢复✅ 恢复同一线程尽力而为(共享会话库)--session 续接
终端轮次回读进对话记录✅ 支持✅ 支持❌ 不回放(模型上下文仍连续)尽力而为✅ 支持
从草稿 / 无会话任务直接进入✅ 支持(v0.10.1 起)✅ 支持(v0.10.1 起)❌ 需先发一条消息❌ 需先发一条消息❌ 需先发一条消息

Kimi 任务自 v0.10.5 起支持终端 TUI 模式:以 --session 续接当前 ACP 会话,TUI 里新增的轮次会随会话文件回读进对话记录;进入要求任务已有会话且 Kimi 已登录。

TIP

Codex / OpenCode 任务在终端里进行的轮次即使不出现在对话记录里,模型的上下文也是连续的——回到对话视图接着聊,AI 记得终端里发生过什么。


从草稿直接进入终端

v0.10.1 起,新建的草稿分栏(还没发过任何消息、尚未落盘的任务)也能直接切进终端模式——想用命令行开工时不必先在图形界面发一条消息「凑」出会话。

草稿分栏的标题栏与普通任务一样显示切换按钮,有三种状态:

状态表现
未选择工作区(或所选工作区已被删除)按钮禁用,提示「先选择工作区」
草稿的 CLI 不是 Claude 或 Qoder按钮禁用,提示该 CLI 暂不支持从新任务直接进入终端,请先发送一条消息
Claude / Qoder + 已选工作区可用;不要求输入框里已经写了内容

点击后依次发生:任务立即落盘(以默认名「新建任务」出现在侧栏)→ 分栏翻成任务分栏 → 进入终端,并为其预先绑定一个新会话,终端里聊的内容退出后可在对话视图中看到、也能继续用 GUI 续聊。

几个配套行为:

  • 输入框里未发送的内容不会丢:切进终端时会原样迁移到新任务的输入框草稿,切回对话视图后仍在(含 @ 文件与 / 命令片段)。
  • 自动命名:终端里发出第一条消息后,回读历史时若任务仍是默认名,会自动用首条消息生成任务标题,与在图形界面发消息的行为一致。
  • 没发消息就退出:任务会回到「无会话」初始态,不会留下一个指向空会话的空壳,之后在对话里发第一条消息将正常开启新会话。
  • 已存在的无会话任务同样放开:建好但一直没发过消息的 Claude / Qoder 任务,现在也能直接进终端(Codex / OpenCode / Kimi 维持原限制)。

终端模式期间的对话视图

会话被终端模式持有期间(包括切走后的等待期),该任务的对话视图变为只读:

  • 顶部显示横幅「会话由终端模式持有」,切走等待自动结束时追加「(终端空闲后将自动结束)」;
  • 横幅提供两个按钮:进入终端(跳回终端视图)与立即结束(强制结束终端里的 CLI 进程,需二次确认,正在输出的内容会被中断);
  • 输入框与选择器条禁用,发消息、分叉、编辑重跑、回滚、定时执行等入口一并互斥,避免两种形态同时驱动一个会话。

切走不强杀:空闲后自动收尾

从终端切回对话、或把分栏换绑到其他任务时,终端进程不会被立刻杀掉

  1. 若终端还在输出(AI 正在回复),进程保活继续跑;
  2. 终端输出持续安静约 10 秒(视为当前消息已处理完)后,进程自动结束,防止后台进程越积越多;
  3. 自动结束前切回终端视图,会直接复用原进程与画面,滚动缓冲不丢;
  4. 进程结束后(自动收尾或你在终端里 /exit 退出),对话历史自动刷新;停留在终端视图时会显示「终端会话已结束」覆盖层,可选择重新进入终端返回对话

切走前先处理完终端里的待确认项

「空闲」按终端输出是否安静判定。若终端正停在权限确认等待你输入,输出同样是安静的——切走约 10 秒后进程会被自动结束,该轮次作废。切走前请先处理完终端里的待确认操作(横幅会显示终端仍被持有)。


已知限制

  • 使用中转 / 第三方供应商的 Codex 任务,终端界面里显示的模型名可能是内部占位名,实际生效模型以任务配置为准。
  • 个别情况下权限档位会为适配交互模式自动降级,横幅会注明「(权限档已降级适配交互模式)」。
  • 退出应用、删除任务或工作区时,对应的终端进程会被连带结束,不会残留。

下一步

回到图形界面的工作流——前往 Git 集成了解分支管理、变更审查与提交。