VicroCode
让代码创造价值
VicroCode是一个轻量级代码在线发布、交易平台,开箱即用,免部署、免服务器、免备案,支持接入智能体、通用管理系统、游戏等多种项目
稍候片刻,您可先学习AI编程手册
正在加载中...

市场信息

[程序员] 趁现在无聊分享一下自己瞎琢磨出来的一套 agent 开发流程和工具

Agent 工作流 English | 中文 在自托管 Forgejo 实例上的一条评论,如何变成一次代码变更,同时又不把人类 账户交给自主 agent 。三个部分协同完成: 组件 位置 职责 Forgejo 代码托管平台:仓库、issue 、pull request 、评论与 CI 。它是对话与代码的权威记录。

www.v2ex.com · 2026-09-28T05:56:03+00:00

Agent 工作流 English | 中文 在自托管 Forgejo 实例上的一条评论,如何变成一次代码变更,同时又不把人类 账户交给自主 agent 。三个部分协同完成: 组件 位置 职责 Forgejo /ai-market-guide/ 代码托管平台:仓库、issue 、pull request 、评论与 CI 。

它是对话与代码的权威记录。 forge-bot /ai-market-guide/ 与具体 forge 无关的网关,把一次机器人提及转换为一次编码 agent 运行。

AaaU (Agent-as-User) /ai-market-guide/ 接入专用 agent 账户的 PTY 桥接,让被授权的人类可以启动、观察或加入一个 agent 会话。人类 shylock 账户 编写任务、审查结果,并可经 AaaU 接入同一个 agent 账户。

关键隔离在于 人类账户 与 agent 账户 之间。 Forgejo 、forge-bot 与 agent 都以 agent 账户运行;人类不会交出自己的账户。

AaaU 正是让被授权的人类 接入该账户进行交互式工作的桥梁。 @shylock-bot on an issue / PR │ ▼ ┌──────────────────────┐ │ Forgejo │ issues / PRs / CI └──────────┬───────────┘ │ mention ▼ ┌──────────────────────┐ │ forge-bot │ verify → authorize │ │ queue → start agent └──────────┬───────────┘ │ location + message ▼ ┌──────────────────────┐ ┌──────────────────────┐ │ agent account │◀──────▶│ AaaU │ │ coding agent runs │ PTY │ human joins session │ └──────────┬───────────┘ └──────────────────────┘ │ ▼ commit / push / reply (Forgejo thread) 架构 系统分为三层: 对话层。

Forgejo 托管讨论串。在 issue 或 pull request 上提及机器人是 唯一的触发方式,讨论串也是汇报与审查结果的地方。

网关层。 forge-bot 接收提及、校验并鉴权,按会话串行化运行,并启动 agent 。

它刻意只交给 agent 一个 位置 和一条 消息 ,从不提供预先 构建的上下文。执行与访问层。

Agent 以专用的 agent 账户、自动批准方式运行,因此可以 读取仓库、编辑、运行命令与测试并推送。 AaaU 向人类暴露进入同一账户的 PTY 。

系统有两条贯穿始终的性质: 隔离。 agent 账户与人类账户相互独立,人类的凭据从不交给 agent 。

最小交接。 agent 从位置与消息中得知要做什么,然后自行发现周围的上下文。

用法 触发一次运行 在 issue 或 pull request 上评论: @shylock-bot fix the failing test in utils/ 只接受允许名单中的用户与仓库,机器人自己写出的提及会被忽略以避免循环。要 指定某个 agent ,可以点名: @shylock-bot:codex fix the failing test in utils/ 普通提及会使用默认的 agent 序列。

跟进一次运行 在同一条讨论串中回复。如果已有运行在进行,消息会被合并进当前运行,从而可以 实时引导 agent ;否则会作为下一轮排队。

每个 issue 或 pull request 同一时刻 至多一次运行,而不同讨论串可并行进行。与 agent 交互式协作 被授权的人类使用 aaau 客户端接入 agent 账户: aaau pi # 在 agent 账户中启动 pi aaau codex # 在 agent 账户中启动 codex aaau -n # 加入一个已存在的会话 aaau -n -r # 只读观察 这正是人类复现、观察或抢救自动化运行所用同一环境的方式。

只有被授权组的成员 才能接入,且 agent 无法反向连接人类。工作流 一次提及在系统中的流转如下: 人类在 issue 或 pull request 上评论 @shylock-bot 。

Forgejo 将评论投递给 forge-bot —— 尽可能走 webhook ,回退时使用轮询。 forge-bot 校验并鉴权该提及,记录位置与消息,并为该会话排队任务。

仓库被检出到按会话划分的工作区,随后选择并以自动批准方式启动一个 agent 。 agent 读取 forge 、编辑检出内容、运行命令与测试、提交、推送分支、打开 pull request ,并在讨论串中回复。

它的工作方式与开发者完全一致。人类审查 pull request ,然后合并或在同一条讨论串中提出修改——这会开始下一轮。

如果 agent 报告用量、速率或配额限制,运行会用序列中的下一个 agent 重试;若 一个都不可用,讨论串会被告知原因。机器人会在任务排队后立即确认每条提及。

运维 状态页面列出每个已知讨论串及其状态( running / queued / idle )、所涉及的 agent 及其最后一次结果。监控可用的健康与状态端点,日志记录每次运行。

具体服务与路径 取决于部署方式。参考资料 forge-bot: /ai-market-guide/ AaaU: /ai-market-guide/ 最后咋说呢,整套流程倒是打磨得非常丝滑,但是拿着锤子找不到钉子,不知道要干嘛。

公司也有自己的流程和平台,不可能接入进去。 :)

返回 AI 市场导读

来源:v2ex.com