◉CLAUDE LABEN
●2.1.301 — vim の % モーション、VS Code パネルでの LaTeX 数式表示、使用量上限待ちのリトライ監視の上限が入りました(10/15)●2.1.299 — 200K トークン超で約54分放置した会話はアイドル圧縮。MCP の許可ルールは名指ししたサーバーだけに一致します●SONNET 4.5 — Claude API での提供終了は 11/30、残り44日。移行先は Sonnet 5.5●WINDOWS — 日本語の環境でだけフックが黙って壊れる報告があり、文字コードの確認が呼びかけられています●FAST MODE — Opus 5.5 の Fast mode がリサーチプレビューを終え、ベータヘッダーが不要になりました(10/15)●NEW — Cowork に渡したフォルダの先頭に、十行の約束ファイルを置いてみました●2.1.301 — vim の % モーション、VS Code パネルでの LaTeX 数式表示、使用量上限待ちのリトライ監視の上限が入りました(10/15)●2.1.299 — 200K トークン超で約54分放置した会話はアイドル圧縮。MCP の許可ルールは名指ししたサーバーだけに一致します●SONNET 4.5 — Claude API での提供終了は 11/30、残り44日。移行先は Sonnet 5.5●WINDOWS — 日本語の環境でだけフックが黙って壊れる報告があり、文字コードの確認が呼びかけられています●FAST MODE — Opus 5.5 の Fast mode がリサーチプレビューを終え、ベータヘッダーが不要になりました(10/15)●NEW — Cowork に渡したフォルダの先頭に、十行の約束ファイルを置いてみました
記事一覧/API & SDK
⬡ API & SDK/2026-05-03上級

Claude API × ローカルファースト同期エンジンで作るオフライン対応AIノートアプリ — Replicache/IndexedDB を使った本番設計

Claude API とローカルファースト同期エンジンを組み合わせ、オフラインでも動く AI ノートアプリを本番運用する設計を、Replicache・IndexedDB・Mutation Queue の実装パターンとともに具体的なコードで解説します。

claude-api83local-firstreplicacheofflineindexeddbproduction87

✦ プレミアム記事

ノートアプリを電車の中で使っていて、トンネルに入った瞬間に AI 補完が無言で止まってしまいます。再開しても下書きが消えています。あの体験を一度でも踏むと、ユーザーは二度と AI 機能を信頼してくれません。

ローカルファースト設計はこの課題への直接の答えです。書き込みはまずローカルへ、同期と AI 呼び出しは別レイヤーへ追いやります。一見シンプルですが、Claude API のような「重い・課金される・遅延がある」処理を絡めると途端に難易度が上がります。Mutation Queue の設計を一度間違えると、同じプロンプトを何度も叩いて API コストが想定の数倍に膨らみます。

この記事は、Replicache と IndexedDB を中核に据えたオフライン対応 AI ノートアプリの本番設計を、実装の落とし穴と一緒にお伝えします。完成イメージは「機内モードでも入力と AI 提案表示が止まらず、回線復帰で自動同期される」アプリです。

なぜ「AI × ローカルファースト」は普通に書くと壊れるのか

最初に押さえておきたいのは、AI 機能とローカルファースト同期が本質的に違うリズムで動くという点です。

ローカルファースト同期は、楽観的書き込みを前提とします。ユーザーが何を入力してもまずローカルに保存し、後から差分をサーバーに送ります。Replicache や Triplit、Yjs といった代表的なライブラリはこの「Optimistic Mutation」を中心に設計されています。

一方で Claude API は、リクエストごとに数百ミリ秒〜数秒の遅延と、入力トークン × 出力トークンの課金があります。何より、同じプロンプトを 2 回送ると 2 回課金されます。これを Replicache の Mutation Queue にそのまま放り込むと、再送ロジックが「失敗した API 呼び出し」を律儀にリトライして、課金だけが増えるパターンに容易に陥ります。

つまり「同期するもの」と「AI を呼ぶタイミング」を分けて設計しないと、信頼性とコストの両方を失います。本記事の中心テーマは、この分離をどう実装するかです。

アーキテクチャ全体像

私が採用している構成は次のようなレイヤーになります。

  • UI 層 (React): ユーザー入力を即座にローカル DB へ反映。AI 補完はストリーミング表示
  • ローカル DB 層 (IndexedDB + Dexie): ノート本文・AI 出力・メタデータを保存
  • 同期エンジン (Replicache): クライアント間でノートを同期。AI 出力は同期しない
  • AI ジョブキュー (BullMQ on Cloudflare Queues): Claude API 呼び出しをサーバー側で処理
  • API Gateway (Hono on Cloudflare Workers): Replicache の push/pull と AI ジョブ投入を担当

ポイントは「Replicache が同期するのはユーザーの編集だけ」「Claude API への呼び出しは独立したジョブキューで」という分離です。AI 出力はサーバー側で完成してからローカル DB へ「結果通知」として届けます。

この設計により、機内モードでもノート編集は完全に動作し、復帰したタイミングで未送信の編集が同期され、その後 AI ジョブが処理されます。

✦

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

この記事の続きを読む

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

この記事で得られること
✦オフラインで AI 補完が止まる問題に困っていた個人開発者が、Replicache と Claude API を分離した設計で安心してリリースできるようになる
✦IndexedDB に AI 出力をキャッシュし、ネットワーク復帰時に Mutation Queue で自動再送する完全なコードを手に入れられる
✦本番運用で発生するバージョン競合・部分失敗・トークンコスト増を、Sync Engine の権限分離で抑え込めるようになる
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

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

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

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

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

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

関連記事

⬡ API & SDK2026-05-26
Claude API の構造化レスポンスを本番で安定させる — tool_use と JSON Schema、多層検証の実装メモ
Claude API の応答を JSON で受け取る実装は数行で書けますが、本番運用では「形は正しいが意味が壊れている」レスポンスにどう備えるかが分かれ目になります。tool_use・JSON Schema・ドメイン検証を組み合わせた多層パイプラインを、壁紙アプリの分類処理での実体験を交えて整理しました。
⬡ API & SDK2026-05-22
Claude API の tool_result could not be submitted が再発しないための回復ハンドラ設計
Claude API でエージェントを長時間動かしていると、ある日突然 'tool_result could not be submitted' が連発し始めることがあります。再試行しても直らない、ストリーミング途中で死ぬ、そして次のセッションでもまた出る — 常時稼働のエージェント基盤で実際に踏み抜いた4種類の原因と、TypeScript で書いた回復ハンドラの実装を整理しました。
⬡ API & SDK2026-05-19
Claude API のチャット履歴を階層サマライズする:3 段階圧縮でトークンを 70 % 削減した設計
壁紙アプリのインアプリ AI チャットで増え続ける履歴トークンを抑えるため、直近ターン・中期エピソード・長期エンティティの 3 層に分けて圧縮する設計を、TypeScript の動くコードと 7 週間の運用データつきで記録しました。月額 API 費用を $480 から $145 まで下げています。