원클릭으로
create-skill
Scaffold a new skill folder under workspace/capabilities/skills/ with frontmatter and the seven required sections.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Scaffold a new skill folder under workspace/capabilities/skills/ with frontmatter and the seven required sections.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Author a new @tool-decorated Python file in the agent workspace, validate it, and register it via reload().
Update an existing @tool source file in workspace/capabilities/, bumping its semver per major/minor/patch.
Update an existing skill's SKILL.md body in workspace/capabilities/skills/, bumping its frontmatter semver.
| name | create-skill |
| version | 1.0.0 |
| description | Scaffold a new skill folder under workspace/capabilities/skills/ with frontmatter and the seven required sections. |
| triggers | ["add a skill","write a skill that","document this procedure","capture this workflow as a skill"] |
| tools | ["create_skill","write","edit","reload","read"] |
(auto-filled by the loader)
Inputs you must have:
Outputs the agent must produce:
workspace/capabilities/skills/<name>/ with SKILL.md plus four sub-folders.reload() call after create_skill succeeds.Don't proceed if you can't articulate the trigger phrases. A skill that nothing triggers is dead weight.
A skill is a 7-section markdown procedure that the LLM reads on demand. Frontmatter spec is in references/frontmatter-spec.md. Section-quality rubric (what's a good ## Steps vs. an anti-pattern) is in references/section-rubric.md.
The seven sections are mandatory: ## Resources, ## Contract, ## Knowledge, ## Steps, ## Anti Patterns, ## Examples, ## Validation. The loader auto-generates ## Resources from folder contents on every reload — leave it empty, your edits to it will be overwritten.
A skill is not a tool. Tools execute; skills teach. If your procedure is a single function call with no decision-making, write a @tool instead. Skills are for workflows that benefit from prose context (when to apply, what to avoid, examples).
tools: in frontmatter declares dependencies. The validator warns at reload time if a listed tool is not registered (federal-tier blocks; enterprise warns; personal info-only).
create_skill(name=..., description=..., triggers=[...], tools=[...]). The folder appears with empty section bodies.edit to fill each section in order: ## Contract → ## Knowledge → ## Steps → ## Anti Patterns → ## Examples → ## Validation.## Resources — the loader fills it. If you have references, scripts, or templates, add files to those sub-folders.reload(). The diff should mention +1 added (<your-skill-name>).capability:registration_warning for filler sections, go back to step 4 and replace N/A / none / empty bodies with real content.## Anti Patterns: N/A. The validator warns; the LLM ignores half-empty skills.tools: that you don't actually invoke in ## Steps. The validator catches the unused declaration eventually.when_to_use field instead.## Resources by hand. The loader overwrites it.# Trigger: user asks the agent to "write a runbook for rotating credentials"
await create_skill(
name="rotate-credentials",
description="Rotate the vault-stored OAuth token for the messaging integration safely",
triggers=[
"rotate credentials",
"rotate the messaging token",
"the messaging token is expired",
],
tools=["read", "bash", "write"],
)
# then edit each section, then reload()
Before declaring the new skill done:
create_skill returned Created skill ....reload() returned a diff containing +1 added.capability:registration_failed for your skill.capability:registration_warning events were emitted (or you've consciously decided to leave a section as filler).<workspace>/capabilities/skills/<name>/SKILL.md shows real content in all seven sections.