sharing-skills について
sharing-skillsは、ローカルのスキルを上流リポジトリへ提供するためのガイドです。ブランチ作成からプルリクエストまでの手順を示し、共有前のテストを必須としています。
主な機能
- 01上流を同期して作業ブランチを作成
- 02スキルの変更をコミットしてプッシュ
- 03gh CLIでプルリクエストを作成
- 04共有前のスキルテストを必須化
活用シーン
- 01汎用的なスキルを上流へ共有
- 02個別レビュー向けにスキル変更を提出
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ jackspace/ claudeskillz --skill sharing-skillsインストール後、Claude Code で/sharing-skillsを入力して読み込まれたか確認します。
同梱ファイルSKILL.json
詳細
スキルの共有
概要
ローカルブランチのスキルをアップストリームリポジトリにコントリビュートします。
ワークフロー: ブランチ → スキルの編集/作成 → コミット → プッシュ → PR
共有するタイミング
共有する場合:
- 幅広く活用できる(特定のプロジェクトに限定されない)スキル
- ほかの人にも役立つパターンや手法
- 十分にテストされ、ドキュメント化されている
- writing-skills のガイドラインに従っている
個人用にとどめる場合:
- 特定のプロジェクトや組織に限定される
- 実験的、または不安定
- 機密情報を含む
- 一般的な用途には限定的すぎる、またはニッチすぎる
前提条件
ghCLI がインストールされ、認証済みであること- 作業ディレクトリが
~/.config/superpowers/skills/(ローカルクローン)であること - 必須: writing-skills の TDD プロセスを使用してスキルをテスト済みであること
共有ワークフロー
1. main にいることと同期済みであることを確認する
cd ~/.config/superpowers/skills/
git checkout main
git pull upstream main
git push origin main # Push to your fork
2. フィーチャーブランチを作成する
# Branch name: add-skillname-skill
skill_name="your-skill-name"
git checkout -b "add-${skill_name}-skill"
3. スキルを作成または編集する
# Work on your skill in skills/
# Create new skill or edit existing one
# Skill should be in skills/category/skill-name/SKILL.md
4. 変更をコミットする
# Add and commit
git add skills/your-skill-name/
git commit -m "Add ${skill_name} skill
$(cat <<'EOF'
Brief description of what this skill does and why it's useful.
Tested with: [describe testing approach]
EOF
)"
5. フォークにプッシュする
git push -u origin "add-${skill_name}-skill"
6. プルリクエストを作成する
# Create PR to upstream using gh CLI
gh pr create \
--repo upstream-org/upstream-repo \
--title "Add ${skill_name} skill" \
--body "$(cat <<'EOF'
## Summary
Brief description of the skill and what problem it solves.
## Testing
Describe how you tested this skill (pressure scenarios, baseline tests, etc.).
## Context
Any additional context about why this skill is needed and how it should be used.
EOF
)"
完全な例
「async-patterns」というスキルを共有する完全な例を紹介します。
# 1. Sync with upstream
cd ~/.config/superpowers/skills/
git checkout main
git pull upstream main
git push origin main
# 2. Create branch
git checkout -b "add-async-patterns-skill"
# 3. Create/edit the skill
# (Work on skills/async-patterns/SKILL.md)
# 4. Commit
git add skills/async-patterns/
git commit -m "Add async-patterns skill
Patterns for handling asynchronous operations in tests and application code.
Tested with: Multiple pressure scenarios testing agent compliance."
# 5. Push
git push -u origin "add-async-patterns-skill"
# 6. Create PR
gh pr create \
--repo upstream-org/upstream-repo \
--title "Add async-patterns skill" \
--body "## Summary
Patterns for handling asynchronous operations correctly in tests and application code.
## Testing
Tested with multiple application scenarios. Agents successfully apply patterns to new code.
## Context
Addresses common async pitfalls like race conditions, improper error handling, and timing issues."
PR のマージ後
PR がマージされたら、次の手順を実行します。
- ローカルの main ブランチを同期します:
cd ~/.config/superpowers/skills/
git checkout main
git pull upstream main
git push origin main
- フィーチャーブランチを削除します:
git branch -d "add-${skill_name}-skill"
git push origin --delete "add-${skill_name}-skill"
トラブルシューティング
「gh: command not found」
- GitHub CLI をインストールします:https://cli.github.com/
- 認証します:
gh auth login
「Permission denied (publickey)」
- SSH キーを確認します:
gh auth status - SSH をセットアップします:https://docs.github.com/en/authentication
「Skill already exists」
- 既存スキルの変更版を作成しています
- 別のスキル名を検討するか、そのスキルのメンテナーと調整してください
PR のマージコンフリクト
- 最新のアップストリームをリベースします:
git fetch upstream && git rebase upstream/main - コンフリクトを解決します
- 強制プッシュします:
git push -f origin your-branch
複数スキルのコントリビューション
1 つの PR に複数のスキルをまとめてはいけません。
各スキルには、次の条件が必要です。
- 専用のフィーチャーブランチがある
- 専用の PR がある
- 独立してレビューできる
理由: 各スキルを個別にレビュー、改善、マージできるためです。
関連スキル
- writing-skills - 必須:共有前に十分にテストされたスキルを作成する方法
コメント
Markdown 対応