CLAUDE LABEN
VERSION — 8月10日に v2.1.227 が出ていました。新機能はなく、プラン判定と CI まわりの不具合修正が中心ですAUTO — 8月14日の既定化まで残り2日です。Pro・Max・Team で Claude Code の auto モードが既定で有効になりますCI — claude-code-action で allowed_non_write_users を指定すると GitHub ホストランナー上の Bash が全て失敗していた問題が直りましたBILLING — 期限切れトークンで開始したセッションが加入プランを取り違え、Max 利用者に使用クレジットの有効化を促していた不具合も解消していますSUNSET — 旧 Workbench と実験的プロンプトツール API の廃止は8月17日で、残り5日ですPRICE — Sonnet 5 のプロモ価格 $2/$10 per Mtok は8月31日までで、9月1日から $3/$15 per Mtok になりますVERSION — 8月10日に v2.1.227 が出ていました。新機能はなく、プラン判定と CI まわりの不具合修正が中心ですAUTO — 8月14日の既定化まで残り2日です。Pro・Max・Team で Claude Code の auto モードが既定で有効になりますCI — claude-code-action で allowed_non_write_users を指定すると GitHub ホストランナー上の Bash が全て失敗していた問題が直りましたBILLING — 期限切れトークンで開始したセッションが加入プランを取り違え、Max 利用者に使用クレジットの有効化を促していた不具合も解消していますSUNSET — 旧 Workbench と実験的プロンプトツール API の廃止は8月17日で、残り5日ですPRICE — Sonnet 5 のプロモ価格 $2/$10 per Mtok は8月31日までで、9月1日から $3/$15 per Mtok になります
記事一覧/Claude Code
Claude Code/2026-06-24中級

Claude Design 由来のプロトタイプを本番化する — 単一ソース・CI・OGP自動生成の実装

Claude Design で作ったプロトタイプを Claude Code で本番運用に耐える形へ。生成物ランタイムを土台にする判断、ロジックを mixin で分離する構成、取引台帳を単一ソースにするデータ設計、GitHub Actions による自動更新と OGP 画像の実ブラウザ生成まで、実装込みで解説します。

Claude Design8Claude Code217CI4GitHub Actions12OGP2アーキテクチャ7premium4

プレミアム記事

前編では Claude Design と Claude Code を発散と収束で分担する流れを紹介しました。後編は、プロトタイプを「毎日使える本番」に変えるための作り込みに踏み込みます。題材は、私が個人開発で、Dolice Labs の運用の傍らで実際に組んだ、データを一枚で見渡すダッシュボードのような静的サイトを想定します。

ここで扱うのは、AI が出した生成物をどこまで土台にしてよいか、ロジックをどう分離するか、データの真実をどこに置くか、そして CI で何を自動化するか、という4点です。どれもプロトタイプを公開物に変える段で必ず立ち止まる判断でした。

生成物のランタイムを作り直さず土台にする

Claude Design が出力するプロトタイプには、ビルド済みのランタイム(生成された support.js のような1枚のJS)が同梱されていることがあります。普通なら「プロトタイプはプロトタイプ、本番は作り直す」と考えるところですが、私はあえてランタイムごと引き継ぐ判断をしました。

判断の軸は単純で、その生成物が自分の要件と噛み合うかどうかです。今回は次の条件が揃っていました。

  • 依存ゼロ・ビルドレスで、<script src> で読むだけ。バンドラもインストールも要らない
  • すでにプロトタイプがそのまま動いている。フレームワークへ移植して得るものが薄い
  • ランタイムが1枚のJSに閉じているので、最悪は中を読めば全部そこにある

「AI が生成したから本番では使わない」と反射的に避けるのではなく、性質が要件に合うかで決める。長く使う個人開発の道具では、依存を抱えないこと自体が安心材料になりました。逆に、この条件が噛み合わなければ載せ替えていたと思います。生成物は編集対象にせず、ルールに「生成物・編集しない」と明記しておくのが安全です。

ロジックを mixin で分離する

プロトタイプは1枚のHTMLに全部入りになりがちです。これだと変更箇所が区分しづらく、メンテが重くなります。そこで実装の大半を外部の js/*.js に出し、グローバルなメソッド集に登録しておいて、本体の末尾で合成する形にしました。

// js/format.js などの末尾(何度読んでも安全な冪等パターンで登録)
window.AppLogic = Object.assign(window.AppLogic || {}, {
  yen(n) { return '¥' + Math.round(n).toLocaleString('en-US'); },
  pct(n) { return (n * 100).toFixed(1) + '%'; },
});
 
// 本体側の末尾で合成する
Object.assign(Component.prototype, window.AppLogic);

ここで意識したのは、ランタイムが名前で呼ぶ契約面(コンストラクタやライフサイクル、描画用のメソッド)だけをインラインに残し、それ以外は外部ファイルへ逃がすという線引きです。「画面をどう記述するか」はランタイムに従い、「コードと運用をどう構成するか」は自分で決める。この境界をはっきりさせると、本番化フェーズで何度細部をいじっても見通しが保てます。

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

この記事の続きを読む

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

この記事で得られること
AI生成物のランタイムを作り直さず土台にする判断基準と、依存ゼロ・ビルドレス構成が効く条件
ロジックを mixin で分離し、ランタイムが要求する契約面だけインラインに残す具体コード
取引台帳CSVを単一ソースにするデータ設計と、Playwright で実ブラウザ撮影する OGP 自動生成の実装
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

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

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

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

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

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

関連記事

Claude Code2026-05-20
Claude Code が『テスト全通過』と報告したのに CI で落ちる — 終了コードを正しく拾うための検証設計
ローカルでは『テスト全通過』と報告された変更が、push 後の GitHub Actions で真っ赤になる。原因の多くは Claude Code 側ではなく、シェルとテストランナーの終了コード解釈にあります。実例ベースで切り分け方を整理しました。
Claude Code2026-07-15
型は付いたのに、安全にはならなかった — JS→TS 移行で Claude Code に任せた範囲と任せなかった範囲
tsc が緑でも any は静かに漏れます。型カバレッジで移行の実態を測り、Claude Code に任せて速い作業と人が決めるべき判断を線引きし、悪化を止める CI ゲートまでを実装付きで整理した運用メモです。
Claude Code2026-06-24
Claude Design と Claude Code を行き来して作る — 発散と収束を分担する開発の流れ
デザインの大枠は Claude Design で、細部の作り込みは Claude Code で。デスクトップアプリへ統合されて往復しやすくなった2つを、発散と収束で役割分担する開発の進め方として整理します。Link Local code と Send to の橋渡しまで。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →