SDK 开发
SDK 提供对 Pi Agent 能力的编程访问,用于将 Pi 嵌入其他应用、构建自定义界面或集成到自动化工作流。
快速开始
import { AuthStorage, createAgentSession, ModelRegistry, SessionManager } from "@mariozechner/pi-coding-agent";
// 设置凭证存储和模型注册表
const authStorage = AuthStorage.create();
const modelRegistry = new ModelRegistry(authStorage);
const { session } = await createAgentSession({
sessionManager: SessionManager.inMemory(),
authStorage,
modelRegistry,
});
session.subscribe((event) => {
if (event.type === "message_update" && event.assistantMessageEvent.type === "text_delta") {
process.stdout.write(event.assistantMessageEvent.delta);
}
});
await session.prompt("当前目录下有哪些文件?");
安装
npm install @mariozechner/pi-coding-agent
SDK 包含在主包中,无需单独安装。
核心概念
createAgentSession()
主要工厂函数,创建可配置的 AgentSession。
import { createAgentSession } from "@mariozechner/pi-coding-agent";
// 最小配置:使用默认 ResourceLoader
const { session } = await createAgentSession();
// 自定义配置
const { session } = await createAgentSession({
model: myModel,
tools: [readTool, bashTool],
sessionManager: SessionManager.inMemory(),
});
AgentSession
会话管理 Agent 生命周期、消息历史和事件流。
常见用例
- 构建自定义 UI(Web、桌面、移动端)
- 集成 Agent 能力到现有应用
- 创建带 Agent 推理的自动化管道
- 构建可生成子 Agent 的自定义工具
- 编程方式测试 Agent 行为