- 人工智能
- 大模型
- AI Agent
- 代码智能体
- CLI
- 开发工具
- 工具调用
- MCP Clients
【免费下载链接】pi_agent_rust
High-performance AI coding agent CLI written in Rust with zero unsafe code
pi_agent_rust 是一款用 Rust 从零编写的高性能 AI 编程智能体 CLI(终端 AI 编程代理),它内置了三大自定义机制:Skills(技能)、Prompt 模板(提示词模板)和包管理(Package 管理)。学会它们,你可以把团队的编码规范、常用提示词和工具集沉淀成可复用的能力包,一条命令即可在任意项目中调用。本文将带你 10 分钟内掌握这套完全自定义体系。
一、30 秒速览:三大自定义机制对比
| 机制 | 能做什么 | 存放位置 | 调用方式 |
|---|---|---|---|
| 🧩Skills 技能 | 给智能体注入"专家人格"与专项指令(如 SQL 专家、安全审查) | ~/.pi/agent/skills/(全局)或.pi/skills/(项目级) | /skill:技能名 |
| 📝Prompt 模板 | 把带参数的提示词变成自定义斜杠命令 | ~/.pi/agent/prompts/(全局)或.pi/prompts/(项目级) | /命令名 参数1 参数2 |
| 📦包管理 | 一键安装/分享技能、模板、主题与扩展的合集 | 由settings.json管理 | pi install/pi update/pi list |
三者优先级一致:项目级配置覆盖全局配置,包内资源则与本地资源合并加载(详见 docs/settings.md)。
二、Skills 技能速成:三步写出你的第一个 SKILL.md
Skill 本质上是一个带 YAML 前置信息的 Markdown 文件,用来告诉 AI"遇到这类任务时该怎么做"。完整文档见 docs/skills.md。
第一步:确定存放位置。技能会从三个位置加载:
- 全局:
~/.pi/agent/skills/*/SKILL.md(对你所有项目生效) - 项目:
.pi/skills/*/SKILL.md(仅当前仓库生效,适合团队协作) - 包:通过
pi install安装的包中携带的技能
第二步:编写SKILL.md。只需一个 Markdown 文件加简单前置字段:
--- name: "sql-expert" description: "擅长编写和优化 SQL 查询的专家" disable-model-invocation: false --- 你是一名资深 SQL 开发专家。写查询时: 1. 优先使用 CTE 而非子查询; 2. 关键字使用大写; 3. 检查索引使用情况。| 前置字段 | 说明 |
|---|---|
name | 技能 ID;若省略则默认取父目录名 |
description | 必填,用于模型选择技能的描述(空描述会被跳过) |
disable-model-invocation | 设为true时,模型看不到该技能,只能手动调用 |
第三步:两种调用方式。
- 自动发现:默认所有启用的技能都会进入系统提示词,模型可自主判断并"激活"某个技能;
- 显式调用:在交互界面输入
/skill:sql-expert "帮我优化这条查询…",相当于用技能指令包裹你的提示词。输入/skill:时,自动补全引擎会实时列出可用技能供你选择。
💡进阶:智能体还可以在运行时通过内置的manage_skill工具自行撰写"托管技能"(存放在skills.managed/目录),且用户/项目技能同名时永远优先——AI 写的技能永远不会覆盖你亲手写的。实现见 src/skills_managed.rs。
三、Prompt 模板:把重复提示词变成一条斜杠命令
每次都要复制粘贴同一段提示词?把它保存成一个.md文件即可变成命令。完整说明见 docs/prompt-templates.md。
- 存放位置:
~/.pi/agent/prompts/*.md(全局)或.pi/prompts/*.md(项目级);文件名(去扩展名)即命令名,例如review.md→/review; - 可选描述:加一行 YAML
description前置字段,否则取文件第一行; - 参数展开支持类 Bash 变量语法:
| 变量 | 含义 |
|---|---|
$1、$2… | 第 1、2…个位置参数 |
$@/$ARGUMENTS | 全部参数(空格连接) |
${@:N} | 从第 N 个参数开始的所有参数 |
${@:N:L} | 从第 N 个起截取 L 个参数 |
一个实战例子——commit.md:
为以下变更写一条提交信息。 背景:$1 Diff: ${@:2}之后只需/commit "重构认证模块" src/auth.rs src/main.rs,模板自动把背景与文件列表拼进提示词。参数按空格切分,加引号可把多个词当一个参数传入。
四、包管理:一条命令安装别人的技能与工具集
不想从零手写?pi_agent_rust 自带包管理器,可以安装包含技能、Prompt 模板、主题、扩展的资源合集,完整文档见 docs/packages.md。
支持三种来源
| 来源 | 写法示例 |
|---|---|
| npm 包 | npm:pi-skills、npm:@org/package@1.2.3(可锁版本) |
| git 仓库 | git:host/owner/repo@ref(可锁分支/标签) |
| 本地目录 | 直接给路径,如../my-package |
常用命令一览
pi install npm:pi-skills # 全局安装 pi install --local npm:@org/project-utils # 仅当前项目安装 pi update [source] # 更新全部(或指定)未锁版本的包 pi list # 查看已安装的包 pi remove npm:pi-skills # 卸载pi install会把包源写入settings.json(全局或项目级),并自动发现包内资源:优先读取package.json中的pi段声明路径,找不到时回退到约定目录extensions/、skills/、prompts/、themes/。
安全机制:锁文件与可信校验
- 每次安装/更新成功后会写入确定性锁文件:项目级
.pi/packages.lock.json、用户级~/.pi/agent/packages.lock.json,记录来源、git commit/npm 版本、digest_sha256内容摘要与信任状态; - 校验采用fail-closed(失败即阻断):锁版本包的内容或来源与记录不符时,安装/更新会直接拒绝执行;
- 每次信任状态变化还会追加 JSONL 审计事件,方便团队追溯"谁在何时装了什么"。
五、配置要点与优先级速查
自定义行为统一在 docs/settings.md 描述的 JSON 配置中管理:
enable_skill_commands(默认true):控制是否启用/skill:斜杠命令;packages数组:声明包源,支持对象形式做资源白名单过滤,例如只加载某个包的指定技能、排除实验性扩展(!pattern排除、+pattern强制包含、-pattern强制排除);skills/prompts/extensions/themes数组:对全部资源做统一过滤;- 加载优先级:CLI 参数 > 环境变量 > 项目设置
.pi/settings.json> 全局设置~/.pi/agent/settings.json> 内置默认值。
资源(技能/模板/主题/扩展)的加载逻辑集中在 src/resources.rs,需要定制加载行为时可从这里入手。
六、新手常见坑与最佳实践 ✅
name必须与目录名一致(技能放在子目录时),不一致会产生警告;description不能为空,否则技能会被静默跳过——这是"技能没生效"的最常见原因;- 项目级优先:
.pi/skills/与.pi/prompts/同名资源会覆盖全局版本,团队规范放项目级、个人偏好放全局; - 模板命令名 = 文件名:改文件名等于改命令名,注意别用特殊字符;
- 升级卡住先查锁文件:锁定版本包在内容摘要变化时会 fail-closed 拒绝更新,属预期安全行为,确认来源可信后更新锁记录即可。
总结
pi_agent_rust 用Skills 赋予智能体专家能力、Prompt 模板固化高频提示词、包管理实现能力的一键分发与共享,三者均支持全局/项目双层作用域并配有锁文件与审计机制。按本文的三步走——写一个SKILL.md、建一个模板命令、装一个技能包——你就能把个人经验变成整个团队的生产力。
- 人工智能
- 大模型
- AI Agent
- 代码智能体
- CLI
- 开发工具
- 工具调用
- MCP Clients
【免费下载链接】pi_agent_rust
High-performance AI coding agent CLI written in Rust with zero unsafe code
相关推荐
goose Prompt 模板定制完全指南:用自定义 Prompt 塑造 AI Agent 行为
goose Prompt 模板定制完全指南:用自定义 Prompt 塑造 AI Agent 行为 本篇指南聚焦 goose 开源 AI Agent 的 Prom
人工智能大模型AI AgentAI 应用本地部署MCP ClientsMCP 服务工具调用桌面应用CLIOpenViking Prompt 模板系统深度指南:格式规范、模板全景与安全自定义
OpenViking Prompt 模板系统深度指南:格式规范、模板全景与安全自定义 导读 本文是 OpenViking 提示词模板系统的完整技术指南,覆盖 o
人工智能AI AgentAgent 记忆RAG后端数据库OpenViking Prompt 体系完全指南:模板结构、自定义方法与验证排查
OpenViking Prompt 体系完全指南:模板结构、自定义方法与验证排查 OpenViking 是一套面向 AI Agent 的自进化上下文数据库(Se
人工智能AI AgentAgent 记忆RAG后端数据库
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考