Agent Skills by ALSEL
Anthropic ClaudeLLM・AI開発⭐ リポ 0品質スコア 50/100

designing-workflow-skills

複数フェーズの逐次実行・意思決定ツリー・サブエージェント委譲・段階的な情報開示を備えた、ワークフロー型 Claude Code スキルの設計と構造化を支援します。逐次パイプライン・ルーティングパターン・安全ゲート・タスク追跡・フェーズ実行など、複数ステップを伴うスキルを新規作成する際や、既存のワークフロースキルの品質レビュー・リファクタリングを行う際に使用してください。

description の原文を見る

>- Guides the design and structuring of workflow-based Claude Code skills with multi-step phases, decision trees, subagent delegation, and progressive disclosure. Use when creating skills that involve sequential pipelines, routing patterns, safety gates, task tracking, phased execution, or any multi-step workflow. Also applies when reviewing or refactoring existing workflow skills for quality.

SKILL.md 本文

ワークフロースキルの設計

信頼性の高いワークフロースキルを構築するために、文章ではなく構造パターンに従う。

必須原則

<essential_principles>

<principle name="description-is-the-trigger"> **`description` フィールドが、スキルをアクティベートするかどうかを決める唯一の要素です。**

Claude はスキルの frontmatter description だけに基づいて、そのスキルを読み込むかどうかを判断します。SKILL.md の本文 — 「When to Use」や「When NOT to Use」セクションを含む — は、スキルが既にアクティブになった後でのみ読まれます。トリガーキーワード、ユースケース、除外項目を description に含めてください。悪い description は、本文に何が書いてあっても、誤ったアクティベーションや見落とされたアクティベーションを招きます。

「When to Use」と「When NOT to Use」セクションはまだ目的を果たします。それらはアクティブになった後の LLM の動作をスコープします。「When NOT to Use」では具体的な代替案を名前で挙げてください。「Semgrep を使う」のように「not for simple tasks」ではなく「簡単なパターンマッチングの場合は Semgrep を使う」と書いてください。 </principle>

<principle name="numbered-phases"> **フェーズは入入出出基準を含めて番号を付ける必要があります。**

番号付けなしの文章指示は実行順序の信頼性を欠きます。各フェーズには以下が必要です:

  • 番号付け(Phase 1, Phase 2, ...)
  • 入開始基準(開始前に何が真である必要があるか)
  • 番号付けアクション(何をするか)
  • 終了基準(完了をどのように知るか) </principle>
<principle name="tools-match-executor"> **ツールは実行エンティティと一致する必要があります。**

スキルは frontmatter で allowed-tools: を使用します。エージェントは frontmatter で tools: を使用します。サブエージェントは subagent_type からツールを取得します。そのコンポーネントが使用しないツールを列挙しないでください。専用ツール(Glob、Grep、Read、Write、Edit)がある操作に Bash を使用しないでください。

ほとんどのスキルとエージェントは、ツールリストに TodoReadTodoWrite を含める必要があります — これらはマルチステップ実行中の進捗追跡を可能にし、タスクを明示的に管理しないスキルでも役立ちます。 </principle>

<principle name="progressive-disclosure"> **段階的開示は構造的であり、オプションではありません。**

SKILL.md は 500 行以下に留まります。これには、LLM がすべての呼び出しで必要とするもののみが含まれます:原則、ルーティング、クイックリファレンス、リンク。詳細なパターンは references/ に。ステップバイステップのプロセスは workflows/ に。1 段階深さ — 参照チェーンなし。 </principle>

<principle name="scalable-tool-patterns"> **指示はランタイムでスケールするツール呼び出しパターンを生成する必要があります。**

