Skip to content
Development
Skill

/explain-state

Summarize what nyann currently sees in this repo: stack detection, active profile, branching strategy, hook status, CLAUDE.md, and recent commits. TRIGGER when the user says "what does nyann think is set up here", "show nyann state", "explain the setup", "what's the current

From plugin
nyann
741 skills41 commands3 hooks

Claude Code

$ npx -y skills add thettwe/nyann --skill explain-state --agent claude-code

SKILL.md

explain-state.SKILL.md
name: explain-state
description: >
  Summarize what nyann currently sees in this repo: stack detection,
  active profile, branching strategy, hook status, CLAUDE.md, and
  recent commits.
  TRIGGER when the user says "what does nyann think is set up here",
  "show nyann state", "explain the setup", "what's the current
  config", "what's the active profile", "describe this repo's
  nyann setup", "what's wired up", "show me the repo state",
  "/nyann:explain-state".
  Do NOT trigger on "what does this repo do" (that's a docs intent —
  route to CLAUDE.md / README), "is this repo healthy" (that's the
  `doctor` skill), or "what's in the X profile" (that's
  `inspect-profile`).

explain-state

Read-only. Never mutates. Wraps `bin/explain-state.sh`.

1. Invoke

bin/explain-state.sh --target <cwd> [--json] [--profile <name>]
  • **No args** → human-readable table, easy to read back to the user.
  • **`--json`** → machine-readable JSON when the user wants to pipe

it or you need structured fields for a follow-up operation.

  • **`--profile <name>`** → override profile inference when the user

names one explicitly.

2. Read the output aloud

The JSON has six blocks. When the user asks a general "what's the state", summarize the highlights rather than dumping the whole structure:

  • **stack** → "Detected `<primary_language>`" + framework + package

manager. Call out `confidence < 0.5` as "weak detection — might be worth confirming".

  • **profile** → "Active profile: `<name>` (source: `<starter|user|

team|unknown>`)". When source is `unknown`, say "couldn't infer the profile; CLAUDE.md doesn't reference one".

  • **branching** → "Strategy: `<strategy>`; base branches: `<list>`".

If null, profile isn't resolved.

  • **hooks** → "Husky: `<bool>` / pre-commit.com: `<bool>` / nyann core

hooks: `<bool>`". These are presence signals only — they tell you whether something's wired, not whether it's healthy. For health, route to `doctor`.

  • **claude_md** → "CLAUDE.md present, `<bytes>` bytes, router markers

`<bool>`". Mention the 3 KB soft / 8 KB hard budget if bytes > 3072.

  • **recent_commits** → Mention the count; read back the 1-2 most

recent subjects.

3. Follow-up routing

The whole point of explain-state is to help the user decide what to do next. Offer one or two next steps based on what's present:

  • Stack but no profile → suggest `bootstrap-project` with a matching

profile name.

  • Profile but no hooks wired → suggest re-running `/nyann:retrofit`

to install the hook bundle.

  • CLAUDE.md missing router markers → note it can be regenerated via

`/nyann:retrofit`.

  • Everything present and clean → "Looks set up. Want a deeper audit?

Run `doctor` for drift checks."

4. When the profile field shows `(unknown)`

CLAUDE.md wasn't generated by nyann (or the marker block has been removed). Don't treat this as a bug — some users intentionally hand- curate CLAUDE.md. Ask whether they want to re-bootstrap or leave it manually-maintained.

When to hand off

  • "Is it healthy?" / "What's drifted?" → `doctor` skill.
  • "What does `nextjs-prototype` do?" → `inspect-profile`.
  • "Set this up with the right profile" → `bootstrap-project`.
  • "I want to change the branching strategy" → edit the profile (or

pick a different one) and re-bootstrap.

Read more
@thettwe
Ships withnyann

ငြမ်း 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

Stars on GitHub

Momentum

stars in total
7
Star history of thettwe/nyann on GitHub, a chart by star-history.com

Other skills on nyann.

add-team-source

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…

@thettwe@thettweInstall Skill
bootstrap-project

bootstrap-project

Bootstrap a fresh or existing repo with nyann. TRIGGER when the user says "set up this project", "initialize git workflow",…

@thettwe@thettweInstall Skill
check-prereqs

check-prereqs

Survey the machine and report which nyann features are usable right now. TRIGGER when the user says "is my machine ready for…

@thettwe@thettweInstall Skill
cleanup-branches

cleanup-branches

Prune local branches whose work is already merged into the base. TRIGGER when the user says "clean up branches", "delete merged…

@thettwe@thettweInstall Skill
commit

commit

Generate a Conventional Commits message from the staged diff and create the commit after user confirmation. TRIGGER when the user…

@thettwe@thettweInstall Skill
diagnose

diagnose

Bundle a redacted, support-grade snapshot of the current nyann state for inclusion in a bug report or support request. Combines…

@thettwe@thettweInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills2w309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react5d252k
@facebook@facebookInstall Skill

Questions about explain-state.

Which coding agents can use explain-state?
explain-state installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.