co-scientist-plugin
co-scientist 插件
在你的编码代理中运行一个多智能体科学研究引擎。
一个 Agent Plugins 1.0 包,让 Claude Code、Codex CLI、Cursor、VS Code、Copilot 和 Kiro 驱动 AI co-scientist 引擎:生成 假设、评审假设、在 Elo 锦标赛中排序、进化胜出者, 并读回综合结果。
安装 · 代理能获得什么 · 设计规则 · 与 ScientistOS 协同 · 贡献
理念
AI co-scientist 引擎是 Gottweis 等人,Nature,2026 的一个开源重新实现。它接收一个研究目标,并运行六个专家代理:生成、 反思、排序、进化、邻近性和元评审,由 一个 Supervisor 在持久化的 SQLite 任务队列上调度。
该引擎有一个 CLI。这个包为它提供了一个面向代理的界面,因此 驱动它的可以是 Claude Code 或 Codex,而不是你手动输入命令:
you → "review hypothesis 3 in that Crohn's session and tell me what breaks"
agent → reads the hypothesis, searches the literature, applies the rubric,
records the review into the engine's database, reports the verdict它写下的评审现在成为引擎自身 Reflection 代理写入的同一张表中的一行。它计入锦标赛。元评审会看到它。
Related MCP server: consensus-mcp
代理能获得什么
一个 MCP 服务器,提供十五个工具:
分组 | 工具 |
生命周期 |
|
读取 |
|
写入 |
|
诊断 |
|
七项技能,承载工具无法承载的判断:
技能 | 作用 |
| 将模糊的目标打磨为清晰的目标,对运行规模设门槛,启动并监控运行 |
| 诚实地阅读排序后的输出,检查五种已知的失败模式 |
| 依据带锚点的评分标准进行评审,做出裁决决定,然后记录结果 |
| 进行三轮到五轮的辩论,依据有序标准做出决定,记录 Elo 对局 |
| 组合、简化、可行性、跳出框架,每种都有各自的参考文件和失败模式 |
| 跨模型 Elo 基准测试,以及如何不夸大其词地解读结果 |
| 逐条核查引用是否真的支持所声称的内容,并给出裁决 |
设计规则
引擎保留所有状态:Elo、任务队列、去重、嵌入、 token 预算、终止条件。这个包不重新实现其中任何一部分。
代理产生的所有内容都通过引擎自身代理写入的同一套仓库回流。
match_record 复用引擎的 Elo 模块及其
elo_journal 幂等性。review_record 写入与 Reflection 完全相同的 Review 模型,
并将 draft 提升为 reviewed,与 Reflection 的做法完全一致。
hypothesis_record 根据是否存在父节点来推导 created_by。
这些技能用直白的话说明后果:未被记录的输出等于不存在。
一个代理在对话中描述了一次评审却没有调用
review_record,那么它就没有产生任何系统可用的东西。
这正是阻止常见失败模式的关键:"把提示词移植成技能然后就算完成"。 提示词不是质量来源。锦标赛才是, 而锦标赛需要一个地方来计分。
与 ScientistOS 协同
这个插件生成并排序候选假设。它不决定
你可以从这些假设中主张什么,而这一区别至关重要:一个假设
可能在锦标赛中排名第一,却仍然建立在一个与文献
相矛盾的机制之上。reading-research-overviews 技能列出了这种失败模式以及
其他几种需要人工核查的模式。
ScientistOS 将这种核查 变成结构性的而非建议性的。它维护一个类型化的证据图,并 拒绝以超出其谱系支持的强度记录任何主张。
this plugin → ranked hypotheses, reviews with claim / url / excerpt per source
↓
ScientistOS → hypothesis and source nodes, evidence at its honest level,
an integrity gate before anything gets written up两者并排安装,因为两者都是技能和 MCP 包,一个 同时加载两者的代理可以获得完整的路径。这里没有任何东西依赖 ScientistOS, ScientistOS 也不依赖这个包。
安装
无需 API 密钥,也无需为计费做任何决定。 如果你 已经登录了 Claude Code 或 Codex CLI,那就满足了全部 要求:研究引擎通过你编码代理所使用的同一个订阅 来运行其代理。
python3.12 -m venv .venv
source .venv/bin/activate
pip install "co-scientist @ git+https://github.com/Kaimen-Inc/Co-Scientist.git"
pip install "co-scientist-plugin @ git+https://github.com/Ahmad-Jaradat-Space/co-scientist-plugin.git"
co-scientist init首次连接时,服务器会寻找一个可用的后端。如果找不到,
它会采用任何已安装并已登录的代理 CLI,将该选择写入
~/.co-scientist/config.toml,然后继续运行。已有的 provider =
行永远不会被改动,因此你自己配置好的设置不会被干扰。设置
COSCI_AUTO_BACKEND=0 可以完全关闭自动选择。
如果 doctor 仍然报告没有后端,请登录 CLI(claude 或
codex login),而不要去找什么密钥。它还会报告一个本地哈希
嵌入器,这是预期的无密钥状态:去重能捕捉重复的措辞,
但无法捕捉两句话用不同方式表达同一个假设的情况。
一切数据都留在你的机器上:SQLite 位于 ./data 下,无需账户,无需服务
注册,除了你的 CLI 本来就会产生的模型调用之外没有任何网络流量。
config/subscription.toml 是同样的选择,
只不过由你手动写出,将模型 ID 固定下来,而不是让
你的 CLI 去解析别名。通过
export COSCI_CONFIG=/path/to/config/subscription.toml 让引擎指向它。
计量式 API 同样可用:在首次运行前于
~/.co-scientist/config.toml 中设置 provider 和密钥,自动选择就不会
插手。estimate_cost 随后会根据预算估算运行成本,而这些技能
会就支出征询许可,而不是直接消耗时间。参见
引擎的后端指南。
Codex CLI
codex plugins install ./co-scientist-pluginClaude Code
ln -s "$PWD/skills/"* ~/.claude/skills/
claude mcp add co-scientist -- co-scientist-mcp其他任何客户端
任何能读取 Agent Plugins 1.0 的客户端都会按原样加载该目录。任何
能分别读取 SKILL.md 和 MCP 配置的客户端,也可以单独使用 skills/ 和 mcp.json。
配置
服务器读取引擎的配置。如果需要,可以在你的
mcp.json 的 env 块中设置以下变量:
变量 | 作用 |
| 要叠加加载的额外 TOML 配置的路径 |
|
|
| 等待已启动的运行完成注册的秒数,默认 120 |
|
|
只读安装
一次会话会发起数百次模型调用,并且在对话结束后 继续运行。在共享机器上,或任何不应让代理 自行启动会话的环境中:
co-scientist-mcp --read-only读取功能保持可用;session_start 和 session_resume 会拒绝并给出
解释。
Virtualenv 路径
mcp.json 调用 co-scientist-mcp,这假设控制台脚本位于
PATH 上。如果你的代理没有激活 virtualenv,请使用绝对路径:
{
"command": "/path/to/.venv/bin/co-scientist-mcp",
"args": []
}开发
pip install -e ".[dev]"
ruff check coscientist_plugin tests
pytest -q
co-scientist-plugin-validate每个测试都在离线环境下针对一次性数据库运行。无需密钥,无需网络,无需 模型调用。
三项检查守护这个包:
co-scientist-plugin-validate检查规范符合性:十个允许的 清单字段、传输类型、技能 frontmatter、名称与目录 一致性、正文长度,以及每个相对链接都能解析且只保持 一层深度。tests/test_plugin.py检查验证器无法检查的内容:没有技能 指示代理调用不存在的 MCP 工具或引擎命令, 并且记录纪律确实写在了负责写入的技能中。tests/test_server.py覆盖设计所依赖的不变量:零和 Elo、每轮幂等、跨会话拒绝、没有摘录的证据 被拒绝,以及状态转换永远不会把已排序的假设 拖回更早的状态。
与引擎的关系
本仓库仅包含插件层。它所驱动的引擎位于
Kaimen-Inc/Co-Scientist,
是在同一许可证下的独立项目。参见 NOTICE。
两个项目均与 Google 或论文作者无关联。 两者产生的假设都是科学家的起点,而非结论。
许可证
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityAmaintenanceAn MCP server that lets Claude Code consult stronger AI models (o3, Gemini 2.5 Pro, DeepSeek Reasoner) when you need deeper analysis on complex problems.1102129MIT
- AlicenseNot gradedqualityCmaintenanceAn MCP server that enables multi-model debate and consensus building through a single tool. It orchestrates multiple AI models from various providers to debate topics and reach validated conclusions with real-time progress tracking.323MIT

multivon-mcpofficial
AlicenseAqualityAmaintenanceMCP server that gives AI coding agents direct access to evaluation tools.22Apache 2.0- AlicenseAqualityDmaintenanceMCP server that lets Claude Code ask GPT Codex for adversarial planning, code review, debugging, research, and risk triage without leaving your project workflow.971MIT
Related MCP Connectors
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
MCP server for AI dialogue using various LLM models via AceDataCloud
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Ahmad-Jaradat-Space/co-scientist-plugin'
If you have feedback or need assistance with the MCP directory API, please join our Discord server