skillstash-management
How to create, validate, and manage skills in this skillstash instance
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
How to create, validate, and manage skills in this skillstash instance
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Creates or updates skills with proper YAML frontmatter, progressive disclosure, and best practices per the open Agent Skills specification. Supports simple, tool-restricted, multi-file, and script-based skills. Use when creating new skills, authoring skills, extending agent capabilities, or when `--create-skill` or `--new-skill` flag is mentioned.
Validates and reviews skills against the Agent Skills specification. Checks YAML syntax, naming conventions, description quality, file structure, and best practices. Provides improvement suggestions with before/after examples and optionally applies fixes. Use when validating skills, reviewing skill quality, checking skills before commit, or when `--check-skill`, `--validate-skill`, or `--review-skill` is mentioned.
Author skillstash SKILL.md files from research or issue specs
Gather sources and summarize research for skillstash skills
Review skillstash PRs and summarize validation issues
| name | skillstash-management |
| description | How to create, validate, and manage skills in this skillstash instance |
This skill tells you how to work with this repository. Use it whenever you need to create, modify, or manage skills.
skillstash/
โโโ skills/ # All skills live here
โ โโโ my-skill/
โ โโโ SKILL.md # Required - skill definition
โ โโโ references/ # Optional - docs, specs
โ โโโ scripts/ # Optional - executable helpers
โ โโโ assets/ # Optional - templates, configs
โโโ .skillstash/
โ โโโ config.yml # Skillstash configuration
โโโ docs/ # Skillstash documentation
โโโ scripts/ # Skillstash automation
โโโ .agents/ # Agent instructions
mkdir -p skills/my-skill-name
Use kebab-case for directory names.
Every skill requires a SKILL.md with YAML frontmatter:
---
name: my-skill-name
description: Brief one-line description of what this skill does
---
# My Skill Name
## When to Use This Skill
Describe trigger conditions.
## What This Skill Does
Step-by-step instructions.
## Examples
Concrete usage examples.
| Field | Description |
|---|---|
name | Must match directory name exactly (kebab-case) |
description | One-line summary for discovery |
| Field | Description |
|---|---|
version | Semver (e.g., 1.0.0) |
author | GitHub username |
tags | Array for categorization |
status | experimental, stable, deprecated |
Skills must pass these checks:
| Rule | Requirement |
|---|---|
| SKILL.md exists | Required file in skill directory |
| Valid frontmatter | YAML must parse, required fields present |
| Name matches | name field must equal directory name |
| Kebab-case | Directory name: lowercase, hyphens only |
| Max 500 lines | Keep skills focused and maintainable |
bun run validate
Zero latency: Skills work immediately after saving.
skills/my-skill/SKILL.mdNo git push required for local use.
Skill branches must follow this pattern:
| Pattern | Use case |
|---|---|
skill/add-<slug> | Creating a new skill |
skill/update-<slug> | Modifying an existing skill |
skill/remove-<slug> | Deleting a skill |
The merge-readiness check enforces this. PRs with wrong branch names will fail.
When the skill works locally:
# Create branch with correct naming
git checkout -b skill/add-my-skill
# Commit and push with Graphite
gt create -am "feat: add my-skill for [purpose]"
gt submit --no-interactive
PRs touching skills/** run the merge-readiness check which validates:
| Check | Blocking |
|---|---|
Branch naming (skill/*) | Yes |
| Required labels exist | No (warning) |
| Auto-merge enabled | No (warning) |
| Merge settings correct | No (warning) |
Once checks pass, enable auto-merge on the PR. It merges automatically when validation completes.
External documentation, API specs, research notes.
skills/my-skill/references/
โโโ api-docs.md
Executable helpers for the skill.
skills/my-skill/scripts/
โโโ setup.sh
Templates, images, configuration files.
skills/my-skill/assets/
โโโ config-template.json
Temporary research notes. Removed before merge.
For tracked work, use beads:
# Create issue
bd create --title="Create [skill-name] skill" --type=feature
# Claim work
bd update <id> --status=in_progress
# Implement skill (local-first)
# Close when done
bd close <id>
bd sync
SKILL.md exists with frontmattername field matches directory nameskills/bun run validate locally# Directory: skills/my-skill/
# Frontmatter must match:
---
name: my-skill # Correct
name: mySkill # Wrong - will fail validation
---