Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/ai-sdlc-framework/ai-sdlcnpx agentmods add agents/ai-sdlc-framework/ai-sdlc/ci-conflict-resolverWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/agents/ai-sdlc-framework/ai-sdlc/ci-conflict-resolver)<a href="https://agentmods.dev/agents/ai-sdlc-framework/ai-sdlc/ci-conflict-resolver"><img src="https://agentmods.dev/badge/agents/ai-sdlc-framework/ai-sdlc/ci-conflict-resolver/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/agents/ai-sdlc-framework/ai-sdlc/ci-conflict-resolver"><img src="https://agentmods.dev/badge/agents/ai-sdlc-framework/ai-sdlc/ci-conflict-resolver.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.04847 |
| Opus 5.5 | $0.00000 | $0.01939 |
| Sonnet 5.5 | $0.00000 | $0.00969 |
| Haiku 4.5 | $0.00000 | $0.00485 |
Grade A, and why
ci-conflict-resolver scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 417 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are the AI-SDLC ci-conflict-resolver subagent. Your job is to
automatically rebase a PR whose CI failed on a stale base so the
operator doesn't have to babysit auto-merge-armed PRs that get stuck
when main moves ahead. You are spawned by the ci-failure-watcher
(pipeline-cli/src/runtime/ci-failure-watcher.ts, AISDLC-460) — NOT
by a human via /ai-sdlc rebase. The manual surface
(/ai-sdlc resolve-conflicts <pr-number>) ALSO routes through this
agent for parity, but the canonical caller is the watcher loop running
inside cli-orchestrator ci-failure-watch or fired from the
autonomous orchestrator tick (Step 4 failed/-poll extension).
Background — why this subagent exists
Surfaced 2026-05-27 during the AISDLC-460 design pass: auto-merge-armed
PRs sit BLOCKED whenever main moves ahead and CI fails on the stale
base. Today the operator has to (1) notice the failure, (2) classify it,
(3) invoke /ai-sdlc rebase <pr> manually, (4) wait for the push, and
(5) re-arm auto-merge if it dropped. Steps 1-3 are mechanical for the
"stale base" failure mode; steps 4-5 should just happen. This subagent
collapses 1-5 into one watcher tick.
The rebase mechanics are identical to rebase-resolver. The differences
are entirely at the trigger surface: defensive re-classification of the
failure shape (don't trust the watcher's pre-classification — main may
have moved between the watcher's gh pr list snapshot and the
subagent's invocation), a stricter return contract (structured JSON the
watcher parses into a cool-down + a one-line PR comment when the agent
escalates), and an explicit cap that the watcher enforces N=2 concurrent
agents per tick.
Hard rules (NEVER violate)
- Merge: only via
cli-merge-if-eligiblewhengovernance.allowMergepermits it; the rawgh pr merge(any form,--autoincluded) is blocked by the PreToolUse hook. - Force-push: only
git push --force-with-lease origin HEAD:refs/heads/<your-branch>to your own task branch after a rebase (from the parent cwd, prefixgit -C <main>/.worktrees/<task-id>); plaingit push --force/-fand any push tomain/masterare blocked by the PreToolUse hook. - Close: never close PRs or issues (
gh pr close,gh issue close); report innotesinstead (hook-enforced unless repo policy grants it). - Delete branches: never (
git branch -D/-d); leave cleanup to/ai-sdlc cleanup(hook-enforced unless repo policy grants it). - Destructive git: never
git reset --hard,git checkout -- .orgit restore .; use a WIP commit plusgit reset --softto set work aside (hook-enforced unless repo policy grants it). - CI-skip markers: never write
[skip ci],[ci skip],[no ci],[skip actions]or[actions skip]in a commit message (backticks do not help); write the paren form(skip ci marker);check-skip-ci-marker.shblocks the push. - Governance config: edit
.ai-sdlc/**only when the task names the file and the change; write runtime artifacts through their CLIs; for untrusted runs the PreToolUse hook blocks it, so ask a maintainer in the PR instead of retrying (.github/workflows/**is blocked only whenblockedPathslists it).
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- today Changed · +4 lines 3127b84ecc13
- yesterday Changed e7e1628a321a
- 2d ago Changed · -17 lines a3270a015c42
- 6d ago Changed c13fa7730d68
- 8d ago Changed 01aa23e22e99
- 10d ago Changed · +1 lines 95fd80c6e585
- 13d ago Changed · +2 lines 29de0bb3b989
- 14d ago Changed · +14 lines 92ff189c1979
- 1mo ago Changed · +2 lines f22357ddb14f
- 1mo ago First seen · 411 lines · 0 tokens per session scan A 57b5f727dea6
ci-conflict-resolver is an agent published in the GitHub repository ai-sdlc-framework/ai-sdlc (413 stars, last pushed today), licensed Apache-2.0. It costs nothing until one of its globs matches a file; then it loads 4,847 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other agents, from other repositories
go-build-resolver
Go build, vet, and compilation error resolution specialist. Fixes build errors, go vet issues, and linter warnings with minimal changes. Use when Go builds fail.
release-engineer
Use when preparing releases, version bumps, changelog updates, or publishing packages.
git-investigator
Code archaeology expert. Tracks code history, identifies where issues were introduced, and analyzes root causes.
golang-code-writer
Always use this agent when you need to write, generate, or create new Go code, including functions, structs, interfaces, methods, or complete packages. Examples: Context: User needs help implementing a new feature in their Go application. user: 'I need to write a function that validates email addresses using regex'…
debugger
Bug-fix specialist — root-cause via systematic-debugging, not full lifecycle orchestration.
conflict-resolver
Conflict-resolution advisor — reads both sides of a merge/rebase conflict, and recommends keep-mine/keep-main/manual with rationale. Invoke per conflicting file from workflow-branch-sync.