han-release
Cut a Han release: update CHANGELOG.md with the changes since the last release, bump and tag every plugin that changed as {plugin-name}--v{version} so a…
Authoritative guidance for building Claude Code skills, agents, and plugins, plus init and update steps that install and refresh the plugin-building skills in the current repository. Use when you need the rules or best practices for a skill, agent, hook, or plugin — designing,
$ npx -y skills add testdouble/han --skill guidance --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/guidanceContext preview
The summary Claude sees to decide when to auto-load this skill.
Authoritative guidance for building Claude Code skills, agents, and plugins, plus init and update steps that install and refresh the plugin-building skills in the current repository. Use when you need the rules or best practices for a skill, agent, hook, or plugin — designing,
name: guidance
description: >
Authoritative guidance for building Claude Code skills, agents, and plugins, plus init and update steps that install
and refresh the plugin-building skills in the current repository. Use when you need the rules or best practices for a
skill, agent, hook, or plugin — designing, reviewing, hardening, or checking one against the guidance. Run with `init`
to vendor the guidance, skill-builder, and agent-builder skills into the current repository (so they run with no
dependency on this plugin) plus a path-scoped rule index, or `update` to refresh an already-vendored copy. Does not
run an interview to build a new skill or agent from scratch — use skill-builder or agent-builder. Does not write
feature code, review application code, or build non-plugin features.
allowed-tools: Read, Glob, Grep, Bash(find *), Bash(bash "${CLAUDE_PLUGIN_ROOT}/scripts/han-config-dir.sh")As your first action, use the Read tool on `.han/config.md` inside the `personal config directory` path above. A read that returns no file is no personal configuration: continue silently. When that file or the `project .han/config.md` probe supplies content, apply it per [config-rule.md](../../references/config-rule.md), which governs precedence between the two files, relative-path resolution, and what to do with a file that reads but cannot be used.
This skill has three modes. Pick the mode from how it was invoked, then follow only that mode's steps.
Serve the relevant guidance for what the user is building. Do not read every guidance document — that defeats the purpose. Find the one or two that apply, read them, and apply them.
The guidance documents live in this skill's own `references/` directory. Use this map to choose, then read only the specific file(s) you need:
`${CLAUDE_SKILL_DIR}/references/plugin-entity-taxonomy.md`.
composition, testing, troubleshooting) → the files under `${CLAUDE_SKILL_DIR}/references/skill-building-guidance/`.
the files under `${CLAUDE_SKILL_DIR}/references/agent-building-guidelines/`.
under `${CLAUDE_SKILL_DIR}/references/claude-marketplace-and-plugin-configuration/`.
specialization-versus-model-tier reasoning → the top-level files in `${CLAUDE_SKILL_DIR}/references/`.
instructions to leave out, and how to calibrate length, narration, and scope) → `${CLAUDE_SKILL_DIR}/references/per-model-authoring.md`.
Steps:
1. Identify what the user is building or asking about. 2. List the relevant subdirectory under `${CLAUDE_SKILL_DIR}/references/` to see the available documents, using the map above. 3. Read only the document(s) that directly apply. 4. Apply the guidance to the user's situation. Cite the document you used so the user can read it in full if they want.
Install the plugin-building skills into the current repository so anyone using the repo can run them and consult the guidance, with no dependency on this plugin remaining installed.
1. Run `${CLAUDE_SKILL_DIR}/scripts/init-guidance.sh` from the repository root. The script vendors three skills into `.claude/skills/` under a `plugin-` prefix so they never collide with this plugin's own slash commands: a guidance-only `plugin-guidance` skill (whose `references/` directory is the single in-repo copy of the guidance documents), `plugin-skill-builder`, and `plugin-agent-builder` (with their names, cross-references, and guidance paths rewritten to that vendored copy). It then writes the path-scoped rule index at `.claude/rules/plugin-building-guidance.md`. Capture its output. 2. Report to the user what was written: the three vendored skills, the total file count, the rule index path, and the `paths:` globs. Explain that the three skills are now available directly in the repo (`/plugin-guidance`, `/plugin-skill-builder`, `/plugin-agent-builder`) and that the rule index is an index only — Claude Code loads it when a matching skill or agent file is touched, and it points to the vendored guidance so only the documents the current file needs are loaded, not all of them. 3. Do not commit. Leave the new files staged for the user to review.
Refresh the vendored skills and their rule index in a repository that already has them, so contributors get the current skills and guidance after this plugin has been updated. Updating is the same vendoring operation as Initialization Mode — it replaces every vendored skill in full (each `SKILL.md` and the guidance documents under `plugin-guidance/references/`, removing any files that the plugin source has since dropped) and regenerates the rule index — but it first confirms the skills are actually installed before touching anything.
1. Check whether the skills are already installed at the expected location. Run `find .claude -maxdepth 3 \( -path '*/skills/
Han is a suite of AI skills and agents for solo (or small-team) product engineers.
Cut a Han release: update CHANGELOG.md with the changes since the last release, bump and tag every plugin that changed as {plugin-name}--v{version} so a…
Update Han plugin documentation so every skill, agent, guidance doc, index, and cross-reference is current and accurate. On a non-default branch, scopes the…
Produces a progressive-disclosure overview of unfamiliar code or a pull request's changes with code-overview and publishes the resulting overview to a…
Runs an evidence-based investigation of a bug, failure, or unexpected behavior with investigate and publishes the resulting investigation report to a…
Publishes a local Markdown file to a user-specified Confluence location, creating a new page or updating an existing one through the Atlassian MCP server. Use…
Builds a feature specification from scratch with plan-a-feature and publishes it to a user-specified Confluence location, posting the spec as a parent page and…