すべての記事
三つの経路がそれぞれ番号を振っていた — versionCode を単一の真実から決めて配信を止めない設計
AI Studio がワンプロンプトでアプリを生成し Play の内部テストへそのまま上げられるようになった結果、人手・CI・エージェントの三経路が別々に versionCode を採番して衝突するようになりました。番号を単一の真実から決め、アップロード前に照合するガードまでを実装つきで整理します。
生成から実機、内部テスト配信まで一手でつながった日に、私が手放さなかったもの — AI Studio の一気通貫を個人開発の配信フローに据える
AI Studio がテキストから Kotlin/Compose アプリを生成し、エミュレータ・実機・Play 内部テストまで一画面でつなぐようになりました。便利さの裏で「配信の瞬間」をどこまで機械に預け、どこを自分の手で握るか。個人開発で複数アプリを抱える立場からの線引きと、その境界を支える実装をまとめました。
Antigravity の複数エージェントが同じファイルを奪い合う前に — 所有権マニフェストと衝突検知の運用メモ
複数エージェントが壊れるのは設計図ではなく実行時です。編集領域を1ファイルに固定する所有権マニフェスト、git diff だけで衝突を見つける検知スクリプト、引き継ぎ契約の3区分を、実機の運用メモとしてまとめました。
夜通し回したローカルエージェントが、明け方には一手ごとに数秒待たされる — Ollama の応答時間を文脈長から逆算して一定に保つ
夜通し回した Ollama のローカルエージェントが明け方に遅くなる原因を、prompt-eval と generation に分解して実測しました。文脈長と応答時間の関係、num_ctx の設定、直近N手とローリング要約で作業文脈を有界に保つ設計を紹介します。
Antigravity 2.0・CLI・IDE・SDK — 4つのサーフェスを実プロジェクトで束ねる
Antigravity 2.0(デスクトップ)・CLI・IDE・SDK の4つの入り口を、選び方の基準だけでなく、1つのプロジェクトの中で実際にどう束ねて回すかまで掘り下げます。ヘッドレス実行を自動化に組み込むコード例と、コストと移行の落とし穴も添えました。
IDE を開かずに、配信前の検証を機械へ預ける — Android CLI を無人パイプラインの検証ゲートに据える設計
Android CLI v1.0 を、IDE を前提にしない無人パイプラインの検証ゲートとして組み込む設計です。三層の検査・終了コードの契約・密度と言語のマトリクスまで、個人開発の身の丈で運用するための考え方をまとめました。
外部ページに紛れ込んだ指示で無人エージェントが動いてしまう前に — 入力の汚染を追跡して権限を落とす設計
無人エージェントが外部ページに紛れ込んだ指示に従ってしまう前に、入力の汚染を実行単位で追跡し、汚染時にケイパビリティを落とすゲートを設計します。外部コンテンツをデータとして囲うコンテンツフェンスや、運用での測定としきい値の決め方まで扱います。
毎日変わるはずの壁紙ウィジェットが止まった — WidgetKit のリロード予算を実測して設計を組み直した記録
毎日壁紙が切り替わるはずのウィジェットが数日で更新を止めました。WidgetKit のタイムラインとリロード予算、拡張のメモリ上限を実測し、1日分のエントリをまとめて積む設計へ組み直した過程をまとめます。
レビュー導線を出したのに何も表示されない — Play In-App Review の数量制限と「表示保証なし」前提の設計
Play In-App Review API は launchReviewFlow が成功しても、ダイアログが表示されたとは限りません。数量制限・表示保証なし・テストでの無音化という3つの罠を解きほぐし、満足の瞬間に出して衝突を避ける発火設計を、Antigravity に実装させる手順とあわせて記録します。
StoreKit 2 で「課金したのに使えない」と言われたとき — サブスク権利状態のズレを直す運用メモ
StoreKit 2 のサブスクリプションは実装より運用でつまずきます。currentEntitlements と subscription.status のズレ、Transaction.updates の取りこぼし、未 finish トランザクション、復元と返金の扱いを、本番で効いた整流ロジックとともに記録します。
シェア画像の日本語だけが □ になる — Antigravity に next/og の CJK フォント供給を直させた実装メモ
next/og の ImageResponse で日本語タイトルだけが豆腐(□)になる。原因の Satori と woff2 の関係を解きほぐし、Google Fonts の text= サブセットをエッジで軽量に引き当てる実装を、Antigravity に直させる手順とあわせて記録します。
既定モデルの入れ替わりに自動実行を巻き込まれないために — 出力スナップショットと差分ゲートの設計
Antigravity 2.0 で既定の高速モデルが Gemini 3.5 Flash へ更新されました。便利な変更ですが、既定に任せたスケジュール実行は、ある朝から出力の質感が変わります。モデルを明示固定し、出力を指紋化して差分ゲートで止める運用を、個人開発の規模に合わせてまとめました。