最新资讯
www.infoq.com GitLab 19.5 将 Agentic 开发纳入 DevOps 平台的治理体系 dev.to 在信任 AI 生成的测试用例前,如何逐条复核 unite.ai Franklin Templeton 构建 AI 研究工作流以揭示风险 techxplore.com AI 助力寻找更优的钛合金 3D 打印工艺参数 engadget.com Perplexity 推出“teammates”日常工作任务 AI agent computerworld.com 别提数据中心:OpenAI 改称“compute campuses” theguardian.com 俄美试图阻止就自主武器制定具有约束力的规则 bloomberg.com Nvidia 加强东南亚芯片追踪以打击走私 thestack.technology 模型路由需求升温,Agent Router 推出开源替代方案 www.youtube.com Google DeepMind 的 Philipp Schmid:AI 同事需要具备的七个要素 unite.ai Cashfree 为 AI Agent 的托管结账加入 WebMCP 工具 dev.to 我们在 DolphinBench 上测试记忆检索:纯关键词搜索暴露了自身回归
多元动态
登录 注册
AI编码 github.com · @Hacker News

Foremerge:在并行 coding agent 之间捕获意图冲突

原文 我的收藏

Foremerge 是一个位于 git 之上的本地协调层,不改变 git 与 worktree 的工作方式。每个 agent 在编辑前发布 intent 及将变更的 scope 与操作类型,第二个 agent 发布时若与已有声明冲突(如一个 replace 一个 extend 同一符号),会在写代码前返回 HIGH destructive_vs_additive 告警。检测为确定性规则,不依赖 judge 模型读代码;HIGH 冲突仅针对已声明操作,从自然语言推断的匹配上限低于 high。claims 为建议性租约而非锁,两个 agent 可同时持有同一 scope 而不死锁。以单个 Rust 二进制发布,含 CLI 与 18 个工具的 MCP server,foremerge setup all 可接入 Claude Code、Codex 和 Cursor,共享状态为 git common directory 中的一个 SQLite 文件,不使用 hooks 或 merge driver,不改写历史。作者称曾测试 98 个并行 agent 在同一仓库工作且零冲突,并回放 76 条 intent 发现 1 个冲突及一个按类名与内部方法声明 scope 的盲点;开源版为单机匹配,非分布式共识。

AI推荐理由 针对并行 coding agent 在同一仓库产生架构级意图冲突的问题,提出在 git 之上加一层本地协调层:agent 编辑前发布 intent 与 scope,第二个 agent 发布时即返回 HIGH destructive_vs_additive 冲突,检测为确定性规则而非 judge 模型,冲突仅对已声明操作断言,prose 推断上限低于 high。以 Rust 单二进制提供 CLI 与 18 工具 MCP server,可接入 Claude Code、Codex、Cursor,共享状态为 git common dir 中的 SQLite 文件,不写 hooks、不改历史。作者自述测试到 98 个并行 agent 零冲突、回放 76 条 intent 发现 1 个冲突及一个 scope 声明盲点,但均为自报数据,无第三方验证;开源版为单机匹配、非分布式共识,claims 是建议性租约而非锁。价值在于多 agent 并行开发的冲突前置检测思路与可试用的开源实现,局限是效果证据来自作者自述、尚无独立评测。

72 评论 12 社区积分 41

正文

Domain: github.com/naw103 Points: 5 | Comments: 0 ## Post Text At, GPTree, we run several coding agents across our team on one repo using parallel worktrees. Apart from wasted time reviewing and fixing conflicts at PR time, the failures that hurt the most are when multiple plans or tickets cause architecture changes that cannot both be true. Ex. one agent replaces a class while another one is in the process of extending it. Git only notices if the resulting patches happen to touch the same lines and the review only catches it if they are familiar with both tickets. Foremerge is a local "git like" coordination layer that sits above git (ie. does not interact with or change the way git and worktrees function), Before editing each agent publishes an intent and the scopes it will change, with the operation it plans to complete on each one. ``` foremerge intent publish --agent "$A" \ --summary "Replace PaymentService with StripePaymentService" \ --scope symbol:PaymentService=replace foremerge intent publish --agent "$B" \ --summary "Add PayPal support to PaymentService" \ --scope symbol:PaymentService=extend ``` The publish by the 2nd agent returns a HIGH destructive\_vs\_additive finding before writing any code. Agents keep their own worktrees and the shared state is one SQLite file in gits common direectory. No hooks, no merge drivers, nothing rewrites your history. It ships as one Rust binary with a CLI and MCP server with 18 tools and `foremerge setup all` wires it into Claude Code, Codex and Cursor. Because the protocol has nothing provider specific, a Claude agent and a Codex agent coordinate through the same store. Before any work is accepted, Foremerge runs a named check that you configured against the exact git state of the change. An agent that says tests pass is recorded but it dosnt satisfy the acceptance gate without running the check itself. Detection is deterministic, no judge model reading your code. HIGH conflicts are only asserted for declared operations, ie. matches inferred from prose cap out below high. Claims are advisory leases, not locks so two agents can still hold the same scope without deadlock. The open source version is single matching and so not a distributed consensus. We have tested this up to 98 parallel agents all working on the same repo with zero conflicts (was supposed to be 100 but 2 agents failed to run due to resource limitations) I replayed 76 intents on my own agents from a build last week in the order they happened. The sample had exactly 1 conflict (which was flagged) and the review found a blind spot where one agent claimed scope by class name and the other claimed it by an internal method. We are working on fixing that for the next release. Setup is a 30s install by pasting the quickstart instructions from the readme.md into your agent or manually: `curl -fsSL | sh` or `cargo install --locked foremerge`, then `foremerge init && foremerge setup all` in a repo. Apache-2.0. The feedback I want most is which conflicts between your agents plans would you actually want flagged and which would you tollerate as noise? Repo here: Website: More information on the problems this solves:

来源报道 · 3 篇 · 以下链接均前往原始媒体

← 返回精选动态 原文

更多内容