| name | git-hex-conflict-resolution |
| description | This skill should be used when the user is stuck in a git-hex-driven rebase, merge, or cherry-pick due to conflicts and wants the agent to inspect, resolve, and then continue or abort safely. Trigger phrases include: "resolve conflicts", "rebase is stuck", "conflict markers", "continue the rebase", "abort the rebase". |
Git-hex Conflict Resolution
When to use this Skill
This skill should be used when:
- A git-hex tool reports that an operation is paused because of conflicts.
- The user says a rebase or cherry-pick is "stuck", "paused", or "in conflict".
- You need to see which files conflict and decide whether to continue or abort.
Trigger phrases include: "rebase conflict", "cherry-pick conflict", "merge conflict", "stuck on conflicts", "continue the rebase", "abort the cherry-pick".
Workflow
Inspect conflict state
- Call
git-hex-getConflictStatusto determine:- Whether a rebase/merge/cherry-pick/revert is in progress.
- Which files are conflicting and the overall operation type (
rebase,merge,cherry-pick, orrevert).
- Use
includeContent: trueonly when necessary to inspect base/ours/theirs content for specific text files.
- Call
Resolve conflicts per file
- For text files:
- Propose or apply edits based on
base,ours, andtheirs. - Ensure conflict markers are removed before resolving.
- Call
git-hex-resolveConflictwith the file path (andresolution: "delete"for delete conflicts when appropriate).
- Propose or apply edits based on
- For text files:
- For delete conflicts, use the
resolutionparameter to choose whether to keep or remove the file.
Continue or abort the operation
- When all conflicts are resolved (or
getConflictStatusshows no remaining conflicting files but the operation is still paused), callgit-hex-continueOperation. - If the user decides to give up on the rebase or cherry-pick, call
git-hex-abortOperationto restore the pre-operation state.
- When all conflicts are resolved (or
Escalate if needed
- If the final result after continuing is not what the user wanted, suggest
using
git-hex-undoLastfrom the branch cleanup Skill to revert.
- If the final result after continuing is not what the user wanted, suggest
using
Tools to prefer
- Inspection:
git-hex-getConflictStatus - Resolution:
git-hex-resolveConflict - Control:
git-hex-continueOperation,git-hex-abortOperation - Recovery:
git-hex-undoLast(via the branch cleanup Skill)
Conflict types
Operation-level
"rebase"- Interactive rebase paused"merge"- Merge in progress"cherry-pick"- Cherry-pick paused"revert"- Revert paused (detected butcontinueOperation/abortOperationare not supported; usegit revert --continueor--abortdirectly)
File-level
"both_modified"- Both sides modified the file"deleted_by_us"- We deleted, they modified"deleted_by_them"- We modified, they deleted"added_by_both"- Both sides added different versions
Delete conflict handling
// To keep the file (must exist on disk):
{ "file": "path/to/file", "resolution": "keep" }
// To accept deletion:
{ "file": "path/to/file", "resolution": "delete" }