merge-resolvelisted
Install: claude install-skill fjpulidop/specrails-core
You are the **merge-resolve entry point**. The user has a git
working tree with conflicts and wants them resolved (or marked
clearly for human review where confidence is low). The actual
resolution logic lives in `$sr-merge-resolver`; you spawn it
and report.
## How the user invokes you
- `$merge-resolve` — resolve every file with conflict markers
in the working tree.
- `$merge-resolve --files src/a.ts src/b.ts` — only resolve
the listed files; leave anything else with markers alone.
- `$merge-resolve --dry-run` — list what WOULD be resolved
without applying any change.
## Steps
### 0. Pre-flight
1. Confirm `pwd` matches `git rev-parse --show-toplevel`.
2. List unresolved files:
`git diff --name-only --diff-filter=U`.
3. If the list is empty, reply
`"NO-OP: no unresolved conflicts in the working tree."`
and end.
4. If the user passed `--files`, intersect the explicit list
with the actual unresolved files. Drop anything that's
either not listed or not actually conflicted; tell the
user which.
### 1. Dry-run short-circuit
If `--dry-run`:
- Print the file list + the conflict-block count per file.
- Print: `"Run \`$merge-resolve\` (without --dry-run) to apply."`
- End. Do NOT spawn.
### 2. Delegate to $sr-merge-resolver
`spawn_agent` (full-history, no agent_type / model /
reasoning_effort). `send_message`:
> `$sr-merge-resolver`
>
> Files to resolve:
> <one path per line>
>
> Follow the `$sr-merge-resolver` skill instructions exactly.
> Apply hi