SYNON 記事 社内サービス開発
Cloudflare 公式スキル / 社内サービス構築ガイド

プロンプトで作って、そのまま配信する
— 非エンジニアのための全工程

作成日: 2026-08-28 / シンオン株式会社

対象: つくる人(非エンジニア社員)/ 用意する人(情シス・エンジニア)/ 決める人(経営)

題材: 顧客問い合わせの受付台帳 / 日報の集計ダッシュボード

対になる資料: プランA(Codespaces)・プランB(ローカル)・Cloudflare OS — 第 III 部で比較します

この資料の読み方

あなたの立場読むところ所要
決める人(経営・情シス)第 I 部(1〜4章)と 第 III 部(17〜22章)15 分
用意する人(エンジニア)第 I 部 → 第 II 部の Step 0(6章)→ 第 III 部40 分
つくる人(非エンジニア)第 II 部(7〜16章)だけで足ります。Step 0 は自分ではやりません作りながら
この資料が扱う「Cloudflare 公式スキル」とは

Cloudflare が GitHub で公開している cloudflare/skills リポジトリのことです。AI コーディングエージェント(Claude Code など)に「Cloudflare の作り方」を教え込むための スキル 13 本・スラッシュコマンド 2 本・公式 MCP サーバー 5 本が入った、無料の公式パッケージです。

社内向けに Cloudflare が作ったものではなく、世界中の開発者向けの汎用パッケージです。ここが後述するリスクの出どころなので、最初に押さえてください。

前提の断り

本文中の手順・コマンド・スキル名は、2026-08-28 時点の公式リポジトリと公式ドキュメントの実物に基づいています。ただし cloudflare/skills は更新の速いリポジトリで、README の表とリポジトリの実体がすでに一致していません(2-3 に実測差分)。

確認できなかった項目は 21 章に正直に列挙しました。そこを読まずに稟議へ回さないでください。

第 I 部 — 何を使うのか決める人向け/所要 15 分

1結論決める人

  1. 「Cloudflare 公式スキル方式」は、いちばん速くて、いちばん関門が少ない方式です。非エンジニアが自分のパソコンで AI に頼み、自分の手で本番に出せます。途中に人のチェックが入りません。
  2. 速さの正体は「AI が Cloudflare を正しく知っている」ことです。公式スキルは AI に知識を、公式 MCP サーバーは AI にを与え、wrangler配信路になります。この 3 点セットが最初から揃うので、試行錯誤が激減します。
  3. ただしスキルは「ガードレール」ではありません。スキルが教えるのは作り方であって、出していいかどうかではありません。誤って全世界に公開する事故は、スキルでは防げません。
  4. 防波堤は 1 つだけあります。Cloudflare Access の「Protect all Workers」です。2026-08-14 に提供開始された、アカウント内の全 Worker をワンクリックで社内限定にする設定です。Cloudflare 自身がこれを「社内向けに vibe-coding されたアプリを 1 クリックで守る」機能として発表しています。この設定を入れる前に、非エンジニアに公式スキル方式を配ってはいけません。
  5. 既存のプランA/B/Cloudflare OS を置き換えるものではありません。4 方式は関門の強さ作り手の自立度が違うだけです。使い分けは 19 章の判断フローに従ってください。
要するに

プランA/B が「エンジニアの承認を通して 1 本ずつ本番に出す」仕組み、Cloudflare OS が「ブラウザだけで作って即共有する」仕組みなのに対し、公式スキル方式は「非エンジニアが、エンジニアと同じ道具・同じ本番環境を、承認なしで使う」仕組みです。

速さと引き換えに関門を捨てた方式だと理解してください。捨てた分は Access と Cloudflare 側の設定で埋めます。

2「Cloudflare 公式スキル」の中身決める人

2-1. スキルとは何か(1 分で)

スキル = AI に読ませる説明書のまとまりです。プログラムではありません。SKILL.md という Markdown ファイルと、その参照資料(references)のフォルダでできています。

AI は会話の内容を見て、関係するスキルだけを自動で読み込みます。つくる人が「今から D1 を使うのでスキルを読んで」と指示する必要はありません。

なぜこれが効くのか

素の AI は Cloudflare の最新仕様を知りません。学習データが古いからです。公式スキルは冒頭で AI にこう命じています。

  • あなたの Cloudflare API・型・上限・料金の知識は古い可能性がある。事前学習より取得を優先せよ
  • 参照ファイルと公式ドキュメントが食い違ったら、ドキュメントを信じよ

つまり公式スキルの本体は知識そのものではなく、「知ったかぶりをせず、公式を見に行け」という規律です。非エンジニアにとっては、これがでたらめなコードを掴まされない保険になります。

① 公式スキル(13本) Cloudflare の作り方の知識 +「公式を見に行け」の規律 = 設計の教科書 ② 公式 MCP サーバー(5本) ドキュメント検索・資源作成 本番ログの確認 = AI の手 Claude Code つくる人は 日本語で頼むだけ (ターミナルで動く) ③ wrangler = 配送業者 Cloudflare(本番) Workers + D1/R2/KV ★ Access が手前で社内限定にする Cloudflare が配っているのは ①②(知識と手)だけ。③ を打つ判断と、安全設定は Synon の責任 Cloudflare OS が「Cloudflare の箱の中で作る」方式なのに対し、こちらは「自分の道具に知識を足す」方式
図 1: 3 つの部品の役割分担。つくる人が触るのは中央の Claude Code だけ

2-2. 入っているもの(実測・2026-08-28)

スキル 13 本(skills/ フォルダの実体)

