Files
dev/docs/skills.md
T
zeekay 9d251b3ec4 fix: publish hanzo-tunnel to crates.io, gate tunnel behind feature flag, fix CI
- hanzo-tunnel v0.1.0 published to crates.io (was path dep to ../../../tunnel)
- cli: tunnel + tunnel-bridge deps now optional behind `tunnel` feature flag
- cli: cloud module (ZT + relay) gated with #[cfg(feature = "tunnel")]
- tunnel-bridge: all hanzo_tunnel usage gated behind `tunnel` feature
- CI: fix prettier by scoping JS globs, excluding symlinked CLAUDE.md
- CI: format all workflows and docs with prettier
- Workspace compiles clean without tunnel feature (CI default)
- Local builds with `--features tunnel` still work with crates.io dep
2026-03-11 20:28:33 -07:00

1.9 KiB

Skills

Warning: this is an experimental feature and may change.

Hanzo Dev can discover reusable "skills" on disk. A skill is a small bundle with a name, short description, and optional body instructions. Runtime context includes only name, description, and file path; the full body stays on disk.

Enable skills

Skills are behind the skills feature flag and enabled by default.

  • Disable in config (preferred): add to $HANZO_HOME/config.toml (usually ~/.hanzo/config.toml):

    [features]
    skills = false
    
  • Override for a single run:

    dev -c features.skills=true
    

Where skills live

Discovery roots (highest precedence first):

  • Repo: nearest .hanzo/skills/**/SKILL.md from current directory up to repo root.
  • User: $HANZO_HOME/skills/**/SKILL.md (default: ~/.hanzo/skills/**/SKILL.md).
  • System: bundled skills under $HANZO_HOME/skills/.system/**/SKILL.md.

Behavior:

  • Recursive scan; only files named exactly SKILL.md are loaded.
  • Hidden entries are skipped.
  • Symlinks are skipped.
  • Duplicate skill names are deduped by precedence above (first match wins).
  • Render order is by name, then path.

File format

  • YAML frontmatter + body.
  • Required frontmatter fields:
    • name (non-empty, <= 64 chars, single-line normalized)
    • description (non-empty, <= 1024 chars, single-line normalized)
  • Extra keys are ignored.

Loading and rendering

  • Skills load once at startup.
  • When valid skills exist, Hanzo Dev appends a runtime-only ## Skills section after AGENTS.md.
  • Invalid skills are ignored and surfaced as startup errors in the TUI.

Create a skill

  1. Create ~/.hanzo/skills/<skill-name>/.

  2. Add SKILL.md:

    ---
    name: your-skill-name
    description: what it does and when to use it
    ---
    
    # Optional body
    
    Add instructions, references, examples, or scripts (kept on disk).
    
  3. Restart Hanzo Dev.