원클릭으로
skill-master
Agent Skills authoring. Covers SKILL.md format, frontmatter, folders, docs ingestion. Keywords: agentskills.io, SKILL.md.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Agent Skills authoring. Covers SKILL.md format, frontmatter, folders, docs ingestion. Keywords: agentskills.io, SKILL.md.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Boot, test, or run Rails commands for inbox-web through Docker. Use whenever you need to run rspec, rubocop, rails console/runner, db tasks, or the web server for this project — the native Ruby toolchain on this machine is broken, so everything must go through the dev container.
Keep a Changelog format. Covers structure, change types, versioning. Keywords: CHANGELOG.md, semver.
Conventional Commits specification. Covers commit structure, types, breaking changes. Keywords: feat, fix, BREAKING CHANGE.
Project documentation scaffolding. Covers about.md, specs.md, architecture.md, project-context.md, and user stories. Keywords: project setup, documentation, specs, architecture, stories.
React Testing Library: user-centric component testing with queries, user-event simulation, async utilities, and accessibility-first API.
Create engaging content for social media platforms: X posts and threads, LinkedIn, Threads, Instagram, Facebook. Includes writing styles, AI-avoidance patterns, hooks catalog, and macOS Notes integration. Keywords: social media, X, X, LinkedIn, threads, posts, hooks, content strategy, AI writing avoidance.
| name | skill-master |
| description | Agent Skills authoring. Covers SKILL.md format, frontmatter, folders, docs ingestion. Keywords: agentskills.io, SKILL.md. |
| version | 1.2.4 |
| release_date | 2026-02-06 |
| metadata | {"author":"itechmeat"} |
This skill is the entry point for creating and maintaining Agent Skills.
Language requirement: all skills MUST be authored in English.
references/specification.mdassets/skill-templates.mdreferences/advanced-features.mdreferences/docs-ingestion.mdscripts/my-skill/
├── SKILL.md # Required: instructions + metadata
├── README.md # Optional: human-readable description
├── metadata.json # Optional: extended metadata for publishing
├── references/ # Optional: documentation, guides, API references
├── examples/ # Optional: sample outputs, usage examples
├── scripts/ # Optional: executable code
└── assets/ # Optional: templates, images, data files
| Folder | Purpose | Examples |
|---|---|---|
references/ | Documentation for agents to read | Guides, API docs, concept explanations, troubleshooting |
examples/ | Sample outputs showing expected format | Output examples, usage demonstrations |
assets/ | Static resources to copy/use | Document templates, config templates, images, schemas |
scripts/ | Executable code to run | Python scripts, shell scripts, validators |
Use references/ for:
Use examples/ for:
Use assets/ for:
IMPORTANT: Templates belong in assets/, examples in examples/, documentation in references/.
Every SKILL.md MUST start with YAML frontmatter:
---
name: skill-name
description: "What it does. Keywords: term1, term2."
metadata:
author: your-name
version: "1.0.0"
---
Field order: name → description → license → compatibility → metadata → other fields
| Field | Constraints |
|---|---|
| name | 1-64 chars, lowercase a-z0-9-, no --, no leading/trailing -, must match folder name |
| description | 1-1024 chars (target: 80-150), describes what skill does + when to use it, include keywords |
| Field | Purpose |
|---|---|
| license | License name or reference to bundled LICENSE file |
| compatibility | Environment requirements (max 500 chars) |
| metadata | Object for arbitrary key-value pairs (see below) |
| Field | Purpose |
|---|---|
| author | Author name or organization |
| version | Skill version (semver format, e.g., "1.0.0") |
| argument-hint | Hint for autocomplete, e.g., [issue-number] |
IMPORTANT: version in metadata is the skill version. If you reference external product docs, track that version separately (e.g., in README.md or metadata.json).
| Field | Purpose |
|---|---|
| disable-model-invocation | true = only user can invoke (via /name). Default: false |
| user-invocable | false = hidden from / menu, only agent can load. Default: true |
| allowed-tools | Space-delimited tools agent can use without asking, e.g., Read Grep Glob |
| model | Specific model to use when skill is active |
| context | Set to fork to run in a forked subagent context |
| agent | Subagent type when context: fork, e.g., Explore, Plan |
| hooks | Hooks scoped to skill's lifecycle (see agent documentation) |
| Frontmatter | User can invoke | Agent can invoke | Notes |
|---|---|---|---|
| (default) | ✅ Yes | ✅ Yes | Description in context, loads when used |
disable-model-invocation: true | ✅ Yes | ❌ No | For manual workflows with side effects |
user-invocable: false | ❌ No | ✅ Yes | Background knowledge, not a command |
Available placeholders in skill content:
| Variable | Description |
|---|---|
$ARGUMENTS | All arguments passed when invoking the skill |
${CLAUDE_SESSION_ID} | Current session ID for logging or session-specific files |
If $ARGUMENTS is not in content, arguments are appended as ARGUMENTS: <value>.
Example:
---
name: fix-issue
description: Fix a GitHub issue
disable-model-invocation: true
---
Fix GitHub issue $ARGUMENTS following our coding standards.
Use !command`` syntax to run shell commands before skill content is sent to the agent:
## Pull request context
- PR diff: !`gh pr diff`
- Changed files: !`gh pr diff --name-only`
## Your task
Review this pull request...
The command output replaces the placeholder, so the agent receives actual data.
For publishing or extended metadata, create metadata.json:
{
"version": "1.0.0",
"organization": "Your Org",
"date": "January 2026",
"abstract": "Brief description of what this skill provides...",
"references": ["https://docs.example.com", "https://github.com/org/repo"]
}
Fields:
version — Skill version (semver)organization — Author or organizationdate — Publication dateabstract — Extended description (can be longer than frontmatter)references — List of source documentation URLs# Valid
name: pdf-processing
name: data-analysis
name: code-review
# Invalid
name: PDF-Processing # uppercase not allowed
name: -pdf # cannot start with hyphen
name: pdf--processing # consecutive hyphens not allowed
Purpose: Tell the LLM what the skill does and when to activate it. Minimize tokens — just enough for activation decision.
Formula:
[Product] [core function]. Covers [2-3 key topics]. Keywords: [terms].
Constraints:
Good examples:
description: "Turso SQLite database. Covers encryption, sync, agent patterns. Keywords: Turso, libSQL, SQLite."
description: "Base UI unstyled React components. Covers forms, menus, overlays. Keywords: @base-ui/react, render props."
description: "Inworld TTS API. Covers voice cloning, audio markups, timestamps. Keywords: Inworld, TTS, visemes."
Poor examples:
# Too vague
description: "Helps with PDFs."
# Too verbose
description: "Turso embedded SQLite database for modern apps and AI agents. Covers encryption, authorization, sync, partial sync, and agent database patterns."
# Marketing
description: "A powerful solution for all your database needs."
Keywords: product name, package name, 3-5 terms max.
name + description of each skill (~50-100 tokens)SKILL.md into contextKey rule: Keep SKILL.md under 500 lines. Move details to references/.
python scripts/init_skill.py <skill-name>
# Or specify custom directory:
python scripts/init_skill.py <skill-name> --skills-dir skills
Or manually create:
<skills-folder>/<skill-name>/
├── SKILL.md
├── references/ # For documentation, guides
└── assets/ # For templates, static files
---
name: <skill-name>
description: "[Purpose] + [Triggers/Keywords]"
---
Recommended sections:
For each major topic, create references/<topic>.md with:
For templates or static resources, create assets/<resource>:
python scripts/quick_validate_skill.py <skill-path>
When building a skill from external docs, use the autonomous ingestion workflow:
SKILL.md skeletonplan.md for progress trackingreferences/ directoryFor each doc link:
For each page:
references/<topic>.md with actionable summaryplan.md checkboxSKILL.md if it adds a useful recipe/ruleDo not ask user after each page — continue autonomously.
SKILL.md for completenessplan.md may be deleted manually after ingestionSKILL.md over 500 linesname validation (must match folder name)When creating or updating a skill from external documentation:
Add version field in frontmatter for product version:
---
name: my-skill
description: "..."
version: "1.2.3"
---
Optionally add release_date if known:
---
name: my-skill
description: "..."
version: "1.2.3"
release_date: "2025-01-21"
---
Create README.md with:
README.md Links section format:
## Links
- [Documentation](https://example.com/docs)
- [Changelog](https://example.com/changelog)
- [GitHub](https://github.com/org/repo)
- [npm](https://www.npmjs.com/package/name)
Include only applicable links. Order: Documentation → Changelog/Releases → GitHub → Package registry.
Example frontmatter:
---
name: turso
description: "Turso embedded SQLite database..."
version: "0.4.0"
release_date: "2025-01-05"
---
This helps track when the skill was last updated and against which product version.
name matches folder namename is 1-64 chars, lowercase, no --description is 1-1024 chars, includes keywordsSKILL.md under 500 linesreferences/, templates in assets/| Script | Purpose |
|---|---|
init_skill.py | Scaffold new Agent Skill (agentskills.io) |
init_copilot_asset.py | Scaffold Copilot-specific assets (instructions, agents) |
quick_validate_skill.py | Validate skill structure |
package_skill.py | Package skill into distributable zip |
references/specification.mdreferences/advanced-features.mdassets/skill-templates.mdreferences/docs-ingestion.md