スキル何を教えるかつくる人に関係するか
cloudflare中核。Workers / Pages / KV・D1・R2 / Workers AI・Vectorize / Tunnel / WAF / Terraform まで全域。参照資料 63 製品分◎ 常に効く
wrangler配信コマンド(deploy, dev, KV・R2・D1・Secrets の操作)◎ 配信で効く
workers-best-practices本番に出す前の品質レビュー(秘密情報の置き方、グローバル変数、ログ設定などの定番事故)公開前に効く
durable-objects状態を持つ処理(チャット・予約・同時編集)△ 必要なときだけ
agents-sdkAI エージェント(状態・スケジュール・WebSocket・ストリーミング)
cloudflare-email-serviceメール送信・受信(SPF/DKIM/DMARC 含む)○ 通知系で使う
turnstile-spinフォームの bot 対策(CAPTCHA)を一気通貫で組み込む○ 社外フォームで使う
web-perf表示速度の計測と改善(Core Web Vitals)
sandbox-next / sandbox-stable / sandbox-migrate-to-next隔離環境でのコード実行×
cloudflare-oneZero Trust / SASE(Access・Gateway・WARP・Tunnel の設計と設定)× 用意する人向け
cloudflare-one-migrationsZscaler・Palo Alto・旧 VPN からの移行計画× 用意する人向け

スラッシュコマンド 2 本(つくる人が明示的に呼ぶ)

コマンド何をするか
/cloudflare:build-agentAgents SDK で AI エージェントを新規に組み立てる(雛形作成 → 設定 → 実装 → デプロイまで誘導)
/cloudflare:build-mcpCloudflare 上に MCP サーバーを組み立てる

公式 MCP サーバー 5 本(AI に「手」を与える。プラグイン導入時に一緒に入る)

サーバーできること危険度
cloudflare-docs最新の公式ドキュメントを検索・取得低(読むだけ)
cloudflare-bindingsKV・R2・D1・AI などの接続部品を作る
cloudflare-buildsビルドの状況を見る
cloudflare-observabilityログと分析を見て不具合を追う
cloudflare-apiアカウントの資源・ゾーン・設定を操作する高(6-4 で必ず制限する)
いちばん重要な但し書き

cloudflare-api は名前のとおり Cloudflare アカウント全体を操作できます。DNS も WAF も対象になり得ます。非エンジニアの端末でこれをそのまま OAuth 承認させると、本人にその気がなくても、会話の流れで本番 DNS を触れてしまう構図になります。

Synon では 6-4 で、このサーバーを外すか、権限を絞ったトークンに差し替えます。

2-3. README とリポジトリ実体の食い違い(実測)

公式 README のスキル一覧表には building-ai-agent-on-cloudflarebuilding-mcp-server-on-cloudflare が載っていますが、skills/ フォルダに同名の実体はありません(この 2 つは commands/ のコマンド 2 本に相当します)。逆に、実体としてある cloudflare-email-service / turnstile-spin / workers-best-practices は README の表に載っていません。

実務上の意味

