MCP.Market

agent-merge-conflict-arbiter skill

by NousResearch·NousResearch/hermes-agent·263k stars·MIT

Neutral arbiter for merge conflicts between two agents.

A100/100content scan

Is the agent-merge-conflict-arbiter skill safe?

Clean: nothing in its files matched our rules. We read 1 file in the folder on 2026-10-25.

No findings.

Install the agent-merge-conflict-arbiter skill

A skill is a folder. Copy it into your agent's skills folder and the agent loads it when the task matches its description.

git clone --depth 1 https://github.com/NousResearch/hermes-agent.git /tmp/hermes-agent
mkdir -p ~/.claude/skills
cp -r /tmp/hermes-agent/optional-skills/autonomous-ai-agents/agent-merge-conflict-arbiter ~/.claude/skills/agent-merge-conflict-arbiter
available in every project

In the Claude apps, zip the folder and upload it from the Skills settings. The folder on GitHub

The instructions your agent would load

SKILL.md as published, without the frontmatter. Read it on GitHub

Agent Merge-Conflict Arbiter

Resolve a git merge conflict between two AGENTS' branches as an impartial third party. Agents resolving conflicts against a peer's work reliably either overwrite the peer or abandon their own change — they lack the peer's context and are biased toward their own side. This skill is the fix: a neutral reconciler that receives both diffs plus both sides' stated intents and produces a merged result, like a merge-queue arbiter.

When to Use

engineering pipeline, parallel-PR wave, multi-worktree refactor).

  • Two agent branches/worktrees collide during a parallel campaign (kanban

neither original agent should self-adjudicate.

  • git merge or git rebase halts on conflicts between two agents' work and

lockfile/generated-file conflicts (regenerate those instead).

  • Do NOT use for conflicts within a single agent's own work, or for trivial

Prerequisites

permission to run the merge yourself.

  • A repo checkout containing the halted merge, or the two branch names plus

hermes kanban show ), PR bodies, or at minimum each branch's commit messages.

  • Both sides' intent sources: kanban completion summaries (terminal running
  • The project's build/test command, if one exists.

How to Run

Standalone — a human (or agent) invokes this skill inside the conflicted repo: load the skill, then follow the Procedure top to bottom.

Spawned neutral agent — the preferred shape in multi-agent campaigns:

both branch names, and both sides' intent summaries verbatim, plus an instruction to follow this skill.

  • delegate_task: spawn a subagent whose task message contains the repo path,

(not either worker's profile) with BOTH conflicted cards linked as parents — kanbancreate(title="reconcile branch-a x branch-b", assignee="reconciler", parents=["ta", "t_b"]). The parent links carry both sides' completion summaries into the reconciler's context automatically; the card body should name the repo path and the two branches.

  • Kanban-native: create a reconciliation card assigned to a third profile

Quick Reference

Impartiality contract: never favor the side that spawned you; touch ONLY conflicted regions (no drive-by edits); every design-question pick must appear explicitly in the hand-back summary.

Procedure

1. Gather both sides

conflicted files), git merge-base , then for each side git log --oneline .. and git diff .. -- for every conflicted file. In a halted merge, HEAD is one side and MERGE_HEAD is the other.

  • Run via terminal: git status (confirm the conflicted state and list

summaries/metadata, or the PR body, or the commit messages from the log above. Write down one sentence of intent per side before touching any file.

  • Collect each side's intent: hermes kanban show for completion

for every conflicted file.

  • Done when: you can state both intents in your own words and have both diffs

2. Classify every conflicted hunk

<<<<<<</=======/>>>>>>> block.

  • Open each conflicted file with read_file and locate each

by the stated intents — not by which change looks nicer.

  • Assign each hunk exactly one class from the Quick Reference table, judging

that combines cleanly PLUS a styling/rounding choice both sides answered differently), decompose it into sub-decisions and classify each one.

  • If a single hunk contains multiple independent decisions (e.g., new logic

a neighboring hunk is disjoint. Classify per hunk, not per file.

  • A single file often mixes classes: one hunk may be a design collision while
  • Done when: every hunk has a written class and a one-line rationale.

3. Resolve under the impartiality contract

STATED intents (e.g., an intent of "strict validation" beats "quick default" if the task required correctness). Never split the difference into a hybrid neither side asked for.

  • Edit each hunk with patch (or write_file for whole-file rewrites):
  • disjoint-intent → merge both changes so each intent is fully served.
  • same-question-different-answer → pick the answer that best serves the

(block the kanban card / report back) rather than guess.

  • superseded → keep the surviving side; delete the dead premise.
  • Never favor the side that spawned you. If intents genuinely tie, escalate

opportunistic fixes.

  • Change nothing outside conflict markers — no formatting, renames, or

resolved file is staged.

  • git add each resolved file via terminal.
  • Done when: search_files finds no <<<<<<< markers in the repo and every

4. Verify

touched modules. Both intents must be observable in the merged behavior (e.g., side A's new semantics AND side B's disjoint addition both present).

  • Run the project's build/tests via terminal; at minimum import/execute the

listing hunk decisions is fine).

  • Complete the merge: git commit (the default merge message plus a body
  • Done when: verification passes and the merge commit exists.

5. Hand back

file:lines — class — which side(s) kept — rationale. For every same-question-different-answer hunk, state the design question and the answer you picked so a human can veto it — never bury a design call.

  • Produce a completion summary naming EVERY hunk decision:

More skills from NousResearch/hermes-agent

  • A1passwordSet up op CLI, sign in, and read or inject secrets.
  • A3-statement-modelBuild integrated IS/BS/CF financial workbooks in Excel.
  • AaccelerateRun PyTorch training across GPUs with minimal changes.
  • Cactual-setupSet up Actual Computer (actual.inc) inference in Hermes.
  • Aadversarial-ux-testRoleplay a hostile user to find and triage UX pain points.
  • AagentmailUse when an agent needs AgentMail CLI email inboxes.
  • Aai-presenter-videoMake a verified AI presenter video from script + image.
  • AairtableAirtable REST API via curl. Records CRUD, filters, upserts.
  • AanatomyExplain an idea as an interactive isometric machine figure.
  • Cantigravity-cliOperate the Antigravity CLI (agy): plugins, auth, sandbox.
  • Aapple-notesManage Apple Notes via memo CLI: create, search, edit.
  • Aapple-remindersApple Reminders via remindctl: add, list, complete.

All agent skills → · MCP servers