Token导航 LogoToken导航TokenDH.com
AI Counsel logo
设计创作stdio官方级别未说明来源级核验

AI Counsel

MCP Server

AI Counsel是一个多模型辩论服务器,支持AI模型通过多轮辩论达成共识,适用于技术决策和架构设计。

工具数

0

提示词数

0

GitHub Stars

223

资源数

0
PythonClaude设计Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

blueman82

提供方

blueman82

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python3 -m venv .venv

详细介绍

AI顾问

![Run in Smithery](https://smithery.ai/skills?ns=blueman82&utm_source=github&utm_medium=badge)

真正的协商一致MCP服务器,人工智能模型在多个回合中辩论和完善立场。

License: MIT Python 3.11+ Platform MCP Code style: black

🎬 在行动中看到它

云模型争论 (克劳德·索内特,GPT-5.1法典,双子座):

mcp__ai-counsel__deliberate({
  question: "Should we use REST or GraphQL for our new API?",
  participants: [
    {cli: "claude", model: "claude-sonnet-4-5-20250929"},
    {cli: "codex", model: "gpt-5.2-codex"},
    {cli: "gemini", model: "gemini-2.5-pro"}
  ],
  mode: "conference",
  rounds: 3
})

结果:融合在混合架构上(0.82-0.95置信度)• 查看完整成绩单

地方模式之争 (100%私人,API成本为零):

mcp__ai-counsel__deliberate({
  question: "Should we prioritize code quality or delivery speed?",
  participants: [
    {cli: "ollama", model: "llama3.1:8b"},
    {cli: "ollama", model: "mistral:7b"},
    {cli: "ollama", model: "deepseek-r1:8b"}
  ],
  mode: "conference",
  rounds: 2
})

结果:2名模特在第一轮辩论后改变了立场• 查看完整成绩单

______________________________________________________________________

是什么让这与众不同

AI顾问实现真正的审议共识 其中模型可以看到彼此的反应,并在多轮中细化位置:

  • 模型参与实际辩论(相互看到并回应)
  • 投票和信任水平的多轮趋同
  • 使用人工智能生成的摘要进行完整的审计跟踪
  • 达成共识时自动提前停止(节省API成本)

特性

  • 🎯 两种模式: quick (单轮)或 conference (多轮辩论)
  • 🤖 混合适配器:CLI工具(claude、codex、droid、gemini)+HTTP服务(ollama、lmstudio、openrouter、nebius)
  • 自动融合:意见稳定时停止(节省API成本)
  • 🗳️ 结构化投票:模型根据置信水平和基本原理进行投票
  • 🧮 语义分组:类似的投票选项自动合并(0.70+相似性)
  • 🎛️ 模型控制停止:模型决定何时停止考虑
  • 🔬 基于证据的审议:模型可以读取文件、搜索代码、列出文件并运行命令,以在现实中做出决策
  • 💰 本地模型支持:Ollama、LM Studio和llamacpp的API成本为零
  • 🔐 数据隐私:使用自托管模型将所有数据保存在本地
  • 🧠 上下文注入:自动查找类似的过去辩论,并注入上下文以加快收敛
  • 🔍 语义搜索:使用查询过去的决策 query_decisions 工具(发现矛盾、追踪进化、分析模式)
  • 🛡️ 容错:单个适配器故障不会停止审议
  • 📝 完整记录:使用AI生成的摘要导出Markdown

快速开始

几分钟内起床跑步:

  1. 安装 –按照中的命令操作 安装 要克隆仓库,请创建virtualenv并安装需求。
  2. 配置 –使用设置MCP客户端 .mcp.json 示例中 在Claude代码中配置.
  3. –启动服务器 python server.py 并触发 deliberate 使用中的示例的工具 用法.

尝试深思熟虑:

// Mix local + cloud models, zero API costs for local models
mcp__ai-counsel__deliberate({
  question: "Should we add unit tests to new features?",
  participants: [
    {cli: "ollama", model: "llama2"},           // Local
    {cli: "lmstudio", model: "mistral"},        // Local
    {cli: "claude", model: "sonnet"}            // Cloud
  ],
  mode: "quick"
})
⚠️ 型号尺寸值得商榷 推荐:使用7B-8B+参数模型(Llama-3-8B、Mistral-7B、Qwen-2.5-7B)进行可靠的结构化输出和投票格式化。 不推荐:3B参数下的模型(例如Llama-3.2-1B)可能难以处理复杂的指令并产生无效投票。

可用型号: claude (作品4.5,十四行诗,俳句), codex (gpt-5.2索引,gpt-5.1索引最大,gpt-5.1-索引最小,gpt-5.2), droid, gemini,HTTP适配器(ollama、lmstudio、openrouter)。 看 CLI模型参考 了解完整细节。

🧠 推理努力控制 控制每个参与者对codex和droid适配器的推理深度: ``javascript participants: [ {cli: "codex", model: "gpt-5.2-codex", reasoning_effort: "high"}, // Deep reasoning {cli: "droid", model: "gpt-5.1-codex-max", reasoning_effort: "low"} // Fast response ] ` - **法典**: none, minimal, low, medium, high, xhigh - **机器人**: off, low, medium, high - 在中设置配置默认值 config.yaml`,每个参与者在运行时覆盖

有关模型选择和选择器工作流程,请参见 模型注册表和选择器.

安装

先决条件

  1. Python 3.11+: python3 --version
  2. 至少一个AI工具 (可选-HTTP适配器无需CLI即可工作):

- Claude CLI: https://docs.claude.com/en/docs/claude-code/setup - Codex CLI: https://github.com/openai/codex - Droid命令行界面: https://github.com/Factory-AI/factory - 双子座命令行界面: https://github.com/google-gemini/gemini-cli

设置

git clone https://github.com/blueman82/ai-counsel.git
cd ai-counsel
python3 -m venv .venv
source .venv/bin/activate  # macOS/Linux; Windows: .venv\Scripts\activate
pip install -r requirements.txt
python3 -m pytest tests/unit -v  # Verify installation

✅ 准备使用!服务器包括核心依赖关系和可选的收敛后端(scikit-learn、句子转换器),以获得最佳准确性。

配置

编辑 config.yaml 要配置适配器和设置,请执行以下操作:

adapters:
  claude:
    type: cli
    command: "claude"
    args: ["-p", "--model", "{model}", "--settings", "{\"disableAllHooks\": true}", "{prompt}"]
    timeout: 300

  ollama:
    type: http
    base_url: "http://localhost:11434"
    timeout: 120
    max_retries: 3

defaults:
  mode: "quick"
  rounds: 2
  max_rounds: 5

注: 使用 type: cli 用于CLI工具和 type: http 用于HTTP适配器(Ollama、LM Studio、OpenRouter)。

模型注册表配置

控制模型注册表中可供选择的模型。每个模型都可以在不删除其定义的情况下启用或禁用:

model_registry:
  claude:
    - id: "claude-sonnet-4-5-20250929"
      label: "Claude Sonnet 4.5"
      tier: "balanced"
      default: true
      enabled: true  # Model is active and available
    - id: "claude-opus-4-20250514"
      label: "Claude Opus 4"
      tier: "premium"
      enabled: false  # Temporarily disabled (cost control, testing, etc.)

启用字段行为:

  • enabled: true (默认)-模型显示在 list_models 并可供选择进行审议
  • enabled: false -模型对选择隐藏,但保留了定义,便于重新启用
  • 即使在中明确指定,也不能使用禁用的模型 deliberate 电话
  • 默认模型选择会自动跳过禁用的模型

使用案例:

  • 成本控制:暂时禁用昂贵的型号,而不会丢失配置
  • 测试:在集成测试期间启用/禁用特定模型
  • 分阶段推出:将新模型配置为禁用,准备就绪后启用
  • 性能调整:在快速迭代期间禁用慢速模型
  • 合规:暂时限制待批准的型号

核心功能Deep Dive

收敛检测和自动停止

当意见稳定时,模型会自动收敛并停止审议,从而节省时间和API成本。状态:融合(≥85%相似性)、精炼(40-85%)、分歧(\<40%)或僵局(稳定分歧)。投票优先:当模型投票时,趋同反映了投票结果。

完整指南 -阈值、后端、配置

结构化投票

模型根据置信水平(0.0-1.0)、基本原理和持续辩论信号进行投票。投票决定共识:一致(3-0)、多数(2-1)或平局。类似的选项在0.70+相似性阈值时自动合并。

完整指南 -投票结构、示例、整合

HTTP适配器和本地模型

运行Ollama、LM Studio、OpenRouter或Nebius以获得灵活的API成本和隐私选项。与云模型(Claude,GPT-4)混合在一起。

设置指南 -Ollama、LM Studio、OpenRouter、成本分析

扩大人工智能顾问

添加新的CLI工具或HTTP适配器以适应您的基础架构。简单的3-5步流程,包括示例和测试模式。

开发者指南 -分步教程,真实世界的例子

基于证据的审议

通过查询实际代码、文件和数据,在现实中做出地面设计决策:

// MCP client example (e.g., Claude Code)
mcp__ai_counsel__deliberate({
  question: "Should we migrate from SQLite to PostgreSQL?",
  participants: [
    {cli: "claude", model: "sonnet"},
    {cli: "codex", model: "gpt-4"}
  ],
  rounds: 3,
  working_directory: process.cwd()  // Required - enables tools to access your files
})

在审议过程中,模型可以:

  • 📄 读取文件: TOOL_REQUEST: {"name": "read_file", "arguments": {"path": "config.yaml"}}
  • 🔍 搜索代码: TOOL_REQUEST: {"name": "search_code", "arguments": {"pattern": "database.*connect"}}
  • 📋 列出文件: TOOL_REQUEST: {"name": "list_files", "arguments": {"pattern": "*.sql"}}
  • ⚙️ 运行命令: TOOL_REQUEST: {"name": "run_command", "arguments": {"command": "git", "args": ["log", "--oneline"]}}

工作流程示例:

  1. 模型A基于假设提出PostgreSQL
  2. 模型B请求: read_file 检查当前配置
  3. 工具返回: database: sqlite, max_connections: 10
  4. B型搜索: search_code 用于数据库查询
  5. 工具返回:50多个具有复杂JOIN的查询
  6. 模型收敛:“查询复杂性和规模需要PostgreSQL”
  7. 有证据支持的决定,而不是意见

优点:

  • 基于当前状态而非假设的决策
  • 适用于代码审查、架构选择、测试策略
  • 记录中证据的完整审计追踪

支持的工具:

  • read_file -读取文件内容(最大1MB)
  • search_code -搜索正则表达式模式(ripgrep或Python回退)
  • list_files -列出与glob模式匹配的文件
  • run_command -执行安全的只读命令(ls、git、grep等)

配置

控制工具行为 config.yaml:

工作目录 (必填):

  • working_directory 调用时的参数 deliberate 工具
  • 工具解析此目录中的相对路径
  • 例子: working_directory: process.cwd() 在JavaScript MCP客户端中

工具安全 (deliberation.tool_security):

  • exclude_patterns:阻止访问敏感目录(默认值: transcripts/, .git/, node_modules/)
  • max_file_size_bytes:的文件大小限制 read_file (默认值:1MB)
  • command_whitelist:安全命令 run_command (ls、grep、find、cat、head、tail)

文件树 (deliberation.file_tree):

  • enabled:将存储库结构注入第1轮提示中(默认值:true)
  • max_depth:目录深度限制(默认值:3)
  • max_files:要包含的最大文件数(默认值:100)

适配器具体要求:

适配器工作目录行为配置
克劳德通过子流程自动隔离 {working_directory}无需特殊配置
法典没有真正的隔离-可以访问任何文件安全考虑:模型可以在外部读取 {working_directory}
机器人通过子流程自动隔离 {working_directory}无需特殊配置
双子座强制工作空间边界必需: --include-directories {working_directory} 旗帜
Ollama/LMStudioN/A-HTTP适配器没有文件系统访问限制

了解更多:

故障排除

“找不到文件”错误:

  • 确保 working_directory 在MCP客户端调用中设置正确
  • 使用发现模式: list_filesread_file
  • 检查文件路径是否相对于工作目录

“拒绝访问:路径与排除模式匹配”:

  • 工具块 transcripts/, .git/, node_modules/ 默认情况下
  • 通过自定义 deliberation.tool_security.exclude_patterns 在config.yaml中

Gemini“文件路径必须在工作区内”错误:

  • 验证Gemini的 --include-directories 旗帜用途 {working_directory} 占位符
  • 请参阅上面的适配器特定设置

刀具超时错误:

  • 增加 deliberation.tool_security.tool_timeout 用于慢速操作
  • 默认值:文件操作10秒,命令30秒

了解更多:

决策图存储器

AI顾问从过去的审议中学习,以加快未来的决策。两大核心能力:

1.自动上下文注入

在开始新的审议时,该系统:

  • 在过去的辩论中搜索类似的问题(语义相似性)
  • 查找前k个最相关的决策(可配置,默认值:3)
  • 将上下文自动注入第1轮提示中
  • 结果:模型从制度知识开始,收敛速度更快

2.语义搜索 query_decisions

以编程方式查询过去的审议情况:

  • 搜索类似:查找与问题相关的决策
  • 发现矛盾:检测过去的冲突决策
  • 追踪进化:查看意见如何随时间变化
  • 分析模式:确定重复出现的主题

配置 (可选-默认值开箱即用):

decision_graph:
  enabled: true                       # Auto-injection on by default
  db_path: "decision_graph.db"        # Resolves to project root (works for any user/folder)
  similarity_threshold: 0.6           # Adjust to control context relevance
  max_context_decisions: 3            # How many past decisions to inject

适用于任何目录中的任何用户 -数据库路径相对于项目根进行解析。

快速入门 | 配置 | 上下文注入

用法

启动服务器

python server.py

在Claude代码中配置

选项A:项目配置(推荐) -创建 .mcp.json:

{
  "mcpServers": {
    "ai-counsel": {
      "type": "stdio",
      "command": ".venv/bin/python",
      "args": ["server.py"],
      "env": {}
    }
  }
}

选项B:用户配置 -添加到 ~/.claude.json 绝对路径。

配置完成后,重新启动Claude Code。

模型选择和会话默认值

  • 通过运行MCP工具发现每个适配器的已分配型号 list_models.
  • 设置每个会话的默认值 set_session_models;离开 model 空白处 deliberate 使用这些默认值。
  • 完整的说明和请求示例 模型注册表和选择器.

例子

快速模式:

mcp__ai-counsel__deliberate({
  question: "Should we migrate to TypeScript?",
  participants: [{cli: "claude", model: "sonnet"}, {cli: "codex", model: "gpt-5.2-codex"}],
  mode: "quick"
})

会议模式(多轮):

mcp__ai-counsel__deliberate({
  question: "JWT vs session-based auth?",
  participants: [
    {cli: "claude", model: "sonnet"},
    {cli: "codex", model: "gpt-5.2-codex"}
  ],
  rounds: 3,
  mode: "conference"
})

搜索过去的决策:

mcp__ai-counsel__query_decisions({
  query_text: "database choice",
  threshold: 0.5,  // NEW! Adjust sensitivity (0.0-1.0, default 0.6)
  limit: 5
})
// Returns: Similar past deliberations with consensus and similarity scores

// NEW! Empty results include helpful diagnostics:
{
  "type": "similar_decisions",
  "count": 0,
  "results": [],
  "diagnostics": {
    "total_decisions": 125,
    "best_match_score": 0.45,
    "near_misses": [{"question": "Database indexing...", "score": 0.45}],
    "suggested_threshold": 0.45,
    "message": "No results found above threshold 0.6. Best match scored 0.450. Try threshold=0.45..."
  }
}

// Find contradictions
mcp__ai-counsel__query_decisions({
  operation: "find_contradictions"
})
// Returns: Decisions where consensus conflicts

// Trace evolution
mcp__ai-counsel__query_decisions({
  query: "microservices architecture",
  operation: "trace_evolution"
})
// Returns: How opinions evolved over time on this topic

文字记录

所有审议结果保存至 transcripts/ 人工智能生成的摘要和完整的辩论历史。

建筑

ai-counsel/
├── server.py                # MCP server entry point
├── config.yaml              # Configuration
├── adapters/                # CLI/HTTP adapters
│   ├── base.py             # Abstract base
│   ├── base_http.py        # HTTP base
│   └── [adapter implementations]
├── deliberation/            # Core engine
│   ├── engine.py           # Orchestration
│   ├── convergence.py      # Similarity detection
│   └── transcript.py       # Markdown generation
├── models/                  # Data models (Pydantic)
├── tests/                   # Unit/integration/e2e tests
└── decision_graph/         # Optional memory system

文档中心

入门指南

核心概念

设置和配置

发展

参考

发展

运行测试

pytest tests/unit -v                    # Unit tests (fast)
pytest tests/integration -v -m integration  # Integration tests
pytest --cov=. --cov-report=html       # Coverage report

CLAUDE.md 用于开发工作流程和架构说明。

贡献

  1. 克隆该仓库
  2. 创建要素分支(git checkout -b feature/your-feature)
  3. 先编写测试(TDD工作流程)
  4. 机具功能
  5. 确保所有测试通过
  6. 提交带有清晰描述的PR

许可证

MIT许可证-请参阅许可证文件

学分

内置:

受到超越并行意见收集的真正审议性人工智能共识需求的启发。

______________________________________________________________________

状态

Build Tests

生产就绪 -多模型协商共识,具有跨用户决策图记忆、结构化投票和关键技术决策的自适应提前停止功能!

目录标签

目录标签

PythonClaude设计AI辩论本地部署多模型共识技术决策架构设计自动化评审

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP