🔰 講座07

スクショとプロンプトだけで公開済みアプリを継続的に改善できるようになる

⏱ 想定学習時間 15時間
📋 前提条件 講座06修了・Vercel + GitHub 連携済み
🛤 パス A・B共通
この講座でできるようになること
継続改善サイクル(スクショ → 修正 → デプロイ → 確認)
📸 スクショ撮影
問題箇所を記録
🤖 Cursor Agent
Ctrl+V で貼付け修正依頼
🌐 git push
GitHub へ送信
✅ Vercel 自動デプロイ
本番に反映・確認
1

Phase 1: 修正作業の基本サイクルを身につける

⏱ 約3時間
1-1

STEP 1-1: 基本フロー — スクショ → Cursor Agent → Accept → git push → Vercel 自動デプロイ

公開済みアプリを改善するための基本サイクルです。このフローを繰り返すことで継続的な改善が実現できます。このサイクルはエンジニアが「CI/CD」と呼ぶ仕組みに近いです。

【Windows 版】

基本フロー手順
  1. スクリーンショットの撮り方
    修正したい箇所をブラウザで開き、Win + Shift + S でスニッピングツールを起動して対象部分を範囲選択してコピー
  2. Cursor Agent への依頼
    Cursor を開き、Ctrl + L でチャットを開く → スクリーンショットを貼り付け(Ctrl + V)→ 修正依頼のプロンプトを入力して送信
  3. 変更の Accept と push
    Cursor が提案した変更を確認して「Accept All」または個別に Accept する
Cursor — my-app
EXPLORER
📄 index.html
🎨 style.css
📄 CLAUDE.md
📄 index.html
1<!-- 修正済みコード -->
2<button class="btn-primary">
3 送信する
4</button>
🤖 Cursor AI (Agent)
📎 [スクショ貼付済み]
ボタンの色がおかしい。青にして欲しい
スクショを確認しました。style.css の .btn-primary の background-color を修正します...
💬 Ctrl+V でスクショを貼り付け

▲ Cursor にスクショを Ctrl+V で貼り付けて修正依頼。右パネルで AI が提案した変更を確認できる

Git Bash / ターミナル — 修正後のコミット&プッシュ Windows / Mac 共通
git add .
git commit -m "fix: ○○を修正"
git push origin main

【Mac 版】

  • スクリーンショット: Cmd + Shift + 4 で範囲選択してクリップボードにコピー
  • その他の手順は Windows 版と同一
⚠️ エラーが出た場合

git push が失敗する場合

  • git status でファイルの変更状態を確認する
  • git add . を先に実行してからコミットしているか確認する
  • リモートリポジトリとの差異がある場合: git pull origin main を先に実行する
  • 認証エラーの場合: gh auth login を再実行する
1-2

STEP 1-2: Antigravity Agent での修正フロー(Cursor との使い分け)

Cursor と Antigravity はどちらも AI 修正に使えますが、得意な場面が異なります。迷ったらまず Cursor を使いましょう。

場面Cursor AgentAntigravity Agent
コードの多ファイル同時修正✅ 得意✅ 得意
ブラウザの見た目を確認しながら修正△ 手動確認が必要✅ 自動ブラウザ操作で確認可能
ターミナルのエラー修正✅ 得意△ 可能
UI テストの自動実行△ 限定的✅ 得意
インターネット検索しながら修正△ 可能△ 可能

Antigravity での修正フロー

Antigravity 修正手順
  1. Antigravity を開き、Agent Manager View に切り替える
  2. チャットにスクリーンショットを貼り付けて修正を依頼する
  3. エージェントがコードを修正し、ブラウザで確認まで自動で行う場合がある
  4. 修正内容を確認して Approve する
  5. git add . && git commit -m "fix: ○○" && git push origin main を実行
⚠️ エラーが出た場合

Antigravity が動作しない場合は、まず Cursor での修正フロー(STEP 1-1)を使ってください。Antigravity はブラウザ操作も絡む修正や、動作確認を一緒にやってほしい場面で特に力を発揮します。

1-3

STEP 1-3: instructions.md / CLAUDE.md でコンテキストを維持する方法

