Open-Inspect 背景智能体系统
开源的后台编码智能体系统:智能体在云端沙箱中自主处理任务,你通过网页、Slack、GitHub PR、Linear 或 webhook 随时下达指令。
- Star 数
- ★ 3.4k
- 最近更新
- 今天
- License
- MIT
- 主语言
- TypeScript
- FA 评分
- 77/100 · 表现良好
30 秒速览
- 运行形态
- 可在哪里用
- 兼容但需适配OpenAI API · Claude API
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 高 · 需要较重的基础设施
- 开始前需要
- 典型场景
- 工程团队希望把重构、修 bug 等任务丢给后台智能体,同时成员继续做其他工作,事后审查智能体创建的 PR
- 不适合
- 需要多租户隔离的 SaaS 场景(系统明确仅支持单租户部署)
- 希望零基础设施、几分钟内上线的小团队(需 Cloudflare、沙箱后端和 GitHub App)
- 希望用个人 GitHub 仓库权限做会话级隔离的团队
- 源码审查
- 77/100 · 表现良好
这个 Agent 能做什么,适合哪些场景?
Open-Inspect(仓库 ColeMurray/background-agents)是一个受 Ramp 的 Inspect 启发的开源后台编码智能体系统。它由控制平面(Cloudflare Workers + 每会话 Durable Objects + D1 数据库)和数据平面(Modal、Daytona、E2B 或 Vercel Sandbox 承载的会话沙箱)组成,沙箱内运行 OpenCode 或 Claude Agent 作为编码 harness,配备 Node.js、Python、git、GitHub CLI 和无头浏览器环境。用户从 Next.js Web 界面、Slack Bot、GitHub Bot(自动评审与 @提及)、Linear Bot 或经过认证的 webhook 发起任务,智能体在隔离沙箱中编码并以提示用户身份创建带正确 commit 归属的 PR。系统支持定时与事件驱动的自动化、并行子会话(spawn-child)、多仓库会话以及多用户实时协作的多人会话。模型方面支持 Anthropic Claude、OpenAI Codex、xAI Grok、OpenCode Zen、Z.AI 与 DeepSeek 等,可绑定已有的 ChatGPT 或 Claude 订阅。安全模型明确为单租户部署,所有用户须是同一组织的可信成员。
用户通过 Web UI、Slack(@提及或私信)、GitHub Bot(PR 自动评审或评论 @mention)、Linear Bot(issue 指派)或认证 webhook POST 发起编码会话。控制平面(Cloudflare Workers + Durable Objects,每会话一个,含 SQLite、WebSocket Hub、事件流)调度数据平面上的会话沙箱(Modal/Daytona/E2B/Vercel Sandbox),沙箱内 Supervisor 驱动 OpenCode 或 Claude Agent harness,在完整开发环境(Node.js 24、Python 3.12、Bun、git、GitHub CLI、agent-browser 无头 Chromium)中执行任务。智能体可调用 spawn-child、send-child-prompt、get-child-status、cancel-child 等工具拆分并行子任务;会话完成后按提示用户的 git 身份(configureGitIdentity)提交并创建 PR。仓库可通过 .openinspect/setup.sh 与 start.sh 定义启动脚本;密钥以 AES-256-GCM 加密存储、按会话注入环境变量;自动化支持 cron、Sentry 告警、GitHub Actions workflow 完成事件和带 JSONPath 过滤的入站 webhook,并支持最多 10 个仓库的扇出。
- 工程团队希望把重构、修 bug 等任务丢给后台智能体,同时成员继续做其他工作,事后审查智能体创建的 PR
- 使用 Slack 的团队:在消息中 @机器人并附截图即可发起编码会话,结果回复在线程里
- 开源或内部仓库维护者:让 GitHub Bot 在 PR 打开时自动评审,或在评论中 @它处理反馈
- 使用 Linear 的产品团队:把 issue 指派给智能体,自动开始编码并回链生成的 PR
- 平台/可靠性团队:配置 cron 或 Sentry 告警自动化,让智能体无人值守地自动分诊和修复
- 多人结对场景:多名工程师进入同一个会话实时协作,各自的提示在 commit 中归属到本人
如何安装或部署这个 Agent?
README 未提供可直接复制的单条安装命令,部署需按文档分步进行:
- 从仓库获取代码并阅读部署文档:
git clone https://github.com/ColeMurray/background-agents
cd background-agents- 部署控制平面到 Cloudflare(Workers + Durable Objects + D1 数据库)。
- 部署沙箱后端基础设施:modal-infra、daytona-infra 或 e2b-infra 包(README 未给出具体部署命令)。
- 创建并安装 GitHub App,仅选择目标仓库。
- 配置登录限制(允许的 GitHub 用户、邮箱域名或 ALLOWED_GITHUB_ORGS)。
缺失信息:具体的 wrangler 部署命令、所需的环境变量清单和本地开发启动步骤需查看 docs/SETUP_GUIDE.md 与 docs/GETTING_STARTED.md。
如何使用这个 Agent?
部署完成后:
- 按 docs/GETTING_STARTED.md 的「first-team setup」创建第一个团队并添加用户、授予仓库。
- 在 Web UI 的新会话选择器中挑选仓库(最多 10 个)或命名环境,输入提示词开始会话;沙箱会在你输入时就开始预热。
- 从 Slack @机器人、在 PR 评论中 @GitHub Bot、把 Linear issue 指派给智能体,或向认证 webhook 发送 POST 来触发会话。
- 在会话内让智能体用 spawn-child 拆分并行子任务;通过终端面板(ttyd)或可选的 code-server 观察。
- 在自动化设置中配置 cron 计划、Sentry 告警或 GitHub Actions workflow 触发器,实现无人值守运行;连续失败 3 次会自动暂停。
需要凭据:模型凭据(Anthropic API key 或 Claude 订阅、OpenAI ChatGPT 订阅 OAuth、SuperGrok 订阅或 OpenCode Zen)以及 GitHub App 安装。
这个 Agent 有哪些优点和局限?
- 多客户端入口:Web UI、Slack、GitHub、Linear、webhook 全部内置,团队可在现有工作流中触发智能体
- 会话快速启动:文件系统快照、每 30 分钟重建的预构建镜像和输入即预热的多层 warming
- 并行子会话(spawn-child)与多仓库扇出自动化,可同时在不同沙箱分支上工作并各开一个 PR
- commit 归属到发起提示的用户,多人会话实时流式协作,适合团队内部共同监督
- 仅支持单租户部署,多租户需要自行实现租户隔离、按租户 GitHub App 和会话创建时的权限校验
- 基础设施门槛高:需要 Cloudflare Workers/D1 账号、Modal/Daytona/E2B/Vercel 沙箱后端和 GitHub App 安装
- 凭据按需下发但缓存于磁盘,快照可能保留凭据;撤销授权不会立即吊销已签发的令牌
- GitLab 凭据是部署级 PAT 而非按会话令牌;创建会话时不校验用户个人 GitHub 仓库权限
这个 Agent 与同类方案有什么区别?
README 明确表示该项目受 Ramp 的 Inspect 启发并沿用其架构设计;Ramp 的 Inspect 是内部系统,本项目是同思路的开源实现,可作为对内部后台编码智能体方案的自托管替代。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Open-Inspect 背景智能体系统 当前 | 77 · 表现良好 | 自托管服务免费 + 模型费 | ★ 3.4k | 今天 | TypeScript | OpenAI API · Claude API |
| ABCA | 74 · 存在缺口 | 自托管服务免费 + 模型费 | ★ 162 | 4 天前 | TypeScript | Claude Code |
| Agent Kanban | 80 · 表现良好 | 自托管服务免费 | ★ 491 | 19 天前 | TypeScript | — |
| Coven | 79 · 表现良好 | 命令行工具免费 | ★ 73 | 今天 | Rust | Codex · Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
README明确限定单租户、建议限制SSO/VPN和GitHub App仓库范围,并说明团队权限、凭证缓存及撤权不即时生效,因此最小权限和数据流有较充分说明;权限限制仍依赖部署配置,GitLab PAT为部署级,且凭证可留在快照中,故相关项未满分。生命周期文档要求对打断任务显式恢复、避免自动重放,并描述不确定结果的处理与回滚边界;但用户确认并非所有自动化外部效果的通用前置条件。凭证加密和作用域有说明,依赖锁与构建验证有规划证据,但未见本材料覆盖的完整漏洞响应政策。致谢和MIT许可可追溯项目来源,发布者身份及维护责任仍不明确。
材料覆盖多云沙箱、暂停恢复及快照语义,ADR和计划阐明重启、超时和不确定结果的生命周期处理;文档横跨多个提供商,若干行为依赖外部平台合同,且计划所述验证并非本次执行,故一致性和依赖可用性给中高分而非满分。对失败阶段、错误元数据、超时和常见问题的说明具体,提升失败消息项。
文档说明组织内后台编码、Web/Slack/GitHub/Linear/Webhook、定时和事件场景,以及多提供商部署路径。单租户限制、权限边界、不同沙箱持久化语义和不支持的恢复保证写得清楚;触发来源范围广,但自动化仍有无人在环场景,触发过滤说明并非每类触发均等详细。多环境、多仓库和部署配置覆盖充分。
README按架构、包、快速开始、功能和安全模型组织,并链接详细安装、部署及集成指南;E2B指南含配置、构建、验证和常见问题。命名及协议兼容决策有ADR支撑,但产品名Open-Inspect/Background Agents并存且材料未给出正式发布版本或变更日志。限制、MIT许可明示;维护者责任和支持渠道未在给定材料中清楚说明。
产品提供后台编码、多渠道接入、多仓库协作、并行子任务和自动化,且说明输出可进入PR并保留提示用户归属,实用价值明确。设置和运行涉及云服务、凭证、多个基础设施提供商及运维配置;暂停与快照机制有成本控制细节,但材料不足以量化普通部署的运维成本,故成本效益不满分。
核心安全边界、生命周期决策和依赖构建流程有具体文件与条目可追踪,且明确区分设计目标、限制和外部平台语义。README、ADR、计划和提供商指南互相支撑部分主张;但不少细节仅在单个文档中陈述,计划中的验证及外部提供商行为未在本静态材料中独立核实,因此交叉佐证为部分充分。
- 该系统明确面向单租户组织内部部署;不要把它视作具有租户隔离的托管服务。
- GitHub凭证可能缓存在磁盘并进入快照,撤销团队仓库授权不会立即撤销已发出的令牌;GitLab使用部署级PAT。
- 自动化可在无人确认时启动会话并产生外部效果;设置触发器与仓库范围时应采用最小范围。