AI编程助手知识系统

ACE MCP是一种自学习知识系统,用于AI编程助手,通过MCP服务器提供跨项目的持久学习能力。

  • by POVIEW-AI
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 TerrysPOV/ace_claude_mcp

使用说明

ACE MCP

代理上下文工程(ACE) -一个用于AI编码助手的自我改进的知识系统,可以从每次会话中学习。

ACE通过MCP服务器提供持久的跨项目学习。Claude/ChatGPT在会话开始时自动读取积累的智慧,并在工作中记录新的见解。

多客户端支持

ACE支持 多个AI客户端 通过双传输端点:

端点 传输 客户端
/sse SSE(传统) 克劳德代码,克劳德桌面
/mcp 流式HTTP ChatGPT、OpenAI Codex CLI

生产URL: https://ace-mcp.terry-yodaiken.workers.dev

建筑

两种部署选项:

组件 存储 用例
Cloudflare Workers+D1 SQLite(D1) 生产环境-持久化,可在任何地方访问
本地Python服务器 Markdown文件 开发-基于 ~/.ace/playbooks/

快速入门(Cloudflare-推荐)

1.安装包装器

cd ace-mcp
./install.sh

或手动:

mkdir -p ~/.ace/bin
cp ace-mcp/bin/claude-ace ~/.ace/bin/
chmod +x ~/.ace/bin/claude-ace

# Add to PATH
echo 'export PATH="$HOME/.ace/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

2.运行安装程序

claude-ace setup

