Pi coding agent入门:第 2 课:交互式界面

第 2 课:交互式界面

交互式界面自上而下分为四个区域

1. 启动头部(Startup header)

显示快捷键(/hotkeys 查看全部)、已加载的 AGENTS.md 上下文文件、提示词模板、技能和扩展。这是快速了解 pi 已加载了哪些东西的方式。之后添加技能或扩展时,它们也会显示在这里。

2. 消息区(Messages)

可滚动的历史记录:你的消息、助手回复、工具调用及其结果(你会看到模型读取文件、运行命令、编辑代码),以及通知和错误。这是你实时观察 pi 工作的地方。

3. 编辑器(Editor)

你输入的地方。边框颜色表示当前的思考等级(Shift+Tab 循环切换)。关键的编辑器技巧:

  • @ — 模糊搜索项目文件,内联引用
  • Tab — 补全路径
  • Shift+Enter — 多行输入
  • !command — 运行 shell 命令并把输出发送给模型
  • !!command — 运行但不发送输出(适合静默设置)
  • Ctrl+V — 粘贴文本或图片(Windows 上是 Alt+V);也可以把图片拖进终端
  • Ctrl+G — 打开外部编辑器(使用 $VISUAL$EDITORnano

4. 底部栏(Footer)

工作目录、会话名称、token/缓存用量( 输入、 输出、R 缓存读、W 缓存写)、费用、上下文用量和当前模型。关注这里可以了解你正在消耗多少上下文。

必备快捷键

按键 作用
Ctrl+C 清空编辑器(按两次 → 退出)
Escape 取消/中止当前工作(按两次 → 打开 /tree
Ctrl+L 打开模型选择器
Ctrl+P / Shift+Ctrl+P 前后循环切换模型
Shift+Tab 循环切换思考等级
Ctrl+O 折叠/展开工具输出
Ctrl+T 折叠/展开思考块
Ctrl+X 复制最后一条助手消息
Ctrl+D 退出(编辑器为空时)

在 pi 内输入 /hotkeys 查看完整列表。

消息队列(pi 的超级能力)

当代理仍在工作时,你可以输入新消息并按:

  • Enter → 排队一条引导(steering)消息,在当前回合完成工具调用后送达。非常适合中途提醒:"做完之后也检查一下测试。"
  • Alt+Enter → 排队一条后续(follow-up)消息,仅在所有工作完成后送达。
  • Escape → 中止并把排队消息恢复到编辑器。
  • Alt+Up → 把排队的消息取回编辑器。

这样你可以继续输入而不用等待——和那些会阻塞你的聊天工具很不一样。

自定义快捷键

所有快捷键都可以通过 ~/.pi/agent/keybindings.json 配置。每个动作可以绑定一个或多个按键:

{
  "tui.editor.cursorUp": ["up", "ctrl+p"],
  "tui.editor.cursorWordLeft": ["alt+left", "alt+b"],
  "tui.editor.deleteWordBackward": ["ctrl+w", "alt+backspace"]
}

按键格式是 修饰键+键ctrlshiftalt,可组合)。文档里还提供了现成的 EmacsVim 配置可以直接复制。修改后运行 /reload 即可生效,无需重启。

现在就来试试

  1. 输入 @ 并选择一个文件——发一条关于它的消息。
  2. 试试 !git log --oneline | head -5——看看输出如何发送给模型。
  3. 输入 /hotkeys 并浏览列表。
  4. 开始一个任务,然后立刻按 Alt+Enter 输入一条后续消息——观察它排队并送达。

作业: 在任务运行时排队一条引导消息(按 Enter),确认它会在工作途中送达。然后按 Escape 尝试中止任务。

类似文章

发表回复