アプリ・Webサービス・業務ツールの制作を、証拠分析→確定的な初稿→要件定義→体験設計→機能分解→実装→品質ゲート→リリース判定の手順ゲート制で進めるスキル。質問で要件を埋めるのではなく、依頼文・既存コード・資料・ログから最有力案を選び、動く成果物を先に出して差分で改善する。ユーザーが「アプリを作りたい」「ツールを作って」「〜を自動化したい」「システム化したい」「要件定義」「仕様を決めたい」「UI/UXを設計して」「体験を良くしたい」「機能を洗い出して」「MVPを決めたい」「品質チェック」「リリースしていいか判断して」などと言ったら必ず使用する。外部データの取込・マスタ・締め処理を伴う業務システムでは references/data-lifecycle.md も併用する。新規・既存を問わずアプリの制作・改善・リニューアルで使用する。
cloudflare
Cloudflare全体の製品選択と対象Accountの文脈を確定するルータースキル。Workers、Pages、KV、D1、R2、Workers AI、Vectorize、Agents SDK、Flagship、Tunnel、WAF、Terraform等のどの製品・参照・専用Skillを使うか判断する。Cloudflare要件が複数製品にまたがる、製品名が未確定、Accountの選択が必要な場合に使う。Wrangler操作、Durable Objects、Turnstile、Email Service、Workersコード、本番デプロイは責務表の専用Skillへ委譲し、本Skillで実行手順を重複定義しない。数値・API・設定は記憶よりCloudflare公式ドキュメントの取得を優先する。
インストール方法を見る含まれるファイル(44)
- SKILL.md14.6 KB
- references/account-context.md6.5 KB
- references/bindings/api.md1.2 KB
- references/bindings/configuration.md1.8 KB
- references/bindings/gotchas.md7.2 KB
- references/bindings/patterns.md5.3 KB
- references/bindings/README.md1.6 KB
- references/d1/api.md1.4 KB
- references/d1/configuration.md1.5 KB
- references/d1/gotchas.md5.7 KB
- references/d1/patterns.md7.1 KB
- references/d1/README.md1.4 KB
- references/kv/api.md1.4 KB
- references/kv/configuration.md1.2 KB
- references/kv/gotchas.md5.2 KB
- references/kv/patterns.md4.6 KB
- references/kv/README.md1.5 KB
- references/queues/api.md1.5 KB
- references/queues/configuration.md1.3 KB
- references/queues/gotchas.md8.4 KB
- references/queues/patterns.md5.4 KB
- references/queues/README.md1.7 KB
- references/r2/api.md1.4 KB
- references/r2/configuration.md1.1 KB
- references/r2/gotchas.md6.2 KB
- references/r2/patterns.md5.7 KB
- references/r2/README.md1.4 KB
- references/README.md2.4 KB
- references/vectorize/api.md1.5 KB
- references/vectorize/configuration.md1.2 KB
- references/vectorize/gotchas.md3.2 KB
- references/vectorize/patterns.md3.0 KB
- references/vectorize/README.md1.6 KB
- references/workers/api.md1.4 KB
- references/workers/configuration.md1.5 KB
- references/workers/frameworks.md4.2 KB
- references/workers/gotchas.md6.3 KB
- references/workers/patterns.md5.5 KB
- references/workers/README.md1.5 KB
- references/workflows/api.md1.7 KB
- references/workflows/configuration.md1.5 KB
- references/workflows/gotchas.md5.6 KB
- references/workflows/patterns.md6.7 KB
- references/workflows/README.md1.6 KB
SKILL.md(原文)
インストールする前に、エージェントに与えられる指示の中身を確認できます。
本ファイルは cloudflare/skills(Apache-2.0)を基に改変しています。詳細は リポジトリルートの ATTRIBUTION.md を参照。
Cloudflare製品選択ルーター
Cloudflareの要件を実装する前に、以下の判断木で対象製品を1つ以上確定し、専用Skill・同梱reference・cloudflare-docs MCPのいずれか1つだけを読み込む。本Skillの責務は「何を使うか」と「どのAccountを使うか」の確定までであり、個別製品の実行手順は専用Skillに委譲する。
CloudflareのAPI、型、上限、価格は更新される。事前知識より最新情報の取得を優先する。同梱referenceは既定スタックと要件フラグ経由の製品に絞ってあり、それ以外の製品仕様はcloudflare-docs MCPで取得する。同梱referenceも探索の起点であり、最新仕様の正本ではない。
最新情報の取得先
具体的な数値、APIシグネチャ、設定オプションを記載・実装する前に、必ず最新情報を取得する。事前知識や同梱referenceだけで確定しない。
第一手段は cloudflare-docs MCP(認証不要、https://docs.mcp.cloudflare.com/mcp)。本Skillが同梱するreferenceは、キット既定スタック(Workers / D1 / R2 / KV とそのbinding)と、要件フラグ経由で確実に使う製品(Queues / Workflows / Vectorize)だけに絞ってある。それ以外のCloudflare製品のreferenceは同梱していない。判断木で製品を確定したら、その製品名でdocs MCPを検索する。
| 取得先 | 取得方法 | 使う場面 |
|---|---|---|
| Cloudflare docs (MCP) | cloudflare-docs MCPで製品名・API名を検索 | 既定の第一手段。上限、価格、API reference、compatibility dates/flags、および同梱referenceのない全製品 |
| Cloudflare docs (Web) | https://developers.cloudflare.com/<product>/ を取得 | docs MCPが使えないときの代替 |
| Workers types | pnpm pack @cloudflare/workers-typesまたはnode_modulesを確認 | 型シグネチャ、binding形状、handler型 |
| Wrangler config schema | node_modules/wrangler/config-schema.json | 設定フィールド、binding形状、許容値 |
| Product changelogs | https://developers.cloudflare.com/changelog/ | 上限、機能、廃止予定の最新変更 |
同梱referenceは探索の起点であり、最新仕様の正本ではない。referenceと公式docsが食い違う場合は公式docsを正とする。特に数値上限、pricing tier、型シグネチャ、設定オプションは必ずdocs MCPで再取得する。
MCP の配置 scope と Cloudflare OAuth の認可 scope は別物であり、cloudflare-docs は認証不要、Bindings 等はそのcapabilityを初めて使う時だけ対象1件を認可する。詳細と MCP 不通時の復旧(未登録 / 不通 / legacy sse / scope 衝突)は skills/wrangler/references/mcp-vs-cli-routing.md が唯一の正本。docs MCP が使えないときの手順は下記「docs MCPに接続できないとき」。
専用Skillとの責務分担
次の領域は本Skillで実行手順を展開せず、対応する専用Skillをロードする。Account文脈が必要な場合は、本Skillで確定した結果を委譲先へ渡す。
| 要件・作業 | 責務を持つSkill | 本Skillが行うこと |
|---|---|---|
| Wrangler CLIのコマンド、設定、トラブルシュート | wrangler | 対象製品とAccount文脈の確定のみ |
| Durable Objectsの設計・実装・テスト | durable-objects | Durable Objectsを選ぶべきかの判断のみ |
| Turnstile / CAPTCHA / bot対策 | turnstile-spin | Turnstileを選定しAccount文脈を渡す |
| Email Sending / Email Routing / deliverability | cloudflare-email-service | Email領域へのルーティングのみ |
| Workersコードの作成・レビュー | workers-best-practices | Workersの採用判断と関連製品の選定のみ |
| 本番デプロイ、D1 migration、secret、セキュリティ設定 | cloudflare-secure-deploy | 対象Accountと利用製品の確定のみ |
委譲先で MCP と wrangler CLI のどちらを使うかは skills/wrangler/references/mcp-vs-cli-routing.md の「作業別の既定経路」に従う(仕様の確認と調査は MCP、deploy / secret / migration は CLI 既定)。本Skillでは経路表を複製しない。
上記以外の製品は、本Skillの判断木で確定したうえで、同梱referenceがあればそれだけを読み、なければcloudflare-docs MCPで検索する。別の専用Skillがあるのに、本Skill内の似たreferenceと両方を実行手順として読み合わせない。
Account文脈の正本
Cloudflareのcreate/update/delete、secret、migration、deployの前に、Account文脈の自動検出を実行する。特定のrepository名、利用者名、Account名、Account IDを既定値として埋め込まない。
利用者へ最初からAccount情報を尋ねない。プロジェクト設定とread-onlyなCloudflare照合からAccount候補と既存resourceの所有先を自動検出し、次の順で決める。
- 既存resourceの所有Accountが1つに定まる場合は、そのAccountを自動選択する。
- 新規projectで既存resourceがない場合は、客観的にチーム用と確認できるAccountを既定推奨する。
- 根拠が同率の候補が複数残る場合だけ、Account名・種別・一致したresourceを番号付きで示し、番号だけを選んでもらう。
選定結果のmodeはexisting / team / personalのいずれかとする。既存resource所有先を選んだ場合は、Account種別を推測せず必ずexistingにする。team既定はresourceが存在しない新規projectだけに適用する。
完全なAccount ID、token、secretはchat、ログ、最終報告、project fileへ出力・保存しない。選択結果はWranglerのdirectory-bound auth profileなど、プロジェクト単位の安全な仕組みで保持する。利用できない場合はsession内だけで扱い、次回は再検出する。CI/CDで資格情報が必要ならci-cd-pipelineへ委譲し、Workers Buildsまたは外部CI/CDを選ぶ。どちらでも資格情報をrepositoryへ値として書かない。
docs MCPに接続できないとき
判断木で docs:<name> に到達したのに cloudflare-docs MCP が使えない場合は、次の3段で埋め、どの段で止まったかを報告に残す。
- MCP 不通:
claude mcp listで状態を確認し、skills/wrangler/references/mcp-vs-cli-routing.mdの「MCP 不通時の復旧」4分岐に従う。復旧を待たずに次段へ進んでよい。 - Web 取得:
https://developers.cloudflare.com/<product>/を直接取得する(Codex サンドボックス等でネットワーク不可なら次段へ)。 - 同梱知識で埋める:
references/<name>/gotchas.mdとpatterns.md、node_modules/wrangler/config-schema.json(設定フィールド・binding形状)で埋め、確認できなかった数値・API・上限は推測で書かず「未確認」として報告に残す。
製品選択の判断木
判断木は「どの製品を選ぶか」を確定するためのものであり、選定後に読む先は2種類しかない。
→ references/<name>/— 同梱referenceを読む(既定スタックと要件フラグ経由の製品のみ)。索引と「MCP で代替可か」はreferences/README.md→ docs:<name>—cloudflare-docsMCPで<name>を検索する(同梱referenceはない)→ `<skill>` Skill— その専用Skillをロードする
フィーチャーフラグが必要
フィーチャーフラグが必要?
└─ 機能のON/OFF、対象条件、割合配信 → docs:flagship
├─ Workers内で評価 → Flagship binding (env.FLAGS)
├─ Node.js / browserで評価 → OpenFeature SDK (@cloudflare/flagship)
└─ APIでflagを管理 → Flagship REST API
コードを実行したい
コードを実行したい?
├─ エッジで動くサーバーレス関数 → references/workers/
├─ Git連携で公開するフルスタックWebアプリ → docs:pages
│ (キット既定はPagesではなくWorkers。
│ mvp-first-development §3 を優先する)
├─ 状態を共有する協調処理/リアルタイム → `durable-objects` Skill
├─ 複数段階の長時間ジョブ → references/workflows/
├─ コンテナ実行 → docs:containers
├─ 顧客がコードを公開するマルチテナント → docs:workers-for-platforms
├─ 定期実行 (cron) → docs:cron-triggers
├─ HTTPを変更する軽量なエッジ処理 → docs:snippets
├─ Worker実行イベント(log/observability)の処理 → docs:tail-workers
└─ backend infrastructureまでの遅延を最適化 → docs:smart-placement
データを保存したい
ストレージが必要?
├─ Key-value(config、session、cache) → references/kv/
├─ Relational SQL → references/d1/ (SQLite)またはdocs:hyperdrive (既存Postgres/MySQL)
├─ オブジェクト/ファイルストレージ (S3-compatible) → references/r2/
├─ バージョン管理されたファイルツリー(repo、build output、checkpoint) → docs:artifacts
├─ メッセージキュー(非同期処理) → references/queues/
├─ Vector embeddings (AI/semantic search) → references/vectorize/
├─ entity単位の強整合性を持つ状態 → `durable-objects` Skill
├─ シークレット管理 → docs:secrets-store
├─ R2へのstreaming ETL → docs:pipelines
├─ R2上のmanaged Apache Iceberg catalog → docs:r2-data-catalog
├─ Iceberg tableへのserverless SQL analytics → docs:r2-sql
└─ 長期保持の永続キャッシュ → docs:cache-reserve
AI/MLを使いたい
AIが必要?
├─ 外部LLM API(既定) → `llm-api-integration` Skill
├─ 推論 (LLMs, embeddings, images) → docs:workers-ai
├─ RAG/search用ベクトルDB → references/vectorize/
├─ 状態を持つAI agent → docs:agents-sdk
├─ AI provider用Gateway(キャッシュ、ルーティング) → docs:ai-gateway
└─ AI search widget → docs:ai-search
ネットワーク/接続が必要
ネットワークが必要?
├─ ローカルサービスをインターネットへ公開 → docs:tunnel
├─ TCP/UDP proxy (non-HTTP) → docs:spectrum
├─ WebRTC TURN server → docs:turn
├─ プライベートネットワーク接続 → docs:network-interconnect
├─ ルーティング最適化 → docs:argo-smart-routing
├─ backendまでの遅延を最適化(userまでではない) → docs:smart-placement
└─ real-time video/audio → docs:realtimekit または docs:realtime-sfu
セキュリティ機能が必要
セキュリティ機能が必要?
├─ Web Application Firewall → docs:waf
├─ DDoS protection → docs:ddos
├─ botの検出/管理 → docs:bot-management
├─ API保護 → docs:api-shield
├─ CAPTCHA代替 → `turnstile-spin` Skill
└─ 資格情報の漏えい検出 → docs:waf (managed ruleset)
メディア/コンテンツを扱いたい
メディア機能が必要?
├─ 画像の最適化/変換 → docs:images
├─ 動画の配信/encoding → docs:stream
├─ browser自動化/screenshot → docs:browser-rendering
└─ third-party script管理 → docs:zaraz
分析/メトリクスを扱いたい
分析が必要?
├─ Cloudflare全製品(HTTP、Workers、DNS等)の横断query → docs:graphql-api
├─ Workersからのcustom high-cardinality metrics → docs:analytics-engine
├─ client-side (RUM)のperformance data → docs:web-analytics
├─ Workers Logsとリアルタイムdebugging → `cloudflare-secure-deploy` Skill
│ (wrangler.jsonc の observability 設定と
│ head_sampling_rate を含む)
├─ Iceberg data lake(log、event)へのSQL → docs:r2-sql (+ pipelines, r2-data-catalog)
└─ raw logs(外部ツールへのLogpush) → docs:logpush
Infrastructure as Code (IaC)が必要
IaCが必要? → docs:pulumi (Pulumi)、docs:terraform (Terraform)、またはdocs:api (REST API)
同梱referenceの一覧
同梱しているのは次の8製品だけ。これ以外のCloudflare製品は判断木のdocs:<name>に従いcloudflare-docs MCPで検索する(公式ドキュメントに載っている製品はすべて取得できる)。
| 製品 | Reference | 同梱理由 |
|---|---|---|
| Workers | references/workers/ | キット既定ランタイム(mvp-first-development §3) |
| D1 | references/d1/ | キット既定DB(同上) |
| R2 | references/r2/ | キット既定ファイルストレージ(同上) |
| KV | references/kv/ | キット既定セッション/キャッシュ(同上) |
| Bindings | references/bindings/ | 上記をWorkersへ接続する共通機構。全アプリで必ず使う |
| Queues | references/queues/ | 要件フラグ「上記以外のCloudflare機能」で本Skillへ明示ルーティングされる |
| Workflows | references/workflows/ | 同上 |
| Vectorize | references/vectorize/ | 同上 |
Account文脈は references/account-context.md(本Skill独自。公式docsには存在しない)。
選定結果の出力
本Skill自体は製品の実装完了を報告しない。ルーティング完了時に、次の4点を日本語で簡潔に出力し、選定先のSkillまたはreferenceへ引き継ぐ。
- 選んだCloudflare製品
- 選定根拠(要件のどの部分に対応するか)
- 使う専用Skillまたはreference
- Account文脈(
existing/team/personalのいずれか。existingをteam/personalへ言い換えず、Account IDは表示しない)
レビュー
まだレビューはありません。使ってみた感想をお寄せください。
同じリポジトリのスキル
概要と使いどころ
Webアプリの準備→要件定義→設計→実装→公開→品質ゲートを実行する内部オーケストレーター。Claude Codeの /build-app /improve-app、Codexの $build-app / $improve-app から明示的に委譲された場合、custom agent起動時、または利用者が $app-orchestrator を明示した場合だけ使用する。一般のアプリ相談から暗黙起動しない。
run-extract-blueprint が生成した章別ブループリントの忠実性を独立 context で評価したいとき、事実/推測区別と粒度と被覆を検証し draft_hash に束縛した PASS/FAIL verdict をローカル品質ゲート (C01 の周回内の受入判定・差し戻し) へ渡したいときに使う。
確認点で利用者が見る深さを選んだあと打ち合わせ資料を作り手とは別の目で確かめたいとき、正確さ・言葉・見た目・シンプルさの指摘を資料の編集なしで受け取りたいときに使う。
生成した handout 資料が初心者に伝わるか読みやすさレビューを依頼したいとき、独立 context のレビュアーから指摘と根拠つきの verdict を回収したいときに使う。
Notion ページを描画する直前に粒度を検証したいとき、info-collector-agent ページと同等の section 充足度を section_canonical_map 基準で機械検証したいときに使う。