carlos-flow MCP Server
Provides Git-based repository change tracking and enforcement: comparing working-tree changes against a scope whitelist using git diff, analyzing diff hunks, snapshotting files before dispatch, and generating atomic revert plans.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Carlos Flow — Cindy 适配版
面向 AI 编码 Agent 的机械门禁:留痕 → 派发 → 验证 → 裁定 → 审计 → 还原 把"相信 Agent"变成"验证 Agent"——机器级 scope 限制、真实命令执行、防篡改审计链。 语言 / Languages: 中文 | English 版本 / Version: 2.5.3 | License: MIT | CI: passing | Node.js: 22+ | MCP: 1.29+
🎯 为什么选择 Carlos Flow?
绝大多数 AI 编码流程是建议性的。提示词写"只改这些文件"——Agent 客气地点头,然后把半个仓库重写了。提示词写"跑一下测试"——Agent 汇报"测试通过",其实根本没跑。 Carlos Flow 是机械性的。约束写在代码里,不写在散文里。
消除的痛点
痛点 | 今天的典型状态 | Carlos Flow 的答案 |
越界改动 | "只改 |
|
验证表演 | Agent 声称"测试通过",无人能证明 |
|
可洗白的审计日志 | 普通文件里的日志——可删可改 | SHA-256 链式审计日志( |
失控的免检模式 | 一句话("这很急,跳过门禁")关闭所有防护 | 免检需卡片显式 |
无限派发额度 | 领卡即重置计数——可无限重试 |
|
忘记拉起守护进程 | "你启动服务了吗?" / 端口已被占用 | Bridge 首次调用自动拉起、健康检查、Token 认证、限流 |
自证式复核 | 同一个 Agent 既实现又审批 | 内置 |
改坏了无法回退 | 只能手动 | 派发前自动快照 → |
差异对比
能力 | Carlos Flow | 原生 MCP Server | 提示词 / 手写脚本 |
越界拦截 | ✅ 运行时 | ❌ 无 | ❌ 靠自觉 |
真实验证 | ✅ spawn 执行并捕获输出 | ❌ 无 | ❌ Agent 自述 |
防篡改审计 | ✅ SHA-256 链式哈希 | ❌ 无 | ❌ 无 |
可控免检 | ✅ 显式开启 + 自动清零 | ❌ 无 | ❌ 一句话全关 |
诚实派发配额 | ✅ 只计派发 | ❌ 无 | ❌ 无 |
独立复核 | ✅ 内置 | ❌ 无 | ❌ 可选 |
快照 + 还原 | ✅ 自动、原子计划 | ❌ 无 | ❌ 手动 |
守护进程生命周期 | ✅ 全自动(Cindy 版) | ❌ 手动 | ❌ 手动 |
版本 / Version: 2.5.3 | License: MIT | CI: passing | Node.js: 22+ |
Related MCP server: MonoMCP Gateway
🚀 30 秒快速开始
方式一:Cindy 插件市场(推荐)
Cindy → 设置 → 插件 → 浏览市场
搜索
carlos-flow点击安装在插件设置页填写环境变量
完全退出 Cindy 重启,然后说"走门禁"
方式二:从源码安装
git clone https://github.com/skyer-now/carlos-flow-cindy.git
cd carlos-flow-cindy
npm install
cp .env.example .env # 编辑:CARLOS_FLOW_MCP_ROOT、CARLOS_FLOW_HOME
npm test # 冒烟测试(完全隔离)
npm run test:e2e # 16 项端到端用例
```**语言 / Languages:** [中文](README.zh.md) | [English](README.en.md)
**版本 / Version:** 2.5.3 | **License:** MIT | **CI:** passing | **Node.js:** 22+ | **MCP:** 1.29+
---
## 🌟 核心能力
### 1️⃣ 真实验证 — `flow_run_verify`
```typescript
const result = await runVerifyCommand(card.verify.cmd, cwd);
// { ok: boolean, exitCode: number, stdout: string, stderr: string, durationMs: number }真实 spawn 子进程,捕获完整输出,60 秒熔断。不再是"相信我,跑过了"。
2️⃣ 越界拦截 — flow_check_scope
const result = enforceScope(scopeWhitelist, changedFiles);
// { ok: boolean, violations: string[] }机器级对比工作区变更与卡片白名单,文件级精度,未改动文件零误报。
3️⃣ 防篡改审计链 — verifyAuditChain
const result = verifyAuditChain({ sinceIndex: 0 });
// { ok: boolean, brokenAt?: number, detail?: string }每条记录携带 prevHash、hash、seq。改动一个字节,下游全部失效——是数学保证,不是管理保证。
4️⃣ 可控免检 — flow_bypass + isBypassed()
必须显式开启(
bypass=true且confirmed=true)每次派发自动清零——不可能"忘记关掉"
每次开关都写入审计链
5️⃣ 诚实派发配额 — dispatch_count
只在
flow_dispatch递增;flow_claim/flow_verdict永不计数配额耗尽同时阻断 claim 与 dispatch
无无限重试路径
6️⃣ 快照与还原 — flow_dispatch → flow_revert_plan
scope内文件在每次派发前自动快照flow_revert_plan输出原子化、有序(由新到旧)的还原计划支持部分回滚
7️⃣ 独立复核 — auditor 角色
独立的四段合同,强制自行取证
Auditor 必须自己跑
git status --porcelain/git diff裁定枚举严格:
PASS/DIRECTION/LOCAL语言 / Languages: 中文 | English 版本 / Version: 2.5.3 | License: MIT | CI: passing | Node.js: 22+ | MCP: 1.29+
📖 典型场景
场景 1 — 新功能开发
flowchart LR
A[需求] --> B[提交卡片]
B --> C[派发 Executor]
C --> D[实现]
D --> E[保存结果]
E --> F[真实验证]
F --> G[越界检查]
G --> H[派发 Auditor]
H --> I[独立复核]
I --> J[裁定 PASS]场景 2 — Bug 修复
卡片
quote锚定用户原话——Agent 不能悄悄改写需求scope收窄到单文件verify.cmd跑的是回归测试,不是手写总结
场景 3 — 大规模重构
多文件
scope统一白名单管理快照兜底半途而废的重构
还原计划是最后的安全网
场景 4 — 安全审计 / 敏感路径
T2 风险档强制要求
confirmed=true敏感路径(
config/、secrets/、infra/等)自动标记并拦截审计链提供防篡改证据链
场景 5 — CI / PR 门禁
同一套流程,由 CI 驱动
裁定结果可阻断合并
审计日志归档以备合规语言 / Languages: 中文 | English 版本 / Version: 2.5.3 | License: MIT | CI: passing | Node.js: 22+ | MCP: 1.29+
🏗️ 架构
flowchart TB
subgraph Cindy["Cindy App"]
UI[插件设置页] --> ENV[加密保险库]
ENV --> BR[Bridge 守护进程]
end
subgraph Server["MCP Server (src/)"]
T[14 个工具] --> C[卡片解析与校验]
C --> S[状态与审计链]
S --> D[派发 / 快照 / 验证]
end
BR <-- "TCP 127.0.0.1:19099 · Token · 限流" --> Server
CLI[CLI 客户端] --> BR
REA[rea MCP] -. 可选 · 需另行部署 .-> BRCindy 版为什么要用 Bridge?
维度 | Cindy 版(本仓库) | OpenCode 版 |
传输协议 | TCP Bridge | 纯 stdio |
守护进程 | 全自动——首次调用拉起、健康检查 | 由 OpenCode 托管 |
配置方式 | 插件设置页 + 环境变量 |
|
密钥存储 | Cindy 加密保险库,代码零明文 | 明文配置(用户自行管理) |
rea 集成 | 另行注册 rea MCP server(需 | 另行注册 rea MCP server |
适用场景 | Cindy App 用户 | OpenCode 2.2.2+ 用户 |
版本 / Version: 2.5.3 | License: MIT | CI: passing |
🛠️ 14 个工具
📝 卡片与留痕
工具 | 作用 | 关键参数 |
| 读取完整协议(档位 T0/T1/T2、合同、错误分层、状态 schema) | — |
| 写入用户原话(锚点数据源) |
|
| 提交任务卡(校验 + 留痕) |
|
🚀 派发与执行
工具 | 作用 | 关键参数 |
| 领取派发名额,返回四段合同 |
|
| 生成合同 prompt + 自动文件快照 |
|
| 真实执行 |
|
| 机器级 scope 越界拦截 |
|
⚖️ 裁定与状态
工具 | 作用 | 关键参数 |
| 记录裁定( |
|
| 查询完整门禁状态 |
|
🔍 审计与取证
工具 | 作用 | 关键参数 |
| 读取审计流水(按类型/时间/会话筛选) |
|
| git diff hunk 级分析 |
|
| 生成原子还原计划 |
|
🛡️ 免检与还原
工具 | 作用 | 关键参数 |
| 免检开关(需 |
|
完整工具参考:运行时调用
flow_protocol,它是权威的机器可读规范。语言 / Languages: 中文 | English 版本 / Version: 2.5.3 | License: MIT | CI: passing | Node.js: 22+ | MCP: 1.29+
⚙️ 环境变量
变量 | 必填 | 说明 | 示例 |
| ✅ | MCP 源码根目录(含 |
|
| ✅ | 状态 / 审计 / 快照根目录 |
|
| ❌ | Bridge 监听端口(默认 |
|
| ❌ | rea MCP 源码根目录 |
|
| ❌ | Ghidra 安装目录 |
|
| ❌ | JDK 21 安装目录 |
|
| ❌ | Node.js 可执行文件路径(默认 |
|
提示:插件设置页修改后需完全退出 Cindy 重启生效。语言 / Languages: 中文 | English 版本 / Version: 2.5.3 | License: MIT | CI: passing | Node.js: 22+ | MCP: 1.29+
🧪 测试
npm test # 冒烟测试——隔离临时目录,< 10s
npm run test:e2e # 16 项端到端用例
npm run test:rea # 8 项 rea Ghidra 真实分析CI 在 ubuntu-latest 与 windows-latest 上对每次 push / pull request 运行。语言 / Languages: 中文 | English 版本 / Version: 2.5.3 | License: MIT | CI: passing | Node.js: 22+ | MCP: 1.29+
📋 变更日志
完整历史 → CHANGELOG.md
v2.5.3 — 2026-11-04 · 致命语法错误修复 + 门禁真验证
类型 | 变更 |
✨ 新增工具 |
|
✨ 核心 |
|
✨ 核心 |
|
✨ 核心 |
|
✨ 核心 |
|
🐛 修复 | role 白名单(仅 |
🐛 修复 |
|
🐛 修复 | 免检状态在新派发时自动清零 |
🐛 修复 | 过期卡 / 配额 / 裁定枚举 / 参数校验 |
⚠️ v2.5.1 存在 18 项 P0 缺陷,请升级到 v2.5.2 或更高版本。语言 / Languages: 中文 | English 版本 / Version: 2.5.3 | License: MIT | CI: passing | Node.js: 22+ | MCP: 1.29+
❓ 常见问题
现象 | 解决 |
Bridge 端口冲突( | 改 |
插件设置页改完不生效 | 完全退出 Cindy 并重启(不是最小化到托盘) |
审计链校验失败 | 检查 |
验证命令超时 |
|
scope 越界误报 |
|
版本 / Version: 2.5.3 | License: MIT |
📄 许可证
MIT —— 见 LICENSE语言 / Languages: 中文 | English 版本 / Version: 2.5.3 | License: MIT | CI: passing | Node.js: 22+ | MCP: 1.29+
🤝 贡献
欢迎 PR!请先跑通 npm test 和 npm run test:e2e。详见 CONTRIBUTING.md。语言 / Languages: 中文 | English
版本 / Version: 2.5.3 | License: MIT | CI: passing | Node.js: 22+ | MCP: 1.29+
用 OpenCode? → carlos-flow-opencode —— 纯 stdio,无 Bridge,配置走 .mcprc / opencode.json。
This server cannot be deployed
Maintenance
Related MCP Connectors
Remote MCP for Kiro release readiness, evidence binders, signoff, and CI approval receipts.
One MCP endpoint for your company's tools, with per-person sign-in, policy and audit.
Governed MCP gateway: one endpoint for your tools, with credential custody and audit log.
Single-connection MCP gateway discovering and executing 490+ verified MCP & A2A tools.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables users to define and run MCP tools using declarative YAML configs with built-in trust enforcement, credential brokering, and tamper-evident audit logging.14MIT

MonoMCP Gatewayofficial
FlicenseNot gradedqualityBmaintenanceA unified MCP layer that serves organization toolkits as MCP endpoints with per-tool permissions, an async approval queue, and full audit logging.-- AlicenseNot gradedqualityCmaintenanceEnables centralized proxy and orchestration of MCP servers, providing unified tool discovery, authentication, and secure request routing. It adds a human-in-the-loop approval gate for high-risk actions and audit logging.Apache 2.0
- AlicenseNot gradedqualityBmaintenanceEnables users to trace regulatory rule changes to affected parties and required actions through deterministic safety gates, returning dated action plans and hash-linked evidence records. Supports 12 MCP tools over stdio or streamable HTTP for source comparison, obligation decomposition, scope assessment, planning, and evidence validation across multiple domain packs.MIT