context-manager について
context-managerは、Claudeセッションの起動時コンテキストを評価・管理するスキルです。生のコンテキストウィンドウではなく、変更可能な「スマートゾーン」を基準に、分析、整理案、ステータスラインのテンプレート、しきい値設定を行います。
主な機能
- 01スマートゾーン基準の使用量測定
- 02起動時コンテキストの分析
- 03コンテキスト整理案の提示
- 04ステータスラインのテンプレート
- 05しきい値の設定と保存
活用シーン
- 01起動時の項目別使用量の確認
- 02整理対象となるMCPサーバーやスキルの特定
- 03コンテキスト用ステータスラインの設定
- 04品質評価に使うしきい値の調整
MCP 対応
MCPツールを起動時コンテキストの構成要素として扱い、分析や整理案に反映できます。MCPサーバーを提供するとは説明されていません。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ phuongnz/ skills --skill context-managerインストール後、Claude Code で/context-managerを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
CLEANUP.mdSTATUSLINE.mdscripts/read-window.shset-window.shstatusline-dashboard.shstatusline-essentials.shstatusline-extended.shstatusline-smartzone.sh詳細
コンテキストマネージャー
スマートゾーン(まずお読みください)
このスキルでは、モデルの生のコンテキストウィンドウではなく、健全なウィンドウである「スマートゾーン」を基準にコンテキストを評価します。
生のウィンドウは 200k や 1M でも、いっぱいになるずっと前からモデルの品質は低下し始めます(コンテキスト劣化)。デフォルトのスマートゾーンは 150k トークンです。この範囲では、想起、推論、指示への追従が鋭く保たれます。この値を超えると、ウィンドウにどれだけ空きが残っていても品質は低下します。そのため、スマートゾーン内のトークンはすべて貴重です。実際に良い成果を出せる予算であり、このスキルの目的は、起動時のオーバーヘッドに使う量をできる限り減らすことです。
ここに記載されている割合、判定、バーはすべて、生のウィンドウではなくスマートゾーンを基準にしています。
健全なウィンドウの設定(すべてのモードで使用)。 スマートゾーンのサイズは、${CLAUDE_CONFIG_DIR:-$HOME/.claude}/context-manager.json の healthy_window_tokens に保存されます。どのモードでも、開始時に、バンドルされているヘルパー(この SKILL.md と同じ場所にあります)を実行して設定を読み取ります。
bash scripts/read-window.sh # prints the token count, default 150000
デフォルトの 150k の場合はその旨を伝え、モード 4 で変更できることも説明してください。ユーザーがカスタム値を設定している場合は、すべての処理でその値を使い、その旨を伝えてください。
4 つのモード
ユーザーの依頼に合ったモードを選んでください。不明な場合は、次のラベルをそのまま使って、どのモードか尋ねてください。
- 起動時コンテキストを分析 — セッション開始時に読み込まれる内容、主な消費要因、スマートゾーンに対する判定。
- コンテキストを整理 — スマートゾーンの余裕を取り戻すための推奨事項。CLEANUP.md を参照してください。
- ステータスラインのテンプレート — すぐに使える 4 つのテンプレート、またはカスタムテンプレート。STATUSLINE.md を参照してください。
- 健全なウィンドウのサイズを設定 — このスキルが基準とするスマートゾーンのしきい値を変更します。
このスキルは、ユーザーの確認なしに /clear や /compact を実行したり、ユーザー設定を編集したりすることはありません。これらを実行するかどうかはユーザーが決めます。
モード 1 — 起動時コンテキストを分析
目標: 起動時コンテキストの合計、上位 5 つの構成要素、スマートゾーンのうちどれだけを消費するか、整理する価値があるかどうかを報告します。
ステップ 1 — 最新の /context 内訳を取得する
健全なウィンドウ HW(scripts/read-window.sh)を読み取ります。次に /context から内訳を取得します。このスキルは /context 自体を実行できないため、次のようにしてください。
- この会話に
/contextの内訳がすでに表示されている場合は、それを解析します。 - それ以外の場合は、ユーザーに
/contextを実行するよう依頼し、結果が届くまで待ちます。その後「ok」または「continue」と送信するよう伝えてください。 ユーザーの次のメッセージが届いて初めて出力が会話に含まれます。この案内がないと、何もしていないように見えるスキルを待つことになります。
結果を解析して、合計(X / Y tokens)と各カテゴリを取得します。カテゴリは、System prompt、System tools、MCP tools、Memory files、Skills、Messages、Free space です。ファイルサイズから推定しないでください。正確な情報源は /context であり、推測するよりユーザーに 1 回キーを押してもらうほうが確実です。
ステップ 2 — 各構成要素を分類する
- 固定(削減できないもの):System prompt、組み込みの System tools。
- 調整可能(変更できるもの):MCP tools、Skills、Memory files、カスタム CLAUDE.md/AGENTS.md/グローバルルール。
ステップ 3 — スマートゾーンと照らし合わせる
生のウィンドウではなく、HW を基準にすべてを計算します。
- 起動時に消費したスマートゾーン = 起動時トークン合計 ÷
HW。 - 残りのスマートゾーン余裕 =
HW− 起動時トークン合計(実際の作業に使える金の残量)。 - 各コンポーネントの割合を起動時合計に対する割合(ランキング用)として示し、裁量で調整できる合計は
HWに対する割合として示します。
裁量で調整できる負荷(自分で制御できる部分)を評価します。そのトークンはすべて、作業を始める前にスマートゾーンの予算から消費されます(しきい値はスマートゾーン 150k の割合で表示。HW に応じて調整してください)。
| 裁量で調整できる起動時負荷 | 判定 |
|---|---|
| < 10k トークン(スマートゾーンの約 7%) | 軽量 — 対応は不要です。 |
| 10k–25k トークン(約 7–17%) | 中程度 — すべての MCP サーバー/スキルが実際に使われているか確認してください。 |
| > 25k トークン(>17%) | 高負荷 — 削減してください。CLEANUP.md を参照してください。 |
次に、スマートゾーンの占有率の基準に照らして合計コンテキストを確認します(見出しに表示する数値です。起動時だけでなく、セッション全体に適用されます)。
スマートゾーンの占有率(合計 ÷ HW) | 状態 |
|---|---|
| < 50%(< 75k) | 余裕あり — 品質を十分に保て、金の残量もたっぷりあります。 |
| 50–80%(75k–120k) | 注意 — 次の大きなタスクの前に /compact する計画を立ててください。 |
| 80–100%(120k–150k) | 混雑 — 重い作業を続ける前に、コンパクト化するかクリアしてください。 |
| > 100%(> 150k) | スマートゾーン超過 — コンテキスト劣化が起きている可能性が高いため、今すぐ /clear または /compact を実行してください。 |
ユーザーには、起動時負荷は一度だけでキャッシュにも適していますが、セッション中のスマートゾーンの余裕を恒久的に狭めることを伝えてください。セッション中に余裕を増やす大きな手段は会話の肥大化への対処(/compact または /clear)であり、モード 2 で説明します。
ステップ 4 — 報告する
簡潔に、次の内容を出力します。
- スマートゾーン:
HWトークン(デフォルト値かユーザー設定値かも記載)。 - 起動時コンテキスト合計:N トークン — スマートゾーンの P%。金の余裕として約 H トークンが残ります。
- 上位 5 コンポーネントを表にします:コンポーネント | トークン数 | 合計に対する割合 | 固定/裁量。
- 判定:裁量で調整できる負荷の基準による結果+スマートゾーン占有率の状態+具体的で実行可能な推奨事項を 1~3 件(例:「context7 MCP は必要時に読み込まれます。良好です」「未使用のスキル 5 件が、金の 150k のうち約 Xk を消費しています。削除を検討してください」)。
モード 2 — コンテキストを整理する
まず HW を確認します。このモードでは、実際に読み込まれている内容を把握するために /context の内訳が必要です。この会話内にすでに表示されている場合(モード 1 の結果など)はそれを使い、そうでなければユーザーに /context を実行するよう依頼して、実行されるまで待ちます。モード 1 と同じルールに従い、「ok」または「continue」と入力した後のヒントも含め、ほかの場所から探すことは決してしないでください。その後、CLEANUP.md を開きます。すべてをスマートゾーンの余裕を取り戻すものとして説明してください。それぞれの対策で、HW の範囲内に金のトークンがどれだけ戻るかを示します。10 個の対象を確認し、このセッションに該当するものを挙げ(利用できる場合はモード 1 の調査結果を使います)、効果の大きい対策から提案します。破壊的な操作を行う前に確認してください。特に、元に戻せない /clear の前には必ず確認してください。
モード 3 — ステータスラインのテンプレート
STATUSLINE.md を開きます。4 種類のテンプレート(Essentials/Extended/スマートゾーンバー/ダッシュボード)またはカスタムテンプレートを提案します。ステータスラインの色分けが生のウィンドウではなく HW(デフォルトでは 150k)を基準に行われるよう、スマートゾーンバーを優先してください。そうしないと、1M のウィンドウでは 140k でも緑色になり、コンテキスト劣化が見えなくなります。テンプレートは scripts/ 内にすぐ実行できるスクリプトとして用意されています。どれかを適用する前に、変更内容をユーザーに示してください。
モード 4 — 適切なウィンドウサイズを設定する(スマートゾーン)
目標: 他のモードが基準として使用するスマートゾーンのしきい値をユーザーが変更し、その値を保持できるようにします。
- 現在の値を読み取り、報告します(
scripts/read-window.sh)。値がデフォルトの 150k かユーザー設定かを伝え、その意味を一文で説明します:「この値未満では品質が保たれます。この値を超えると、コンテキストの劣化によって出力の品質が低下します。」 - 新しい値を取得します。 ユーザーがすでに数値を指定している場合は、その値を使用します。そうでない場合は、次の選択肢を提示します。
- 150k(デフォルト、推奨) — ほとんどのモデルで品質が維持される標準的なスマートゾーンです。
- 120k(保守的) — 詳細さが重視される長時間の作業で、早めにクリア/圧縮したい場合に適しています。
- 200k — 品質がより長く維持されることを確認済みのモデル/タスク向けです。
- カスタム — 任意のトークン数です。
150k/150000のような省略形を受け付け、トークン数の整数に正規化します。0 以下または異常な値(10000 未満、または生のウィンドウサイズを超える値)は拒否し、再度入力を求めます。
- 確認してから、 ヘルパーを実行して書き込みます(他のキーは保持されます。
jqがない場合は新しいファイルを作成します)。bash scripts/set-window.sh <tokens> - 結果を確認します:新しいスマートゾーンは N トークンで、これがモード 1〜3 の基準になります。新しいしきい値でモード 1 を再実行するかどうかを確認します。