Skip to main content

build-a-skill

Use when creating or modifying a skill: follow SKILL.md rules, define commands and dependencies, validate locally, version correctly, and publish

Datos de origen

Repositorio
avibe-bot/askill
Última actividad en el origen
11 de febrero de 2026 a las 19:37
Idioma detectado de SKILL.md
inglés
Estrellas
13
Forks
3

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
build-a-skill
slug
build-a-skill
description
Use when creating or modifying a skill: follow SKILL.md rules, define commands and dependencies, validate locally, version correctly, and publish
version
1.0.1
author
{"name":"askill","github":"askill"}
tags
["official","development","askill"]
# Build a Skill Use this skill when creating or updating a skill that must work with askill CLI and registry conventions. ## Authoring Standard A valid skill requires one entry file: - `SKILL.md` (required) Optional supporting files: - `scripts/` for executable commands - `assets/` for templates or reference material Recommended layout: ```text my-skill/ ├── SKILL.md ├── scripts/ │ └── main.js └── assets/ ``` ## Minimal SKILL.md Template ```markdown --- name: my-skill slug: my-skill description: One-line purpose of the skill version: 0.1.0 --- # My Skill ## Overview What this skill does and when to use it. ## Usage Step-by-step instructions the agent can execute. ``` ## Frontmatter Rules Required: - `name` - lowercase letters/numbers/hyphens only - `description` - concise summary Strongly recommended: - `version` - valid semver (`1.0.0`, `1.1.0-beta.1`) - `slug` - publish identifier (`@author/slug`) Optional: - `author`, `tags`, `dependencies`, `commands`, `repository`, `license` Dependencies format: - Published: `@author/skill-name` or `@author/skill-name@^1.2.0` - Indexed GitHub: `gh:owner/repo@skill-name` or `gh:owner/repo/path` Commands format: ```yaml commands: analyze: run: node scripts/analyze.js description: Analyze current repository _setup: run: npm ci description: Install command dependencies ``` ## Write for Agents, Not Humans Your markdown body should be executable guidance: - include clear preconditions - include exact commands - include expected outputs/artifacts - include failure handling and recovery paths Good instruction pattern: 1. Check prerequisites 2. Run command 3. Verify output 4. Handle common failures ## Development Loop (Local) Use this loop while building: ```bash # 1) scaffold askill init ./my-skill # 2) validate schema/fields askill validate ./my-skill/SKILL.md # 3) install locally for testing askill add ./my-skill -a claude-code -y # 4) run commands askill run my-skill:<command> # 5) inspect installed state askill list ``` When iterating quickly, reinstall with `askill add ./my-skill -y` after changes. ## Publish Workflow Publishing uses `slug` as publish intent. ```bash askill login --token ask_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx askill whoami askill publish ./my-skill ``` Alternative (publish from GitHub SKILL.md URL): ```bash askill publish --github https://github.com/owner/repo/blob/main/path/to/SKILL.md ``` Important: - `askill publish` requires `name`, `slug`, and valid semver `version` - local publish uses logged-in user as author - GitHub URL publish uses repo owner as author (supports org namespace) - successful publish creates canonical slug `@author/<slug>` - bump `version` before republishing updates - `askill submit <github-url>` requests indexing and can trigger slug-driven publish flows ## Quality Checklist Before Release - `askill validate` passes with no errors - all documented commands exist in frontmatter - command descriptions are present and specific - prerequisites are explicit and testable - instructions avoid hardcoded agent paths - at least one end-to-end example is included ## Common Mistakes to Avoid - vague instructions like "run the script" - missing `run` or `description` in commands - undocumented prerequisites (runtime/tooling) - relying on unpublished assumptions instead of explicit steps - hardcoding `.claude/skills/...` paths instead of `askill run` ## Maintenance Guidance For updates: 1. change skill behavior/instructions 2. bump semver in `version` 3. validate locally 4. republish For breaking changes, increment major version.
Ver en GitHub