マキモノ
Web開発無料✅ 公式検証済みv1.0.0 / 更新

デプロイ済みアプリの表示内容をClaudeがブラウザなしで読む2経路

Supabaseスナップショット直読みとPlaywright storageStateで認証付きAPIを叩く。素のfetchがログインHTMLを200で返す罠と報告の型

出品者: cr@orgiast.jp📖 読込 約1,018トークン (約2円)💰 コスパ 1倍
トークン節約メーター50%節約
ゼロからAIに作らせた場合約1,800トークン
このMDを読ませた場合約900トークン

約900トークンの節約 (API料金換算で約1円分)。 要件定義・技術調査・試行錯誤ぶんのトークンがまるごと不要になります。※ 出品者申告とレビューに基づく推定値。モデル・タスク内容により変動します。

この巻物について

「デプロイ済みアプリの表示内容をClaudeがブラウザなしで読む2経路」は、Web開発カテゴリのAI指示書(MDファイル)です。Supabaseスナップショット直読みとPlaywright storageStateで認証付きAPIを叩く。素のfetchがログインHTMLを200で返す罠と報告の型この巻物をAIに読み込ませると、ゼロから設計・調査する場合に比べて 約900トークン(API料金換算で約1円)・50%のトークンを節約できます。

カテゴリ
Web開発
対応AI
claude-code、cursor、codex-cli
ライセンス
商用利用可 (再販不可)
価格
無料
ゼロから開発時
約1,800トークン
この巻物使用時
約900トークン
節約量
約900トークン (約1円)
更新日
2026-10-21

使い方 (AIに渡す3つの方法)

いちばん簡単なのはワンライナー。Claude Code のターミナルに貼るだけです。

⬇ .md をダウンロード
claude "https://makimono-md.vercel.app/api/v1/files/claude-2/raw を読み込んで、この指示書どおりに実装して"
claude-codecursorcodex-cliライセンス: 商用利用可 (再販不可)

中身

デプロイ済み Web アプリの表示内容を、ブラウザ操作なしで Claude が読む

課題

「アプリの画面を開いて数値を確認してください」と user に頼むと、往復が1回増えるだけで得られる情報は変わらない。 同じデータは多くの場合、Claude 側から2経路で読める。読み取りは自分で行い、user には判断だけを残す。

前提(アプリ側の設計)

  • 画面が表示している取得結果を、localStorage ではなく DB のスナップショット表(例: snapshots(id text primary key, payload jsonb, fetched_at timestamptz))に保存していること。
  • 画面が叩く API が、セッション Cookie 認証で動いていること。
  • この2つがあれば、以下の2経路が使える。

経路1: DB を直接読む(最速・0.2秒)

GET {SUPABASE_URL}/rest/v1/snapshots?id=eq.<key>&select=payload,fetched_at
Headers: apikey: <ANON_OR_SERVICE_KEY>
         Authorization: Bearer <ANON_OR_SERVICE_KEY>
  • payload に画面と同じ JSON が入っている。fetched_at を「取得日時」として報告に添える。
  • 書き込み権限は不要。読み取り専用キーで足りる。
  • 注意: 画面が ?refresh=1 のときだけ再取得する設計なら、DB の値は「最後に誰かが更新した時点」のもの。鮮度が要るなら経路2。

経路2: ログイン済みの API を叩く(最新値を取得)

Playwright の storageState(E2E テストが保存したログイン状態)を使う。

const { request } = require('@playwright/test');
const ctx = await request.newContext({
  baseURL: 'https://<your-app>.vercel.app',
  storageState: 'e2e/.auth/user.json',
});
const res = await ctx.get('/api/<endpoint>?refresh=1');
const json = await res.json();   // { result, fetchedAt, fetchedBy, cached }
  • 認証は Cookie なので、storageState を渡すだけで通る。トークン再発行は不要。
  • refresh=1 を付けるとサーバー側が外部 API を叩き直す。付けないとキャッシュが返る(高速)。

ハマりどころ(実測)

  1. 素の fetch は 200 でログイン画面の HTML を返す。認証エラーにならないので、JSON パースで初めて気づく。 → res.headers()['content-type'] が text/html なら未認証と判定する。
  2. デプロイ直後は古いビルドが応答する。Vercel のデプロイ完了を待つか、レスポンスの fetchedAt が新しいことを確認する。
  3. E2E のログイン状態が切れていると 302 でログインへ飛ぶ。res.status() と最終 URL を必ず確認する。

報告の型

  • 数値・一覧・判定は本文に転記する(スクリーンショットや URL だけを渡さない)。
  • 取得日時と取得経路を1行添える(例: 「2026-10-21 03:11 取得 / Supabase snapshots 直読み」)。
  • URL は「user が操作したくなったとき用」に添えるだけにする。
  • 前回取得時との差分があれば、聞かれる前に報告へ載せる。

検証

  • 経路1と経路2の主要な数値が一致することを read-back する。一致しなければ鮮度差(キャッシュ)を疑い、fetched_at を比べる。

よくある質問

+「デプロイ済みアプリの表示内容をClaudeがブラウザなしで読む2経路」とは何ですか?

Supabaseスナップショット直読みとPlaywright storageStateで認証付きAPIを叩く。素のfetchがログインHTMLを200で返す罠と報告の型

+どれくらいトークン(費用)を節約できますか?

ゼロから開発すると約1,800トークンかかりますが、この巻物を使えば約900トークンで済みます。差し引き約900トークン(API料金換算で約1円)・50%の節約です。

+どうやって使いますか?

無料です。MDファイルを Claude Code などのAIに読み込ませるだけ。ワンライナーをターミナルに貼れば実装が始まります。要件定義や技術調査を省いて実装だけにトークンを使えます。

+どのAIツールに対応していますか?

claude-code、cursor、codex-cli に対応しています。

+商用利用できますか?

ライセンスは「商用利用可 (再販不可)」です。

🤝 自分でAIを動かすのは、まだ不安…という方へ

この巻物の内容を、AIを使うプロに丸ごと任せることもできます。姉妹サービスAI代行堂なら「LINEで頼むだけで、仕事が完成」。

AI代行堂を見る →

関連する巻物

この巻物、誰かのトークンも救えます

𝕏 で節約レシートをシェア