원클릭으로
tooling-skill-authoring
Author, modify, and validate agent skills. Covers naming, description caps, why-encoding, flat layout, Python helpers.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Author, modify, and validate agent skills. Covers naming, description caps, why-encoding, flat layout, Python helpers.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | tooling-skill-authoring |
| description | Author, modify, and validate agent skills. Covers naming, description caps, why-encoding, flat layout, Python helpers. |
Structural rules (categories, frontmatter, status lines, required sections, validators, templates) live in references/handbook.md, now a slim index over topical files. Authoring walkthrough in references/authoring-walkthrough.md. Templates per category in templates/.
The rest of this file carries opinionated authoring discipline the handbook doesn't cover: why-encoding, flat-not-nested layout, Python-helpers bias, frontmatter aliases.
Default: skills live at <personal-os-repo>/.agents/skills/. Canonical source for the cross-repo / runbook / operating-context skill surface. Global-scope copy in the harness skills dir (~/.claude/skills/ or ~/.codex/skills/) is a symlink managed by the ansible skills role (make refresh-symlinks).
Exception: per-repo co-location for pure design-reference skills. A repo may host its own .agents/skills/ if the skills are pure design or usage reference for that repo only and never get invoked under cross-repo failure conditions. Per-repo skills surface only when the harness is operating in that repo's directory, the correct scope for design references. Runbooks, investigation playbooks, and anything that fires under partial-failure stay central. Co-location requirements (catalog hooks via make apply-agentic-os-hooks, a slim categories.yaml, pre-commit install) live in references/co-location.md.
Directory under .agents/skills/ with SKILL.md (frontmatter: name, description + instructions). Commit in the personal-OS repo, then refresh the skill mount (make refresh-symlinks).
Bootstrap also handles client CLAUDE.md import, workspace CLAUDE.md import, parent-dir AGENTS.md symlink. Uses ln -s; on Windows needs MSYS=winsymlinks:nativestrict + Developer Mode.
Run the validator before committing for fast feedback:
pre-commit run skill-conventions --all-files
pre-commit run dead-cross-links --all-files
pre-commit run em-dash-check --all-files
The structural validator enforces the category taxonomy from .agents/skills/categories.yaml. If your skill name doesn't match an allowed prefix or exact-name, the validator rejects it. See the handbook for the prefix list.
Four high-signal rules each carry decision reasoning in references/opinionated-discipline.md:
.agents/skills/. Nesting is invisible to the loader.python3. The LLM tier does synthesis, not parsing.Frontmatter-alias discipline (validator-enforced description ceiling - categories.yaml:max_description_bytes, default 500, kai-parity target 200 - and the router-parent carve-out) lives in references/frontmatter-aliases.md.
Three longer-form rules live in references/discipline.md: investigation/runbook skills live centrally (not co-located with the tool they investigate), plugin-marketplace fast-forward, and full documentation discipline (layout, size caps, code comments).
skill, SKILL.md, frontmatter, plugin, .agents/skills, authoring skill, validator, categories.yaml, skill location, naming, category prefix, description size, flat layout, Python helpers, plugin marketplace, documentation discipline, doc layout, code comments.
Kai's "start a sidequest" command - file a Forgejo issue from a described piece of work, then dispatch it through ward into its own session.
Tier and prune an issue backlog - P0-P4 tier definitions (P4 is the icebox/lowest tier), a target distribution as ranges, percentile-cut assignment that lands within the bands, pruning, and a second orthogonal automation-mode axis (headless/interactive/consult). Triggers - prioritize, prioritization, triage the backlog, P0/P1/P2/P3/P4, backlog ratio, icebox, burn down the backlog, tier the issues, automation mode, eligibility to dispatch.
gpg-ssm is a GPG wrapper that pulls signing material from AWS SSM at sign time instead of caching on disk. Use when wiring up a fresh machine for signed commits, bootstrapping the shared signing key, rotating a key, or debugging signing failures. Triggers - gpg-ssm, gpg signing, signed commits.
Git + GitHub umbrella. Hard rule - never use gh api graphql without double-confirming, REST is default. Owns the full PR lifecycle (branch, commit, open, monitor CI, auto-fix, merge) and routes to ward-passthrough and git-workflow siblings.
git workflow, forgejo, default tracker, commit, push, PR, gh, fj, issue, todo, gish.
Kai's technical preferences - Go CLI defaults (urfave/cli), Charm TUI stack, dead-repo check, doc conventions, default license. Triggers - cli, tui, library, dependency, recommend tool.