各章は「図でつかむ → 3つのポイント → ソースで確かめる → 30秒で復習」の順。初めてなら Day 01 から、知りたいテーマがあれば途中の章から読めます。
動かす。地図をつくる。
手元で起動し、入口・メッセージ・状態の単位を知る。
ソースから動かすと、コードに意味が生まれる
まず動作を観察し、その動きを生むコードを探す。
図と要点を読む ↗DAY 02Coding Agent を、6つの役割に分けてみる
入口・画面・共通メッセージ・Core・Model・Tools の役割を分ける。
図と要点を読む ↗DAY 03一つの入力を、モデルとツールの往復まで追う
文字列が型付きの入力になり、Turn の処理へ渡る境界を追う。
図と要点を読む ↗DAY 04Op と EventMsg — お願いと報告を分ける
UI からの操作要求と、Core からの出来事の通知は別の方向に流れる。
図と要点を読む ↗DAY 05Session・Task・Turn — 状態の寿命を見分ける
長く持つ状態と、一回の処理で使う状態を分けて読む。
図と要点を読む ↗判断と記憶をつなぐ。
Agent Loop、モデルとの通信、履歴と Compaction。
Agent Loop — 結果を受け取り、もう一度判断する
ツールの結果や保留入力を確認し、続きが必要なら次のモデル呼び出しへ進む。
図と要点を読む ↗DAY 07Model Client — 応答を少しずつ受け取る仕組み
Prompt を通信の要求に変え、届いたストリームを内部のイベントとして読む。
図と要点を読む ↗DAY 08Context と History — 保存した情報と渡す情報
保持している履歴を、モデルが受け取れる形に整えて送る。
図と要点を読む ↗DAY 09Compaction — 長い会話を、続けられる形にする
コンテキストの制約に合わせて履歴を組み替え、次の処理に必要な情報を引き継ぐ。
図と要点を読む ↗道具と画面をつなぐ。
ツールの実行、承認、Sandbox、MCP、App Server。
Tools — 名前付きの要求を、実装へ届ける
ツールの説明・登録・振り分け・実行を分けると、呼び出しの道筋が見える。
図と要点を読む ↗DAY 11exec — コマンドが OS のプロセスになるまで
コマンドの文字列を、起動条件・実行中の状態・終了結果に分けて追う。
図と要点を読む ↗DAY 12apply_patch — 変更の意図を、ファイルへの差分にする
パッチを解析し、適用できるかを確認してから実際の変更へ進む。
図と要点を読む ↗DAY 13Approval — 方針と、一回の判断を分ける
承認方針、今回の要求に必要な確認、実際の決定を別々に読む。
図と要点を読む ↗DAY 14Sandbox — 許可を、実際の制約に変える
権限の設定を、実行環境が強制できる制約へ変換する。
図と要点を読む ↗DAY 15MCP — 外部の道具を、同じ作業の輪につなぐ
外部ツールを発見し、呼び出せる形に対応付け、結果を Agent Loop へ返す。
図と要点を読む ↗DAY 16TUI と App Server — 画面と処理の間にある橋
画面の操作は要求として渡り、返答や通知を受けて表示が変わる。
図と要点を読む ↗試す。調べる。確かめる。
小さな改造から Issue 分析、履歴調査、回帰テストへ。
テスト — 変更した一行を、振る舞いで確かめる
変更に近いテストから始め、失敗の意味を確認して検証範囲を広げる。
図と要点を読む ↗DAY 18小さな改造 — alias は既存の処理へつなぐ
新しい名前を既存のコマンドへ解決し、処理を重複させない。
図と要点を読む ↗DAY 19コントリビューション — 差分を、伝わる問題分析へ
再現条件と根拠がそろうと、小さな発見も他の人が検証できる。
図と要点を読む ↗DAY 20Issue から読む — 成功時と失敗時の差を探す
同じ処理の成功経路と失敗経路を比べると、回復処理の抜けが見える。
図と要点を読む ↗DAY 21git の履歴 — 一行の変更から、設計の理由をたどる
blame で手掛かりを得て、差分と周辺の変更から理由を読む。
図と要点を読む ↗DAY 22git bisect — 変化した地点を、半分ずつ絞る
同じ判定で good と bad を区別し、最初に変わった commit を探す。
図と要点を読む ↗DAY 23回帰テスト — 関数名より、利用者に届く結果を守る
バグの症状が再発したら失敗するテストを、適切な境界に置く。
図と要点を読む ↗状態と境界を読み解く。
修正の前提、到達可能性、失敗の回復、API の契約を全体地図へ。
修正の移植 — 同じ一行でも、前提が変わる
古い修正を移す前に、状態の所有者と失敗時の保証を読み直す。
図と要点を読む ↗DAY 25再トリアージ — 古い報告を、今の実装で問い直す
昔の再現手順・原因仮説・現在守るべき条件を切り離して評価する。
図と要点を読む ↗DAY 26State Reachability — その状態は、本当に起きる?
テストで作れる状態と、実際のイベントから到達できる状態を区別する。
図と要点を読む ↗DAY 27Failure Injection — 失敗を、狙った場所で起こす
失敗の位置を固定すると、回復処理を繰り返し検証できる。
図と要点を読む ↗DAY 28Contract Test — 境界の約束を、両側から確かめる
要求・永続状態の変更・返答・通知が、同じ意味でつながることを検証する。
図と要点を読む ↗DAY 29Protocol の変更 — 型・JSON・意味の3層で見る
コンパイル、通信形式、実行時の意味を別々に比べて互換性を判断する。
図と要点を読む ↗DAY 30全体地図 — 入力・判断・実行・状態をつなぐ
一つの操作を、画面からモデル・ツール・履歴まで説明できれば地図がつながる。
図と要点を読む ↗