Pi Agent 扩展体系:编写你的第一个 TypeScript Extension 与 Skill
深入 Pi 的扩展机制:用 TypeScript 注册自定义工具、拦截生命周期事件、添加终端快捷键,并用 SKILL.md 固化团队沉淀。
打开官方原教程| 项目 | 详情 |
|---|---|
| 提供方 | Pi Coding Agent |
| 难度 | 进阶 |
| 发布日期 | 2026-08-15 |
| 官方来源 | Pi Coding Agent |
| 主题 | #agents · #engineering · #open-source |
Extensions 与 Skills 的分工
- **Skills (
SKILL.md):面向模型的流程指南**。教模型在特定场景下按什么规范干活。 - **Extensions (
.ts):面向运行时的能力插槽**。编写真实 TypeScript 代码给 Agent 注入全新工具、事件监听与终端 UI 交互。
编写一个最小 TypeScript Extension
在 ~/.pi/agent/extensions/ 下创建一个 .ts 文件:
```typescript import type { ExtensionContext } from "@earendil-works/pi-coding-agent";
export default function myExtension(ctx: ExtensionContext) { // 1. 注册一个自定义工具给模型调用 ctx.registerTool({ name: "notify_slack", description: "发送部署通知到团队 Slack 频道", parameters: { type: "object", properties: { message: { type: "string", description: "通知内容" }, }, required: ["message"], }, execute: async ({ message }) => { console.log("[Slack]", message); return { ok: true, status: "sent" }; }, });
// 2. 监听会话开始事件 ctx.on("session_start", (session) => { console.log("Session started in:", session.cwd); }); } ```
启动 pi 时,扩展会自动热加载,模型立刻拥有了 notify_slack 工具。
打包与分发:Pi Packages
你可以把写好的 Extensions、Skills、Prompt Templates 和自定义 Themes 打包进一个 npm 包或 Git 仓库,其他人只需一行命令即可安装:
bash pi pkg install git@github.com:myorg/team-pi-pack.git
官方来源:Pi Coding Agent Extensions Manual。
📚 来源与延伸
本页内容基于以下权威来源整理,可验证、可引用。
- 🔗 官方原始来源
- 👤 人物档案:Pi Coding Agent
- # 主题:Agent 智能体AI Agent 的构建、协作与落地
- # 主题:工程实践API 调用、提示词与系统设计
- # 主题:开源开源模型、框架与生态
引用规范:请注明来源为老金出海(laojinchuhai.com)并保留原文链接。
老金出品 · 用 AI 提效
AllModelsAPI一个 key,调多家大模型
AllModelsAPI 是多模型 API 中转站:一个 key 调多家模型,OpenAI 兼容接口,现有代码改个 base_url 就能迁。它不是演示品——我们自己的生产环境每天都在用。
更多老金产品:Sellenca · 365AIOrg · 365Loopa · 365 Ops · 365Skill
相关内容
按主题 / 人物 / 专区自动互通