AI 驱动的 CNB 平台智能助手引擎,自动处理 Issue 和 Pull Request 的交互逻辑。
诏令中枢是一个专为 CNB 平台设计的 AI Agent 系统,能够:
src/main.ts - 程序入口,负责初始化和流程控制src/agent.ts - Agent 核心逻辑,处理用户意图和工具调用src/cnb-api.ts - CNB API 封装,处理所有平台交互src/context.ts - 上下文管理,加载环境和配置信息src/llm.ts - LLM 接口封装,支持 OpenAI 兼容的大语言模型src/prompts.ts - 系统提示词模板管理src/tools/ - 各种工具实现(如读取配置、创建 PR 等)npm install
创建 .env 文件或通过环境变量配置:
# CNB 平台配置
CNB_API_ENDPOINT=https://api.cnb.cool
CNB_TOKEN=your_cnb_token
CNB_REPO_SLUG=npc/mandate-engine
CNB_PULL_REQUEST_SHA=commit_sha
CNB_PULL_REQUEST_TARGET_SHA=target_commit_sha
# NPC 配置
CNB_NPC_NAME=your_npc_name
CNB_NPC_SLUG=your_npc_slug
# LLM 配置
OPENAI_API_KEY=your_openai_key
OPENAI_BASE_URL=https://api.openai.com/v1 # 可选,默认官方地址
OPENAI_MODEL=gpt-4o-mini # 可选,默认 gpt-4o-mini
# 角色配置
SETTINGS_FILE=settings.yaml # 可选,默认 settings.yaml
npm start
# 或直接运行
npx tsx src/main.ts
角色配置文件,定义可用的 AI 角色及其能力:
roles:
- name: "CodeReviewer"
description: "代码审查专家"
capabilities:
- "review_code"
- "suggest_improvements"
- name: "ProjectManager"
description: "项目管理助手"
capabilities:
- "track_issues"
- "manage_milestones"
CNB 平台配置文件,定义触发规则和权限。
mandate-engine/ ├── src/ │ ├── agent.ts # Agent 核心逻辑 │ ├── cnb-api.ts # CNB API 封装 │ ├── context.ts # 上下文管理 │ ├── llm.ts # LLM 接口 │ ├── main.ts # 程序入口 │ ├── prompts.ts # 提示词模板 │ └── tools/ # 工具集 │ ├── read-settings.ts │ └── ... ├── assets/ # 静态资源 ├── .cnb/ # CNB 配置 ├── package.json ├── tsconfig.json ├── Dockerfile # 容器化部署 ├── start.sh # 启动脚本 └── README.md # 项目文档
# 构建镜像
docker build -t mandate-engine .
# 运行容器
docker run -e CNB_TOKEN=your_token mandate-engine
chmod +x start.sh
./start.sh
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)本项目采用 MIT 许可证 - 详见 LICENSE 文件。
让 AI 成为团队协作的智慧中枢 🚀