这将:

  1. 提示您 ANTHROPIC_API_KEY (一个在https://console.anthropic.com/settings/keys)
  2. 将其保存到您的shell配置文件(.zshrc/.bashrc)
  3. 通过以下方式配置MCP服务器 claude mcp add

3.开始会话

cd your-project
claude-ace

有选项:

claude-ace --dangerously-skip-permissions --resume
claude-ace -p "fix the bug"
claude-ace --project-id finance

运作原理

包装:

  1. 从目录名或 CLAUDE.md
  2. 通过以下方式注入ACE合约 --append-system-prompt
  3. 克劳德 必须 呼叫 read_playbook 会话开始时
  4. Claude在会议期间通过以下方式记录了见解 add_entry

项目检测

项目ID 关键字
finance 监管、合规、基金、投资、mifid、fca、ucits、poview
dev 代码、编程、api、后端、前端、部署
global (默认回退)

MCP工具

工具 说明
read_playbook(project_id?) 负载学习(合并全局+特定项目)
add_entry(section, content, project_id?) 保存新见解
update_counters(entry_id, helpful_delta, harmful_delta) 跟踪有效性
log_reflection(task_summary, outcome, learnings, project_id?) 日志会话反射
search_playbook(query, project_id?) 查找相关条目
list_projects() 列出可用项目
create_project(project_id, description?) 创建新项目
curate_playbook(project_id?, harmful_threshold?) 清理低质量的条目

入口部分

  • STRATEGIES & INSIGHTS -有效的方法
  • DOMAIN KNOWLEDGE -事实和背景
  • COMMON MISTAKES TO AVOID -学到的陷阱
  • FORMULAS & CALCULATIONS -可重复使用的计算

Cloudflare部署

先决条件

  • Node.js 18+
  • 牧马人CLI(npm install -g wrangler)
  • Cloudflare帐户

部署

# Install dependencies
npm install

# Login to Cloudflare
wrangler login

# Create D1 database (first time only)
wrangler d1 create ace-playbook

# Apply schema
wrangler d1 execute ace-playbook --remote --file=schema.sql

# Deploy
npm run deploy

OAuth设置(Google+ChatGPT)

部署前设置机密:

wrangler secret put GOOGLE_CLIENT_ID
wrangler secret put GOOGLE_CLIENT_SECRET
wrangler secret put GOOGLE_REDIRECT_URI
wrangler secret put OAUTH_CLIENT_ID
wrangler secret put OAUTH_CLIENT_SECRET
wrangler secret put OAUTH_REDIRECT_URIS
wrangler secret put JWT_SECRET
wrangler secret put MCP_BEARER_TOKEN

# Optional: identity fields for static bearer auth
wrangler secret put MCP_BEARER_USER_ID
wrangler secret put MCP_BEARER_EMAIL

# Optional
wrangler secret put REQUIRE_AUTH
wrangler secret put DEFAULT_USER_ID

端点

端点 描述
GET /health 健康检查
GET /sse MCP的SSE端点
GET /oauth/authorize OAuth授权端点
GET /oauth/callback OAuth回调端点
POST /oauth/token OAuth令牌交换端点

生产URL: https://ace-mcp.terry-yodaiken.workers.dev

直接连接Claude代码

没有包装器,您可以直接添加MCP服务器:

claude mcp add --transport sse ace https://ace-mcp.terry-yodaiken.workers.dev/sse

连接OpenAI Codex CLI

添加 ~/.codex/config.toml:

[mcp_servers.ace]
url = "https://ace-mcp.terry-yodaiken.workers.dev/mcp"

[features]
rmcp_client = true

如果Codex CLI无法完成Google OAuth,请使用静态承载令牌:

[mcp_servers.ace]
url = "https://ace-mcp.terry-yodaiken.workers.dev/mcp?access_token=YOUR_MCP_BEARER_TOKEN"

安全说明: access_token URL中的密码被视为密码。仅将其存储在本地配置中,如果暴露则进行旋转,并避免共享包含完整URL的日志或屏幕截图。

全局代理模板+代码初始化

设置全局ACE合同模板和项目引导脚本:

  • 全局模板: ~/.codex/AGENTS.md
  • 脚本: ~/.local/bin/codex-init
  • 可选包装器: ~/.local/bin/codex-ace

在任何项目根目录中的用法:

# Recommended: install the wrapper once
cp ace-mcp/bin/codex-ace ~/.local/bin/
chmod +x ~/.local/bin/codex-ace

# Uses the folder name as the project_id by default
codex-init

# Override the project_id
ACE_PROJECT_ID=finance codex-init

codex-init 副本 ~/.codex/AGENTS.md 进入 ./AGENTS.md,替代品 {project_name} 和 {project_id},然后启动 codex-ace (或 codex). codex-ace 确保ACE合同存在于 AGENTS.md 在开始之前。

连接ChatGPT(开发人员模式)

  1. 启用:设置→ 连接器→ 高级→ 开发人员模式
  2. 创建:设置→ 连接器→ 创建
  3. 网址: https://ace-mcp.terry-yodaiken.workers.dev/mcp
  4. 名称:《ACE行动手册》
  5. OAuth设置:
    • 授权URL: https://ace-mcp.terry-yodaiken.workers.dev/oauth/authorize
    • 令牌URL: https://ace-mcp.terry-yodaiken.workers.dev/oauth/token
    • 客户端ID/Secret:使用Worker secrets中配置的值

本地Python服务器(备选)

对于基于文件存储的本地开发:

# Install
pip install fastmcp

# Run
uvx --from fastmcp fastmcp run ace_server.py

存储位置: ~/.ace/playbooks/

注: 本地服务器使用markdown文件,而不是SQLite。包装器是为Cloudflare部署而设计的。

配置

环境变量

变量 描述
ANTHROPIC_API_KEY 克劳德代码要求
GOOGLE_CLIENT_ID 谷歌OAuth客户端ID
GOOGLE_CLIENT_SECRET Google OAuth客户端密钥
GOOGLE_REDIRECT_URI Google OAuth重定向URI(指向 /oauth/callback)
OAUTH_CLIENT_ID ChatGPT连接器的OAuth客户端ID
OAUTH_CLIENT_SECRET ChatGPT连接器的OAuth客户端密钥
OAUTH_REDIRECT_URIS 逗号分隔的允许重定向URI
JWT_SECRET 访问令牌/状态的HMAC密钥
REQUIRE_AUTH true 需要OAuth /mcp 和 /sse
DEFAULT_USER_ID 没有OAuth的旧客户端的回退用户ID

文件

文件 目的
wrangler.toml Cloudflare Workers配置
schema.sql D1数据库架构
src/index.ts 工人入口点
ace_server.py 本地Python MCP服务器
ace_core.py 基于本地文件的存储逻辑

包装器命令

claude-ace                    # Start interactive session
claude-ace setup              # Configure API key + MCP server
claude-ace status             # Check configuration
claude-ace -p "prompt"        # One-shot prompt
claude-ace --resume           # Resume last session
claude-ace --continue         # Continue last session
claude-ace --project-id X     # Force specific project ID
claude-ace -C /path           # Specify project directory
claude-ace --model MODEL      # Use specific model
claude-ace --dangerously-skip-permissions  # Skip permission prompts

故障排除

“未配置MCP服务器”

claude-ace setup

“找不到ANTHROPIC_API_KEY”

claude-ace setup  # Will prompt for key
# Or manually:
export ANTHROPIC_API_KEY="sk-ant-..."

SSE连接问题

# Test endpoint
curl https://ace-mcp.terry-yodaiken.workers.dev/health
curl -v https://ace-mcp.terry-yodaiken.workers.dev/sse

检查MCP是否已注册

claude mcp list

许可证

麻省理工学院