SKILL.md
YAML frontmatter with name and description, followed by Markdown instructions.
A no-jargon, build-along guide to Agent Skills—written for Indian developers in English and Hindi.
No API key required · Basic Markdown is enough
A skill is a folder. SKILL.md is the only required file.
The 30-second answer
A lightweight, portable folder that gives an AI agent specialised knowledge or a repeatable workflow. Codex discovers the skill from its name and description, loads its full instructions when relevant, and can then use its scripts or references as needed.
Follow the trail
Four short stops. Each one gives you something you can use immediately.
3 min · Mental model
Skills use progressive disclosure, so the agent only loads the detail it needs.
5 min · Anatomy
Good metadata gets the skill selected. Clear instructions make it useful.
7 min · Build
Use a repository skill for a team workflow, or a user skill for yourself.
5 min · Test
Check both triggering and output quality—including near-misses.
Mental model
Codex does not paste every skill into every conversation. It reveals the skill in stages.
At startup, the agent sees the skill's name and description—enough to judge relevance.
name + description
When the task matches, Codex reads the complete SKILL.md instructions.
SKILL.md
Only then does it load a referenced file or run a bundled script if the workflow needs it.
scripts/ · references/
Your description is not marketing copy. It is routing logic. Say what the skill does, when it should run, and—when useful—where its boundary ends.
Anatomy
my-skill/
├── SKILL.md # required
├── scripts/ # executable code
├── references/ # detailed docs
├── assets/ # templates/files
└── agents/
└── openai.yaml # Codex metadata
YAML frontmatter with name and description, followed by Markdown instructions.
A step needs deterministic behaviour or external tooling. Keep scripts non-interactive.
Detailed material would make SKILL.md long. Keep references focused and one link deep.
The workflow reuses templates, schemas, lookup data, images, or other output resources.
Specification note: The name must use lowercase letters, numbers, and hyphens, match its parent folder, and contain no consecutive hyphens.
Build along
This community example is deliberately small: it turns messy on-call notes into a crisp next-shift brief, with IST and UTC times kept explicit.
Put it in the repository when the whole team should use the same handoff. Put it in your home folder when it is personal.
.agents/skills/incident-handoff/
team
~/.agents/skills/incident-handoff/
personal
For a first version, instructions alone are enough. Do not add a script just to make the folder look complete.
Mention the skill explicitly while developing. Then try natural prompts to test whether the description activates it implicitly.
$incident-handoff turn these notes into the next shift brief
---
name: incident-handoff
description: >
Create concise engineering incident handoffs from logs,
timelines, and notes. Use when the user asks for an
on-call handoff, incident summary, status update, or
next-shift brief. Do not use for root-cause diagnosis.
---
# Incident handoff
1. Read every provided note before drafting.
2. Preserve timestamps. Show IST and UTC for distributed teams.
3. Separate confirmed facts, hypotheses, and open questions.
4. List actions with an owner; use “unassigned” when unknown.
5. Never invent an owner, cause, metric, or resolution.
## Output
- Current status
- User impact
- Timeline
- Actions taken
- Next actions and owners
- Open questions
## Final check
Verify that every claim is supported by the input.
Description lab
Test and improve
Use realistic prompts that should trigger and close near-misses that should not. The boundary is where weak descriptions fail.
Can you turn these PagerDuty notes into a handoff for the 8pm IST shift?
Find the root cause of this memory leak and patch it.
Run the same task with and without the skill. Define observable success before you fall in love with the output.
These are starting points from the Agent Skills creator guides, not hard protocol requirements.
Field notes
Official constraints, plus practical implications made explicit.
Name the user's intent and likely vocabulary. Test close negatives, not silly unrelated prompts. A broad description can be as harmful as a narrow one.
SPEC + CREATOR GUIDEWrite explicit inputs, steps, and outputs. End with checks the agent can actually perform. “Make it good” is not a verification step.
OPENAI BEST PRACTICEA script should accept flags, environment variables, or stdin—never block on a prompt. Give it concise --help output and errors that explain the next move.
CREATOR GUIDEIf SKILL.md keeps growing, move domain tables, schemas, and long examples into focused reference files. Link directly; avoid chains of files pointing to more files.
SPECIFICATIONCodex can show both skills when names collide. Give team skills distinctive names, especially when a user-level skill may cover similar work.
CODEX DOCSSkills for bank statements, Aadhaar-linked records, customer exports, or production logs need a clear data-handling rule. Never bundle real secrets or customer data as examples.
EDITORIAL SAFETY NOTEBefore you ship
Tick each item as you go. Your progress stays in this browser.
Grounded in primary sources
Facts are linked to official documentation. Original examples and editorial advice are labelled on the page.