Description 1012 -> 347 chars, body 582 -> 170 words, Gotchas 3 entries -> 1 at 22.9% of body. Clears the description FAIL and all four Vale CompositionNote errors -- the last carriers in the corpus, so that rule now fires nowhere. Cut the 'human-facing entry point and router' architecture note, the /gitea migration history and the six-skill composition list; all were already in the README or the routing table. Split three mutually exclusive flows into a dispatch table keyed on invocation shape, each branch self-contained in references/: status-checkin.md, number-resolution.md, skill-index.md. Report stays in the body as the gate common to every branch; each branch's own format moved to its file. The old Step 1-4 numbering presented three alternatives as a sequence. The description grew from an intermediate 283 chars on purpose: that draft had dropped flow 3's trigger entirely, leaving the domain-routing index -- a third of the skill -- reachable only through a tail clause whose grammatical subject was the request rather than the skill. Both gates were green over that. Boundary clauses are one arrow per target, so both resolve (#107: the resolver extracts only the first target per clause and reports 1 of 1 on a clause naming two). The local-git exclusion keeps its wording but drops the route to git-workflow, which would not resolve in a gitea-only install. Known residual: the dispatch conditions are stated twice, as a table and as literal conditionals. That is #109 -- body-discipline.md mandates the literal form while the ADR's cited exemplar, apm-workflow, uses a bare table plus one summary line. Fixing it here would settle that contradiction in a skill rather than in the spec, so it rides with #109. Refs #99, #107, #109
1.4 KiB
1.4 KiB
topic, source_keys
| topic | source_keys | |
|---|---|---|
| skill-index |
|
Domain-skill index
The request names a capability but not obviously which skill owns it. Find the owner here, then invoke it:
| Skill | Covers |
|---|---|
gitea-issues |
List/read/create/update issues, comments, search across issues and PRs. Composes gitea-labels-milestones for label/milestone resolution. |
gitea-labels-milestones |
Label and milestone CRUD, label inference from conversation context, resolving names/titles to the numeric IDs writes require. Cross-cutting — used by both gitea-issues and gitea-prs. |
gitea-prs |
List/read/create/update/merge PRs, code reviews. Composes gitea-labels-milestones the same way gitea-issues does. |
gitea-branches |
Branch list/create/delete, plus commit history (list commits, get a single commit by SHA). |
gitea-files |
Read/write/delete individual files, list a directory, walk the full repo tree. |
gitea-releases |
Release and tag CRUD — draft/prerelease flags, release notes, semver tags. |
A request that already names its own owner (e.g. "create a milestone" → gitea-labels-milestones, "read this file from the repo" → gitea-files) never needed this index — invoke that skill directly rather than routing through here.
Then report per SKILL.md's Report section: name the skill and hand off — don't duplicate its output format, let it report.