本文へ移動
cccskills
無料GitHub で公開日本語紹介

agent-merge-conflict-arbiter

2つのエージェントが別々に加えた変更のGit競合を、双方の差分と意図から中立的に解決。競合箇所ごとの判断理由を記録し、ビルドやテストで統合結果を確認します。

原文原文の説明を見る

Neutral arbiter for merge conflicts between two agents.

インストール方法を見る

こんなときに便利

  • 2つのエージェントのブランチ競合を解消
  • 並行したworktreeの変更を統合
  • 競合する設計判断の理由を確認したいとき
  • 双方の変更を統合した動作を検証

日本語での紹介

できること

2つのエージェントが作業したブランチ間のGit競合を、第三者の立場で解決します。双方の差分と作業意図を集め、競合箇所ごとに「両立できる変更」「同じ設計上の問いへの別の回答」「他方の変更で前提が失われた変更」に分類します。両立する変更は組み合わせ、選択が必要な場合は意図に基づいて判断し、理由を報告します。

こんなときに便利

複数のエージェントが並行して実装やリファクタリングを進め、マージやリベースが止まったときに向いています。競合を起こした当事者に判断を任せず、双方の目的を確認したい場面で使えます。統合後はビルドやテストで動作を確かめ、各競合箇所で何を残したかを一覧にします。

使い方の例

  • 「この2つのブランチの競合を、双方のPR本文にある意図から解決して」
  • 「並行作業の変更を統合し、設計上の選択と理由を報告して」

注意点

Gitリポジトリと、双方の作業意図を示すPR本文・完了報告・コミットメッセージなどが必要です。変更対象は競合箇所に限ります。意図を確認できない場合や判断が同点になる場合は、推測せず報告します。単一エージェント内の競合や、再生成で解決できる生成ファイルの競合は対象外です。

この紹介文は、公開されている SKILL.md をもとに AI(Claude Haiku)が作成しました。正確な仕様は下の原文を確認してください。

含まれるファイル(1)

  • SKILL.md7.5 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

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

  • Two agent branches/worktrees collide during a parallel campaign (kanban engineering pipeline, parallel-PR wave, multi-worktree refactor).
  • git merge or git rebase halts on conflicts between two agents' work and neither original agent should self-adjudicate.
  • Do NOT use for conflicts within a single agent's own work, or for trivial lockfile/generated-file conflicts (regenerate those instead).

