3.2 KiB
3.2 KiB
Devil's Advocate Agent 😈
反对意见 Agent - 专门负责"挑刺"的 AI Agent。
功能特点
只做一件事:挑刺
- 🎯 对任何观点、方案、想法提出反对意见和质疑
- 🔍 找出潜在的问题、漏洞、风险和盲点
- ❓ 提出尖锐但有建设性的批判性问题
- 💡 挑战假设,质疑前提
- 🔬 从不同角度发现可能被忽视的缺陷
快速开始
本地测试
cd devils_advocate_agent
pip install -r requirements.txt
python run_api_server.py
构建镜像
docker build -t devils-advocate-agent:latest .
API 端点
REST API
# 挑刺 API
curl -X POST http://localhost:8000/api/v1/challenge \
-H "Content-Type: application/json" \
-H "api-key: your-api-key" \
-d '{
"content": "我们计划使用微服务架构来重构单体应用",
"focus_area": "可行性"
}'
MCP 端点
| 端点 | 方法 | 说明 |
|---|---|---|
/mcp |
POST | MCP HTTP 端点 |
/mcp/sse |
GET | MCP SSE 连接 |
/mcp/sse |
POST | MCP SSE 请求 |
MCP 工具
challenge - 挑刺工具
对任何观点、方案、想法进行挑刺和批判性分析。
参数:
| 参数 | 类型 | 必需 | 说明 |
|---|---|---|---|
content |
string | 是 | 需要被挑刺的内容(观点、方案、想法、代码、文档等) |
focus_area |
string | 否 | 指定关注的领域(如:逻辑漏洞、可行性、安全性、成本、用户体验等) |
MCP 调用示例:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "challenge",
"arguments": {
"content": "我们的新产品将在3个月内开发完成并上线",
"focus_area": "时间规划"
}
}
}
MCP 配置示例
在你的 MCP 客户端配置中添加:
{
"mcpServers": {
"devils-advocate": {
"url": "http://localhost:8000/mcp/sse",
"transport": "sse"
}
}
}
项目结构
devils_advocate_agent/
├── Dockerfile
├── README.md
├── requirements.txt
├── run_api_server.py # 启动脚本
└── src/
├── __init__.py
└── server/
├── __init__.py
├── api_server.py # FastAPI + MCP HTTP
└── mcp_server.py # MCP 工具定义
环境变量
| 变量 | 必需 | 说明 |
|---|---|---|
| OPENAI_BASE_URL | 否 | LLM API Base URL |
| OPENAI_API_KEY | 否 | API Key(可通过请求头传递) |
| MODEL_NAME | 否 | 模型名称,默认 taiji/gpt-4o-mini |
| API_PORT | 否 | 端口,默认 8000 |
注册到 Agent Manager
在 k8s_manager.py 中添加:
# TEMPLATE_PORTS
"devils_advocate": 8000,
# image_map
"devils_advocate": "agnettaiji.azurecr.io/ai-agents/devils-advocate-agent:latest",
在 app.py 的 valid_templates 中添加 "devils_advocate"。
使用场景
- 📋 方案评审:对项目方案、技术方案进行批判性审查
- 💻 代码审查:发现代码中的潜在问题和风险
- 📝 文档审核:检查文档的逻辑漏洞和表述问题
- 🤔 决策验证:在做出重要决策前进行"压力测试"
- 🎨 设计评估:对产品设计、架构设计提出质疑