Agent Cockpit

io.github.chutingyean由 GitHub 账号 chutingyean 发布v0.1.0更新于 Nov 7, 2026

Evidence-chain whiteboard for AI research agents: every claim traces back to its run and code.

概览

AI 生成的概览

本地白板兼 MCP 服务器,记录 AI 研究智能体的计划、实验运行、结论与代码,并标出证据已失效的结论。

可以做什么
  • 记录研究计划、阶段、任务卡、假设与前提
  • 运行实验并登记结论,证据须来自已记录运行写入的文件与字段
  • 检查证据链:待决事项、需复核的结论与未上报的改动总览
  • 向人类发起决策请求并读取答复
  • 上报改动文件并执行代码审查,内置代码图与影响分析
  • 读取与编辑白板画布:列出、搜索、创建节点、连线、绘制架构图
适用场景
适合多个 AI 智能体在同一研究仓库中协作、需要知道代码改动后哪些结果仍然成立,并希望把未上报的改动、待答问题和失效结论集中显示在一块本地白板上的场景。
运行要求
以 npm 包 @tingyen/agent-cockpit 通过 stdio 在本地运行。需要 Node.js 22.13 或更高版本(用于 node:sqlite)和 git;python3 仅演示项目需要。目标目录必须是 git 仓库。未声明账号、API 密钥或环境变量。白板仅绑定 127.0.0.1。
安装前请注意
init 命令会在仓库内写入文件:MCP 配置、规则文件、Stop 钩子和可阻止 git commit 的 pre-commit 钩子。智能体可运行实验并写入白板,事件日志 .cockpit/events.jsonl 被建议提交。启用前请先查看这些钩子与配置的改动。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Agent Cockpit,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[Agent Cockpit: every research claim, traceable to the code that produced it]

[tests] [license: AGPL-3.0-or-later] [node >= 22.13] [MCP: any agent]

English · 繁體中文

Agent Cockpit is a local whiteboard plus an MCP server for AI agents that do research. Any agent that speaks MCP (Claude Code, Codex, Cursor, Gemini CLI, …) draws its work onto the same board: the plan, the tasks, every experiment run, every claim, and the code each run depended on. A deterministic engine keeps checking the whole evidence chain. When any link changes, the cards that depend on it turn red. You can tell which results still hold, and why, without reading the code.

[Replaying a real session: two agents complete a study, an unreported change breaks one claim, a human decides, an agent restores it]

Replay of a real session: Claude Code and Codex complete a small study from an empty repo. An unreported edit breaks one claim, and the cockpit raises a decision and writes a brief. A human picks "restore", and an agent carries it out.

Why

After a few days of research with AI agents, the same things keep going wrong:

  • Claims lose their footing silently. An agent edits the grader, the data pipeline or a statistics helper, and results that were "verified" no longer hold. Nobody notices.
  • Changes go unreported. Files change and no agent says so, or an agent says it changed something it didn't.
  • Decisions pile up, assumptions harden, loops spin. Questions meant for a human wait unanswered, untested premises become foundations, and an agent keeps tweaking hyperparameters "one more time".
  • The code grows faster than you can read it.

Agent Cockpit turns these into rules a machine can check, and shows the result on one board.

Features

  • Evidence chains, down to a JSON field. A claim must cite a value that a recorded run actually wrote. Each run records the hash of its script, of every file the script depends on, and of each function it reaches. If any of those changes, the run goes stale and every claim built on it is flagged for recheck. Revert the change and the hashes match again, so the claims recover.
  • Works with any MCP agent. Agent identity comes from the MCP handshake. cockpit init writes the config for Claude Code, Cursor, VS Code and Gemini CLI, and prints the command for Codex.
  • One write gate. Every write from MCP, the CLI or the board passes through the same validator. Non-compliant writes are rejected with a reason the agent can act on. Rejections are logged too.
  • Unreported changes get caught. Real file changes are detected whether or not an agent reports them. Unreported changes block git commit, and Claude Code cannot end its turn until it reports them.
  • Built-in code graph and code review, no extra installs. A lightweight graphify-style call graph supplies dependency closures, communities, core nodes and impact analysis. A rule-based reviewer looks at the changed lines every time a file changes. Install the real graphify or open-code-review and they are used automatically.
  • Human decisions in the loop. Agents ask through cockpit_decide and wait. When a change breaks claims, the cockpit raises a decision itself and writes a one-page evidence brief, laid out by answer-me-with-html.
  • Replay. Everything is an append-only event, so you can scrub or play the board back to any moment. A brief stays available even after the problem is fixed.
  • Local and deterministic. The board binds to 127.0.0.1. Every check is a plain rule, with no LLM calls and zero tokens.

Quick start

Requires Node.js 22.13+ (for the built-in node:sqlite), git, and python3 for the demo project.

bash
git clone https://github.com/chutingyean/Agent-Cockpit.gitcd Agent-Cockpitnpm installnpm run demo                                       # build a demo research repo: 6 real runs, 6 claimsnode bin/cockpit.mjs serve --repo demo/research    # open http://127.0.0.1:4180

Then, in a second terminal, break something and watch the board:

