AugmentClaude

Builtin Skills Manager

Create and edit embedded skills in Crush's binary system.

Installation

  1. Make sure Claude is on your device and in your terminal.

    Skills load from ~/.claude/skills/ when Claude Code starts up — so you need it on your machine first. If you don't have it yet, install it once with the command below, then run claude in any terminal to verify.

    One-time setup
    npm i -g @anthropic-ai/claude-code

    Already have it? Skip ahead.

  2. Paste into Claude Code or into your terminal.

    This copies the whole skill folder into ~/.claude/skills/builtin-skills-charmbracelet/ — the SKILL.md plus any scripts, reference docs, or templates the skill ships with. Safe default: works for every skill.

    Faster alternative (instruction-only skills)

    Skips the clone and grabs only the SKILL.md file. Don't use this if the skill ships Python scripts, reference markdowns, or asset templates — they won't be downloaded and the skill will fail when it tries to load them.

    Quick install (SKILL.md only)
    Sign up to copy
  3. Restart Claude Code.

    Quit and reopen Claude Code (or any other agent that loads from ~/.claude/skills/). New skills are picked up on startup.

  4. Just ask Claude.

    Skills auto-activate when your request matches the skill's description — no slash command needed. Trigger phrases live in the skill's own frontmatter; you can read them in the “What this skill does” section above.

Prefer to read the source first? Open on GitHub.

When Claude uses it

Use when creating a new builtin skill for Crush, editing an existing builtin skill (internal/skills/builtin/), or when the user needs to understand how the embedded skill system works.

What this skill does

Builtin Skills

Crush embeds skills directly into the binary via internal/skills/builtin/. These are always available without user configuration.

How It Works

  • Each skill lives in internal/skills/builtin/<skill-name>/SKILL.md.
  • The tree is embedded at compile time via //go:embed builtin/* in internal/skills/embed.go.
  • DiscoverBuiltin() walks the embedded FS, parses each SKILL.md, and sets paths with the crush://skills/ prefix (e.g., crush://skills/jq/SKILL.md).
  • The View tool resolves crush:// paths from the embedded FS, not disk.
  • User skills with the same name override builtins (last occurrence wins in Deduplicate()).

Adding a New Builtin Skill

  1. Create internal/skills/builtin/<skill-name>/SKILL.md with YAML frontmatter (name, description) and markdown instructions. The directory name must match the name field.
  2. No extra wiring needed — //go:embed builtin/* picks up new directories automatically.
  3. Add a test assertion in TestDiscoverBuiltin in internal/skills/skills_test.go to verify discovery.
  4. Build and test: go build . && go test ./internal/skills/...

Existing Builtin Skills

SkillDirectoryDescription
crush-configbuiltin/crush-config/Crush configuration help
crush-hooksbuiltin/crush-hooks/Authoring, configuring and debugging hooks
jqbuiltin/jq/jq JSON processor usage guide

Related skills