Tares
为常驻型 AI Agent 提供工作台:把系统事件汇成时间线,按事件唤醒 Agent,并留存在结论与决策。
- Star 数
- ★ 44
- 最近更新
- 今天
- License
- MIT
- 主语言
- Python
- FA 评分
- 43/100 · 缺口较多
30 秒速览
- 可在哪里用
- 通用 · 跨平台Codex · Claude Code · OpenAI API · Claude API
- 开始前需要
- 典型场景
- SRE 团队:告警触发时,让 Agent 读取该服务的完整历史并在任何人打开仪表盘之前写下诊断。
- 主要局限
- 软件工厂依赖 Claude Code(需登录且套餐支持后台会话)和具备写权限的 gh,存在运行时依赖。
- 源码审查
- 43/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
Tares 是 Glassflow 开源的常驻型 AI Agent 平台,核心是一个守护进程加一个 DuckDB 文件,本地或服务器上即可运行,不依赖外部数据库、消息代理,也不收集遥测。它把日志、指标、告警、部署、提交、数据库行、Webhook 等来源的事件,按服务、仓库、客户或任务合并成一条按时间排序的时间线;触发器在关键时刻唤醒 Agent,Agent 通过 MCP 或 Webhook 读取这条时间线,并把诊断、计划、工单、评审和你的回答写回。另一条路径是“软件工厂”:一组 Claude Code 会话在本机并行工作,编排器分发工单,构建者开 PR,评审者按固定标准把关,CI 通过后合并。它支持 Claude Code、Cursor、Codex 以及自建 Agent 通过 MCP 接入,也可为 Tares 自家 Agent 配置任意模型提供商。托管版 Tares Cloud 提供已就绪的 MCP 端点。
运行 tares up 会启动守护进程和控制台(默认 http://127.0.0.1:8787);再以 tares mcp --transport streamable-http 暴露 :8788/mcp 的 MCP 端点。在控制台的 Sources → Add source 接入 Prometheus、OTLP、GitHub、Vercel、Postgres、Webhook、Claude Code 会话等连接器,事件按“对象”写入时间线。触发器在事件到达时唤醒 Agent(通过 MCP、Webhook,或在进程内运行 Tares Agent),Agent 一次读取即可获得跨来源的关联历史,并把结论写回时间线。软件工厂侧,tares factory crew up 启动一组 Claude Code 会话,tares factory spec "..." 在仓库内生成规格、带验收标准的里程碑和逐工单工作文档,编排器分发工单,构建者为每个里程碑和仓库开 PR,评审者按固定标准审核,通过且 CI 为绿后由构建者合并;tares factory crew attach orchestrator 用于回答团队的决策问题。
- SRE 团队:告警触发时,让 Agent 读取该服务的完整历史并在任何人打开仪表盘之前写下诊断。
- 平台团队:当代码或配置变更影响团队上下文时,Agent 自动向共享上下文仓库提交 PR。
- 需要监控失败作业、沙箱运行或语音通话等任意失败模式的团队:为每个对象配置时间线、触发器和结论。
- 多项目并行的研发组织:用一组 Claude Code 会话把规格推进到已合并的 PR,并保留每张工单的评审与决策记录。
- 已在用 Claude Code / Cursor / Codex 的开发者:通过 MCP 让现有 Agent 一次性读取跨来源的关联历史,而不是多次工具调用。
如何安装或部署这个 Agent?
使用 uv 或 Homebrew 安装:
uv tool install tares或:
brew install glassflow/tap/tares软件工厂需要已登录且套餐支持后台会话的 Claude Code,以及具备仓库写权限的 gh。
如何使用这个 Agent?
启动守护进程和控制台:
tares up另开终端启动 MCP 端点:
tares mcp --transport streamable-http将 Claude Code 接入 MCP:
claude mcp add --transport http tares http://localhost:8788/mcp随后可询问:*"Use tares: what happened to api-server in the last 15 minutes?"*。软件工厂流程:
tares factory crew up
tares factory spec "what you want to build"
tares factory crew attach orchestrator控制台的 Sources → Add source 用于添加事件来源。
这个 Agent 有哪些优点和局限?
- 一次读取即可拿到跨来源的关联历史,减少 Agent 的多次工具调用。
- 以事件而非提示驱动:触发器通过 MCP、Webhook 或进程内运行唤醒 Agent。
- 结论、计划、工单、评审和决策持久保存在 Tares,会话结束后仍可供下一个读者使用。
- 部署边界简单:MIT 许可,一个守护进程加一个 DuckDB 文件,无外部数据库、消息代理和遥测。
- Agent 侧不锁定:Claude Code、Cursor、Codex 或自建循环均可通过 MCP 接入。
- 软件工厂依赖 Claude Code(需登录且套餐支持后台会话)和具备写权限的 gh,存在运行时依赖。
- 需要自行运行守护进程与 MCP 端点,托管版 Tares Cloud 为付费替代。
- 主要文档与界面为英文,中文使用者需自行适应。
- 项目较新,生态与连接器覆盖面仍在演进,缺乏长期稳定性证据。
这个 Agent 与同类方案有什么区别?
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Tares 当前 | 43 · 缺口较多 | — | ★ 44 | 今天 | Python | Codex · Claude Code · OpenAI API · Claude API |
| HolmesGPT SRE Agent | 57 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 3.8k | 1 天前 | Python | OpenAI API |
| Preloop | 84 · 表现良好 | — | ★ 88 | 1 天前 | Python | Codex · Claude Code |
| KAOS — K8s Agent 编排系统 | 69 · 存在缺口 | 命令行工具免费 | ★ 282 | 6 天前 | Python | OpenAI API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
SECURITY.md 明确默认绑定 127.0.0.1 且无认证,暴露网络需 --auth/TLS,并建议按生产者/代理发放 scoped key,这是加分项;但仓库本身授予代理对仓库的写权限、自动合并 PR、可重启 staging 数据库等广泛能力,最小权限仅靠 autoMode 规则与软拒绝约束,证据偏薄,故 least_privilege 记 1。用户确认方面,crew up 首次运行逐项询问设置、L3 需 relayed yes、生产需人工,故记 2;但自动合并与后台常驻代理的确认边界在 README 中未完整说明。数据流透明:README 称无遥测、单 DuckDB 文件,但 pyproject 引入 opentelemetry 导出与 Rius/Langfuse 追踪,流向细节未在仓库内说明,记 1。敏感数据处理:SECURITY.md 有密钥/认证建议,但仓库内未见数据保留、脱敏或日志中敏感信息的处理说明,记 1。依赖安全:依赖均为常见库且 CI 有 gitleaks 扫描,但无依赖锁定/审计(无 lockfile、无 dependabot/audit 步骤),记 1。外部效应:代理会开 PR、合并、重启服务,属高外部效应,仅靠软拒绝与 CI 门槛,记 1。回滚:有 crew halt/resume、retire/revive、restart,但无对已合并变更或已执行外部动作的回滚机制说明,记 1。来源归属:MIT 与作者 GlassFlow 明确,但发布者身份未经 FollowAgents 验证,且 SECURITY.md 中联系邮箱域名(glassflow.dev)与项目域名不一致,归属证据偏弱,记 1。
CI 列出大量后端与 factory bash 测试,覆盖 crew、watch、锁竞争、不可读会话列表等失败路径,自洽性证据较好,记 2。依赖可用性:依赖均为 PyPI 常见包并注明版本下限,可选依赖分离合理,记 2;但无锁文件,复现性略弱。失败信息:测试断言大量明确错误文案(如 no Tares answers、could not read、another factory command),README 与 SECURITY.md 也给出清晰指引,记 2。
受众与场景:README 清晰区分 AI SRE 与软件工厂两类场景并给出 quickstart,记 2。能力边界:文档强调需 Claude Code 计划与 gh 写权限,但对代理自主范围(自动合并、生产操作)的硬边界描述不足,记 1。触发精度:触发器/事件时间线概念有描述,但仓库内无触发匹配规则或去重/抑制的细节证据,记 1。环境适配:支持本地、Docker、服务器与 Cloud,但依赖 Claude Code 与 gh 的特定环境,跨环境适配证据有限,记 1。
信息架构:README 结构清晰,含 quickstart、场景、链接表,记 2。安装说明:uv/brew 安装、tares up、MCP 注册命令具体,记 2。命名稳定性:SECURITY.md 使用 navflow up/NAVFLOW_AUTH_TOKEN,与产品名 tares/TARES_* 不一致,存在命名漂移,记 1。示例与 FAQ:有示例命令与场景,但无 FAQ,记 1。已知限制:仅零散提及需 Claude Code 计划、无认证默认,无集中限制章节,记 1。许可证:MIT 全文与 pyproject 一致,记 2。版本与变更日志:pyproject 有版本号,但仓库内无 CHANGELOG,记 1。维护责任:有 SECURITY.md 联系人与 GitHub issues,但发布者未验证、无治理/维护者说明,记 1。
输出可用性:README 展示可运行命令与预期结果,但实际产出(PR、诊断)质量无法静态验证,记 1。边际价值:提供事件时间线与多代理编排,确有差异化,但同类代理编排工具众多,价值主张部分依赖外部文档,记 1。成本效益:需常驻守护进程、Claude Code 计划与 gh 权限,成本较高而收益证据多为宣称,记 1。
声明可追溯性:README 大量声明链接到外部文档,但仓库内无对应实现细节佐证,记 1。交叉印证:CI 测试名与 README 功能(factory、crew、SRE)大体对应,属部分印证,记 1。事实与推断分离:README 多为营销式断言,未标注哪些经测试验证,记 1。
- SECURITY.md 使用 navflow/NAVFLOW_AUTH_TOKEN 命名,与产品 tares/TARES_* 不一致,部署时可能误配认证。
- 默认无认证且绑定 127.0.0.1,一旦暴露网络而未启用 --auth/TLS,API、控制台与摄取均无保护。
- 代理具备仓库写权限、自动合并 PR 与重启服务能力,最小权限仅靠 autoMode 软拒绝约束,需人工复核授权范围。
- README 宣称无遥测,但依赖包含 OpenTelemetry 导出与 Rius/Langfuse 追踪,数据流向需自行核实。
- 无依赖锁文件与依赖审计步骤,供应链可复现性有限。
- 发布者身份未经 FollowAgents 验证,SECURITY.md 联系邮箱域名与项目域名不一致,归属需谨慎。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
v1.56.0-rc.4 预发布
发布说明摘录
What's Changed * TR-759 One file for the CI test list by @ashish-bagri in https://github.com/glassflow/tares/pull/312 * TR-724: the cell's edition, settled on first boot by @ashish-bagri in https://github.com/glassflow/tares/pull/316 * TR-727: builder mocks a screen first, reviewer checks the design by @ashish-bagri in https://github.com/glassflow/tares/pull/314 * TR-731: ready_to_close on project cards and the summary by @ashish-bagri in https://github.com/glassflow/tares/pull/317 …在 GitHub 查看 ↗ -
发布说明摘录
What's Changed * CI: shard the tests, cancel superseded runs by @ashish-bagri in https://github.com/glassflow/tares/pull/369 * Tares 1.55.1: ship a long session's backlog in chunks (TR-809) by @ashish-bagri in https://github.com/glassflow/tares/pull/367 Full Changelog: https://github.com/glassflow/tares/compare/v1.55.0...v1.55.1在 GitHub 查看 ↗