AI に毎回「このアプリは何をするもので、どんな技術スタックを使っているか」を説明するのは非効率です。プロジェクトのルートにコンテキストファイルを作成することで、AI が常にプロジェクトの文脈を理解した状態で作業できます。このファイルは AI への「引き継ぎ書」です。

【Windows 版 / Mac 版 共通】

プロジェクトのルートに CLAUDE.md(Cursor では instructions.md も利用可)を作成する:

CLAUDE.md — プロジェクトコンテキストの基本テンプレート 全OS共通
# プロジェクト概要

## アプリの目的
○○を行うWebアプリケーション。

## 技術スタック
- フロントエンド: React + Vite
- スタイリング: Tailwind CSS
- デプロイ: Vercel
- バージョン管理: GitHub

## ディレクトリ構成
- `src/components/` - Reactコンポーネント
- `src/pages/` - ページコンポーネント
- `src/utils/` - ユーティリティ関数
- `public/` - 静的ファイル

## 重要なルール
- コンポーネントはTypeScriptで書く
- スタイルはすべてTailwind CSSを使う(インラインスタイルは使わない)
- APIキーは環境変数から読み込む(コードにハードコードしない)

## 環境変数
- `VITE_API_KEY`: APIアクセスに使用

## 既知の制約・注意事項
- ○○の機能は現在開発中のため変更しない
⚠️ エラーが出た場合

CLAUDE.md を作成してもAIが参照しない場合は、チャットの最初に「@CLAUDE.md を読んでからこの作業をしてください」と明示してください。Cursor では @ファイル名 でファイルを直接参照させることができます。

2

Phase 2: エラー対処の標準フロー

⏱ 約3時間
2-1

STEP 2-1: ブラウザエラー(真っ白・赤いエラー表示)のスクショ修正依頼

「真っ白」になる原因のほとんどは JavaScript のエラーです。F12 を押して Console タブに赤いメッセージが出ていれば、それを AI に見せるだけで修正できます。

【Windows 版】

