◉RORK LABEN
●EXPO — EAS Observe がネイティブクラッシュも記録(10/07)。SDK 57 は 57.0.21 以降で確認できます●RORK — 09-29 に GPT-6.1 Sol、09-28 に Claude Sonnet 5.5 を追加。モデル選択で使えます●SDK 58 — ベータ(9/15)のまま。stable が出る前に、SDK 57 のアプリで確かめておく点を整理しています●Q&A — CPU が 2 コアだと jest が終わらない。CI で詰まる原因を追った記録が共有されています●WIDGET — iOS のウィジェットが本番ビルドだけ真っ黒になる原因を追った記録が出ています●NEW — 個人アカウントで出した iOS アプリを法人へ移せるか。App Transfer の前に外す5つ●EXPO — EAS Observe がネイティブクラッシュも記録(10/07)。SDK 57 は 57.0.21 以降で確認できます●RORK — 09-29 に GPT-6.1 Sol、09-28 に Claude Sonnet 5.5 を追加。モデル選択で使えます●SDK 58 — ベータ(9/15)のまま。stable が出る前に、SDK 57 のアプリで確かめておく点を整理しています●Q&A — CPU が 2 コアだと jest が終わらない。CI で詰まる原因を追った記録が共有されています●WIDGET — iOS のウィジェットが本番ビルドだけ真っ黒になる原因を追った記録が出ています●NEW — 個人アカウントで出した iOS アプリを法人へ移せるか。App Transfer の前に外す5つ
記事一覧/AIモデル
◉ AIモデル/2026-10-14上級

プロンプトをアプリから外して Edge Function に置く。守りは入力側でなく、出力側に作りました

アプリに入れた AI の指示文は、配信した日から読める側に回ります。プロンプトを Supabase Edge Function に寄せ、クライアントにはタスク名だけを言わせ、守りを出力の許可リストに置く構成を、テスト付きのコードで整理しました。

Rork581Supabase36Edge Functionプロンプト設計5AI セキュリティ

✦ プレミアム記事

「このアプリは、どんな指示文で AI を動かしているのだろう」。配信されたアプリに対して、同じ問いを立てられる人がいます。JavaScript のバンドルに入った文字列は、読もうと思えば読めるからです。

Rork で作ったアプリに AI 機能を足すとき、指示文(システムプロンプト)を画面のコードの近くに書きたくなります。動かしながら直せて、手元では一番速いからです。ただ、その置き方は、配った日から指示文を「公開文書」にします。

先に API キーの置き場所を整理した記事を書きました(そのAPIキー、アプリの中に入っていませんか)。今回はその続きで、キーではなく指示文そのものをどこに置くかの話です。

アプリの中に残るもの、残らないもの

Hermes でバイトコードにしても、文字列リテラルはそのまま残ります。難読化をかけても「読みにくくなる」だけで、読めなくなるわけではありません。アプリに入れた時点で、次のものは配信先の全員の手元にあると考えるほうが安全です。

アプリに置いたもの読まれて困ること直したいときの手間
システムプロンプト指示の工夫がそのまま写される。言い回しの弱点も見える修正のたびに再ビルドと審査
許可するラベルや閾値どう言えば通るかが推測できる同上
モデル名・max_tokensコストの見積もりが逆算される同上
API キー請求が飛ぶ(別記事の主題)古い版が行き渡るまで無効にできない

表の右端が、私には一番重く感じられます。壁紙の分類で指示文を何度も書き直してきた経験から、指示文は「完成品」ではなく「直し続ける文書」だと思っております。直し続ける文書をアプリの中に閉じ込めると、一回の言い換えがストア審査の待ち時間になります。

先に決めた三つの約束

設計の前に、守る約束を三つに絞りました。

  1. クライアントが言えるのは「タスク名」と「入力」だけです。指示文もモデル名も受け取りません
  2. 入力は型と長さしか見ません。「悪い言葉」を探しには行きません
  3. 守りは出力側に置きます。モデルが何を返しても、許可リストに入ったものだけを画面に通します

2 番目は、最初は不安でした。入力を検査しないで大丈夫なのか、と。結論から書くと、検査しても防げない種類の入力があるので、入力側に守りを期待しないことにしました。理由は試験の節で、数字つきでお伝えします。

✦

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
✦自分のアプリのどこに指示文や判断条件が埋まっているかを、配信する前に洗い出せるようになる
✦Edge Function を一枚挟み、クライアントからはタスク名と入力だけを受け取る構成を、そのまま写して動かせるようになる
✦指示文の言い回しを直すたびにストア審査を待つ手間を省き、サーバー側の差し替えだけで反映できるようになる
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Rork Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

◉ AI モデル2026-09-13
そのAPIキー、アプリの中に入っていませんか — Rork の環境変数と Supabase Edge Function の使い分け
Rork で外部 API をつなぐとき、キーの置き場所には環境変数と Supabase Edge Function の二つがあります。どちらに寄せるかを「あとから取り消せるか」「誰に請求が来るか」で決める基準と、置いたあとに自分の目で確かめる手順をまとめます。
◉ AI モデル2026-04-30
Rork で『AI が自動でアルバム化する写真整理アプリ』を作る実装ガイド — Vision × CLIP × pgvector で本番品質のパイプラインを設計する
Rork で写真ライブラリを AI が自動分類するアプリを本気で作るための完全実装ガイドです。Vision で顔・物体・テキストを抽出し、CLIP 埋め込みで意味検索を実現し、Supabase pgvector で類似画像検索を可能にする本番運用パイプラインを、コード付きで一から設計します。
◉ AI モデル2026-10-05
Sonnet 5.5・GPT-6.1 Sol・Opus 5.5 のどれに頼むかを、修正の種類で先に決めておきます。クレジットの行き先を1週間記録して引いた割り当て
Rork のモデルメニューが Sonnet 5.5・GPT-6.1 Sol・Opus 5.5 の三つになったあと、修正を三種類に分けてモデルと effort を割り当てました。変更履歴に書かれた違いの読み方、クレジットの行き先を記録する小さな台帳、そこから引いた線引きを書き残します。