TGYD-helige/pi
GitHub: TGYD-helige/pi
为 Pi AI Agent 运行时提供一整套小型、可组合的 TypeScript 扩展包,涵盖 IM 集成、浏览器自动化、记忆持久化等通过 MCP 暴露的 LLM 可调用工具。
Stars: 14 | Forks: 2
# Pi

用于 Pi runtime 应用程序的共享 TypeScript 包。
本代码库包含开源的 runtime 合约、适配器以及供 Pi Agent 及相关应用程序使用的编排辅助工具。
这些包被刻意设计得小巧且可组合:宿主应用程序负责提供 HTTP 路由、身份验证、model runtime 设置、部署配置以及特定于产品的 UI。
## 包
| 类别 | 包 | 用途 |
| --- | --- | --- |
| 核心 | `@amaster.ai/pi-shared` | 共享 runtime 类型和合约:settings 加载器、session/event/artifact 类型、turn 和 subagent 类型。 |
| 核心 | `@amaster.ai/pi-storage` | 用于 session、transcript、event、memory、artifact、subagent 和 scheduled task 的 JSON 文件和 MySQL/Prisma 持久化适配器。 |
| 扩展 | `@amaster.ai/pi-attachments` | 附件规范化、本地/远程上传处理、文档解析以及 model 可读的附件 prompt。 |
| 扩展 | `@amaster.ai/pi-telemetry` | 带有 Langfuse 和 OpenTelemetry 导出器的 runtime 遥测。 |
| 扩展 | `@amaster.ai/pi-task-scheduler` | 基于 Cron 的定时任务管理,带有可供 LLM 调用的工具。 |
| 扩展 | `@amaster.ai/pi-browser-use` | 包装 chrome-devtools-mcp 并带有 `browser_` 前缀工具的浏览器自动化。 |
| 扩展 | `@amaster.ai/pi-web-access` | 跨可配置 provider 的 Web 搜索和 URL 内容提取。 |
| 扩展 | `@amaster.ai/pi-computer-use` | 面向 CUA computer-server 且带有桌面自动化工具的 computer-use 扩展。 |
| 扩展 | `@amaster.ai/pi-channels` | 原生消息 channel:Feishu、WeCom 和 webhook。 |
| 扩展 | `@amaster.ai/pi-memory` | 持久化的精选 memory(`MEMORY.md` + `USER.md`),作为冻结快照注入到 system prompt 中。 |
| 扩展 | `@amaster.ai/pi-security` | 资源感知 security 策略引擎和工具授权。 |
| 扩展 | `@amaster.ai/pi-teamwork` | 通过 Multica 进行的团队协作和问题管理。 |
| 扩展 | `@amaster.ai/pi-image-gen` | 通过 OpenAI gpt-image、Google Nano Banana、Alibaba Qwen-Image、OpenRouter 和自定义 provider 生成图像。 |
| 扩展 | `@amaster.ai/pi-lark` | 通过 lark-cli 集成 Lark/Feishu 工作区,包括日历、文档、云盘、表格、Base、任务、邮件、wiki 和 IM 技能。 |
| 扩展 | `@amaster.ai/pi-wecom` | 通过 wecom-cli 集成 WeCom 工作区,包括通讯录、消息、会议、日程、待办、文档和智能表格。 |
| 扩展 | `@amaster.ai/pi-dingtalk` | 通过 dws CLI 集成 DingTalk 工作区,包括日历、文档、聊天、待办事项、表格、AI 表格、审批、邮件、wiki 和会议纪要。 |
核心包提供每个宿主应用程序所使用的类型和持久化。
每个扩展包通过其 `./extension` 子路径入口点注册 Pi runtime 扩展,并按需加载。
每个包都仅支持 ESM,并在 `@amaster.ai` npm scope 下发布。
## 扩展预览
## 环境要求
- Node.js `>=24`
- pnpm `10.18.3`
尽可能使用 Corepack:
```
corepack enable
corepack install -g pnpm@10.18.3
```
## 开发
安装依赖:
```
pnpm install
```
运行完整的本地检查:
```
pnpm run pr-check
```
常用命令:
```
pnpm build
pnpm typecheck
pnpm test
pnpm --filter @amaster.ai/pi-storage prisma:generate
```
`@amaster.ai/pi-storage` 在
`packages/storage/prisma/schema.prisma` 中包含一个 Prisma schema。根目录的 `build` 和 `typecheck`
脚本会在编译项目引用之前生成 Prisma client。
## 使用包
仅安装您的应用程序所需的包:
```
pnpm add @amaster.ai/pi-shared @amaster.ai/pi-storage
```
大多数包都会暴露一个根入口点。一些包还会暴露专注于特定功能的
子路径入口点:
```
import { createRuntimeStorage } from "@amaster.ai/pi-storage";
import { JsonRuntimeStorage } from "@amaster.ai/pi-storage/json";
import { loadPiSettings } from "@amaster.ai/pi-shared/settings";
import { createLangfuseExporter } from "@amaster.ai/pi-telemetry/langfuse";
import { createOtelExporter } from "@amaster.ai/pi-telemetry/otel";
import memoryExtension from "@amaster.ai/pi-memory/extension";
```
扩展包通过其 `./extension` 子路径入口点进行注册。宿主应用程序会导入这些包,并在设置期间将它们传递给 Pi runtime。
有关特定包的示例和公共 API 说明,请参阅每个包的 README。
## 许可证
Apache-2.0
@amaster.ai/pi-attachments![]() |
@amaster.ai/pi-telemetry![]() |
@amaster.ai/pi-task-scheduler![]() |
@amaster.ai/pi-browser-use![]() |
@amaster.ai/pi-computer-use![]() |
@amaster.ai/pi-channels![]() |
@amaster.ai/pi-memory![]() |
@amaster.ai/pi-security![]() |
@amaster.ai/pi-teamwork![]() |
@amaster.ai/pi-image-gen![]() |
@amaster.ai/pi-web-access![]() |
@amaster.ai/pi-memory-mem0![]() |
@amaster.ai/pi-lark![]() |
@amaster.ai/pi-wecom![]() |
@amaster.ai/pi-dingtalk![]() |
标签:AI智能体, MCP协议, MITM代理, TypeScript, 即时通讯集成, 安全插件, 工具编排, 浏览器自动化, 用户代理, 自动化攻击














