SuperAPI AI 工具集

tirith

Tirith 是一个面向并行编码 Agent 的协调服务器。它通过 MCP 协议为多个编码 Agent 提供文件声明(Claims)、任务板(含依赖关系)、版本化接口契约、变更通知和决策日志等功能,防止多个 Agent 在同一仓库中互相干扰。当五到十个编码 Agent 同时在一个仓库上工作时,Tirith 作为小型守护进程,让 Agent 在编辑前先声明文件,并在声明时获得相关通知、契约、决策和笔记;接口形状在任一方实现前先行发布。它支持 stdio 或 HTTP 方式,兼容 Claude Code、Cursor、Codex、LangGraph、CrewAI 以及普通脚本等任何支持 MCP 的客户端。Tirith 还支持按仓库路径作用域的 Agent 笔记记忆,不存储对话历史和嵌入。当前 v1 已发布,所有原语、CLI、持久化和仪表板均已构建并测试,工具模式遵循语义版本控制,支持 macOS、Linux、Windows(x86_64 和 ARM64),并已列入 MCP Registry。

访问官网

工具介绍

Tirith 是一个面向并行编码 Agent 的协调服务器(Coordination server),通过 MCP 协议提供文件声明(Claims)、任务板、接口契约、变更通知、决策日志、路径作用域记忆笔记和 Agent 消息等功能,旨在让多个编码 Agent 在同一仓库上协同工作时互不干扰。

【用途】 当五到十个编码 Agent 在同一个仓库上运行,它们可能编辑相同文件、重命名其他 Agent 依赖的内容,或以不同形态构建接口的两端。Tirith 作为它们共同通信的小型守护进程(daemon),让 Agent 在编辑前先声明文件,并在声明时获得该文件相关的通知、契约、决策和笔记,同时要求任一方在实现接口前先发布其形状。

【主要能力】

  • 文件声明(Claims):Agent 在编辑前声明文件,避免冲突。
  • 任务板(Task board):支持依赖关系的任务管理。
  • 版本化接口契约(Interface contracts):接口形状在任一方实现前先行发布。
  • 变更通知(Change notices)。
  • 决策日志(Decisions log)。
  • 路径作用域记忆笔记:Agent 可留下与仓库路径绑定的笔记,一个 Agent 对某个文件学到的知识会传递给下一个声明该文件的 Agent。
  • Agent 消息(Agent messages)。
  • 支持 swarm lead(集群领导)和升级机制:生成其他 Agent 的会话声明保留路径 .tirith/lead 后成为 swarm lead;守护进程按固定规则处理例行升级,不消耗 LLM 回合。
  • 提供 CLI 和实时仪表板(dashboard)。

【使用方式】 Tirith 可与任何支持 MCP 的客户端配合使用(stdio 或 HTTP),包括 Claude Code、Cursor、Codex、LangGraph、CrewAI 或普通脚本。 安装方式:

  • macOS 和 Linux、Windows(PowerShell)、以及使用 cargo(包名为 tirith-mcp,二进制为 tirith)均可安装。已安装用户可运行 tirith update 原地替换为最新版本。预构建二进制文件覆盖 macOS、Linux、Windows 的 x86_64 和 ARM64,位于 releases 页面;所有选项见 docs/1-about/05-installation.md。
  • 已列入 MCP Registry,mcp-name: io.github.eabz/tirith。 在仓库中运行时,会将 tirith stdio 注册到 .mcp.json,并在 AGENTS.md 中放入一段简短块(--file 可指定其他文件)。协议本身(从第一次声明到谁领导 swarm)会作为 MCP 服务器的指令在每次会话连接时到达;希望拥有自己协议的仓库将其保存在 .tirith/instructions.md(tirith init --instructions 会写入内置版本供编辑)。其他客户端手动注册相同命令:shim 在会话首次需要时启动仓库守护进程,替换其他版本的守护进程,之后代理到它;无需手动启动任何内容。 守护进程在 http://127.0.0.1:7477/mcp 提供 MCP 服务,并在 http://127.0.0.1:7477/ 提供实时仪表板。状态写入仓库中的 .tirith/:契约、通知、决策和记忆笔记应被提交;.tirith/runtime/(声明、任务、消息)被 Tirith 自行写入的 .gitignore 忽略。 每个 Agent 在每次调用时传递稳定的 Agent 名称,这是唯一需要遵循的约定。要同时运行多个 Agent,可将 docs/2-examples/03-swarm-playbook.md 中的协议块粘贴到项目的 Agent 指令中。 提供 22 个工具,每个工具都有所有参数的描述、MCP 注解和输出模式,并协议作为服务器连接时的指令(ADR-0038)。每个结果都是带 status 字段的 JSON,列表分页,任何结果都可能带有 lost(已结束的租约)或 inbox(等待中的消息)。完整参考见 docs/1-about/04-primitives.md。 每个工具都有子命令;CLI 使用与 Agent 相同的 MCP 路径。--agent 设置名称,--json 打印原始结果,非 ok 结果以状态 1 退出。

【适用场景】 多个编码 Agent 在同一仓库上并行工作的场景,需要防止文件冲突、接口不一致、依赖混乱等问题。也适用于需要 Agent 间传递决策、通知和路径级知识记忆的协作开发环境。

【限制】 Tirith 不存储对话历史和嵌入。当前版本状态为 v1 shipped,所有原语、CLI、持久化和仪表板均已构建并测试,依据 ADR-0013 中的定义;工具模式遵循语义版本控制。其他具体限制暂未提供。