← ClaudeAtlas

authoring-adept-skillslisted

Write a good, portable adept skill: pick the right activation, craft a triggering description, keep it scan-safe and within harness byte budgets. Apply when creating or editing a SKILL.md or running `adept skill add`.
itaywol/adeptability · ★ 8 · AI & Automation · score 75
Install: claude install-skill itaywol/adeptability
# Authoring a good adept skill A skill is a directory `<root>/skills/<id>/` with one `SKILL.md` (YAML frontmatter + markdown body) and optional sidecars. `adept` renders it into every enabled harness, so write it **once, well, and harness-neutral**. ## Canonical SKILL.md format ```markdown --- id: pr-review # ^[a-z0-9](?:[a-z0-9-]{0,48}[a-z0-9])?$ — matches the directory name description: Use before opening a PR. Tests, security, performance. # <= 280 chars activation: agent # always | globs | agent | manual globs: [] # REQUIRED when activation: globs (e.g. ["**/*.go"]) allowed-tools: [Read, Grep] # carried into Claude Code targets: [] # empty = all enabled harnesses tags: [review, quality] --- # PR Review Checklist - [ ] Tests added or updated - [ ] No secrets in the diff ``` Validated against `pkg/adeptschema/skill.schema.json` on every load — `adept sync` fails loudly on a malformed skill, so let it catch your mistakes. ## Pick activation deliberately — this is the whole game | activation | Fires when | Use for | |---|---|---| | `agent` | The model decides from the **description** | Most skills. Procedures, checklists, how-tos. | | `globs` | A matching file is in context | Language/path-specific rules (`**/*.go`, `**/*.tsx`). | | `always` | Every request | Rare. Project-wide invariants only — costs budget on every turn. | | `manual` | Only when explicitly invoked | Heavy or destructive procedures