# 音声図解コメントツール わからない言葉やしくみを AI に伝えるだけで、噛み砕いた図解ページを自動で作って公開できるツールです。公開した図解には、見た人がコメントを付けられます。コメントの付け方は3通りあります。 - **テキストを選んでコメント** — 気になる箇所をマウスで選択すると、引用付きでコメントできます - **ピンを刺してコメント** — 図の好きな場所をクリックしてピンを立て、コメントできます - **マイクに向かって喋るだけ** — 「上の説明はもっとシンプルに。真ん中の図は矢印が逆」と喋ると、AI(Gemini)が聞き取って、図解の該当箇所にピンを自動で配置します さらに、こんな特徴があります。 - **優先度が色でわかる** — Must(赤)・Better(黄)・Want(緑)の3段階で重要度を伝えられます - **セットアップは1回だけ** — 一度設定すれば、以降は図解を公開するたびにコメント機能が自動で付きます - **無料で使える** — Vercel・Neon・Surge・Gemini API のすべて無料プランで動きます。クレジットカードの登録は不要です ## しくみ このツールは2つの部品でできています。 ``` 「○○を図解して」と AI に依頼 │ ▼ ① 図解 HTML(output/ に生成 → Surge に公開される静的ページ) │ デプロイ時に の直前へ1行だけ自動注入される │ ▼ ② バックエンド(あなたの Vercel で常時動く Next.js アプリ)= このフォルダ ├─ widget.js … コメント UI 本体(画面右端に出るパネル) ├─ /api/comments … コメントの保存・取得・更新・削除 └─ /api/voice-analyze … 音声を Gemini に渡してピン配置情報に変換 │ ▼ Neon Postgres(comments テーブル) ``` ②は1つ動いていればOKです。図解を作るたびに何かをセットアップする必要はありません。 ## セットアップ 初回だけ必要な設定です。AI が順番に案内してくれます。 ``` ① Node.js / Vercel CLI を確認 ↓ ② Vercel にログイン・デプロイ ↓ ③ API トークンを自動生成 ↓ ④ Gemini API キーを発行(音声機能用・ブラウザで操作) ↓ ⑤ データベースを追加(ブラウザで操作) ↓ ⑥ マイグレーション実行・再デプロイ ↓ ⑦ 完了(fb-tool-url.txt と fb-api-token.txt が生成される) ``` ### やり方 このフォルダを Cursor で開き、チャット欄で次のように伝えてください。 ``` セットアップして ``` AI がステップごとに案内してくれます。 ### 必要なもの | 必要なもの | 説明 | 費用 | | ------------- | ---------------------------------------- | ------------- | | Node.js | パソコン上でプログラムを動かすための土台。AI が自動でインストールを案内します | 無料 | | Vercel アカウント | コメント機能を動かすサーバー。メールアドレスで登録できます | 無料(Hobby プラン) | | Neon Postgres | コメントデータを保存するデータベース。Vercel の画面から追加します | 無料 | | Google アカウント | 音声を聞き取る AI(Gemini)の API キー発行に使います | 無料 | | Surge アカウント | 図解を公開するサービス。初回にメールアドレスとパスワードで登録します | 無料 | アカウントを持っていなくても大丈夫です。セットアップの途中で AI が「今このアカウントを作ってください」と、必要になったタイミングで案内します。 ### Gemini API キーの発行手順(音声機能に必要) API キーとは、AI サービスを利用するための「あなた専用の合鍵」です。発行したことがなくても、以下の4ステップ・3分程度で作れます。セットアップ中に AI がこの手順を案内するので、事前にやっておく必要はありません。 1. ブラウザで [Google AI Studio](https://aistudio.google.com/apikey) を開く 2. Google アカウントでログインする 3. 「API キーを作成」(Create API key)ボタンを押す 4. 表示された `AIza...` で始まる文字列がキーです。セットアップ中に AI から求められたら、チャット欄に貼り付けてください 無料枠の範囲で使えます。クレジットカードの登録は不要です。 ### 大事な注意 - **API キーやトークンは自分専用です。** 他の人と共有したり、チャットや SNS に貼ったりしないでください - セットアップで生成される `fb-tool-url.txt`・`fb-api-token.txt`・`.env.local` は Git にコミットされない設定になっています(`.gitignore` で除外済み) - 図解は URL を知っていれば誰でも見られます。**機密情報を図解に載せない**前提で使ってください ## 使い方 ### 図解を作る Cursor のチャット欄に、知りたいことを書いて送信します。 ``` APIについて図解して ``` AI が図解を作り、コメント機能付きで自動デプロイします。 ### コメントを付ける(見る側) 公開された図解を開くと、画面右端にボタンが出ます。ボタンには3つの機能が並んでいます。 | アイコン | 機能 | | ---- | -------------------- | | パネル | サイドバーの開閉。コメント一覧を見る | | ピン | フィードバックモードの ON / OFF | | マイク | 音声フィードバックの録音開始 / 停止 | **音声で伝える**: マイクアイコンを押して喋り、もう一度押して停止します。数秒後、AI が「どの見出しへの指摘か」を判定して、該当箇所にピンを自動で配置します。初回はブラウザがマイクの使用許可を求めるので「許可」を選んでください。 **ピンで伝える**: ピンアイコンで フィードバックモードを ON にすると、クリックでピン、ドラッグでテキスト引用コメントになります。`Esc` でモードを抜けます。 初回だけ名前の入力を求められます(次回以降は自動で記憶されます)。 ### 優先度の意味 | 優先度 | 色 | 使いどころ | | ------ | --- | -------------------------- | | Must | 赤 | 必ず直すべき箇所(事実の間違い、重大なわかりにくさ) | | Better | 黄 | 直すとよくなる箇所(表現の改善、構成の入れ替え) | | Want | 緑 | 余裕があれば対応(細かい表現、好みの範囲) | ### コメントを確認・管理する 画面右端のパネルボタンでサイドバーが開きます。 - **未解決 / 解決済 / すべて** のフィルタで絞り込めます - コメントカードと本文の該当箇所は相互にジャンプできます - 返信・解決・編集・削除・優先度変更ができます - サイドバーのボタンから **JSON / Markdown** でエクスポートできます ### 図解の削除 チャット欄で「この図解を削除して」と伝えてください。AI がデプロイ履歴(`deploy-history.log`。公開のたびに自動で記録されます)から URL を特定し、削除を実行します。 ## 普段使っているリポジトリに組み込む このフォルダを単体で使うだけでなく、**普段開発しているリポジトリの中にこのツールを入れて使う**ことができます。ファイルを手で動かす必要はありません。組み込み作業は AI に任せます。 ### 手順 1. このツールのフォルダ(`voice-diagram-comment`)を、パソコンの好きな場所に置きます(クローンまたはダウンロード。すでにあるならそのままでOK) 2. 組み込みたいリポジトリを Cursor で開きます 3. 下のプロンプトをチャット欄に貼り付け、**1行目のパスだけ自分の環境に書き換えて**送信します ``` 「音声図解コメントツール」をこのリポジトリに組み込んでください。 ツールの場所: (ここにフォルダのパスを書く。 Mac の例: /Users/あなたの名前/Downloads/voice-diagram-comment Windows の例: C:\Users\あなたの名前\Downloads\voice-diagram-comment) やってほしいこと: 1. 上記フォルダを、このリポジトリ内の tools/voice-diagram-comment/ にコピーする (node_modules・.next・.vercel・.env.local はコピーしない。.env.example はコピーしてよい) 2. コピーしたフォルダ内の .claude/skills/ にある2つのスキルフォルダを、 このリポジトリ直下の .claude/skills/ に移動する (スキルはリポジトリのルートにないと Cursor に認識されないため) 3. このリポジトリの .gitignore に、トークンファイルと生成物の除外設定を追加する (除外すべきものは、コピーしたフォルダ内の .gitignore に書いてある。 パスは実際の配置に合わせて調整する) 4. コピー元のフォルダ直下に fb-tool-url.txt と fb-api-token.txt があれば、 このリポジトリのルートにコピーする(セットアップ済み環境の引き継ぎ) 5. 終わったら、組み込んだ内容と「次に何をすればいいか」を教えてください (fb-tool-url.txt が無い場合は、次に「セットアップして」と伝えれば 初期セットアップが始まる、と案内してください) ``` 4. AI の作業が終わったら、案内に従って「セットアップして」と伝えます(すでに単体でセットアップ済みの場合は不要です。Vercel の再デプロイも不要です) ### 組み込むとこうなる ``` あなたのリポジトリ/ ├── src/ ... ← 既存のファイルはそのまま ├── .claude/skills/ ← スキルはルートに置かれる │ ├── setting-up-comment-tool/ │ └── creating-visual-explainers/ ├── tools/ │ └── voice-diagram-comment/ ← ツール本体 ├── output/ ← 図解の生成先(自動作成) ├── fb-tool-url.txt ← セットアップで生成 └── fb-api-token.txt ← セットアップで生成 ``` 以降は、そのリポジトリのチャット欄で「図解を作って」と伝えるだけで、コメント機能付きの図解が公開できます。 ## フォルダの中身 ``` voice-diagram-comment/ ├── .claude/skills/ │ ├── creating-visual-explainers/ ← 図解生成スキル │ │ ├── SKILL.md │ │ ├── references/ ← 図解テンプレート・模範回答・Nodeインストールガイド │ │ └── scripts/ │ │ └── deploy-diagram.sh ← デプロイ+widget 自動注入 │ └── setting-up-comment-tool/ ← セットアップスキル │ └── SKILL.md ├── output/ ← 図解の保存先 ├── public/ │ ├── widget.js ← コメント UI 本体(ビルド成果物) │ └── feedback-demo.html ← ローカル動作確認用デモ ├── src/ │ ├── app/api/comments/ ← コメント CRUD API │ ├── app/api/voice-analyze/ ← 音声解析 API(Gemini) │ └── lib/ shared/ widget/ ← DB接続・共通処理・コメント UI のソースコード ├── tests/ ← 自動テスト ├── scripts/ │ └── migrate.ts ← DB テーブル作成(セットアップ時に1回だけ実行) ├── .env.example ← 環境変数のテンプレート(実際の値は書かない) ├── package.json └── README.md ← この説明書 ``` セットアップ完了後に `fb-tool-url.txt`(ツールの URL)と `fb-api-token.txt`(API トークン)がリポジトリのルートに自動生成されます。あなたが手で編集する必要のあるファイルはありません。 ## 困ったとき | 症状 | 原因と対処 | | ----------------------------- | ---------------------------------------------------------------------------------------------- | | 「セットアップして」と言っても反応しない | スキルが認識されていません。このフォルダ自体(または組み込み先リポジトリのルート)を Cursor で開いているか、`.claude/skills/` がルート直下にあるか確認してください | | マイクを押すと「マイクへのアクセスが許可されませんでした」 | ブラウザのマイク権限を確認。`https://` のページでないと許可されません(Surge の URL は https なので通常OK) | | 音声で「ピンを置ける要素が見つかりませんでした」 | 図解 HTML に見出しがありません。このツールのスキルで作った図解なら自動で入ります | | 音声で「GEMINI_API_KEY が未設定です」 | Gemini API キーの設定が漏れています。チャット欄で「セットアップの続きをして」と伝えてください | | コメントが保存されない | データベースの設定が未完了の可能性。チャット欄で「コメントが保存されません」と伝えると AI が原因を調べます | | 公開済みの図解にコメント機能が付かない | コメント機能はデプロイ時に注入されます。「この図解を再デプロイして」と伝えてください | | その他 | 何が起きても、まずはチャット欄で AI に状況を伝えてください。エラーの内容を読み取って、次にやるべきことを案内してくれます | --- Mac / Windows どちらでも使えます。AI-Driven School 運営が動作確認済みです。