Day 05 / 共 20 天 · 第 1 周 · 会用 + 建立心智

TUI 交互与 Slash 命令

终端界面结构、高频 /model /permissions /plan /skills、!shell 捷径。

📍 你在整门课的位置 · 第 1 周 · 会用 + 建立心智
D01 项目全景与目录地图D02 安装、登录与第一次对话D03 沙箱与审批D04 CLI 子命令全家桶D05 TUI 交互与 Slash 命令
L01

交互界面在干什么

消息区chatwidget
底部输入composer
弹层审批 / slash
footer状态

主目录:codex-rs/tui/src/——chatwidget.rs(编排)、bottom_pane/(输入)、slash_command.rs

ratatui:Rust 终端 UI 库。Codex TUI 用它画布局,不是 Electron。
L02

高频 Slash 命令(用法)

命令用途
/model切模型
/permissions审批 / 权限
/plan进入/围绕 Plan 协作模式
/skills技能
/mcpMCP
/review代码审查
/diff看变更
/compact压缩上下文
/new /resume /fork会话
/init生成项目 AGENTS.md
/status /usage状态与用量
/quit退出

输入框前缀 ! 可直接跑用户 shell(走 Op::RunUserShellCommand 一类路径)。

L03

源码:枚举顺序 = 弹层展示顺序

codex-rs/tui/src/slash_command.rs 注释写明:不要按字母排序——枚举顺序就是 popup 展示顺序,高频靠前。

pub enum SlashCommand {
    Model, Ide, Permissions, Keymap, Vim,
    ElevateSandbox, // /setup-default-sandbox
    // ... Skills, Review, Plan, Agent, Diff, Mcp ...
}
L04

今日小结

✅ 会用 /model /permissions /plan /init;知道 slash 定义文件位置。
← Day 04 Day 06 · 启动链:从 npm 到 TUI →