成为赞助商——支持中文 Agent 生态

了解赞助
库Agent场景库
← 返回用例列表

Dexter:Schwarm——关盖后仍跑的后台编码代理,worktree+手机可审

对照小团队源到付:Linear/工单→节点 worktree 跑 Claude Code 开 PR;披露约 10s 收敛轮询、约 5min 扫冲突、Tailscale 预览与指令队列;刻意少推事件;不代你吞吐、不外推。

场景说明

面向关笔记本活就停、又不愿纯消防的小团队:把「终端里盯会话」写成可对账的 server/node+隔离 worktree+空闲时投喂指令,区别于共享插件计划门与框架大迁双代理。

案例叙事

01他们做了什么

Vincent Garrigues 代表 Dexter(AI 源到付采购平台小团队)在工程博客《How We Built Our Own Background Coding Agents》(页内 February 23, 2026;meta/datetime 2026-02-23 → 2026-02-23;canonical engineering.getdexter.co)写明:日常已用 Claude Code 与 Codex,但关盖即停工。目标要异步默认、深嵌 Linear/定时、以及「环上的人」而非「键前的人」——手机也能看进度并追加指令。现成工具不齐,自建 Schwarm。

结构:Rails 8 server(单 EC2,状态 SQLite,Litestream 每分钟复到 S3)管任务/项目/节点/排程;nodes(Mac 或 EC2)以 API key 注册,Ruby gem 轮询领任务。一任务一宇宙:自共享 clone 开 git worktree 到 ~/.schwarm/schwarm-<task-id>/;tmux 内跑带提示/skills/MCP 的 Claude Code;Tailscale 把应用曝成 https://schwarm-<task-id>.<tailnet>.ts.net 便于手机预览。同机可并行多任务互不踩文件。

节点不做主路径 webhook:约每 10 秒问 server「该跑什么」并对齐本地;约每 30 秒心跳。作者称延迟换简单可靠,崩溃重启即再收敛。人从 Web UI 排队指令;节点见 Claude 空闲(hooks 写的 status.json)则杀 tmux 并以 --resume <session-id> "消息" 重开。GitHub 侧:约每 5 分钟扫合并冲突并下 rebase 指令;CI 失败/评审评论也可进同一 SessionDirective 管道(文中 CI 路径提及 webhook,但节点主循环仍是轮询)。任务来源:Linear 分配、Command Center UI、cron recurring/shared agents;状态 draft→ready→claimed→archived,依赖用 TSort 防环。完成:Claude 写 $SCHWARM_ARCHIVE_SIGNAL,节点归档。GitHub token 每小时转、会话更长——节点约 10 秒刷新写入文件,git/gh 包装读文件。用途:小票开 PR、调研纪要、周一文档/无障碍审计等共享代理;主分支 CI 红也可自动派修复。本场景据此输出「后台编码代理」提纲。禁止建议取消人审合入或把预览 URL 暴露到公网无鉴权。

02实际效果

  • 源披露 Schwarm server/node、每任务 worktree+Tailscale 预览、约 10s 收敛轮询与约 30s 心跳、约 5min 冲突扫描、空闲 --resume 投喂与归档信号文件等团队口径;属源到付小团队叙事,不可外推为你的 PR 吞吐、缺陷率或值守成本。
  • 能把「终端盯会话」与「关盖节点 + 文件信号 + 人从手机转向」拆开。
  • 为推事件丢单、token 过期中断长会话、以及预览链暴露面提供提问清单。

03值得知道

  • 自建 server/node/Tailscale 运维面不小;非开箱 SaaS。
  • 文中个别 GitHub 事件仍走 webhook,但主控哲学是轮询收敛。
  • 上面写的是 Dexter 工程实践帖,不是 Anthropic/Cursor 官文;作者强调人审仍在。

04可复制提示词

后台编码代理布置简报

你是小团队后台代理顾问。只根据用户约束写提问清单,不要编造已上线 Schwarm。

工单来源:{{sources}}
节点类型:{{nodes}}
是否手机预览:{{preview}}

输出 Markdown:
1. server/node 与 worktree 隔离
2. 轮询收敛与心跳参数
3. 空闲投喂与归档信号
4. 人工合入与预览暴露面清单
禁止建议公网裸奔预览或自动合入生产;禁止声称夜间 PR 免审。

长会话中断复盘提纲

代理跑数小时后因凭证或节点重启丢掉上下文,请写复盘提纲。

现象:{{symptom}}

输出:
1. 是 token 刷新、tmux/状态文件,还是任务未正确 claimed
2. 最小门禁补丁
3. 下次验收标准
4. 人工确认清单
不要伪造「后台代理已永不丢会话」。

怎么做

  1. 粘贴工单来源(Linear/UI/定时)、节点类型,以及是否要求手机可开预览 URL
  2. Agent 按实践帖输出:server/node 与 worktree 隔离→轮询收敛 vs 推事件→空闲 --resume 投喂与归档信号提问清单
  3. 人工保留合入;Agent 不代你声称夜间 PR 已免审可上

实用提示

  • 源帖:节点每约 10 秒问「该跑什么」做收敛,刻意不用主路径推事件;完成靠写归档信号文件
  • 与 vincent-team-shared-claude-code-flow / brex-cursor-dual-agent-micronaut-migration 不同:本条是关盖后台编码+手机预览转向,不是共享计划门或框架大迁双代理
#Schwarm#后台代理#git worktree#Linear#人在环