Files
agent_management/agent_templates/agents/code_manager_agent

Code Manager Agent

基于 Pydantic AI + FastMCP 的代码仓库管理 Agent。

支持:

  • Gitee 仓库 pull / push(HTTP 用户名+密码认证)
  • 本地文件更新
  • SSH 远程执行命令
  • SSH 到测试机器 git clone 并运行测试

代码仓库地址:http://gitee.ath.cx:3000/zhanggangyong/agent_management


快速开始

本地运行

cd agent_templates/agents/code_manager_agent
pip install -r requirements.txt
export GITEE_REPO_URL=http://gitee.ath.cx:3000/zhanggangyong/agent_management
export WORK_DIR=/path/to/local/repo
python run_api_server.py

Docker

docker build -t code-manager-agent:latest .
docker run -p 8000:8000 \
  -e GITEE_REPO_URL=http://gitee.ath.cx:3000/zhanggangyong/agent_management \
  -e WORK_DIR=/workspace \
  code-manager-agent:latest

环境变量

变量 必需 默认值 说明
GITEE_REPO_URL 否 http://gitee.ath.cx:3000/zhanggangyong/agent_management Gitee 仓库地址
WORK_DIR 否 /workspace 本地仓库根路径
API_PORT 否 8000 服务端口
POD_NAME 否 code-manager-agent Agent 名称(用于 callback)
USER_ID 否 `` 用户 ID(用于 callback)
AGENT_CALLBACK_URL 否 Agent Manager 默认回调 计费回调地址

项目结构

code_manager_agent/
├── Dockerfile
├── README.md
├── API_DOC.md
├── requirements.txt
├── run_api_server.py
├── common/
│   ├── __init__.py
│   └── agent_callback_utils.py
└── src/
    ├── __init__.py
    └── server/
        ├── __init__.py
        ├── api_server.py    # FastAPI + MCP HTTP
        └── mcp_server.py    # MCP 工具定义

工具列表

工具 说明
git_pull 从 Gitee 拉取最新代码
git_push 提交并推送代码到 Gitee
update_code 更新本地仓库中的指定文件
ssh_exec SSH 连接远程机器执行命令
ssh_git_clone_and_test SSH 到测试机 clone 代码并运行测试

注册到 Agent Manager

在 k8s_manager.py 中添加:

# TEMPLATE_PORTS
"code_manager_agent": 8000,

# image_map
"code_manager_agent": "agnettaiji.azurecr.io/ai-agents/code-manager-agent:latest",

在 app.py 的 valid_templates 中添加 "code_manager_agent"。


OpenClaw 接入说明

将以下配置添加到 OpenClaw 的 MCP 服务列表:

{
  "name": "code_manager_agent",
  "url": "http://<HOST>:8000/mcp",
  "transport": "http",
  "headers": {
    "api-key": "<YOUR_API_KEY>"
  }
}

或使用 SSE 传输:

{
  "name": "code_manager_agent",
  "url": "http://<HOST>:8000/sse",
  "transport": "sse",
  "headers": {
    "api-key": "<YOUR_API_KEY>"
  }
}

详细 API 说明请参考 API_DOC.md。