害はありませんが、「公式ドキュメントどおりに動かない箇所がある」段階のパッケージだと認識してください。社内資料や手順書に README の記述をそのまま転記しないこと。四半期ごとに実体を再確認する運用にします(21 章 #4)。

3なぜ非エンジニアでも回るのか決める人

つくる人がやることは、日本語で頼むことと、画面を見て「違う」と言うことだけです。その裏で 3 つの部品が役割分担しています(図 1)。

部品役割たとえるなら
公式スキルCloudflare の作り方の知識と、公式を見に行く規律設計の教科書
公式 MCP サーバードキュメント検索・資源作成・ログ確認を AI が自分でやるAI の手
wrangler書いたものを Cloudflare に送り出す配送業者

そしてこの 3 つを動かす AI 本体が Claude Code(ターミナルで動くコーディングエージェント)です。

勘違いしやすい点

「Cloudflare 公式スキル方式」は Cloudflare の製品ではありません。Cloudflare が配っているのは知識だけで、作業をする AI と、その安全設定は Synon 側の責任です。

Cloudflare OS(別資料)が「Cloudflare が用意した箱の中で作る」方式なのに対し、こちらは「自分の道具に Cloudflare の知識を足す」方式です。ここが 4 方式で最も違うところです。

4用意するもの・費用決める人

4-1. 用意するもの

いるもの誰が用意備考
Cloudflare アカウント(Workers Paid $5/月用意する人Free で稟議を通さないこと(4-3)
Cloudflare Access の設定用意する人6-3。これが唯一の防波堤
つくる人の Mac(または Windows)本人管理者権限が 1 回だけ必要
Node.js用意する人が同席して 1 回wrangler と Claude Code の前提
Claude Code本人Claude の契約が別途必要
公式スキルプラグイン本人(コマンド 2 行)無料
GitHub アカウント不要プランA/B との最大の違い

4-2. 月額

$5 / 月
Cloudflare Workers Paid(アカウント単位・何本作っても同額)
$0
公式スキル・MCP サーバー・GitHub
別途
Claude の利用料(人数分)= 実質の主費用

Cloudflare 側の追加費用は、プランB($13/月)より安い $5/月です。ただし関門(エンジニアのレビュー)を買わない分だけ安い、という理解が正しい読み方です。

4-3. Free プランで始めてはいけない理由

第 II 部 — 作業工程(本編)つくる人向け/Step 0 だけ用意する人の担当

5全体像つくる人

作業は Step 0 〜 Step 8 の 9 段です。Step 0 は用意する人が会社で 1 回だけStep 1〜3 はつくる人が自分の端末で 1 回だけStep 4〜8 がアプリを 1 本作るたびに繰り返す部分です。

【会社で 1 回】 Step 0 土台づくり ・Workers Paid ($5) ・Access 全 Worker 保護 ・MCP の制限 ・費用の上限 エンジニアの仕事は ここだけ 半日 【1 人 1 回】 Step 1 → 2 → 3 パソコンの準備 1. Node.js / Claude Code 2. スキル導入(コマンド 2 行) 3. Cloudflare を承認 用意する人が同席 するのはここまで 30 分 【アプリ 1 本ごとに繰り返す】 Step 4 → 5 → 6 → 7 → 8 4 決める 20 分 5 作る 30分〜半日 6 確かめる 20 分 7 公開 10 分 8 直す 直したら同じ流れをもう一度(1 回 10 分) Step 7 に承認欄がありません つくる人が配信コマンドを打った瞬間に本番になります。 だから Step 0 の Access 全 Worker 保護 が事前に張る唯一の関門です。 Step 0 を飛ばしてこの資料を配布すると、社内向けのつもりのアプリが全世界に公開されます つくる人がやるのは「日本語で頼む」ことと「画面を見て違うと言う」ことだけ。コマンドは AI が打ちます 1 本目が動くまで 半日/2 本目以降は 1〜2 時間/直すのは 10 分
図 2: Step 0〜8 の全体像。承認欄が無いこと、その代わりに Step 0 が事前の関門になることが要点
Stepやること誰が頻度目安
0会社の土台を作る(アカウント・Access 全体保護・MCP 制限・費用上限)用意する人会社で 1 回半日
1パソコンを準備する(Node.js・Claude Code・作業フォルダ)つくる人+同席1 人 1 回30 分
2公式スキルを入れる(コマンド 2 行 → 再起動)つくる人1 人 1 回3 分
3Cloudflare とつなぐ(ブラウザで承認)つくる人1 人 1 回3 分
4何を作るか決める(頼み方を整える)つくる人1 本ごと20 分
5プロンプトで作るつくる人1 本ごと30 分〜半日
6手元で動かして確かめるつくる人1 本ごと20 分
7社内に公開する(配信 → Access を目視確認つくる人1 本ごと10 分
8直す・育てるつくる人随時

6Step 0 — 土台をつくる(会社で 1 回)用意する人

つくる人はこの章を読まなくて構いません。ただし「誰かがやってくれている」ことは知っておいてください。

6-1. Workers Paid にする

Cloudflare ダッシュボード → Workers & Pages → プランを Workers Paid($5/月) に。理由は 4-3。

6-2. workers.dev サブドメインを決める

配信されたアプリの住所は https://<アプリ名>.<会社のサブドメイン>.workers.dev になります。このサブドメイン名は社名が入る前提で決めてください(例: synon)。後から変えると全アプリの URL が変わります。

6-3. Access の「Protect all Workers」を入れる(最重要)

Cloudflare ダッシュボード → Workers & PagesProtect all Workers カード → Enable Access

これで アカウント内のすべての Worker が、以後ずっと社内限定になります。新しく作られた Worker も自動で対象です。つくる人が何も設定しなくても守られます。

「Protect all Workers」= All traffic を選んだときに守られる範囲 Cloudflare Access(会社の Google アカウントでログインした人だけ通す) workers.dev の URL つくる人が使う住所 独自ドメイン・ルート Custom Domains プレビュー URL 試用中の住所 WebSocket 接続 リアルタイム通信 ✗ 対象外 おまけ: 認証を通った人の情報が、コードを 1 行も書かずに手に入る ctx.access.getIdentity() で メールアドレス・氏名・所属グループ / ログイン機能の自作は不要
図 3: Access の保護範囲。WebSocket だけが対象外なので、当面リアルタイム系は作らせない(21 章 #5)
公式の位置づけ

Cloudflare はこの機能を 「社内向けに vibe-coding されたアプリを、ワンクリックで守る」 ものとして発表しています。つまり 「非エンジニアが AI で作って事故る」という前提で作られた機能です。用途がぴったり一致しています。

注意(既存資料からの引き継ぎ)

ctx.accessService Binding 経由の HTTP リクエストや RPC 呼び出しには伝わりません。単体のアプリでは問題になりませんが、アプリ同士をつなぎ始めたらエンジニアに相談してください。

6-4. cloudflare-api MCP サーバーを制限する

公式プラグインをそのまま入れると、つくる人の端末から アカウント全体を操作できる MCP サーバーが有効になります。Synon では次のどちらかを、つくる人に配る前に決めてください。

やること向いている場合
案 A(推奨・単純)配布手順から cloudflare-api を外し、cloudflare-docs / cloudflare-bindings / cloudflare-observability / cloudflare-builds の 4 本だけにするまず展開したい
案 B(厳密)権限を絞った API トークン(Workers 編集・D1・R2・KV のみ/DNS と WAF は付けない)を発行し、OAuth ではなくそのトークンで接続させる監査要件がある
責任の所在

どちらも取らずに配布した場合、「DNS を消してしまった」事故の責任は用意する人にあります。

6-5. 費用の上限を張る

6-6. 配布物を 1 枚にまとめる

つくる人に渡すのは、この資料の第 II 部(7 章以降)と、次の 4 つの値だけです。

  1. Cloudflare のログインに使うアカウント(Google Workspace)
  2. workers.dev サブドメイン名
  3. 作業フォルダの場所(例: ~/社内サービス/
  4. 困ったときの連絡先(Chatwork のグループ)

7Step 1 — パソコンの準備(1 人 1 回・30 分)つくる人

必ず同席してもらうこと

ここだけは、つくる人 1 人では詰まります。用意する人(情シス・エンジニア)に同席してもらってください。以降の章は 1 人で進められます。

7-1. Node.js を入れる

Cloudflare の配信ツール(wrangler)が動くための土台です。nodejs.orgLTS を入れます。入ったかどうかの確認:

node -v

v22.x のような数字が出れば成功です。何も出ない・「command not found」なら失敗なので、そこで止めて相談してください。

7-2. Claude Code を入れる

Anthropic の案内に従ってインストールし、ログインします。ターミナル(黒い画面)で動きます。

ターミナルが怖い人へ

使うコマンドは この資料に載っている数個だけです。覚える必要はありません。この資料をコピーして貼るだけで全部済みます。「入力する」のではなく「貼る」と考えてください。

7-3. 作業フォルダを作る

mkdir -p ~/社内サービス
cd ~/社内サービス

以後の作業は必ずこのフォルダの中で行います。ここから出ないことが、いちばん簡単な安全策です。

7-4. Claude Code を起動する

claude

これで対話が始まります。以降のコマンド(/plugin ...)は、このターミナルではなく Claude Code の中に打ちます。

8Step 2 — 公式スキルを入れる(3 分)つくる人

Claude Code の中で、次の 2 行を順に打つだけです。

/plugin marketplace add cloudflare/skills
/plugin install cloudflare@cloudflare
/plugin marketplace add cloudflare/skills /plugin install cloudflare@cloudflare ★ 必ず一度終了して再起動 ★ ここを飛ばす人が最も多い 有効になったもの スキル 13 本(自動で読み込まれる。指示は不要) コマンド 2 本(明示的に呼ぶ。台帳作りでは使わない) MCP サーバー(6-4 で制限済みのもの) 再起動しないと MCP サーバーが読み込まれず、 「なぜか Cloudflare のことを知らない」状態になります 確認は「Cloudflare のスキルは有効になっている? 使えるスキルの名前を挙げて。」と聞くだけ
図 4: 導入は 2 行+再起動。再起動忘れがつまずきの第 1 位
ここを飛ばさないこと

入れ終わったら Claude Code を一度終了して、もう一度起動してください。MCP サーバーは再起動しないと読み込まれません。

確認のしかた

再起動後、こう聞いてください。

Cloudflare のスキルは有効になっている? 使えるスキルの名前を挙げて。

cloudflare wrangler workers-best-practices などの名前が返ってくれば成功です。

つくる人が知っておくべき唯一の仕組み

スキルは自動で読み込まれます。「スキルを使って」と毎回頼む必要はありません。

逆に、明示的に呼ぶのは /cloudflare:build-agent/cloudflare:build-mcp の 2 つだけで、この 2 つは社内の台帳アプリづくりでは使いません。忘れて構いません。

9Step 3 — Cloudflare とつなぐ(3 分)つくる人

初めて Cloudflare に関わる作業を頼んだとき、ブラウザが自動で開いて「許可しますか」と聞かれます。会社の Google Workspace アカウントでログインして許可してください。これは 1 回だけです。

配信ツール側も同じように 1 回つなぎます。

npx wrangler login
許可画面で必ず確認すること

画面に出ているアカウント名が会社のものかを必ず見てください。個人の Cloudflare アカウントを持っている人は、そちらを選ぶと Access の保護が効きません。会社アカウント以外が出てきたら、そこで止めて相談してください。

10Step 4 — 何を作るか決める(20 分)つくる人

ここが成否の 8 割です。AI は「頼まれたとおり」に作ります。曖昧に頼むと、曖昧なものが出てきます。

10-1. 紙に 5 つ書き出す

  1. 誰が使うか(例: 営業 4 名)
  2. 何を入れるか(例: 会社名・担当者名・問い合わせ内容・受付日・対応状況)
  3. 何を見たいか(例: 未対応の一覧を新しい順に)
  4. いつ使うか(例: 電話を受けたその場で。スマホからも)
  5. 今どうやっているか(例: Excel を共有フォルダに置いて、上書きの取り合いになっている)

10-2. 頼み方の型

✗ 悪い例 「問い合わせ管理システムを作って」 何十通りにも解釈できる AI が勝手に決める 作り直しになる(半日が消える) 「システム」「管理」「いい感じに」は禁句 ✓ 良い例 ・使う人: 営業 4 名(Access でログイン済みの社内) ・入力項目: 会社名 / 担当者 / 電話 / 内容 / 受付日時 / 対応状況 ・受付日時と入力者のメールは自動で記録 ・一覧は「未対応が上、新しい順」 ・スマホでも使える ・データは Cloudflare D1 に保存 ・まず何を作るか説明してから、  作り始めてください。 最後の 1 行が、いちばん時間を節約する
図 5: 頼み方の型。最後の 1 行を付けると、1 行も書かれていない段階で修正できる

そのまま貼れる依頼文

社内向けの「問い合わせ受付台帳」を作ってください。

・使う人: 営業4名。Cloudflare Access でログイン済みの社内の人だけ。
・入力する項目: 会社名 / 担当者名 / 電話番号 / 問い合わせ内容 / 受付日時 /
  対応状況(未対応・対応中・完了)
・受付日時は自動で入れてください。
・入力した人のメールアドレスも自動で記録してください(ctx.access から取れるはずです)。
・一覧画面は、未対応を上に、新しい順に並べてください。
・対応状況はワンクリックで変えられるようにしてください。
・スマホでも使えるようにしてください。
・データは Cloudflare D1 に保存してください。
・まず何を作るか説明してから、作り始めてください。

10-3. 最後の 1 行を必ず付ける

「まず何を作るか説明してから、作り始めてください。」

これを付けると、AI はいきなり書き始めず、日本語で計画を出してきます。そこで違和感があれば、1 行も書かれていない段階で直せます。

10-4. 最初の 1 本に選んではいけないもの

選ばない理由
請求・給与・受発注間違えたときの被害が大きすぎる
社外の人が使うものAccess の外に出す判断が要る。エンジニア案件
個人情報を貯め続けるもの保管期間と削除の設計が要る
今すぐ止まると困る業務練習台に本番を使わない
1 本目の選び方

「壊れても誰も困らないが、自分は毎日使う」ものを選んでください。毎日使うから改善点が見つかり、壊れても困らないから思い切って試せます。

11Step 5 — プロンプトで作る(30 分〜半日)つくる人

11-1. 実際の流れ

Claude Code に 10-2 の依頼文を貼ります。その後に起きることは、だいたい毎回同じです。

① AI が計画を日本語で出す 「Workers + D1 + 静的ファイルで作ります。テーブルは inquiries、 列は id / company / person / tel / body / status / created_at。よろしいですか?」 違ったらここで言う 「対応状況に『保留』も足して」 ② AI が雛形を作る npm create cloudflare@latest(AI が自分で打つ) ③ AI が設定を書く wrangler.jsonc に D1 の接続を書き足す ④ AI がデータベースを作る MCP または wrangler で D1 を作成 ⑤ AI がコードを書く 画面・保存処理・一覧処理 ⑥ AI が自分で点検する workers-best-practices スキルが自動で効く → Step 6 へ ②〜⑤ は AI が打つ つくる人は 読んで「はい」か 「違う」を返すだけ
図 6: プロンプトから完成まで。人が判断するのは ① と ⑥ の 2 か所だけ

11-2. 途中で必ず言うべき 3 つのこと

場面言う言葉なぜ
計画が出たとき「この設計だと、後から◯◯を足せますか?」作り直しを避ける
コードを書き終えたとき「本番に出す前の観点でレビューして」workers-best-practices スキルが起動し、秘密情報の置き方・ログ設定・定番の事故を自分で洗い出します
よく分からない用語が出たとき「それを社内の非エンジニアに説明するつもりで言い直して」分からないまま「はい」を押すのがいちばん危険

11-3. 保存はどうなるのか

GitHub は使いません。作ったものは、あなたのパソコンの ~/社内サービス/<アプリ名>/ にファイルとして残ります。

プランB との重要な違い

プランB には 毎日 18 時の自動保存work ブランチという安全網がありました。公式スキル方式にはそれがありません。パソコンが壊れたら、作ったものは消えます。

対策は 20-2・20-3 に書きます。「毎日 Time Machine(またはバックアップ)が動いていること」を最低条件にしてください。

12Step 6 — 手元で動かして確かめる(20 分)つくる人

まだ社内には出ていません。自分のパソコンの中だけで動かして確かめる段階です。AI にこう言います。

手元で動かして、ブラウザで確認できるようにしてください。

AI が起動コマンド(npm run dev または npx wrangler dev)を打ち、http://localhost:8787 のような住所が出ます。ブラウザでそこを開いてください。

12-1. 確かめる 7 項目(チェックリスト)

#見るところだめなときの言い方
1入力して保存できるか「保存を押すと画面が固まります」
2保存したものが一覧に出るか「保存したのに一覧に出ません」
3並び順は指定どおりか「未対応が上に来ていません」
4空欄のまま保存したらどうなるか「会社名が空でも保存できてしまいます。必須にして」
5同じものを 2 回保存したらどうなるか「二重登録できてしまいます」
6スマホの幅で崩れないか(ブラウザの幅を狭める)「幅を狭めると表がはみ出します」
7日本語がちゃんと出るか(文字化け・全角)「顧客名が文字化けします」
4・5・6 は AI が自分では気づきにくい部分です

AI は「頼まれた動き」は作りますが、「頼まれていない使われ方」は想像しません。必ず人が見てください。

12-2. 直し方

ファイルを開く必要はありません。日本語で言うだけです。

会社名が空のまま保存できてしまいます。必須にして、空なら赤字で理由を出してください。

直ったら、画面を再読み込みして、同じ 7 項目をもう一度確認します。

AI の「直しました」は確認ではありません

AI は「直しました」と言いますが、画面で見た人だけが確認したことになります。ここを省略した分は、必ず後で本番の不具合として返ってきます。

13Step 7 — 社内に公開する(10 分)つくる人

13-1. 配信する

AI にこう言います。

Cloudflare に配信してください。

AI が npx wrangler deploy を実行し、数十秒で住所が返ってきます。

https://inquiry-ledger.synon.workers.dev

この時点で、もう本番です。ビルドサーバーも承認待ちもありません。

あなたのパソコン wrangler deploy (AI が打つ) Cloudflare 数十秒で世界中の拠点に配信 ★ Access が手前で認証 ★ Step 0-3 で設定済み 社内の人 会社の Google アカウントでログイン → 使える スマホからも同じ URL で 社外の人 ログイン画面で止まる(中身は見えない) この図の「Access が手前で認証」が無いと、右下の社外の人にも中身が見えます だから配信後に 3 つの目視確認(13-2)を必ずやる。省略した分だけ事故が起きます
図 7: 配信から利用まで。関門は「配信の前」ではなく「アクセスの手前」にある

13-2. 必ずやること — 3 つの目視確認

配信できたら、この 3 つを必ず自分の目で確かめてください。ここを省略した事故がいちばん多いです。

#やること期待する結果
1返ってきた URL をふつうのブラウザで開くCloudflare のログイン画面が出る
2シークレット(プライベート)ウィンドウで同じ URL を開くやはりログインを求められる
3会社の Google アカウントでログインするアプリが表示される
2 番でログイン画面が出なかったら

それは全世界に公開されています。即座に Chatwork で情シスに連絡してください。自分で直そうとしないこと。(原因はほぼ 6-3 の未設定か、個人 Cloudflare アカウントでの配信です)

13-3. 社内への案内文(そのまま使えます)

【新しい社内ツール】問い合わせ受付台帳

URL: https://inquiry-ledger.synon.workers.dev
・会社の Google アカウントでログインしてください(社外の人は開けません)
・スマホでも使えます
・不具合や「こうしてほしい」は 田中 まで直接どうぞ。だいたい当日中に直せます
・まだ試用中です。大事な内容は、しばらく Excel にも残しておいてください

最後の 1 行を必ず入れてください。並行運転の期間を最初に宣言しておくと、後で困りません。

13-4. 名前の付け方

URL はアプリ名がそのまま入るので、あとから変えると全員に配り直しになります。

良い悪い
inquiry-ledger(問い合わせ台帳)test, app1, new
daily-report(日報)tanaka-no-yatsu
expense-check(経費チェック)system

英小文字とハイフンだけ。最初に決めて、変えない。

14Step 8 — 直す・育てるつくる人

14-1. 直す

Claude Code を起動して、そのアプリのフォルダに入り、日本語で言うだけです。

cd ~/社内サービス/inquiry-ledger
claude
一覧に「先月分だけ表示」のボタンを足してください。

→ Step 6(手元で確認)→ Step 7(配信)と同じ流れを繰り返します。慣れると 1 回 10 分です。ここが公式スキル方式の最大の利点です。

14-2. 動きがおかしいとき

本番でエラーが出ているようです。ログを見て原因を調べてください。

cloudflare-observability MCP サーバーが動き、AI が本番のログを自分で読んで原因を探します。つくる人がログ画面の見方を覚える必要はありません。

14-3. データを見たい・出したいとき

D1 のデータを CSV で書き出してください。

月に 1 回、これをやって手元に保存しておいてください。バックアップになります。

14-4. 使われなくなったら

このアプリを削除したいです。データの書き出しをしてから、消す手順を教えてください。
放置がいちばんよくない

使われていないアプリは、費用より「誰も見ていないのに動き続けている」ことがリスクです。四半期に 1 度、一覧を見て棚卸ししてください。

15つまずき集(実務で必ず出る 10 個)つくる人

#症状原因対処
1スキルが効いていない感じがするStep 2 の再起動を飛ばしたClaude Code を終了して起動し直す
2command not found: nodeNode.js が入っていない7-1 に戻る。用意する人を呼ぶ
3wrangler deploy で権限エラーログインしていない/別アカウントnpx wrangler login をやり直し、会社のアカウントを選ぶ
4配信したらログインを求められないAccess が効いていないすぐ情シスへ連絡。自分で直さない
5D1 が作れない・上限エラーFree プランのまま(10 個上限)用意する人に Workers Paid を確認
6画面が真っ白静的ファイルの設定漏れ「画面が真っ白です。設定を見直して」と言えば直ります
7日本語が文字化けする文字コード指定漏れ「文字化けします。UTF-8 を明示して」
8AI が同じ失敗を繰り返す会話が長くなりすぎた会話を新しく始める。フォルダはそのままで良い
9AI が「できました」と言うが動かない確認せずに宣言している必ず自分でブラウザを見る。「動いていません。画面には◯◯と出ています」と具体的に返す
10何を頼めばいいか分からなくなった目的を見失っている10-1 の紙に戻る。5 項目を読み直す
8 番の補足

会話が長くなると AI の精度は落ちます。「1 本のアプリ = 1〜3 回の会話」が目安です。会話を切っても、作ったファイルはフォルダに残っているので消えません。

16やってはいけないこと(ガードレール)つくる人

公式スキル方式には、技術的な強制力がほとんどありません。以下は約束として守ってください。

#禁止理由
1~/社内サービス/ の外で作業しない他のファイルを壊す事故を防ぐ
2DNS・WAF・ゾーン設定を触らない(AI が提案しても断る)会社のサイトが止まります。「DNS を」と言われたら即中断して相談
3個人の Cloudflare アカウントで配信しないAccess が効かず、全世界に公開されます
4パスワード・API キーをコードに書かせない「秘密の値は Secrets に入れて」と言えば AI が正しく処理します
5社外の人が使うものを自分で公開しないAccess の外に出す判断は必ずエンジニア
6マイナンバー・口座番号・健康情報を扱わない保管設計が別次元。企画段階で情シスへ
7sudo で始まるコマンドを実行しない何を聞かれているか分からないまま管理者権限を渡さない
8本番のデータで練習しない1 本目は「壊れても困らないもの」(10-4)
9「よく分からないけど、はい」を押さない分からなければ 11-2 の言い換えを使う
10配信後の 3 つの目視確認(13-2)を省略しない事故はここで見つかります
なぜ「約束」なのか — そして、約束のままにしない方法

プランB には guard.sh というフックがあり、sudorm -rf機械的に禁止していました。公式スキル方式にはそれがありません。公式スキルは Cloudflare の作り方を教えるものであって、社内ルールを強制する仕組みではないからです。

展開するなら、プランB の guard.sh を公式スキルと併用してください(20-2)。すでに作ってあるので、新規開発は不要です。

第 III 部 — 既存の社内共有プロセスとの比較決める人向け/プランA・プランB・Cloudflare OS との 4 方式比較

174 方式は「層」が違う決める人

Synon にはこれまでに 3 つの方式の資料があり、今回で 4 つになりました。優劣ではありません。「関門の強さ」と「作り手の自立度」が違うだけです。

関門が強い(人のレビューがある) 関門が弱い(出すのは本人) 作り手が自分で完結できる → プランA(Codespaces) GitHub アカウントが要る/$50〜80・月 プランB(ローカル・従来の本命) PR マージが関門/$13・月/guard.sh あり 公式スキル方式(本資料) 関門なし/$5・月/本人が 10 分で直せる Cloudflare OS ブラウザだけ/社外公開は不可/early-access 公式スキル方式 = プランB からレビュー工程だけを抜いたもの。速さもリスクも、その差分そのもの
図 8: 4 方式のポジショニング。上下は「関門の強さ」、左右は「作り手の自立度」
方式ひとことで言うと
プランA / Bエンジニアの承認を通して、部門で長く使うものを 1 本ずつ本番に出す
Cloudflare OSブラウザだけで、その日のうちに何本でも作って即共有する
公式スキル方式(本資料)非エンジニアが、エンジニアと同じ道具・同じ本番環境を、承認なしで使う
なぜ 4 方式も要るのか

4 つ全部を維持する必要はありません。20 章で 3 レーンに整理します。ただし「1 つに統一する」は失敗します。社外公開が必要な案件と、個人の道具は、同じ仕組みには乗りません。

18比較一覧表決める人

18-1. つくる人から見た違い

観点公式スキル方式(本資料)プランA(Codespaces)プランB(ローカル)Cloudflare OS
つくる人が触る道具Claude Code(ターミナル)ブラウザ内の CodespaceClaude Code(ターミナル)ブラウザだけ
GitHub アカウント不要必要不要不要
ターミナルを使うか使う使う(ブラウザ内)使う使わない
端末セットアップ30 分/人(1 回)不要30 分/人(1 回)不要
1 本目が動くまで半日1〜2 日1〜2 日30 分
直して反映するまで10 分(本人で完結)PR マージ待ちPR マージ待ち即時
学習コスト中(コマンド数個)

18-2. 出す側・守る側から見た違い

観点公式スキル方式プランAプランBCloudflare OS
本番公開の関門なし(本人が wrangler deployエンジニアの PR マージエンジニアの PR マージなし(共有=即配布)
差分レビューなしありあり実質不可
事前の防波堤Access の全 Worker 一括保護のみAccess + 4 層ガードレールAccess + 4 層 + guard.sh権限ゼロ生成+観測ログ追従
誤って全世界公開6-3 未設定なら起こる起こりにくい起こりにくい構造的に起きない(社外公開不可)
危険コマンドの機械的禁止なし(約束のみ)ありあり(guard.sh該当なし
作業消失対策なし(各自のバックアップ頼み)Codespace+GitHub毎日 18 時 自動保存+GitHubサーバ側で自動
退職時の後始末端末回収+Access 除名。ソース複製が残るCodespace を削除Deploy key 削除。ソース複製が残るAccess 名簿から外すだけ。複製なし
ソース持ち出しやすさ(=リスク)
監査ログCloudflare 側のログGitHub の履歴+CloudflareGitHub の履歴+Cloudflare観測ログが成果物に追従

18-3. できること・できないこと

観点公式スキル方式プランAプランBCloudflare OS
社外への公開(要エンジニア判断)不可
独自ドメイン不可
D1 / R2 / KVフルに使えるフルフルDO + SQLite に限定
外部 API との接続自由(鍵は Secrets へ)自由自由同梱 Gatekeeper のみ。Chatwork・freee・kintone は自作=エンジニア案件
定期実行(cron)可(Cron Triggers)
一斉更新(配った全員に反映)(URL が 1 つなので配信すれば全員)直接共有なら可/Blueprint は不可
成熟度公式・安定(Workers 自体は枯れている)安定安定early-access(公式に明記)

18-4. 費用

方式CloudflareGitHubその他合計(Cloudflare 側)
公式スキル方式$5 / 月$0Claude 利用料(人数分)$5 / 月
プランA$5 / 月GitHub Team + CodespacesClaude 利用料$50〜80 / 月(5 人)
プランB$5 / 月GitHub Team $4 × エンジニア 2 名Claude 利用料$13 / 月
Cloudflare OS$5 / 月$0AI トークン(要上限設定)$5 / 月+トークン
安さの読み方

公式スキル方式が最安ですが、安さの理由は「エンジニアの工数を買っていない」ことです。その工数は消えたのではなく、事故が起きたときにまとめて発生します。

18-5. 最大の弱点(1 行で)

方式最大の弱点
公式スキル方式本番公開に関門がゼロ。Access の設定漏れが唯一にして最大の事故要因
プランAGitHub Team が必須で費用が高い。GitHub アカウントを配る必要がある
プランBエンジニアが PR を作る手間(1 回 2 分)が毎回発生する
Cloudflare OSearly-access。データの一括出し入れ手段が未確認。社外公開できない

19どれを選ぶか(判断フロー)決める人

上から順に。最初に「はい」になったところで決まりです。

Q1 社外の人が使うか? はい プランB Q2 止まると業務が止まるか?    個人情報を貯め続けるか? はい プランB Q3 何を作りたいか、本人の中で固まっているか? いいえ Cloudflare OS で 30 分試作 固まったら Q4 に戻る Q4 作った本人が、今後も自分で直し続けるか? はい ★ 公式スキル方式 本資料 いいえ(エンジニアが引き取って長く保守する) プランA / B Q5 上のどれでもない(自分ひとりの道具) Cloudflare OS Q1・Q2 は絶対に譲らない。ここで「たぶん大丈夫」を選ぶのが、いちばん高くつきます
図 9: 判断フロー。Q4 が公式スキル方式とプランA/B の分かれ目

19-1. 判断の要点

20Synon での落とし所(併存の運用ルール)決める人

20-1. 4 方式を全部持たない。3 レーンに整理する

試すレーン Cloudflare OS 個人の道具・30 分の試作 「作りたいものが固まっていない」 関門: なし 社外公開も不可なので 事故が小さい 育てるレーン ★ 公式スキル方式 部門で使う小さな業務アプリで、 作った本人が育て続けるもの 関門: Access 全 Worker 保護 + 約束(16 章) + プランB から 2 つ借りる 守るレーン プランB 社外公開・基幹・個人情報 エンジニアが長く保守するもの 関門: エンジニアの PR マージ プランA は当面棚上げ 定着 重要化 レーンは固定ではありません。試作 → 育てる → 重要になったら守るレーンへ、と移すのが正しい運用です プランA(Codespaces)は GitHub アカウント配布の前提が崩れているため当面棚上げ(資料と kit は残す)
図 10: 3 レーンへの整理。アプリは左から右へ移していく
レーン使う方式対象関門
試すレーンCloudflare OS個人の道具・30 分の試作・「作りたいものが固まっていない」段階なし(社外公開も不可なので事故が小さい)
育てるレーン公式スキル方式 ★部門で使う小さな業務アプリで、作った本人が育て続けるものAccess の全 Worker 保護+約束(16 章)
守るレーンプランB社外公開・基幹・個人情報・エンジニアが長く保守するものエンジニアの PR マージ

プランA(Codespaces)は、GitHub アカウントを配る前提が崩れているので、当面は棚上げにします。必要になったら復活させられるよう、資料と kit は残します。

20-2. 公式スキル方式にプランB から 2 つ借りる

公式スキル方式に足りないものは、すでに Synon が作ってあります。新規開発は不要です。

借りるもの出どころなぜ必要か
.claude/hooks/guard.shsynon-claude-code-kit-planb.zipsudo / rm -rf / ~/.ssh などを機械的に禁止する。16 章の「約束」を強制力に変える
scripts/autosave.sh + launchd(毎日 18 時)同上公式スキル方式には作業消失対策がゼロ。ここが最大の未対策項目
これは条件です

この 2 つを、公式スキル方式の配布手順(7 章)に組み込んでください。組み込まないなら展開しないでください。

20-3. バックアップの最低条件

  1. つくる人の Mac で Time Machine(または同等)が毎日動いていることを、配布前に確認する
  2. 月 1 回、各アプリのデータを CSV で書き出す(14-3)
  3. 20-2 の自動保存を入れる

この 3 つが揃うまでは、「Excel と並行運転」を解除しない(13-3 の案内文の最後の 1 行)。

20-4. 展開の順序と撤退基準

やること判断
1 週目用意する人が Step 0 を全部やる。エンジニア自身が通しで 1 本作って本番に出すAccess の 3 つの目視確認(13-2)が全部通るか
2 週目意欲の高い非エンジニア 1 名に、Step 1〜7 を最後までやらせて観察するサポートなしで、半日以内に 1 本目が本番に出せるか ← 最重要判断
3 週目同じ 1 名が「直す」を 3 回やる(Step 8)1 回 10 分で回るか
4 週目20-2 の 2 つを組み込んだ配布キットを固める
5 週目〜部署展開(1 度に 2 名まで)
撤退基準
  • 2 週目の 1 名が半日で 1 本目を出せなければ、展開しない。その場合はプランB のままにする(半日かかるなら、レビューのあるプランB の方が安全で、時間も大差ありません
  • 配信後の目視確認で「ログインを求められない」が 1 度でも起きたら、全社展開を止めて Step 0 をやり直す
  • ~/社内サービス/ の外を触った事故が 1 度でも起きたら、guard.sh の導入まで展開を止める

21未確認事項・リスク決める人

読まずに稟議へ回さないこと

以下は 2026-08-28 時点で確認できていない項目です。1・2・6 は展開前に必ず潰してください。

#未確認・リスクなぜ効くか潰し方
1cloudflare-api MCP の権限範囲を実測していないつくる人の端末からアカウント全体を触れる構図。最大のリスク6-4 の案 A で外してから、必要になったら案 B で絞って戻す
2workers-best-practices スキルのレビュー精度が未知「AI が自分で点検する」を関門の代わりに数えてよいかが決まらない2 週目の 1 本目で、エンジニアが同じコードを別途レビューして突き合わせる
3Access が Static Assets 併用時に ctx.access を渡すか未実測ログインした人の記録が取れるかどうか。プランB からの積み残しStep 0 の通しテストで実測する
4公式リポジトリの更新頻度が高く、README と実体が不一致(2-3)手順書が古くなる配布キットに確認日を明記し、四半期ごとに実体を再確認
5WebSocket は Worker 単位の Access 保護の対象外(公式記載)リアルタイム系アプリを作ったときに穴になる当面リアルタイム系は作らせない。必要ならエンジニア案件
6作業消失対策がゼロパソコンが壊れたら消える20-2・20-3 で潰す。潰すまで展開しない
7退職者の Mac にソースの複製が残る(プランB と同じ積み残し)情報持ち出し端末返却・初期化を退職手続きに紐づける
8Claude の利用料が人数に比例する方式によらず発生するが、本方式は使うほど得なので増えやすい人ごとの上限を Claude 側で設定(6-5)
9スキルは日本語で書かれていない(英語)AI が読むので実用上の問題は無いはずだが、未検証2 週目に日本語での指示だけで完結するか観察
10Workers Paid 以外の従量課金(D1 の読み書き、R2 の保存)の実額が未知本数が増えたときの費用月次で実額を見る(6-5)

22参考(一次情報)

社内の対になる資料

ファイル内容
claude-code-internal-app-workflow.mdプランA(Codespaces)
claude-code-internal-app-workflow-planb.mdプランB(ローカル・従来の本命)
synon-claude-code-kit-planb.zipguard.sh と自動保存の実物(20-2 で流用)
cloudflare-os-internal-service-guide.mdCloudflare OS