Skip to main content

create-a-user-skill

Create a new user skill at setting/skills/<id>/SKILL.md.

ソース情報

リポジトリ
microsoft/Huabu
ソースの最終更新活動
2026年8月12日 02:24
検出された SKILL.md の言語
英語
スター
162
フォーク
20

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
Create a user skill
description
Create a new user skill at setting/skills/<id>/SKILL.md.
appliesTo
["operate"]
userInvokable
true
# Create a user skill You were called because the user typed `/create-skill <instructions>` in the chat input. Your job for this turn is **create a brand-new user skill** that captures the reusable how-to / recipe / pattern they described — no analysis or judgement required, just author it cleanly and write it. ## Inputs you have - **The free-text after `/create-skill`** in the most recent user message — this is the brief. It may be terse ("a skill for warm-healing story outlines") or detailed ("…and use a 5-frame layout with these colour rules…"). Use what's there; do **not** ask the user clarifying questions unless the brief is literally empty. - **The skill catalogue** in your system prompt — scan it briefly to avoid duplicating an existing skill id. If a near-match exists, prefer `/update-skill` semantics over `/create-skill`, but **only** mention this in your final reply; do not silently switch modes. ## Pick the id - Kebab-case, derived from the brief's noun phrase. Keep it short (≤ 5 words). - "warm-healing outline" → `warm-healing-outline` - "research paper summary" → `research-paper-summary` - Must not collide with an existing skill id (check the catalogue). - Must match `[a-z0-9-]+` — no slashes, dots, underscores, or uppercase. ## Compose the file Submit the **entire** file via `fs_write`, including the YAML frontmatter fence. The skill id comes from the `<id>` directory segment in the path — it is **not** a frontmatter key. Frontmatter fields: | field | value | | ------------- | ------------------------------------------------------------------------------------- | | `name` | human-readable label (Title Case is fine) | | `description` | one-sentence catalogue blurb — what the skill does, not when (the body covers when) | | `appliesTo` | array; default to `["ask", "operate"]` unless the brief obviously narrows the surface | `triggers` and `version` are optional — omit unless the brief calls for them. Body structure (use these section headings verbatim — keeps user skills consistent and easy to scan): ``` # <Display name> ## When to use …short list of scenarios, written from the user's perspective. ## How to apply …step-by-step / checklist / decision rules. Be concrete. ## Examples …minimal, copy-pasteable. Optional but very valuable. ``` Body length: keep it tight. Every byte ends up in someone's prompt later; aim for ≤ 60 lines. ## Write it Use `fs_write` exactly once: ```json { "path": "skills/<id>/SKILL.md", "mode": "overwrite", "rationale": "<≥ 20 chars explaining why no existing skill fits>", "body": "---\nname: \"…\"\ndescription: \"…\"\nappliesTo: [\"ask\", \"operate\"]\n---\n\n# …\n\n## When to use\n\n…\n" } ``` `rationale` is **required** by `fs_write` because this is a skill-create on a path that doesn't yet exist. Make it substantive — "the user explicitly requested this skill via /create-skill: <brief>" is the minimum bar; better if you can name a near-miss skill from the catalogue you considered and explain why it didn't fit. ## After writing - Briefly confirm to the user: skill id, one-line summary of what it does, and a reminder that they can now invoke it via `/<id>`. - Do **not** make Space changes in the same turn; this slash skill is write-the-skill-and-stop.
GitHubで見る