--- name: xs-skill-creator description: スキルの作成・改善を行うスキル。既存スキルの分析から抽出したパターンとテンプレートで統一感のあるスキルを効率的に作成。スキルを作りたい、新しいスキルを追加したい、スキルを改善したい、SKILL.mdを書きたい場合に使用。 --- # スキルクリエイター ワークスペースの既存スキル群と統一感のあるスキルを作成・改善する。 ## 絶対遵守事項 - 対話は日本語で行う - 作成するスキルのSKILL.mdも日本語で記述 ## プロンプト設計原則(制約少なめ・例多め) 過剰特定された制約は memorized shortcut を誤発火して品質を下げる(Akli et al., 2026, arXiv:2604.24712)。SKILL.md を書くときは: - 「禁止」「絶対」「必ず」を並べるより、Do の例(コマンド例・入出力例・テンプレート)で示す - スキル全体での禁止系制約は3つ程度を目安。それ以上は構造(章立て・例示)で表現する - 残す制約には「なぜそれを避けるか」を1行で添える(理由なしの禁止は誤解されやすい) 詳細とBefore/After例は `[SKILL_DIR]/references/patterns.md` の「9. 制約少なめ・例多めの原則」を参照。 ## スキル作成フロー ### Step 1: ヒアリング ユーザーに以下を確認(わかっている情報はスキップ): 1. **何をするスキル?** → 主機能の把握 2. **どんな時に使う?** → トリガー条件の特定 3. **入力と出力は?** → データフローの明確化 4. **スクリプトは必要?** → Python/Bash等の自動化有無 ### Step 2: 分類と設計 4分類のどれに該当するか判定し、適切なテンプレートを選択: | 分類 | 特徴 | 例 | |------|------|-----| | 対話型 | ユーザーとの対話で成果物を生成 | ブログ記事生成、プレゼン企画 | | 自動実行型 | 指示一つで取得→加工→出力 | ニュース取得、サイト巡回 | | ツール連携型 | 外部ツール/APIとの連携 | API操作、DB管理 | | 思考支援型 | 構造化された思考フレームワーク提供 | ブレスト支援、調査整理 | テンプレートの詳細は `[SKILL_DIR]/references/templates.md` を参照。 外部CLI、常駐サーバー、API、GPUなどに依存する場合は、あわせて次を設計する。 1. 副作用のない可用性チェック 2. 利用可能と判断できる成功条件 3. 利用不可時のフォールバック、または安全なスキップ 4. 導入・起動・ログインを自動実行してよい条件 可用性確認だけを目的に、パッケージ導入、サービス起動、ログイン、設定変更を行わない。必須機能でなければ、依存がない環境でもスキル以外の作業を継続できる構成にする。 ### Step 3: ディレクトリ作成 ```bash # スキル名はケバブケースで mkdir -p [WORKSPACE]/skills/ # 必要に応じてサブディレクトリ作成 mkdir -p [WORKSPACE]/skills//scripts mkdir -p [WORKSPACE]/skills//references mkdir -p [WORKSPACE]/skills//assets ``` ### Step 4: スクリプト作成(該当する場合) スクリプトが必要な場合: 1. `scripts/` にPython/Bashスクリプトを配置 2. **必ず `uv run` で実行する**(`python3` 直接実行は禁止。外部依存ゼロでも `uv run` を使う。理由: python未インストール環境でもuvがPythonを自動解決するため) 3. `--help` オプションを実装 4. **実際に `uv run` でテスト実行して動作確認** ### Step 5: SKILL.md作成 テンプレートに従い作成。以下の要素を必ず含める: **フロントマター(必須):** ```yaml --- name: xs- description: [50-200文字。何をするか+いつ使うか+トリガーフレーズ] --- ``` **本文の構成:** 1. **H1タイトル** - スキル名 2. **1行概要** - 何をするスキルか 3. **絶対遵守事項**(必要な場合) 4. **手順** - Step/STEP形式で番号付き 5. **出力フォーマット** - 期待する出力形式 6. **使用例** - 具体的なトリガーフレーズ **パス規則:** - `[SKILL_DIR]` - SKILL.mdがあるディレクトリ - `[WORKSPACE]` - ワークスペースルート - ハードコードパス禁止 **保存機能がある場合:** - note-takingスキルがあればそちらへの委譲を記述 - 直接保存ロジックを書かない ### Step 6: README.md作成(人間向け) SKILL.mdはAI向けの行動指示、README.mdは人間向けの説明として分ける。極小スキルを除き、次を含むREADME.mdを作成する。 - 何ができるか - 使い方と出力例 - 必要な依存・セットアップ - よくあるエラーと対処 - オプション依存がある場合は可用性の確認方法とフォールバック - 参考にしたリポジトリ、記事、ライセンス AIが実行時に読む手順はSKILL.mdへ置き、背景や長い説明をREADME.mdへ分離する。 ### Step 7: 品質チェック `[SKILL_DIR]/references/checklist.md` の全項目を確認。 フロントマターは全スキルを一括確認する。 ```bash for file in [WORKSPACE]/skills/*/SKILL.md; do head -1 "$file" | grep -q '^---$' || echo "MISSING: $file" done ``` ### Step 8: 登録確認 スキルの配置場所がシンボリックリンクで管理されている場合(例: `.claude/skills/` → `skills/`)、`skills/` にフォルダを作るだけで自動認識される。 そうでない場合は、AIツールの設定に新しいスキルを登録する。 ### Step 9: スキル一覧更新 `[WORKSPACE]/skills/README.md` があれば、スキル一覧に追加。 ### Step 10: Git同期 ```bash cd [WORKSPACE] git add skills/ skills/README.md git diff --cached git commit -m "Add skill: " ``` 公開リポジトリへpush・PR作成する場合は、対象と操作を列挙してユーザーのOKを取る。 ### Step 11: 完了報告 ``` スキル作成完了! skills// - SKILL.md(XX行、AI向け) - README.md(人間向け) - scripts/(あれば) - references/(あれば) ``` --- ## スキル改善フロー 既存スキルの改善を依頼された場合: ### Step 1: 現状分析 ```bash # 対象スキルを読む cat [WORKSPACE]/skills//SKILL.md # 行数を確認 wc -l [WORKSPACE]/skills//SKILL.md ``` ### Step 2: チェックリスト適用 `[SKILL_DIR]/references/checklist.md` の全項目を `OK` / `要修正` / `対象外(理由)` で判定する。最初に見つけた問題だけで監査を終えない。 対象ディレクトリ全体を確認し、README・参照ファイル・スクリプトが実在し、説明と実装が一致するかを照合する。README省略はStep 6の条件と理由を記録する。 ### Step 3: パターン参照 `[SKILL_DIR]/references/patterns.md` でベストプラクティスと照合。 ### Step 4: 改善実施 問題点を修正し、品質チェックを再実行。 ### Step 5: Git同期と報告 全項目の判定、変更した成果物、検証結果、残課題を報告する。未対応の「要修正」がある場合は対象と理由を明示し、改善完了とは報告しない。同期はユーザーの許可と対象リポジトリの運用ルールに従う。 --- ## 参考資料 - `[SKILL_DIR]/references/patterns.md` - スキルの設計パターン集 - `[SKILL_DIR]/references/templates.md` - 分類別テンプレート - `[SKILL_DIR]/references/checklist.md` - 品質チェックリスト - `[WORKSPACE]/skills/README.md` - スキル一覧と作成ガイド ## 使用例 ``` 新しいスキルを作りたい スキル作って:Twitterトレンド取得 このスキルを改善して スキルのレビューして ```