すべてのワークフロー指示はランタイムでツール呼び出しになります。ワークフローが N 個のファイルで M 個のパターンを検索する場合、N×M 呼び出しではなく 1 つの正規表現に統合してください。ワークフローがアイテムごとにサブエージェントをスポーンする場合、ファイルごとに 1 つのサブエージェントではなくバッチ処理を使用してください。10,000 ファイルテストを適用してください:大規模リポジトリに対してワークフローをメンタルで実行し、ツール呼び出し数が制限されたままであることを確認します。anti-patterns.md の AP-18 と AP-19 を参照してください。 </principle>

<principle name="degrees-of-freedom"> **指示の具体性をタスクの脆弱性に合わせる。**

すべてのステップが同じレベルの指定を必要とするわけではありません。ステップごとにキャリブレーションしてください:

  • 自由度低(正確なコマンド、バリエーションなし):脆弱な操作 — データベースマイグレーション、暗号、破壊的アクション。「このスクリプトを正確に実行する」
  • 自由度中(パラメータ付きの疑似コード):バリエーションが許容される推奨パターン。「このテンプレートを使用してカスタマイズする」
  • 自由度高(ヒューリスティックと判断):可変タスク — コードレビュー、探索、ドキュメント。「構造を分析し、改善を提案する」

スキルは自由度レベルを混在させることができます。セキュリティ監査スキルは、発見フェーズで高い自由度(「認証パターンのコードベースを探索する」)を使用し、レポートフェーズで低い自由度(「このセキュリティレベル分類表を正確に使用する」)を使用する場合があります。 </principle>

</essential_principles>

使用する場合

  • マルチステップワークフローまたはフェーズ実行を含む新しいスキルを設計している
  • 複数の独立したタスク間でルーティングするスキルを作成している
  • 安全ゲート(確認が必要な破壊的アクション)を使用するスキルを構築している
  • サブエージェントまたはタスク追跡を使用するスキルを構築している
  • 既存のワークフロースキルを品質のために確認または再ファクタリングしている
  • SKILL.md、references/、workflows/ の間でコンテンツを分割する方法を決定している

使用しない場合

  • ワークフローなしの単純な単一目的スキル(ガイダンスのみ)— SKILL.md を直接書く
  • スキルの実際のドメインコンテンツを書く(これは構造を教える、ドメイン専門知識ではない)
  • プラグイン構成(plugin.json、フック、コマンド)— プラグイン開発ガイドを使用する
  • スキル以外の Claude Code 開発 — これは特にスキルアーキテクチャ用です

パターン選択

スキルの構造に適したパターンを選択してください。workflow-patterns.md で完全なパターン説明を読んでください。

スキルには何個の異なるパスがありますか?
|
+-- 1 つのパス、常に同じ
|   +-- 破壊的なアクションを実行しますか?
|       +-- はい -> Safety Gate Pattern
|       +-- いいえ  -> Linear Progression Pattern
|
+-- 共有設定からの複数の独立したパス
|   +-- Routing Pattern
|
+-- 複数の依存するステップが順序で
    +-- ステップは複雑な依存関係がありますか?
        +-- はい -> Task-Driven Pattern
        +-- いいえ  -> Sequential Pipeline Pattern

パターンサマリー

パターン使用する場合主な特徴
Routing共有インテークからの複数の独立したタスクルーティングテーブルが意図をワークフローファイルにマップ
Sequential Pipeline依存ステップ、各ステップが次のステップに供給自動検出は部分的な進捗から再開できます
Linear Progression単一パス、常に同じ入出基準付き番号付きフェーズ
Safety Gate破壊的/不可逆的アクション実行前に 2 つの確認ゲート
Task-Driven複雑な依存関係、部分的な失敗許容度TaskCreate/TaskUpdate 依存関係追跡

構造的解剖

すべてのワークフロースキルはパターンに関係なく、このスケルトンが必要です:

