Gst
Shows development status in the repository: branch, uncommitted changes, recent commits, diff vs main, hot files, semantic summary. Used when a developer writes "status", "gst", "git status", "what's going on", "repo state", "show changes".From its SKILL.md
npx -y skills add yokeloop/yoke --skill gstAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
- runs commandsInstructs the agent to run 1 command, including `bash ${CLAUDE_PLUGIN_ROOT}/lib/gst-collect.sh`.
SKILL.md
2.7 KB, 702 tokens by cl100k_base, as published. Nobody here has run it
Development status
Status orchestrator: collect repository state, format a report, write a short summary. Read-only, no agent.
Step 1 — Collect
One call:
bash ${CLAUDE_PLUGIN_ROOT}/lib/gst-collect.sh
Parse the structured block. A top-level field is a line matching ^[A-Z_]+: at column 0; its value is inline (KEY: value) or, for list fields (CHANGED_FILES, HOT_FILES, COMMITS, STASH, CONFLICTS), the indented lines that follow until the next top-level field. Each COMMITS line is hash|subject|relative-time|author.
Step 2 — Format
Build the report from this template; skip every empty section:
Branch: <BRANCH> [ahead <AHEAD>, behind <BEHIND> <UPSTREAM>]
Changes: <SHORTSTAT>
staged: <STAGED> unstaged: <UNSTAGED> untracked: <UNTRACKED>
Changed files (vs <DEFAULT_BRANCH>):
<directory>/
<status> <file> (+N -M)
Hot files:
1. <path> — +N -M
...
Commits (from <DEFAULT_BRANCH>): +<COMMITS_COUNT> commits
<hash> <subject> — <relative-time>
...
Stash: <STASH_COUNT> entries
Summary: <2-3 sentences>
Rules:
- Group
CHANGED_FILESby directory, not alphabetically. - Relative times come straight from the 3rd
COMMITSfield; never print absolute dates. - Skip empty sections (no stash, no hot files, no changes → hide them).
- File status:
Mmodified,Aadded,Ddeleted (renames appear asD+A). - Plain text, no emoji.
Step 3 — Summary
Write 2-3 sentences on the outcome ("added JWT-based authentication"), not the file list. Base them on COMMITS and CHANGED_FILES.
Edge cases
Exclusive states — check in order, first match wins:
EMPTY_REPO = true→New repository. Untracked files: <UNTRACKED>. Nothing else to show.DETACHED = true→ headerBranch: detached at <BRANCH>, then the rest of the report.CONFLICTSnon-empty → lead withMERGE CONFLICTS:and the file list, then the normal report.ON_DEFAULT_BRANCH = trueorMERGE_BASE = NONE→ no diff vs default; showRecent commits:fromCOMMITS; skip "Changed files" and "Hot files".
Modifiers — apply independently:
HAS_UPSTREAM = false→ headerBranch: <BRANCH> (no upstream); omit ahead/behind.- No changes (
STAGED,UNSTAGED,UNTRACKEDall 0) → skip Changes, Changed files, Hot files.
Rules
- The script runs only read-only git commands.
- No agent — format inline in this turn.
- Limits: max 20 commits, max 50 file lines, max 10 stash entries.
What ships with it: 2 files
5.5 KB alongside SKILL.md, 1 of them executable
- gst-collect.shruns3.7 KB
- gst-doc.md1.8 KB