ブラウザエラーの対処手順
  1. ブラウザでエラーが発生しているページを開く
  2. F12 キーで開発者ツールを開く
  3. 「Console」タブを選択してエラーメッセージを確認する
  4. エラーが表示されている Console タブごとスクリーンショットを撮る(Win + Shift + S
  5. Cursor チャットにスクリーンショットを貼り付けて修正依頼
修正依頼プロンプト例
添付のスクリーンショットはブラウザのコンソールエラーです。
エラーを修正してください。

発生状況: ○○のページを開くと真っ白になる

【Mac 版】

  • Cmd + Option + J で開発者ツールの Console を開く
  • その他の手順は Windows 版と同一
⚠️ エラーが出た場合

Console に何も表示されない場合

  • ページをリロードしてから F12 を開く(ロード前にコンソールを開いていないとエラーが消えてしまう場合がある)
  • 「Network」タブで失敗しているリクエスト(赤いもの)を確認する
  • ブラウザのキャッシュをクリアしてから再確認する(Ctrl + Shift + R でハードリロード)
2-2

STEP 2-2: ターミナルエラーのスクショ修正依頼

ターミナルのエラーはコピペが一番確実です。スクリーンショットでも AI は読み取れますが、テキストで貼り付けると解析精度が上がります。

【Windows 版】

ターミナルエラーの対処手順
  1. Cursor のターミナルまたはコマンドプロンプトにエラーが表示されたら
  2. ターミナルを選択してエラー部分をマウスでドラッグ選択 → コピー(Ctrl + C
  3. Cursor チャットに貼り付けて修正依頼
ターミナルエラー修正依頼プロンプト例
以下のターミナルエラーが発生しました。修正してください。

[エラーメッセージをここに貼り付け]

実行していたコマンド: npm run dev

【Mac 版】

  • Cmd + C でコピー、その他は同一手順
⚠️ エラーが出た場合

ターミナルのエラーが長くてすべてコピーできない場合は、最後の部分(最下部)が最も重要です。エラーの末尾から 30〜50 行程度をコピーして AI に貼り付けてください。

2-3

STEP 2-3: Vercel ビルドエラーのログからの修正依頼

【Windows 版 / Mac 版 共通】

Vercel ビルドエラーの対処手順
  1. Vercel ダッシュボード → 「Deployments」タブ
  2. 失敗したデプロイ(赤い「Error」)をクリック
  3. 「Build Logs」タブを開く
  4. ページ末尾のエラー部分をコピー(Ctrl+A で全選択してもよい)
  5. Cursor チャットに貼り付けて修正依頼
Vercel ビルドエラー修正依頼プロンプト例
Vercelのビルドログにエラーがありデプロイできません。修正してください。

[ビルドログをここに貼り付け]
⚠️ エラーが出た場合

ビルドログが長すぎてコピーできない場合

「エラー」または「Error」という文字を含む行前後 20 行程度をコピーして貼り付けてください。ログの最後の部分(最下部)が最も重要なエラー情報を含んでいることが多いです。

2-4

STEP 2-4: 本番と開発の差異問題(「ローカルでは動くのに本番で動かない」)

「ローカルでは動くのに本番で動かない」問題の9割は環境変数の設定ミスです。まず Vercel ダッシュボードの環境変数を確認してみましょう。

原因確認方法対処
環境変数が設定されていないVercel ダッシュボードの環境変数を確認環境変数を設定して再デプロイ
環境変数設定後の再デプロイ忘れデプロイ日時と環境変数設定日時を比較再デプロイを実行
ローカルの .env ファイルを GitHub に push していない.gitignore を確認Vercel に直接環境変数を設定
React Router のルーティング問題直接 URL でアクセスして 404 になるか確認vercel.json を追加
大文字小文字の違い(ファイル名)import 文とファイル名を照合ファイル名の大文字小文字を統一
React Router 使用時の vercel.json

プロジェクトルートに vercel.json を作成:

vercel.json — React Router 用リライト設定 全OS共通
{
  "rewrites": [
    { "source": "/(.*)", "destination": "/" }
  ]
}
⚠️ エラーが出た場合

上記を試しても解決しない場合は、Cursor チャットで「ローカルでは動くが Vercel 本番では動かない。考えられる原因を教えてください。」と質問して原因を絞り込んでください。

3

Phase 3: Cursor の高度な活用

⏱ 約3時間
3-1

STEP 3-1: Plan モードで大規模修正の設計をする

機能追加など影響範囲が広い修正は、Plan モードを使って先に設計を確認してから実施します。大きな変更を一気に依頼すると予期しない部分まで変わってしまうことがあります。まず「何を変えるか」を確認してから実装に移る習慣をつけましょう。

【Windows 版 / Mac 版 共通】

Plan モードのプロンプト例
まず実装計画を作ってください(コードは変更しないで)。

追加したい機能: ○○機能
現在の状態: ○○コンポーネントに△△を追加したい

影響を受けるファイルの一覧と、各ファイルへの変更内容を教えてください。

提案された計画を確認し、問題なければ「この計画で実装してください」と送信します。

⚠️ エラーが出た場合

AI が計画なしにいきなりコードを書き始めた場合は「まず計画だけ教えてください、コードはまだ変更しないでください」と再度指示してください。

3-2

STEP 3-2: @記号でフォルダ全体をコンテキストに含める

Cursor のチャット欄で @ を入力するとファイル/フォルダの補完が表示されます。@ でファイルを指定すると、AI がそのファイルの内容を直接読んで作業します。

【Windows 版 / Mac 版 共通】

@ 記号の活用例
# 特定ファイルを参考にして新規作成
@src/components/Header.tsx を参考に、同じスタイルでFooterコンポーネントを作成してください。

# フォルダ全体でコード整理
@src/components/ フォルダ全体を確認して、コンポーネント間で重複しているコードをまとめてください。

# CLAUDE.md と組み合わせた指示
@CLAUDE.md @src/pages/ を参考に、新しいAboutページを追加してください。
⚠️ エラーが出た場合

@ でファイルを指定してもAIが参照できない場合は、ファイルパスが正しいか確認してください。Cursor の「Explorer」パネルで実際のパスを確認できます。

3-3

STEP 3-3: CLAUDE.md のベストプラクティス(サンプルテンプレート付き)

効果的な CLAUDE.md の書き方のテンプレートです。プロジェクトのルートに作成してください。

CLAUDE.md — 完全版テンプレート 全OS共通
# プロジェクト: [アプリ名]

## 概要
[1〜3行でアプリの目的を説明]

## 技術スタック
- フロントエンド: React + TypeScript + Vite
- スタイリング: Tailwind CSS
- 状態管理: [使用している場合のみ記載]
- バックエンド/API: [使用している場合のみ記載]
- デプロイ: Vercel

## ディレクトリ構成
```
src/
├── components/    # 再利用可能なUIコンポーネント
├── pages/         # ページレベルのコンポーネント
├── hooks/         # カスタムフック
├── utils/         # ユーティリティ関数
└── types/         # TypeScriptの型定義
```

## コーディングルール
- TypeScriptの型は必ず定義する
- コンポーネントは1ファイル1コンポーネント
- スタイルはTailwind CSSのみ使用(styled-componentsやinlineスタイル不可)
- APIキーはimport.meta.env経由で読み込む

## 環境変数(実際の値は書かない)
- `VITE_API_KEY`: ○○APIのキー

## 現在の開発状況
- 完成している機能: [一覧]
- 開発中の機能: [一覧]
- 既知のバグ: [一覧]

## 変更してはいけない部分
- [理由とともに記載]
⚠️ エラーが出た場合

CLAUDE.md が大きくなりすぎると AI のコンテキストウィンドウを圧迫することがあります。1,000 行を超えるようになったら不要な情報を整理・削除してください。

4

Phase 4: Antigravity の高度な活用

⏱ 約2時間
4-1

STEP 4-1: Agent Manager でマルチファイル同時修正

「これとこれとこれを同時に変えて」という依頼は Antigravity の Agent Manager が得意です。依頼した変更の全体を見渡せるので、変更内容の確認もしやすくなっています。

【Windows 版 / Mac 版 共通】

マルチファイル修正の依頼例
以下の修正を行ってください:
1. src/components/Header.tsx のナビゲーションにAboutページへのリンクを追加
2. src/pages/About.tsx を新規作成(デザインはHome.tsxと揃える)
3. src/App.tsx にAboutページのルートを追加

CLAUDE.mdのルールに従ってください。
⚠️ エラーが出た場合

Antigravity が複数ファイルを同時に修正する際に競合が発生した場合は、一度に修正するファイル数を減らして段階的に依頼してください。

4-2

STEP 4-2: ブラウザ自動テストを修正フローに組み込む

修正後の動作確認を Antigravity のブラウザ操作機能で自動化できます。npm run dev でローカルサーバーを起動した状態でこのプロンプトを使います。

【Windows 版 / Mac 版 共通】

ブラウザ自動テストのプロンプト例
以下の手順でアプリをテストしてください:
1. http://localhost:5173 を開く
2. ヘッダーのナビゲーションリンクを1つずつクリックして遷移を確認する
3. ログインフォームに test@example.com と入力してログインボタンをクリック
4. エラーや想定外の動作があればスクリーンショットを撮って報告する
⚠️ エラーが出た場合

Antigravity がブラウザにアクセスできない場合は、npm run dev が起動しているか確認してください。また、ファイアウォールやセキュリティソフトがローカルサーバーへのアクセスをブロックしていないか確認してください。

4-3

STEP 4-3: rules.md でエージェントの動作を制御する

Antigravity のエージェントが守るべきルールを rules.md に定義できます。

【Windows 版 / Mac 版 共通】

rules.md — エージェントの動作ルール設定 全OS共通
# エージェントの動作ルール

## 必ず守ること
- コードを変更する前に、変更計画を提示して確認を求める
- テストファイルは変更しない(依頼がある場合のみ)
- package.json の依存関係を追加・変更する前に確認する
- 環境変数ファイル(.env)は絶対に変更しない

## 禁止事項
- git push は自分では行わない(確認してから手動で行う)
- ファイルの削除は確認なしに行わない
- 本番URL(vercel.appのURL)に直接アクセスしない

## 推奨する作業手順
1. 変更するファイルと変更内容を先に説明する
2. 変更を実施する
3. ローカルで動作確認する(npm run dev が起動していれば確認する)
4. 変更内容のサマリーを出力する
⚠️ エラーが出た場合

rules.md を作成しても反映されない場合は、Antigravity の設定でどのファイルをルールとして読み込むかを確認してください。

5

Phase 5: 継続運用のルーティン化

⏱ 約2時間
5-1

STEP 5-1: 定期的なコードレビュー依頼プロンプト

週1回など定期的にコードレビューを依頼することで、技術的負債の蓄積を防げます。

コードレビュー依頼プロンプト
@src/ フォルダ全体のコードをレビューしてください。

以下の観点で問題点と改善提案を教えてください:
1. バグや潜在的なエラーが起きやすい箇所
2. 重複しているコードや整理できる箇所
3. パフォーマンスに影響しそうな実装
4. 読みにくいコードや命名の問題

優先度(高/中/低)と修正の難易度もあわせて教えてください。
⚠️ エラーが出た場合

コードレビューで改善提案が多すぎる場合は「優先度が高いものだけ上位3つ教えてください」と絞り込んでください。

5-2

STEP 5-2: セキュリティチェック依頼プロンプト

アプリを公開する前や、新機能を追加した後に実施することをおすすめします。

セキュリティチェック依頼プロンプト
@src/ のコードについて、セキュリティの観点からチェックしてください。

特に以下を確認してください:
1. APIキーやシークレットがコード内にハードコードされていないか
2. ユーザー入力をそのままDOMに挿入していないか(XSS)
3. 外部URLへの直接リダイレクトが含まれていないか
4. 不要な権限やスコープを要求していないか

問題があれば修正方法も教えてください。
⚠️ エラーが出た場合

セキュリティ上の問題が見つかった場合は、修正を急いでください。特に API キーのハードコードは即座に修正が必要です。

5-3

STEP 5-3: パフォーマンス改善依頼プロンプト

パフォーマンス改善依頼プロンプト
@src/ のコードのパフォーマンスを改善してください。

確認してほしい点:
1. 不必要なAPIコール・再レンダリングが発生していないか
2. 画像の最適化(サイズ・形式)ができているか
3. コード分割(lazy loading)が適切に行われているか
4. メモリリークの可能性がある箇所

Lighthouseスコアを改善するための優先度の高い改善から順に教えてください。
⚠️ エラーが出た場合

パフォーマンス改善は影響範囲が大きいため、Plan モード(STEP 3-1)を使って先に設計を確認してから実施することをおすすめします。

📋

付録: コピペ用プロンプト集

⏱ 参照用
📋

用途別プロンプト集(コピー&ペーストして使用)

修正依頼プロンプト

スクリーンショットから修正Cursor / Antigravity 共通
添付のスクリーンショットのUIを修正してください。

問題: [問題を1行で説明]
期待する動作: [こうなってほしい]
特定の要素を変更Cursor / Antigravity 共通
[コンポーネント名]の[要素名]を変更してください。

現在: [現在の状態]
変更後: [変更したい状態]

CLAUDE.mdのルールに従ってください。

エラー対処プロンプト

コンソールエラー修正Cursor / Antigravity 共通
以下のブラウザコンソールエラーを修正してください。

エラー内容:
[エラーメッセージを貼り付け]

このエラーは[何をしたときに]発生します。
Vercel ビルドエラー修正Cursor / Antigravity 共通
以下のVercelビルドエラーを修正してください。
ローカルでのビルドも確認してください。

ビルドログ:
[ビルドログを貼り付け]

機能追加プロンプト

新機能の追加Cursor / Antigravity 共通
以下の機能を追加してください。

機能名: [機能名]
概要: [機能の説明]
配置場所: [どのページ・コンポーネントに追加するか]

既存のデザインシステムやコーディングルール(@CLAUDE.md)に従ってください。
実装前に変更するファイルの一覧を教えてください。

コードレビュー用プロンプト

PR 前の最終確認Cursor / Antigravity 共通
@src/ を確認して、本番デプロイ前にチェックすべき問題がないか教えてください。

特に確認してほしいこと:
- console.log が残っていないか
- TODO/FIXMEコメントが残っていないか
- テスト用のデータやAPIキーがコードに含まれていないか
⚠️ プロンプトが効かない場合

プロンプトが意図した通りに動かない場合は、以下を試してください:

  • より具体的な指示を追加する(「○○ファイルの△△行目付近を修正してください」など)
  • CLAUDE.md でルールをより明確に記述する
  • 一度に複数の依頼をまとめるより、1つずつ依頼する
  • Cursor を再起動してチャットをリセットする

修了条件チェックリスト