Pantheon-of-Confidants
Health Warn
- No license — Repository has no license file
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 6 GitHub stars
Code Warn
- process.env — Environment variable access in src/backend/DeepSeek/ModelClient.ts
- network request — Outbound network request in src/backend/DeepSeek/ModelClient.ts
- process.env — Environment variable access in src/backend/E2B/jezehMemoSandbox.ts
Permissions Pass
- Permissions — No dangerous permissions requested
No AI report is available for this listing yet.
一个用 TypeScript 构建的多智能体学习与实验场:基于 DeepSeek Responses API,从零实现强类型 Agent Loop、工具调用回填、Skills 按需加载和 SQLite 会话持久化,并以 Gexep、Lexey、Jezeh 等角色“粘合”邮件、E2B Sandbox 等能力,以及对 MCP、A2A、最小权限协作和 GraphRAG 长期记忆的探索与思考。
Pantheon of Confidants
A multi-agent runtime where every agent is a confidant.
多智能体运行时——每一个 Agent,都是一位挚友。
这个项目旨在“粘合”我学习和构建 Agent 过程中产生的想法,以及接触到的各类协议与技术,并借此记录和表达自己的观点,包括但不限于 MCP、A2A、Sandbox 和 GraphRAG。
已实现的能力
- 强类型 Agent Loop:通过 Node.js 原生
fetch调用 DeepSeek/responsesAPI,逐项处理message、reasoning、function_call和web_search_call,并将工具结果回填给模型继续推理。 - 按角色分配能力:Gexep 可向固定邮箱发送邮件;Lexey 负责语言任务,并支持网页搜索和按需加载 Skill;Jezeh 在网络隔离的 E2B Sandbox 中管理 Markdown 备忘录;Zebeh 用于开发阶段的行为验证。
- 受控工具边界:工具由具体 Agent 显式注册,入参经 Zod 校验;Jezeh 的命令默认在 E2B 的
/memos中运行,并通过受限下载工具将备忘录导出到固定宿主机目录。 - 本地会话持久化:使用
better-sqlite3管理单文件database.db,按 Agent 保存和恢复已激活的对话历史。 - 轻量工程栈:TypeScript、ESM、pnpm、tsx 和 Node.js 内置测试框架,不引入模型 SDK 或 ORM。
MCP 客户端、基于 A2A 的 Agent 协作以及 GraphRAG 长期记忆仍处于设计阶段;文档会明确区分已经落地的能力与尚未实现的设想。
名字从哪来
每个 Agent 都以现实中的一位好友为原型:取好友中文名的拼音首字母,在字母之间插入两个 e,例如 gxp → Gexep、lxy → Lexey、jyh → Jeyeh。Pantheon 是众 Agent 的群像,Confidant 则表达“挚友”这一共同身份。完整名册见 Agents 说明。
快速开始
pnpm install
cp .env.example .env
pnpm dev:backend:initDatabase
pnpm exec tsc --noEmit
pnpm test
调用模型时需要配置 DEEPSEEK_API_KEY。使用 Gexep 的邮件工具还需配置 SMTP_PASS;使用 Jezeh 则需配置 E2B_API_KEY,也可通过 E2B_MEMO_SANDBOX_ID 连接已有 Sandbox。
当前 src/backend/main.ts 是预留入口,尚未提供交互界面;src/backend/test.ts 是会调用真实 DeepSeek、E2B 和宿主机文件系统的 Jezeh 完整链路脚本,不属于默认测试套件。
目录速览
src/backend/
├── DeepSeek/ # 模型客户端、API 类型、Agent Loop 与具体 Agent
├── E2B/ # Jezeh 的 Sandbox 创建和复用
├── Tools/ # Skill、邮件、E2B Shell 与备忘录下载工具
├── database/ # SQLite 初始化与 prepared statements
├── logger.ts # 统一日志
├── main.ts # 预留程序入口
└── test.ts # Jezeh 真实链路脚本
test/ # 隔离的自动化测试
文档导航
| 文档 | 内容 |
|---|---|
| 后端架构 | 技术栈、目录结构、运行方式、持久化、测试和当前边界 |
| 设计思考 | 关于模型耦合、MCP、A2A、Sandbox 与 GraphRAG 的取舍 |
| DeepSeek 模块 | 模型请求链路、Agent Loop 和具体 Agent |
| Agents 名册 | 命名规则、职责、实现状态与协作方向 |
| Tools 模块 | 工具注册方式、配置项和安全边界 |
| 自动化测试 | Agent、工具、数据库和模型客户端的回归测试 |
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found