---
name: kebab-case-name
description: "第三者視点の説明、トリガーキーワード付き — これが Claude がスキルをアクティベートする決定を下す方法"
allowed-tools: Tool1 Tool2 Tool3  # スペース区切りのツール名リスト
# オプションフィールド — tool-assignment-guide.md で完全なリファレンスを参照:
# disable-model-invocation: true    # ユーザーのみ起動可(Claude ではない)
# user-invocable: false             # Claude のみ起動可(/ メニューから非表示)
# context: fork                     # 分離されたサブエージェントコンテキストで実行
# agent: Explore                    # サブエージェントタイプ(context: fork が必要)
# model: [model-name]               # スキルアクティブ時にモデルを切り替え
# argument-hint: "[filename]"       # オートコンプリート中に表示されるヒント
---

# タイトル

## 必須原則
[WHY 説明付き 3~5 個の譲歩不可のルール]

## 使用する場合
[4~6 個の具体的なシナリオ — アクティベーション後の動作をスコープ]

## 使用しない場合
[3~5 個のシナリオ、名前付き代替案 — アクティベーション後の動作をスコープ]

## [パターン固有セクション]
[ルーティングテーブル / パイプラインステップ / フェーズリスト / ゲート]

## クイックリファレンス
[頻繁に必要な情報用コンパクトテーブル]

## リファレンスインデックス
[すべてのサポートファイルへのリンク]

## 成功基準
[出力検証用チェックリスト]

スキルは 3 種類の文字列置換をサポートします:引数とセッション ID 用のドル接頭変数、シェル前処理用の感嘆符バッティック構文。スキルローダーは Claude がファイルを見る前にこれらを処理します — コードフェンスの内側でも — ので、ドキュメントテキストで生の構文を使用しないでください。tool-assignment-guide.md で完全な変数リファレンスと使用ガイダンスを参照してください。

アンチパターンクイックリファレンス

最も一般的な間違い。修正前後の完全なカタログは anti-patterns.md を参照してください。

APアンチパターンワンラインフィックス
AP-1ゴール/アンチゴールを指定していないWhen to Use AND When NOT to Use セクションを追加
AP-2モノリシック SKILL.md(>500 行)references/ と workflows/ に分割
AP-3参照チェーン(A -> B -> C)すべてのファイルは SKILL.md から 1 ホップ
AP-4ハードコードされたパスすべての内部パスに {baseDir} を使用
AP-5破損したファイル参照提出前にすべてのパスを解決確認
AP-6番号付けされていないフェーズ入出基準付きですべてのフェーズに番号を付ける
AP-7終了基準を指定していないすべてのフェーズの「完了」を定義
AP-8検証ステップがないすべてのワークフロー終了に検証を追加
AP-9あいまいなルーティングキーワードワークフロータスクごとに識別可能なキーワード
AP-11仕事に合わないツールBash 同等物ではなく Glob/Grep/Read を使用
AP-12特権が多すぎるツール実際に使用されないツールを削除
AP-13あいまいなサブエージェントプロンプト何を分析、探索、返すかを指定
AP-15リファレンスダンプ生のドキュメントではなく判断を教える
AP-16根拠がない監査スキルに「Rationalizations to Reject」を追加
AP-17具体例がないキー指示の入出力を表示
AP-18直積ツール呼び出しパターンを単一正規表現に統合、1 回 grep、フィルタ
AP-19無制限のサブエージェントスポーンアイテムをグループにバッチ、バッチあたり 1 サブエージェント
AP-20Description がワークフローを要約Description = トリガー条件のみ、ワークフローステップではない

AP-10(No Default/Fallback Route)、AP-14(Missing Tool Justification in Agents)、AP-20(Description Summarizes Workflow)は完全なカタログにあります。AP-20 は影響が大きいため、クイックリファレンスに含まれています。

ツール割り当てクイックリファレンス

コンポーネントタイプを適切なツールセットにマップしてください。完全なガイドは tool-assignment-guide.md を参照してください。

