fix(git): restore router coverage and commands the retrofit dropped
git-workflow calls itself a router but named two of the six domains it routes to; the other four appeared nowhere in the file. All six are now named, with a routing table in the always-loaded body. git-submodules lost the foreach shell-variable semantics -- only the bare names survived, though $sm_path and $displaypath differ solely by which directory you are in. The table is back. Its relocated commands had also dropped the rtk git prefix its own SKILL.md mandates; 24 of them are re-prefixed. The wider rtk inconsistency across the plugin stays with #113. Also restores git-commits' body and footers output fields, git-branches' tag/ branch detection commands, git-worktrees' git config --worktree, pc-run's ambiguity fallback, git-remotes' git-history boundary, and git-history's pickaxe triggers. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EJJrm5YmacbwMdzZpXcoti
This commit is contained in:
@@ -4,7 +4,7 @@ Human-friendly interface for interactive git workflows with conversational promp
|
||||
|
||||
## What it does
|
||||
|
||||
This skill wraps the `git-orchestrate` agent to provide an interactive, educational interface for humans performing git workflows. It handles commits, branch management, history inspection, submodules, worktrees, and remotes. The skill parses user intent, gathers session context, invokes the orchestrator, and presents results in plain language with inline help, progress updates, and explanations of what's happening. It enforces confirmation gates for destructive operations (force-push, branch deletion, rebasing with history loss, force-checkout) and provides best-practices guidance throughout. The org's non-negotiable git rules live in `references/hard-rules.md` and are loaded only when a request could conflict with one.
|
||||
This skill wraps the `git-orchestrate` agent to provide an interactive, educational interface for humans performing git workflows. It is the router for the six local-git domain skills — `git-commits`, `git-branches`, `git-history`, `git-remotes`, `git-submodules` and `git-worktrees` — and `SKILL.md` carries a table mapping each of them to the requests it owns, so an ambiguous request resolves to exactly one domain before anything runs. The skill parses user intent, gathers session context, invokes the orchestrator, and presents results in plain language with inline help, progress updates, and explanations of what's happening. It enforces confirmation gates for destructive operations (force-push, branch deletion, rebasing with history loss, force-checkout) and provides best-practices guidance throughout. The org's non-negotiable git rules live in `references/hard-rules.md` and are loaded only when a request could conflict with one.
|
||||
|
||||
## Usage
|
||||
|
||||
@@ -18,7 +18,7 @@ Describe your git workflow: commit, create a branch, rebase, inspect history, ma
|
||||
|
||||
| File | Purpose |
|
||||
|------|---------|
|
||||
| `SKILL.md` | Skill instructions for agents |
|
||||
| `SKILL.md` | Skill instructions for agents — the six-domain routing table, the workflow steps, and the interaction style |
|
||||
| `README.md` | This file |
|
||||
| `references/hard-rules.md` | The org's non-negotiable git rules; read when a request creates, amends, or rewrites a commit, pushes, or touches hooks, config, or credentials |
|
||||
| `references/README.md` | Describes the references directory contents |
|
||||
|
||||
@@ -3,8 +3,9 @@ name: git-workflow
|
||||
|
||||
description: >
|
||||
Use when a human's local git request is general or ambiguous — it routes to the owning
|
||||
domain skill. Not an unambiguous commit -> `git-commits`. Not an unambiguous branch ->
|
||||
`git-branches`. Not an agent caller -> `git-orchestrate`. Not Gitea -> `gitea-workflow`.
|
||||
domain skill: `git-commits`, `git-branches`, `git-history`, `git-remotes`, `git-submodules`
|
||||
or `git-worktrees`. An unambiguous request goes straight to its domain skill instead. Not an
|
||||
agent caller -> `git-orchestrate`. Not Gitea -> `gitea-workflow`.
|
||||
|
||||
metadata:
|
||||
category: git
|
||||
@@ -25,10 +26,27 @@ metadata:
|
||||
mandated org wrapper, not a style preference. Submodule-specific commands run from inside the
|
||||
submodule's own directory instead.
|
||||
|
||||
## Domains
|
||||
|
||||
Every request resolves to exactly one of these six. An unambiguous one should have gone straight
|
||||
to the domain skill; this skill exists for the ones that did not.
|
||||
|
||||
| The request is about | Domain |
|
||||
|---|---|
|
||||
| Writing, amending, squashing, or cherry-picking a commit, and its message | `git-commits` |
|
||||
| Creating, switching, deleting, renaming, tracking, or merging a local branch | `git-branches` |
|
||||
| When a change landed, which commit broke something, what to revert or backport | `git-history` |
|
||||
| Anything touching a remote — remote config, fetch, push, pull — even unnamed | `git-remotes` |
|
||||
| A nested repository pinned inside this one by a recorded commit | `git-submodules` |
|
||||
| Several branches checked out at once, in separate directories, without stashing | `git-worktrees` |
|
||||
|
||||
`git-orchestrate` executes whatever this resolves to (step 5); the table only decides which domain
|
||||
owns the request.
|
||||
|
||||
## Workflow
|
||||
|
||||
1. **Parse intent** — extract the operation (commit, create branch, rebase, inspect history, …)
|
||||
and any options the user named.
|
||||
1. **Parse intent** — extract the operation and, from the table above, the domain that owns it,
|
||||
plus any options the user named.
|
||||
2. **Check the hard rules** — if the request creates, amends, or rewrites a commit, pushes, or
|
||||
touches hooks, config, or credentials, read `references/hard-rules.md`. Raise the relevant rule
|
||||
before acting, not after.
|
||||
|
||||
Reference in New Issue
Block a user