CRUMBロゴのパンのキャラクターだけを残した画像:右上の角をひと口かじった、笑顔の食パン
展示室へ戻る

CRUMB

Generative Game Studio · Demo

1行のゲーム企画からプレイ可能な草案まで、エージェントの作業を見ながら介入します。

CRUMBは、カジュアルゲームのプロトタイピングのためのマルチエージェント・スタジオハーネスです。

設計・開発 · AIコーディングエージェントを活用

  • CLIローカルデモ
  • Web Studioローカルデモ

静かに終わった実行を観測可能に、統合で見つけたフォーマッターの欠落

公開デモリポジトリの2つの事例です。Planner、Builder、Verifierはデモ内のactorであり、この章のコーディングエージェントではありません。

凡例の全体

読み方 · すべての事例に同じ規則

  • 列は誰が行ったか、上から下へは時間の順
  • 実線: 記録された引き継ぎ・次の段階
  • 太い瑠璃色 ↩: 作業を差し戻した指摘
  • 破線: 記録された実行ではない(指針、権限のない仮説、未確認の境界)
  • 長方形: 行動
  • 角丸: 観測された状態・指摘
  • 折れた角: 成果物・証拠
  • 斜線の列: 開発対象の製品の構成要素(開発に使ったエージェントではない)

事例 1 / 2 · exit 0で終わった実行が、実際に作業したかどうかを見えるようにしました

May 2, 2026

exit 0で終わった実行が、実際に作業したかどうかを見えるようにしました

  1. 開発対象デモのactor

    観測 · 指摘transcriptイベント0件 · exit 0

    • 引き継ぎイベント0件なのにexit 0→ 「終わったが作業していない」を進行と区別する (開発者)
  2. 人開発者

    行動「終わったが作業していない」を進行と区別する

    • 引き継ぎまず診断→ spawn前後の診断:adapter · プロンプトの有無 · exit · 時間 · 出力サイズ (コードの変更)
  3. 作業セッションコードの変更

    行動spawn前後の診断:adapter · プロンプトの有無 · exit · 時間 · 出力サイズ

    • 引き継ぎ→ commit 6341898 (成果物)
    • 引き継ぎ診断出力→ plannerが入力を待っていた (デモのactor)
  4. 成果物成果物

    成果物commit 6341898

  5. 開発対象デモのactor

    観測 · 指摘plannerが入力を待っていた

  6. 作業セッションコードの変更

    行動実際のgoalと開始指示を渡す · reducerの検査でプロンプトの形を確認

    • 引き継ぎ次の実行→ stdoutにJSONだけ、event writerは呼ばれず (デモのactor)
  7. 開発対象デモのactor

    観測 · 指摘stdoutにJSONだけ、event writerは呼ばれず

  8. 作業セッションコードの変更

    行動イベントを出すactorにイベントプロトコルの文書を注入

    • 引き継ぎ→ commit 08ecb07 (成果物)
  9. 成果物成果物

    成果物commit 08ecb07

背景
実際のサブプロセスでのスモーク実行が、transcriptイベントなしで終わりました。exit 0だけでは作業したかどうか分からないため、まず実行前後の診断記録を残し、最初の修正後に別の失敗が現れたため、もう一度修正しました。
結果
診断記録によって「正常終了したが作業していない」実行が進行と区別され、最初の修正後に残った失敗も、より具体的な観測を経て2回目の修正につながりました。
限界
当時の実行は再実行しておらず、元の実行記録も取得していません。診断の原文(出力のプレビューなど)は載せていません。
根拠と残る限界

May 3, 2026

2つの作業の流れを統合する際に失われたフィードのフォーマッターを復元しました

  1. 作業セッションフィード · レイアウトの流れ

    行動#140: フィードのフォーマッターを追加

    • 引き継ぎ→ 2つの流れを4分割レイアウトに組み立て (統合)
  2. 作業セッションスコアカード · イベント詳細の流れ

    行動スコアカードの作業(古いbase)

    • 引き継ぎ→ 2つの流れを4分割レイアウトに組み立て (統合)
  3. コーディングエージェント統合

    行動2つの流れを4分割レイアウトに組み立て

    • 引き継ぎ統合での回帰→ 古いbaseが#140のフォーマッターを巻き戻した (統合)
  4. コーディングエージェント統合

    観測 · 指摘古いbaseが#140のフォーマッターを巻き戻した

  5. コーディングエージェント統合

    行動#140のフォーマッターを復元

    • 引き継ぎ統合したdiff→ #145 (56f6f1b) · ローカルのlint · typecheck · test · build · 画面確認 (成果物)
  6. 成果物成果物

    成果物#145 (56f6f1b) · ローカルのlint · typecheck · test · build · 画面確認

    • 引き継ぎ後続作業への引き継ぎ→ 引き継ぎ記録:#142は別の流れが所有 · #146はCI実行中 (成果物)
  7. 成果物成果物

    成果物引き継ぎ記録:#142は別の流れが所有 · #146はCI実行中

背景
Studioの作業は、フィードとレイアウト、スコアカードとイベント詳細、テーマといった流れに分かれていました。#145のマージ後、次の流れのための引き継ぎ記録に、他の流れが所有する作業とまだ残っている作業が記されました。
結果
#145はスコアカードとイベント詳細の作業をレイアウトの修正とまとめ、巻き戻されていたフィードのフォーマッターを復元し、ローカルのlint、typecheck、format、test、build、画面確認を記録しました。
限界
ローカルの検査は再実行していません。引き継ぎ記録の時点で#146はまだCI実行中で、その後マージされたため(109da28)、そのスナップショットは通過として描いていません。流れごとのモデルは記録されていません。
根拠と残る限界