Agent Canvas
日本語

無料・オープンソース

Agent Canvas を作った理由

エージェントが作ったアプリを見て、試して、磨く軽量ワークスペース。実際の画面を確認し、変更したい場所を示して、ソースから開発を続けます。

無料 · MIT ライセンス · お使いのエージェントで

v0.16.0

Claude Code
Codex
無料・オープンソース

実装 → 確認 → 改善のループに

Agent Canvas を作った理由

AI でページを増やすのは簡単になりましたが、成長するアプリを理解するのは簡単になりませんでした。全画面をクリックして回ったり、別のデザインファイルを維持したりせず、実装と失敗状態をまとめて見たかったのです。

Agent Canvas はレビューを移動可能な景観にします。エージェントがリポジトリ固有の統合を担当し、共通ツールがキャンバス、実コードの Web プレビュー、カメラ追従、検証付き再生を提供します。

StoolSense は合成の公開例です。本番セッション、実際の健康記録、AI リクエストはありません。任意の匿名利用イベントはアプリデータと別です。

Agent Canvas に並ぶ実際の StoolSense の UI 状態
公開デモの実画面:77 状態、44 フロー、121 再生項目。単独ケースを含み、121 本の E2E フローではありません。

全体を見る、操作する、再生する

縮小してアプリを理解

画面をページ別に表示。検索、絞り込み、サイドバーの開閉が可能。フローのリンクを選ぶと、移動先へカメラが追従します。

拡大して実際の UI を操作

Browse は操作をロックして移動を優先。画面を選び Interact を押すと、使い捨ての合成データで元のアプリコードを操作できます。

変更したい場所を示す

画面や UI 要素を選び、変更内容を書いて参照情報をエージェントにコピーします。エージェントがソースを変更すると、ソース連携プレビューが再構築されます。

保存失敗、下書き保持、再試行成功の実際の状態図
フローを選ぶと全画面と名前付き遷移を表示。リンクを選択するとカメラが目的地へ移動します。
オフライン保存失敗後に下書きを保持して再試行する実際のデモ
失敗と復旧の実画面。再生は定義された操作と検証を実行します。線を引くだけではテストになりません。

既存リポジトリから対話的なキャンバスへ

リポジトリを読み書きし、コマンドを実行できるエージェントに依頼します。既存の Storybook や手作業の画面一覧は不要。インストールだけで画面が揃うわけではありません。

エージェントに貼り付ける指示

Read https://github.com/tombelieber/app-canvas/blob/v0.16.0/AGENT_GUIDE.md and add a completely populated Agent Canvas to this repository. Discover all screens, components, variants, states and navigation from the whole application source. Use original UI code. Create the missing synthetic fixtures and render harnesses. Reconcile an independent source inventory with rendered cases and source-linked runtime checks. Add checked happy, failure and recovery journeys. Group by actual page and feature, connect checked flows, deduplicate repeated captures and resume checkpoints. Run --ui-complete against the original source root; keep the stricter --complete source audit separate and unchanged. Continue until the full landscape is populated and verified; report genuine blockers as incomplete. Keep production sessions, credentials and real user data out of previews.
  1. 共通ツールを導入

    Node.js 22+ とプロジェクトのパッケージ管理・lockfile を使用。固定した GitHub リリースとブラウザをインストールします。npm 12 が直接 Git 依存を拒否する場合のみ --allow-git=root を追加。グローバル設定は変更しません。

    npm install --save-dev github:tombelieber/app-canvas#v0.16.0
    npx agent-canvas browsers
  2. ケース選択の前に棚卸し

    元のアプリ全体で plan を実行します。全ファイルと UI アンカー、UI に影響する依存関係、実際のナビゲーションを確認し、カタログとは独立して画面と状態を列挙します。未解決の UI は残します。

    npx agent-canvas plan --source-root . --out ui-review/ui-inventory.json
    npx agent-canvas status --inventory ui-review/ui-inventory.json
  3. Fixtures で元の UI を描画

    ui-review/canvas.config.mjs、catalog、合成 fixtures、preview entry、検証付き journeys を作成。Web adapter は元のページ、providers、CSS を取り込みます。fixtures はデータと依存関係を置換し、UI は複製しません。未知の通信を拒否します。

    ui-review/
      canvas.config.mjs
      catalog.json
      frame.jsx
      fixtures.js
      README.md
    .artifacts/app-canvas/inventory.json
    // package.json → scripts
    "ui:review": "agent-canvas --config ui-review/canvas.config.mjs"

    React/Vite · エージェントガイド

  4. 状態と操作を検証

    通常、空、読み込み、エラー、アクセス拒否、ダイアログ、復旧を網羅。全ケースを確認し、連続フローで実際のコントロールを操作。inventory、ソースに紐づく assertions、routes を照合し、同じルートで --ui-complete を通します。 --complete は別の厳格な全ソース監査です。監査の残件数は不足画面数ではありません。

    npx agent-canvas populate --config ui-review/canvas.config.mjs --source-root . --verify
  5. ソースからレビューと保守

    ui:review で全体と状態図を確認し、フローを再生。変更は実際のアプリソースへ依頼します。既存プレビューは再構築されます。新ルートや状態には inventory、fixture、journey の更新が必要。引き渡し前に完全性検証を必須にします。

    npm run ui:review

アプリ側に保持するもの

共通パッケージは viewer、CLI、skill を管理。各リポジトリは adapter、fixtures、独立 inventory、catalog、操作検証を管理します。動作する React/Vite 例を参考にし、他の構成には専用 adapter を用意します。

任意のエージェント Skill

Codex と Claude Code には同梱 skill を導入可能。他のエージェントは AGENT_GUIDE.md を直接読めます。Canvas runtime はモデルを呼ばず API キーも不要。利用するエージェント自体の料金と権限は別です。

npx agent-canvas install --target both

始める前に

無料ですか?

CLI、キャンバス、付属スキルは MIT ライセンスで無料公開しています。エージェントの利用料金は別途必要です。

Claude Code と Codex に対応していますか?

両方に対応するスキルを同梱しています。他のエージェントは公開ガイドと CLI を利用できます。キャンバス自体はモデルを呼びません。

設計ファイルから始めますか?

既存アプリのソースまたは Web サイトの取り込みから始めます。エージェントが UI と合成 fixtures を接続し、画面と状態を一覧にします。

公開デモは自分のアプリを変更しますか?

いいえ。固定された合成サンプルをブラウザで実行します。自分のアプリの確認とソース変更はローカルで行います。

ネイティブアプリは?

UIKit、SwiftUI、Android はプロジェクトごとの元ランタイムの harness とキャプチャを使用します。キャプチャはブラウザで操作できるネイティブアプリではありません。

このリリースの範囲と限界

実機 iPhone の Safari で動く Agent Canvas
実機 iPhone Safari のキャプチャ。クラッシュから動作までの調査と測定の限界は技術記事へ。

Safari 技術記事

実機 iPhone Safari のキャプチャ。クラッシュから動作までの調査と測定の限界は技術記事へ。

Safari 技術記事

Agent Canvas Cloud · ウェイトリスト

ホスト型ワークスペースに関心がありますか?Cloud はまだ提供されていません。MIT ツールと公開デモは今すぐ使えます。

登録を解除

プライバシーとテレメトリ

最小限の利用イベントを任意で Cloudflare 経由で PostHog に送信します。ページ内容、コード、名前、パス、メール、IP アドレスは PostHog に転送しません。無効にできます。

プライバシーとテレメトリ ↗