Skip to content

conflict command

Command

Stop everything and surface a rule conflict — persona vs. docs vs. code. Present both sides and the conflict-hierarchy level; the user resolves.

Invoke it
Claude Code/ca:conflict
Codex$ca-conflict
Pi/ca-conflict

Availability is read from each shipped host catalog. Preview-only commands are marked on the page.

The protocol for a rule conflict — not a skill route, an orchestrator-level halt. When two sources disagree (the persona vs. a .codearbiter/ document, a doc vs. code, or two docs against each other), everything in progress stops, both passages are quoted exactly, and the tension is classified against the conflict-resolution hierarchy so you can see which level it sits at. The orchestrator never picks a side, and recency alone never decides it — a more-recently-updated source is noted as informational, not determinative. It also fires automatically whenever the orchestrator detects this class of contradiction on its own, not just when invoked directly.

/ca:conflict

Takes no arguments — it presents whatever conflict triggered it (or the most recent one it detected).

> /ca:conflict
## Conflict detected — work halted
### Source A
File: plugins/ca/arbiter.md · Last updated: 2026-06-10
> Direct commit to a protected branch is prohibited.
### Source B
File: .codearbiter/decisions/0004-fast-forward-hotfix-branch.md · Last updated: 2026-07-01
> Hotfix commits may land directly on main under the fast-forward exception.
### Nature of conflict
ADR-0004 appears to carve an exception into a hard rule the persona states as absolute.
### Conflict-hierarchy level
Level 1 — a hard rule vs. an accepted ADR.
### To resolve
Update ADR-0004 to route through commit-gate, or supersede the hard rule via a new ADR.
---
Work is halted. Resolve before the orchestrator proceeds.

You rarely invoke this directly — it’s usually the orchestrator surfacing a contradiction it found. For a gate you’ve decided to bypass rather than a contradiction to resolve, that’s /ca:override.

GateWhenEffect
halt on detectionthe persona, a .codearbiter/ document, and code contradict each other — or two docs contradict each otherall other work stops, both sides are quoted side by side and classified against the conflict-resolution hierarchy, and work resumes only after you resolve it explicitly

Find this entry in the workflow atlas. Compare its related teaching maps, host spelling and context inputs. The exact procedure below remains the owner.

Source — plugins/ca/commands/conflict.md (v3.7.0)
---
description: Stop everything and surface a rule conflict — persona vs. docs vs. code. Present both sides and the conflict-hierarchy level; the user resolves. No silent reconciliation.
argument-hint: (none)
---
# /ca:conflict — conflict protocol
Orchestrator protocol, not a skill route. When a rule conflict surfaces — the persona, a `.codearbiter/` document, and code contradict each other, or two docs contradict each other — all other work STOPs and the conflict is presented for the user to resolve. The orchestrator never picks a side.
## Flow
1. **Halt** — suspend the in-progress task. No partial progress.
2. **Identify** the conflicting sources (A and B): which document, file, or rule each is.
3. **Quote** the exact passages side by side.
4. **Classify** the conflict against the §2 conflict-resolution hierarchy and name the level the
tension sits at. Note which source was more recently updated — informational, not determinative.
5. **Present** and wait. Work resumes only after the user explicitly resolves.
## Output
```
## Conflict detected — work halted
### Source A
File: <path> · Last updated: <date>
> <exact quoted text>
### Source B
File: <path> · Last updated: <date>
> <exact quoted text>
### Nature of conflict
<what the two sources disagree about>
### Conflict-hierarchy level
Level N — <why the tension sits here>
### To resolve
<options — update A, update B, or supersede one via an ADR>
---
Work is halted. Resolve before the orchestrator proceeds.
```
## When routed automatically
The orchestrator surfaces a conflict on its own when the persona and a `.codearbiter/` doc contradict
each other, two docs contradict, code contradicts an accepted ADR, a new ADR contradicts an accepted
one, or a task instruction contradicts a hard gate.
## After resolution
The orchestrator records the resolution; if the user authorized a doc update, it makes that update
(the one sanctioned side effect) and resumes from the suspension point.
## Hard gate
MUST stop ALL other work. MUST NOT pick a side without explicit user instruction. MUST NOT decide by
recency alone. MUST NOT silently continue past a detected conflict. If the conflict involves a guessed
or auto-resolved `[CONFIRM-NN]`, flag that as a separate critical finding.

View in repo