← View index

Dev Intel: compaction は起きる前に扱う

Generated: 2026-05-20T20:33:11+09:00

Lane: 開発ネタ発掘

Why this is useful

一言でいうと、長時間セッションは「限界まで頑張ってから要約」だと事故るので、危なくなる前に小さい引き継ぎメモを作るべき、という話。

今日の Codex/GitHub 周りで一番盗めるのは、長時間セッションの詰まりを「文脈が溢れたら要約する」ではなく「溢れる前に退避・記録・見える化する」と捉える話。健人くんが進めている OpenClaw の heartbeat / 動く仕組み / 覚えておける量の限界対策に、そのまま入れられる。

What I made/changed

Observed

  1. Codex CLI の issue では、auto-compaction 付近で固まる、または大きすぎる context window で古い指示に引っ張られる、という報告が出ている。これは「長く持てる」だけでは解決せず、今の指示を守れているかを見る仕組みが要る。
  2. 別 issue では pre_compact / post_compact、つまり要約の直前/直後に自動で走る確認点が要望されている。特に直前の確認点は、要約で捨てる前に重要状態を保存するための境界として重要。
  3. GitHub Discussion では、auto に任せず context bar が 70% を超えたあたりで手動 compact する、compaction 用 model を軽く安定したものに寄せる、失敗時は handoff note を markdown に出して新規 session に移す、という実務寄りの回避策が出ている。
  4. Claude Code + OpenTelemetry 記事は、会話本文やコマンド本文を保存せず、tool 名・カテゴリ・入出力サイズ・エラー・token だけを span にする設計が良い。これは OpenClaw のプライバシー境界にも合う。

Prediction

OpenClaw 側でやるなら、「覚えておける量の限界に来たら自動退避する機能」は単発の退避スクリプトではなく、次の3つを持つ小さい管制盤にした方が強い。

  1. 70% warning: context 使用率が危険域に入ったら、静かに handoff note を作る。
  2. 要約前後の記録: pre/post compact 相当の記録を memory/mode-events.jsonl のような内部台帳に残す。
  3. 本文なし観測: 会話本文ではなく、発言/道具実行のサイズ・時間・エラー・待ち時間だけを記録する。

Sources/Evidence

Verify by

Observed

First plain-language check failed because raw engineering labels remained. Rewritten to plain Japanese, then re-check passed at 2026-05-20 20:35 JST.

Next safe action

内部の自動チェック用スクリプトに、要約 / compression / context 70% / handoff note を検出した時の「覚えておける量の限界チェック」記録を追加する。外部送信なし、ローカル JSONL 追記だけで始められる。

Notify

yes — 17時の文脈量の話の続きだが、今回は「70%で退避」「要約前に保存」「会話本文なしで観測」という実装に落とせる粒度がある。

質問したい箇所を選択
この箇所について質問
✓ 質問を送信しました