2026年9月24日の開発日記 - Excel講座とCF精算表の動画化を並列セッションで進め、TTSの読みを台本側で決めた
2026年9月24日の開発日記
朝のセッションで、本人の声で合成した音声が「5万3千」の「3千」を「さんせん」と読んだ。 合成の側を直すか、台本の側を直すか。 この日は、その問いに台本側で答えるところから始まった。
そのあとは、講座の動画づくりに一日の大半を使った。 タイムラインで見ると、講座アプリのリポジトリで12セッション、このブログのリポジトリで10セッションが動いている。 講座アプリ側の合計は32時間55分で、壁時計の時間を大きく超えた。 同じ時間帯に、いくつものセッションを並べて走らせていたからである。
今日のタイムライン

今日やったこと
1. Excel講座の動画化と関数の章の組み直し
本人の声で合成する音声の読みを聞き比べ、FALSE は「フォルス」、関数名はすべてカタカナで合成に渡すと決めた。 貸借対照表は音声をバランスシートで統一し、講座の冒頭に読み替え表を置く方針にした。 「3千」の読みについては線引きを Claude Code に任せ、台本の正本を14か所書き換えさせて、89区間とイントロの音声を作り直してもらった。 途中、65/89区間目でメモリ不足により止まった。
Excel を模した再現画面の試作は、講座本文より分かりやすかった。 そこで関数の活用の66区間をサブエージェント5体で読み直させ、63区間(うち31区間を再現動画)への組み直しを、段①〜⑥まで段ごとに承認しながら進めた。
主な成果:
- 読み替えのルール(FALSE、関数名、バランスシート)を決めた
- 89区間とイントロの音声を作り直した
- 関数の活用を66区間から63区間へ組み直す計画を、段①〜⑥まで進めた
詳細: Excel講座の動画化:TTSの読み替えルールを決め、Excel操作の再現シーンで関数の章を組み直す
2. CF精算表講座の動画を並列セッションで Step 2〜5 まで進めた
CF精算表講座の Excel 操作シーンを、Step ごとに動画にした。 Step 1 を仕上げ、Step 2(CF_304、消費税込み)と Step 3(貸付金、CF_302)を順に進めた。 Step 3 の途中で並列化を相談し、Claude Code に排他ロック、worktree 3つ、Step 4〜6 の引き継ぎプロンプトを用意させた。 ただ、共有ファイルの scenes.ts では、セッション同士が何度かぶつかった。
利息の数字は、Step 3 を閉じたあとも気にかかっていた。 あとで 3万6240円の出どころを Ctrl+[ でたどる流れを、動画に入れさせた。 Step 4 のセッションでステップをまたいで探させると、Step 3 と Step 4 の数字は裏返しで一致した。 同じ種類のずれは、CF_300 にだけ残っていた。
主な成果:
- Step 2〜5 の動画づくりを、別々のセッションで並べて進めた
- 再生速度に 1.5倍、1.75倍、2倍を足した
- 利息の気がかりを、ステップをまたいで突き合わせた
詳細: Claude Codeの並列セッションでExcel操作動画を作る:CF精算表講座をStep 2〜5まで進めた一日
3. 講座ナレーションのための TTS とボイスクローンの調査
Excel の基礎講座の音声は、Irodori-TTS に自分の声の録音を渡して作っている。 有料ツールに乗り換えれば良い声になるのかを、3つのセッションで Claude Code に質問した。 7時台の答えは、Gemini-TTS で選べるのは用意された28種類の声だけ、というものだった。 Google で自分の声を使えるのは Chirp 3 の「Instant Custom Voice」だけで、しかも営業窓口への申請が通った人に限られるという。 ところが10時台のやりとりで、クローンに対応した Gemini 3.8 Flash TTS が見つかった。 自分の声を日本で使う分には、分かっている制約はどれも支障にならなさそうだが、商用の条件はまだ確認できていない。
Fish Audio は、講座全編(約8時間分)を1回合成して API 約 $8 という見込みだった。 ところが商用利用にはサブスク契約も要るので、実費は Plus(月 $11〜15)と API 約 $8 の合計になりそうだと見立てが変わった。 「Drama3」は、Fish Audio が9月24日に出した Drama 3(プレビュー版)だった。 1区間で Irodori-TTS と聞き比べる作業を、9月25日の Google タスクに登録した。
主な成果:
- Irodori-TTS の「テキストでボイスデザイン」が、録音を使わない別の指定方法だと分かった
- Fish Audio の費用の見込みを、API 単価だけからサブスク込みへ直した
- Drama 3 の聞き比べをタスクに積んだ
詳細: 講座ナレーションを自分の声で作るTTS調査:Irodori-TTSのボイスデザイン、Gemini TTSの制約、Fish Audioの料金とDrama 3
4. 公開記事2本と、デプロイのやり直し
Meta の Muse の公開記事を書き終えて、コミットとデプロイを頼んだ。
すると、コミット済みの内容だけを出すための別フォルダ(worktree)が用意され、.env のコピーを頼まれた。
いつもはどうしていたのか、別セッションの変更は本番に出てよいのではないか、と問い直した。
中身を確かめさせると、本番に出て困る変更はなかった。
そこで、いつもどおりの手順でデプロイさせた。
1回目は、7,005ページのプリレンダー(446秒)の直後に pnpm generate が失敗した。
原因は、前日の Mac 版 Muse の記事に非公開の印(unpublished: true)が付いていなかったことである。
印を付けさせた2回目は、15.1分で完走した。
昼前には、AI 投資とインフレの関係を尋ねた答えをもとに、公開記事をもう1本作らせた。
主な成果:
- 公開記事2本(Meta の Muse、AI 設備投資とインフレ)
- 印の付け忘れ1本を直して、デプロイを完走させた
詳細: git worktree でデプロイしたら .env のコピーを頼まれた日:未コミット変更の判断と pnpm generate 失敗からの出し直し
今日の試行錯誤
| # | テーマ | 試したこと | 結果 | 気づき |
|---|---|---|---|---|
| 1 | Excel講座(06:44) | 「印が付かない」の原因を調べさせた | 別のページを見ていただけで、印は付いていた | 調査の前に、見ているページを確かめる |
| 2 | Excel講座(06:44) | 関数名の読みを計72本で聞き比べ、FALSE、貸借対照表、大きい桁の数字を試した | 「5万3千」は「さんせん」になり、「5万3,000」は通った | 読めない表記は、台本を読める形に寄せる |
| 3 | Excel講座(06:44) | 89区間とイントロの音声を作り直した | 65/89区間目でメモリ不足で停止。別セッションの終了後、08:59に再開して09:58に完了 | 別セッションの合成が8.5GBを使っていた |
| 4 | Excel講座(08:06) | 関数の活用の66区間をサブエージェント5体で見直させた | MATCH が近似一致のまま偶然合っていたことなどが見つかった | 見た目が正しくても、実物の Excel で突き合わせる |
| 5 | Excel講座(13:11) | 13区間の音声を作り直した | 4区間目でメモリ不足で停止。1区間ずつ前面で流す方式に変えて完走し、技術検査は66/66 | まとめて流さず、1区間ずつ回す |
| 6 | CF精算表(09:14) | 再生速度 1.5倍を計測した | 4秒で4.7秒(約1.17倍)。測り直して4段の切り替えが入った | 速度は実測で確かめる |
| 7 | CF精算表(12:14) | 別のセッション(5c)のコミットに、自分の scenes.ts が混入した | HEAD が一時読み込みエラー。自分側をコミットして復旧した | 共有ファイルは持ち主を決めておく |
| 8 | CF精算表(14:55) | git rebase main を実行した | 許可されず停止。許可後に2か所の衝突を両側残しで解消した | 衝突は両側を残して畳む |
| 9 | CF精算表(15:17) | 合流前の main に、他人の未コミットの scenes.ts があった | 3セッションへ同じ文面で連絡し、持ち主の 5c がコミットしたあとに合流した | 持ち主が分からない変更は、候補全員に聞く |
| 10 | TTS 調査(10:44) | 「Drama3」を名前で調べさせた | 最初は別モデルが候補に挙がり、その後 Fish Audio の Drama 3(プレビュー版)だと分かった | 料金は $8(API のみ)から Plus+API へ見直した |
| 11 | デプロイ(09:43) | 未コミット変更を避けるため、worktree からデプロイしようとした | .env のコピーが必要になった。問い直して、いつもの手順に戻した | 先に変更の中身を確かめれば、別フォルダは要らなかった |
| 12 | デプロイ(09:43) | 1回目のデプロイ | プリレンダー直後に pnpm generate が失敗。非公開フォルダ70本のうち1本だけ unpublished: true が無かった | 検査はフォルダではなく frontmatter の印を見る |
| 13 | デプロイ(09:43) | 印を付けて2回目のデプロイ | 15.1分で完走した |
今日の学び
- 合成でうまくいかない表記は、合成の側を直そうとするより、うまくいく読み方に台本を合わせ、冒頭の読み替え表で断るほうが話が早い。
- 画面に映っていた MATCH の結果は、近似一致のまま偶然合っていただけだった。見た目が正しくても、実物の Excel で全セルを突き合わせる工程を段ごとに入れておく。
- 並列のセッションは、共有ファイル1つ(scenes.ts)に書き込みが集まるところでぶつかった。持ち主の分からない変更は、候補のセッション全部に同じ文面で頼み、返事で持ち主を特定した。
- ビルド後の検査は、置き場所のフォルダではなく frontmatter の印で公開かどうかを見る。非公開フォルダに置いても、
unpublished: trueを付け忘れた1本がデプロイを止めた。
明日やること
- Fish Audio の Drama 3(プレビュー版)を、Excel講座の1区間で Irodori-TTS と聞き比べる