基于rust语言,消耗非常少,速度很快。
推荐 forge-bot:在 Issue 和 PR 里,把任务交给编程智能体
测试失败了,线索在 Issue 里;修复方案正在讨论,代码和意见都在 PR 里。 想请编程智能体帮忙,却还要打开另一个聊天窗口,再复制一遍背景?
forge-bot 提供了一个直接的入口: 在 Issue 或 PR 的评论里提及配置好的机器人账号,说明任务,就能启动编程智能体。 智能体可以读取仓库和讨论、修改代码、执行检查、推送分支,并在原来的讨论中回复结果。 具体能完成哪些操作,取决于它使用的工具和获得的权限。
假设机器人配置为 @agent,你可以这样留言:
@agent 调查失败的测试,修复问题,并创建一个 PR
任务从评论出发,成果也回到团队平时审阅代码的地方。
代码托管平台和智能体,都可以自己选
forge-bot 支持 Forgejo、GitHub 和 GitLab。已有的智能体适配器包括 Codex、 Antigravity CLI、Pi、Claude Code 和 Kimi,也支持配置自定义命令。 如果你自己部署 Forgejo,或者已经习惯某个编程智能体,这种选择空间很实用。
你还可以为单次任务指定适配器:
@agent --agent=claude 审查这次修改,说明可能影响正确性的问题
默认情况下,各适配器使用自己的模型默认设置。配置中的某个智能体用户可以显式指定模型, 但协调任务并不需要让所有智能体都使用同一个模型。
它的任务交接也很简洁:网关验证事件签名、检查权限,再把评论的位置和消息交给智能体。 需要阅读哪些上下文、怎样完成工作,由智能体决定。
让任务在同一条讨论里继续
实际开发很少只有一句提示词。forge-bot 为支持的适配器保留按讨论线程划分的会话, 后续请求可以接着之前的上下文继续。默认的 Codex、Pi RPC 和 Kimi 集成还可以在任务 执行期间接收同一线程中的新请求,将其作为追加指令;其他适配器会把后续请求排队, 在下一轮处理。
同一线程内的任务按顺序执行,不同线程则可以在配置的并发上限内同时运行。 当某个适配器遇到容量或配额限制时,可以尝试其他可用适配器。
在浏览器里查看进展
内置网页让你不必翻遍代码托管平台上的评论,就能了解任务进度。/status 展示正在运行、
排队和空闲的讨论线程,以及使用的智能体和最近的结果。把 Issue 或评论链接粘贴到搜索框,
就能找到对应的讨论。打开详情页,还能查看运行历史、请求、结果摘要,以及任务运行期间的
近期实时输出。/status.json 提供相同的状态快照,方便脚本或仪表盘接入。
/admin 展示智能体可用状态和容量限制的剩余冷却时间。管理员可以直接重置冷却时间,
让适配器重新参与自动选择,无需重启服务。需要人工介入时,/notifications 可以把对
已配置人工账号的提及,通过兼容的浏览器转成 Linux、Android、iOS、Windows 和 macOS
上的系统通知。需要允许网站发送通知,并在系统设置中允许浏览器显示通知。iOS 16.4+
需要先将页面添加到主屏幕,从主屏幕打开后再授予通知权限。启用 HTTPS 并配置网页推送
密钥后,订阅的浏览器即使关闭页面也能接收通知;保持页面打开时也可以通过轮询接收。这些页面和 API 没有内置
登录验证,应通过反向代理认证保护,或仅在可信网络中开放。
让实现和审查智能体自动交接
你可以分别配置负责实现和负责审查的智能体账号。每个账号拥有自己的代码托管身份、 Linux 用户、工作目录和会话。提交或更新 PR 后,作者智能体会收到指令,通过单独的评论 提及配置好的审查账号。审查智能体检查当前差异并执行相关测试;如果需要修改,就提及 PR 作者并给出具体问题,请作者修复后再次请求审查。
例如,实现账号提交修复,审查账号指出缺少某个边界情况的验证,实现账号更新分支后, 再把新版本交给审查账号。每次交接都留在 PR 讨论里。审查通过后,审查智能体会收到指令, 将分支变基并压缩为一个提交,检查最终差异和测试结果,批准最终版本,再启用仅快进的 自动合并。这些行为由智能体指令驱动,能否完成仍取决于智能体表现、代码托管权限和合并检查。
Forgejo 还支持通过带签名的 webhook 事件按需启用自动任务:Actions 失败和 PR 冲突
可以在没有新提及的情况下启动智能体。这类任务会继续原讨论的会话,复用上次执行的适配器;
新线程则使用默认适配器。自动任务默认关闭,管理员必须通过
[policy].auto_allowed_repos 和 auto_allowed_pr_authors 显式允许仓库和 PR 作者。
如果任务需要密钥、账号注册或只有人才能提供的权限,智能体会收到指令,提及已配置的人工
账号并说明需求,同时继续处理不受阻塞的工作。
为什么值得尝试?
如果你是项目维护者,希望把调查测试失败、提出小型修复、更新文档或审查差异等具体任务 交给智能体,同时把讨论留在仓库里,forge-bot 值得试试。 对自托管 Forgejo 的用户,以及希望自主选择智能体工具的团队,它尤其有吸引力。
部署时也需要认真对待权限。forge-bot 以 root 管理的系统服务运行,使用配置好的 非 root Linux 用户执行智能体,并为每次运行创建 cgroup。智能体能执行命令, 多个适配器默认启用自动权限批准。账号和进程隔离不能视为运行不可信代码的完整沙箱。 建议从可信用户和仓库开始,为代码托管令牌设置必要的权限范围,并保护状态页和管理接口。
从一个具体的小任务开始
先阅读项目的 README、 配置示例 和部署指南。 配置智能体账号和授权策略,完成智能体 CLI 的认证,再接入带签名验证的 webhook。 如果没有创建 webhook 的权限,也可以使用轮询方式接入。
接着,在可信仓库里交给它一个范围明确、便于审阅的小任务。查看代码差异,确认验证结果, 然后在同一条讨论中继续提出要求。
forge-bot 值得推荐的地方就在这里:让 Issue 和 PR 成为编程任务开始、推进和交付审阅的地方。
评论区
写评论还没有评论