Skip to main content

Coding Agent — @mariozechner/pi-coding-agent

概述

Pi 是一个极简的终端编程工具(Terminal Coding Harness)

它的核心理念是:让 Pi 适应你的工作流程,而不是反过来

Pi 通过扩展(Extensions)、技能(Skills)、提示模板(Prompt Templates)和主题(Themes)来适应各种工作场景,无需 fork 或修改 Pi 的内部代码。


安装

npm install -g @mariozechner/pi-coding-agent

认证

方式 1:API Key

export ANTHROPIC_API_KEY=sk-ant-...
pi

方式 2:订阅登录

pi
/login # 然后选择 Provider

四种运行模式

模式说明
交互模式(Interactive)终端 TUI 交互界面(默认)
打印模式(Print)直接打印输出
JSON 模式JSON 格式化输出
RPC 模式RPC 进程集成模式

交互模式界面

┌─────────────────────────────────────────────────────────┐
│ Startup Header — 快捷键提示、加载的 AGENTS.md、技能等 │
├─────────────────────────────────────────────────────────┤
│ Messages — 消息、助手回复、工具调用和结果、通知等 │
├─────────────────────────────────────────────────────────┤
│ Editor — 输入区域,边框颜色表示思考级别 │
├─────────────────────────────────────────────────────────┤
│ Footer — 工作目录、会话名、Token 用量、费用、当前模型 │
└─────────────────────────────────────────────────────────┘

编辑器功能

功能操作
引用文件输入 @ 模糊搜索项目文件
路径补全Tab 键补全路径
多行输入Shift+Enter(或 Ctrl+Enter on Windows Terminal)
图片粘贴Ctrl+V 粘贴图片(Alt+V on Windows)
Bash 命令!command 运行并发送给 LLM,!!command 运行不发送

命令系统

输入 / 触发命令:

命令说明
/login, /logoutOAuth 认证
/model切换模型
/settings思考级别、主题、消息传递方式
/resume从之前的会话恢复
/new开始新会话
/name <name>设置会话名称
/session显示会话信息
/tree跳转到会话的任何点继续
/fork从当前分支创建新会话
/compact [prompt]手动压缩上下文
/copy复制上一条助手消息
/export [file]导出会话为 HTML
/share上传为私有 GitHub Gist
/reload重新加载配置
/hotkeys显示所有快捷键
/quit, /exit退出

快捷键

快捷键功能
Ctrl+C清空编辑器
Ctrl+C 两次退出
Escape取消/中止
Escape 两次打开 /tree
Ctrl+L打开模型选择器
Ctrl+P / Shift+Ctrl+P循环切换模型
Shift+Tab循环切换思考级别
Ctrl+O折叠/展开工具输出
Ctrl+T折叠/展开思考块

消息队列

当 Agent 正在工作时,可以提交消息:

  • Enter — 提交引导消息,当前工具调用完成后发送
  • Alt+Enter — 提交跟进消息,Agent 完成所有工作后发送
  • Escape — 中止并将队列中的消息恢复到编辑器
  • Alt+Up — 将队列中的消息恢复到编辑器

内置核心工具

Pi 默认提供 4 个核心工具:

工具说明
read读取文件
write写入文件
edit编辑文件
bash执行 Shell 命令

会话管理

分支(Branching)

Pi 的会话是有向无环图(DAG)

  • 每个消息可以是主干或分支
  • 分支可以从任意点创建
  • 分支不会丢失历史

压缩(Compaction)

当上下文接近 Token 限制时:

  1. Pi 分析当前会话
  2. 压缩为摘要,保留关键信息
  3. 继续对话

也可以手动触发:/compact [prompt]


扩展方式

Pi 支持 4 种扩展方式:

  1. Prompt Templates — 提示模板
  2. Skills — 技能包
  3. Extensions — TypeScript 扩展
  4. Themes — 主题

详见后续文档。


相关文档


翻译自 @mariozechner/pi-coding-agent