交互式 TUI
mogick 无参数启动进入全功能 TUI,集成对话、工具调用监控、会话管理和系统设置。
启动
bash
mogick # 默认启动(使用当前目录作为工作区)
mogick --resume <session-id> # 恢复会话
mogick --continue # 继续最近会话启动前先 cd 到项目目录。TUI 内按 Shift+Tab 切换 Plan / Agent 模式。
启动前会检查交互式 stdin/stdout、TERM、终端尺寸、UTF-8 locale 和 Windows VT 能力。mogick doctor 默认报告这些结果;显示错位时运行 mogick doctor --check-terminal-font。MOGICK_TUI_SKIP_TERMINAL_CHECK=1 仅供调试,不保证跳过后界面可用。
界面布局
| 区域 | 位置 | 功能 |
|---|---|---|
| 聊天区 | 中央 | 对话历史、流式输出、思考块、工具组、系统事件 |
| 输入框 | 底部 | 多行输入、@ 文件引用、图片粘贴、/ 命令 |
| 侧栏 | 右侧 | 会话信息、上下文用量、MCP 状态 |
| 状态栏 | 底部最末行 | 模式标识、运行状态、模型名称、快捷键提示 |
终端宽度 <= 80 列时侧栏自动隐藏,Ctrl+B 手动切换。
快捷键
| 快捷键 | 作用 |
|---|---|
Tab | 聊天区与输入框焦点切换 |
Shift+Tab | Plan / Agent 模式切换 |
Ctrl+P | 命令面板 |
Ctrl+B | 侧栏显示/隐藏 |
Ctrl+G | 打开 Changes 面板 |
Ctrl+O | 切换工具详情显示模式 |
Esc | 运行中请求停止;有面板时优先处理面板操作 |
Ctrl+C | 连按两次退出;输入框有可复制选区时优先复制 |
侧栏
侧栏是会话状态的实时看板,启动后自动填充并在对话进行中持续刷新。上方展示会话标题、摘要和 ID,中部显示上下文窗口占用与缓存命中率,下方列出 MCP 连接状态、当前轮次耗时以及正在使用的模型信息。终端宽度不足 80 列时自动隐藏,也可按 Ctrl+B 手动切换。
各信息块的含义和示例见 命令面板与侧栏。
聊天区
| 特性 | 行为 |
|---|---|
| 流式输出 | 文字逐字渲染 |
| 思考块 | 默认折叠,Enter 展开 |
| 工具组 | Ctrl+O 切换详情模式;焦点不在输入框时,o 折叠/展开最近工具块 |
| @ 文件引用 | @ 触发模糊文件搜索,支持多文件 |
| 附件 chip | 用户消息中的文件/文件夹上下文显示为可打开 chip,内部 @file 标记不显示 |
| 图片输入 | 复制图片文件(PNG/JPEG/GIF),在输入框粘贴即可引用 |
| 国际化 | 中文/英文,Ctrl+P > Settings 切换后重启生效 |
系统事件:工作目录变更、AGENTS.md 加载、MCP 连接/断开、模式切换、计划审批、权限审批、工具拦截。
主题
bash
export MOGICK_TUI_THEME=auto # 跟随终端(默认)
export MOGICK_TUI_THEME=dark # 深色
export MOGICK_TUI_THEME=light # 浅色Slash 命令
| 命令 | 功能 |
|---|---|
/new | 新建空白会话 |
/sessions | 浏览和切换历史会话 |
/rename | 重命名当前会话 |
/models | 按 Provider 来源选择模型 |
/connect | 接入自定义模型 |
/mcp | MCP 服务器连接与启停 |
/skills | 浏览和加载可用 Skills |
/permissions | 切换权限策略 |
/compact | 手动上下文压缩 |
/changes | 代码变更面板 |
/review | 只读审查当前 Changeset,并在 Changes 中显示 findings |
/rewind | 回退工作区到检查点 |
完整清单见 Slash 命令参考。
/changes(或 Ctrl+G)打开 Changes 面板查看代码变更,/review 对当前 Changeset 发起只读审查。详细操作、面板快捷键和 Git Evidence 导出见查看、审查与追踪变更。
设置
Ctrl+P > Settings:
| 设置项 | 选项 | 默认值 | 说明 |
|---|---|---|---|
| Language | Chinese / English | 自动检测终端区域 | 切换界面语言,重启后生效 |
| Diagnose | On / Off | Off | 录制 ACP/CRP 协议追踪,用于问题排查 |
| Subagents | On / Off | Off | 启用 agent.task 子代理功能 |
| TOON 编码 | On / Off | Off | 以 TOON(Tool Output Object Notation,工具输出对象标记)格式编码工具返回的 JSON 结果,缩小 token 占用 |
升级面板
启动检测到新版本时顶部弹出:
| 选项 | 行为 |
|---|---|
| 立即升级 | 记录选择并退出 TUI,随后执行前台升级流程 |
| 跳过本次 | 关闭面板,下次启动再提示 |
| 跳过此版本 | 写入配置,不再提示此次升级 |