add-team-source
Register a git URL as a team-profile source so nyann can periodically sync and expose its profiles under a namespace. TRIGGER when the user says "add a team…
Prune local branches whose work is already merged into the base. TRIGGER when the user says "clean up branches", "delete merged branches", "prune local branches", "remove old branches", "I have too many branches", "what branches can I delete", "/nyann:cleanup-branches". Do NOT
$ npx -y skills add thettwe/nyann --skill cleanup-branches --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/cleanup-branchesContext preview
The summary Claude sees to decide when to auto-load this skill.
Prune local branches whose work is already merged into the base. TRIGGER when the user says "clean up branches", "delete merged branches", "prune local branches", "remove old branches", "I have too many branches", "what branches can I delete", "/nyann:cleanup-branches". Do NOT
name: cleanup-branches description: > Prune local branches whose work is already merged into the base. TRIGGER when the user says "clean up branches", "delete merged branches", "prune local branches", "remove old branches", "I have too many branches", "what branches can I delete", "/nyann:cleanup-branches". Do NOT trigger on "delete THIS branch" (that's a one-off `git branch -D`, not a cleanup pass) or "remove a branch from the remote" (this skill is local-only; remote pruning is `git push --delete origin <branch>` and the user should do that themselves). Do NOT trigger on "merge this branch" (that's the merge step before cleanup).
Wraps `bin/cleanup-branches.sh`. Lists local branches whose tip is reachable from the base branch (`main` / `develop` / wherever the profile points), then either previews the list or actually deletes them with `git branch -d` (safe — refuses unmerged work).
Mirrors the same preview-then-mutate contract as `undo` and `migrate-profile`: nothing is deleted unless the caller passed `--yes` AND `--dry-run` was absent.
Always invoke without `--yes` first:
bin/cleanup-branches.sh --target <cwd>
Output is a CleanupBranchesResult JSON (see `schemas/cleanup-branches-result.schema.json`). Show the user:
with last-commit timestamp + short SHA so they can sanity-check.
If `summary.candidates_count == 0`, tell the user there's nothing to clean up and exit. Don't prompt.
Ask: "Delete N merged branch(es)?" — list the names if there are 5 or fewer, or summarise if more. On confirmation:
bin/cleanup-branches.sh --target <cwd> --yes
The script uses `git branch -d` (lowercase d, the safe form) so even if a candidate's merge state changed between the preview and the apply, git will refuse the unsafe delete and the entry lands in `errors[]` instead of `deleted[]`. Surface any errors verbatim.
maintain a personal fork branch list:
git push --delete origin <branch> # per branch
Don't run this for them — pushing is a high-blast-radius action and the user should pick which deletions to mirror.
`/nyann:doctor` and look at the `LOCAL BRANCHES` row for `stale_unmerged` count, or invoke `bin/check-stale-branches.sh` directly to see the full classification.
This skill is for the bulk-merged case.
is what they want; not in scope here.
ငြမ်း is Burmese for scaffolding. Nyann is the Claude Code plugin that picks expert git defaults for your stack — branching, working hooks (Husky / pre-commit.com / lefthook), commits, releases, CI, docs — then keeps the repo on those rails through every PR
Repo: thettwe/nyann
Register a git URL as a team-profile source so nyann can periodically sync and expose its profiles under a namespace. TRIGGER when the user says "add a team…
Bootstrap a fresh or existing repo with nyann. TRIGGER when the user says "set up this project", "initialize git workflow", "bootstrap this repo", "scaffold…
Survey the machine and report which nyann features are usable right now. TRIGGER when the user says "is my machine ready for nyann", "what do I need to…
Generate a Conventional Commits message from the staged diff and create the commit after user confirmation. TRIGGER when the user says "commit these changes",…
Bundle a redacted, support-grade snapshot of the current nyann state for inclusion in a bug report or support request. Combines explain-state + doctor + git…
Compare two nyann profiles side-by-side and show what would change. TRIGGER ON: 'diff profiles', 'compare profiles', 'what's different between profiles',…