Prerequisites

  • A repo checkout containing the halted merge, or the two branch names plus permission to run the merge yourself.
  • Both sides' intent sources: kanban completion summaries (terminal running hermes kanban show <task-id>), PR bodies, or at minimum each branch's commit messages.
  • 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:

  • delegate_task: spawn a subagent whose task message contains the repo path, both branch names, and both sides' intent summaries verbatim, plus an instruction to follow this skill.
  • Kanban-native: create a reconciliation card assigned to a third profile (not either worker's profile) with BOTH conflicted cards linked as parents — kanban_create(title="reconcile branch-a x branch-b", assignee="reconciler", parents=["t_a", "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.

Quick Reference

Hunk classDefinitionResolution
disjoint-intentThe two changes serve different goals and can coexistCombine both
same-question-different-answerBoth sides answered one design question differentlyPick ONE per stated intents; surface the decision
supersededOne side's premise no longer holds after the other's changeKeep the surviving side; note why

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

  • Run via terminal: git status (confirm the conflicted state and list conflicted files), git merge-base <A> <B>, then for each side git log --oneline <base>..<side> and git diff <base>..<side> -- <file> for every conflicted file. In a halted merge, HEAD is one side and MERGE_HEAD is the other.
  • Collect each side's intent: hermes kanban show <task-id> for completion 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.
  • Done when: you can state both intents in your own words and have both diffs for every conflicted file.

2. Classify every conflicted hunk

  • Open each conflicted file with read_file and locate each <<<<<<</=======/>>>>>>> block.
  • Assign each hunk exactly one class from the Quick Reference table, judging by the stated intents — not by which change looks nicer.
  • If a single hunk contains multiple independent decisions (e.g., new logic that combines cleanly PLUS a styling/rounding choice both sides answered differently), decompose it into sub-decisions and classify each one.
  • A single file often mixes classes: one hunk may be a design collision while a neighboring hunk is disjoint. Classify per hunk, not per file.
  • Done when: every hunk has a written class and a one-line rationale.

3. Resolve under the impartiality contract

  • 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 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.
    • superseded → keep the surviving side; delete the dead premise.
  • Never favor the side that spawned you. If intents genuinely tie, escalate (block the kanban card / report back) rather than guess.
  • Change nothing outside conflict markers — no formatting, renames, or opportunistic fixes.
  • git add each resolved file via terminal.
  • Done when: search_files finds no <<<<<<< markers in the repo and every resolved file is staged.

4. Verify

  • Run the project's build/tests via terminal; at minimum import/execute the 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).
  • Complete the merge: git commit (the default merge message plus a body listing hunk decisions is fine).
  • Done when: verification passes and the merge commit exists.

5. Hand back

  • Produce a completion summary naming EVERY hunk decision: 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.
  • Kanban: kanban_complete(summary=...). Standalone: print the summary.
  • Done when: the summary is delivered and lists all hunks.

Pitfalls

  • Self-favoring: if you were spawned by one of the conflicting agents, you are structurally biased — state this and weigh the other side's intent deliberately. Prefer the third-profile shape so this never arises.
  • Splitting the difference on a design collision produces a hybrid nobody designed; pick one answer and surface it.
  • Per-file classification: files usually mix hunk classes; classifying a whole file as one class silently drops a disjoint change.
  • Drive-by edits make the merge unreviewable and steal decisions from the original agents.
  • Missing intents: commit messages alone can be thin; prefer kanban completion summaries or PR bodies. If neither side's intent is recoverable, escalate instead of guessing.
  • Repeat offenders: repeated conflicts on the SAME file across rounds are a hotspot signal, not routine reconciliation work — flag it (e.g. a hotspot: <path> — <reason> kanban comment) so the orchestrator decomposes that file, rather than serially reconciling every new collision on it.

Verification

  • git status shows a clean tree on the target branch with a merge commit.
  • No conflict markers remain (search_files pattern <<<<<<<).
  • Build/tests pass; both sides' intents are demonstrably present or the dropped one is explicitly named in the summary.
  • The hand-back summary enumerates every hunk with class and rationale.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

1password

無料日本語概要

1Passwordに保存したパスワードやAPIキーを、コマンド実行や設定テンプレートで使うためのスキル。CLIの導入、認証、秘密情報の取得・受け渡しを案内します。

  • 1Password CLIの導入と設定
  • 保存済みAPIキーでコマンド実行
  • 設定テンプレートへの秘密情報の埋め込み
NousResearch/hermes-agent25.3万2026年10月12日 更新

3-statement-model

無料日本語概要

損益計算書・貸借対照表・キャッシュフロー計算書を数式で連動させるExcelモデルを作ります。実績と予測の入力、前提を変えた比較、財務三表の整合性確認を段階的に進めます。

  • 財務テンプレートへの実績入力
  • 財務三表が連動する予測の作成
  • 基本・上振れ・下振れシナリオの比較
NousResearch/hermes-agent25.3万2026年10月12日 更新

Run PyTorch training across GPUs with minimal changes.

日本語の概要は準備中です。原文の説明を表示しています。

NousResearch/hermes-agent25.3万2026年10月12日 更新

Set up Actual Computer (actual.inc) inference in Hermes.

日本語の概要は準備中です。原文の説明を表示しています。

NousResearch/hermes-agent25.3万2026年10月12日 更新

adversarial-ux-test

無料日本語概要

技術が苦手で不満を抱きやすい利用者になりきってアプリを試し、操作の分かりにくさや離脱の原因を発見。実際の改善課題と個人的な不満を分け、修正案をまとめます。

  • 公開やデモ前に使いやすさを確認したいとき
  • 新規ユーザーの体験を点検したいとき
  • 登録・課金でのつまずきを探したいとき
NousResearch/hermes-agent25.3万2026年10月12日 更新

agentmail

無料日本語概要

AIエージェント専用のメール受信箱を用意し、送受信や返信、添付ファイルの処理を行います。メールで届く認証コードの確認や、受信をきっかけにした継続的な処理にも使えます。

  • AIエージェント専用アドレスの作成
  • メール送信と返信・添付ファイルの処理
  • メールで届く認証コードの確認
NousResearch/hermes-agent25.3万2026年10月12日 更新

NousResearch のスキルをすべて見る

このスキルの問題を報告する