コンポーネントタイプ一般的なツール
読み取り専用分析スキルRead、Glob、Grep、TodoRead、TodoWrite
インタラクティブ分析スキルRead、Glob、Grep、AskUserQuestion、TodoRead、TodoWrite
コード生成スキルRead、Glob、Grep、Write、Bash、TodoRead、TodoWrite
パイプラインスキルRead、Write、Glob、Grep、Bash、AskUserQuestion、Task、TaskCreate、TaskList、TaskUpdate、TodoRead、TodoWrite
読み取り専用エージェントRead、Grep、Glob、TodoRead、TodoWrite
アクションエージェントRead、Grep、Glob、Write、Bash、TodoRead、TodoWrite

主なルール:

  • 常に専用ツール Glob(find ではなく)、Grep(grep ではなく)、Read(cat ではなく)を優先
  • スキルは allowed-tools: を使用 — エージェントは tools: を使用
  • 指示が実際に参照するツールのみをリスト
  • 読み取り専用コンポーネントは Write や Bash を持つべきでない

却下する根拠

ワークフロースキルを設計する場合、これらのショートカットを却下してください:

根拠間違っている理由
「次のフェーズは明らかだ」LLM は文章から順序を推論しません。フェーズに番号を付けてください。
「終了基準は含まれている」含まれた基準はスキップされた基準です。明示的に書いてください。
「1 つの大きな SKILL.md はシンプルだ」書くのはシンプル、実行は悪い。LLM は 500 行を超えると焦点を失う。
「Description はそこまで重要ではない」Description がスキルをトリガーする方法です。悪い description は誤ったアクティベーションを招きます。
「Bash はすべてできる」Bash ファイル操作は脆弱です。専用ツールはエンコーディング、パーミッション、フォーマットを better に処理します。
「LLM はツールを理解する」推測は間違う。各操作のツールを正確に指定してください。
「後で詳細を追加する」不完全なスキルは不完全に配送。書く前に完全に設計してください。

リファレンスインデックス

ファイルコンテンツ
workflow-patterns.md構造スケルトンと例付き 5 パターン
anti-patterns.md修正前後付き 20 アンチパターン
tool-assignment-guide.mdツール選択マトリックス、コンポーネント比較、サブエージェントガイダンス
progressive-disclosure-guide.mdコンテンツ分割ルール、500 行ルール、サイジングガイドライン
ワークフロー目的
design-a-workflow-skill.mdスコープから自己確認まで 6 フェーズ作成プロセス
review-checklist.md提出準備のための構造化された自己確認チェックリスト

成功基準

よく設計されたワークフロースキルは:

  • When to Use AND When NOT to Use セクションがある
  • 認識可能なパターン(ルーティング、パイプライン、線形、安全ゲート、またはタスク駆動)を使用
  • 入出基準付きすべてのフェーズに番号を付けている
  • 実際に使用するツールのみをリスト(最小権限)
  • SKILL.md は 500 行以下、詳細は references/workflows に
  • ハードコードされたパス({baseDir} を使用)がない
  • 破損したファイル参照がない
  • 参照チェーン(SKILL.md からすべて 1 ホップ)がない
  • ワークフロー終了に検証ステップがある
  • Description は正しくトリガー(第三者視点、具体的キーワード)
  • キー指示に具体例がある
  • 必須原則で HOW ではなく WHY を説明

ライセンス: CC-BY-SA-4.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
trailofbits
リポジトリ
trailofbits/skills
ライセンス
CC-BY-SA-4.0
最終更新
不明

Source: https://github.com/trailofbits/skills / ライセンス: CC-BY-SA-4.0

関連スキル

OpenAILLM・AI開発⭐ リポ 6,054

agent-browser

AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。

by JimmyLv
汎用LLM・AI開発⭐ リポ 1,982

anyskill

AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 1,982

engram

AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 21,584

skyvern

AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。

by Skyvern-AI
汎用LLM・AI開発⭐ リポ 1,149

pinchbench

PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。

by pinchbench
汎用LLM・AI開発⭐ リポ 4,693

openui

OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。

by thesysdev
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: trailofbits · trailofbits/skills · ライセンス: CC-BY-SA-4.0