Skip to main content

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 行为

翻译自 pi-coding-agent/docs/sdk.md