bash
node bin/cockpit.mjs demo --break      # quietly loosens the grader's answer matching, unreportednode bin/cockpit.mjs demo --restore    # put it back: hashes match, claims recover

[The board after the grader was changed: dependent claims turn red, the cockpit raises a decision]

Use it on your own research repo

No clone needed:

bash
cd /path/to/your-research                                   # must be a git reponpx -y @tingyen/agent-cockpit init                      # MCP configs, AGENTS.md, Stop hook, pre-commitnpx -y @tingyen/agent-cockpit serve                     # the boardnpx -y @tingyen/agent-cockpit run -- python3 train.py   # run experiments through the cockpit

Prefer a permanent cockpit command? npm install -g @tingyen/agent-cockpit.

init only writes inside your repo. Open the repo in your agent and it reads AGENTS.md and the MCP config. The tutorial walks through every agent step by step.

Claude Code plugin. Adds a skill that teaches Claude when and how to use Agent Cockpit, including how to set it up:

bash
claude plugin marketplace add chutingyean/Agent-Cockpitclaude plugin install agent-cockpit@agent-cockpit

The same skill lives in skills/agent-cockpit/SKILL.md for other agents that read SKILL.md files. The MCP server is also listed in the MCP Registry as io.github.chutingyean/agent-cockpit.

How it works

[The evidence graph: claim → run → code → architecture layer, with review, summaries and briefs as annotations]

  • Content hashes, not timestamps. Staleness is decided by comparing hashes, so reverting a file restores validity exactly.
  • Function-level precision. For Python dependencies, a change to a function the run never reaches does not make the run stale. Changes to reachable functions, imports or module-level code always do.
  • Event sourcing. .cockpit/events.jsonl is the single source of truth, and it doubles as the agents' work log. Commit it. The board is a pure projection (reduce → derive), which makes replay possible.

[Architecture: agents, CLI and the board all write through one gate into an append-only event store; the engine projects it onto the board]

MCP tools

Research toolsPurpose
cockpit_overviewCall first: pending decisions, claims needing recheck and why, unreported changes
cockpit_plan / cockpit_stageThe research path. A stage cannot close until its required tools have been called
cockpit_taskThe agent's own task card, updated every round (what, why, next)
cockpit_runRun an experiment and record it
cockpit_claimRegister a claim. Evidence must be a file and field written by a recorded run
cockpit_hypothesis / cockpit_premiseHypotheses and not-yet-verified premises
cockpit_decide / cockpit_decisionsAsk a human; read the answers
cockpit_reportReport which files changed
cockpit_reviewCode review: ocr if installed, otherwise built-in rules; or report your own findings

Canvas tools: canvas_list, canvas_read, canvas_search, canvas_createNode, canvas_link, canvas_diagram (architecture diagrams in md²'s format) and canvas_structure (code graph and impact analysis).

CLI

npm install -g @tingyen/agent-cockpit gives you a global cockpit command. Otherwise use npx -y @tingyen/agent-cockpit <command>, or node bin/cockpit.mjs from a clone.

CommandPurpose
cockpit initWrite MCP configs, rules files, the Stop hook and the pre-commit hook
cockpit serve [--port 4180]Open the board
cockpit run -- <command>Run and record an experiment
cockpit graphRebuild the code graph (graphify if installed)
cockpit review [--all]Code review (ocr if installed; changed lines by default)
cockpit status / cockpit checkPrint the cockpit summary / list unreported changes
cockpit demo [--break|--restore|--fresh]The demo project

Every command accepts --repo <path>; the default is the current directory.

Project layout

bin/cockpit.mjs      CLIsrc/engine.mjs       reduce and derive: evidence chains, propagation rules, tours, brief draftssrc/gate.mjs         the single write gatesrc/store.mjs        event store (node:sqlite) and canvas projectionsrc/run.mjs          cockpit runsrc/graph.mjs        built-in code graph (graphify-compatible output)src/review.mjs       built-in rule-based code reviewsrc/mcp.mjs          MCP serversrc/server.mjs       board server (SSE, decisions, briefs, replay)web/board.html       the board (no framework, no build step)demo/template/       demo research project (Python, really runs)skills/              SKILL.md that teaches agents to work under Agent Cockpit.claude-plugin/      Claude Code plugin and marketplace manifestsserver.json          MCP Registry metadatadocs/                tutorial, figures, screenshots, a recorded real sessiontest/                node:test suite (npm test)

Documentation

  • Tutorial: from the demo to your own project, every agent, replay, and a recorded real session
  • Recorded session: the events, the code the agents wrote, and their output

Acknowledgements

Agent Cockpit fuses ideas from six projects into one evidence graph: research-cockpit (claims, hypotheses, premises, decisions), graphify (code graph), open-code-review (code review), Understand-Anything (summaries, layers, tours, personas), md² (architecture diagram format) and answer-me-with-html (one-page briefs). See THIRD_PARTY_NOTICES.md for what is bundled and under which license.

License

Copyright (C) 2026 chutingyean

Agent Cockpit is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. If you modify it and let others use it over a network, you must offer them the source code of your version. Third-party components keep their own licenses; see THIRD_PARTY_NOTICES.md.

来源:README.md,提交 a968c6b

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.0最新Nov 7, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分