token-conservation について
セッション内のトークン使用を、使用量の確認、読み取り予算、コンテキスト圧縮、記録まで手順化する Claude Code スキルです。プロンプトやツール呼び出しが増えた場合や、長時間の分析に取り組むエージェント向けです。
主な機能
- 01セッションと週次の使用量確認
- 02タスク別の読み取り予算
- 03コンテキスト計画と圧縮
- 04委任と決定的ツールの検討
- 05トークン予算と次の手順の記録
活用シーン
- 01長時間の分析を始める前の準備
- 02実装時のファイル読み取り制限
- 03長いセッション後のコンテキスト圧縮
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ athola/ claude-night-market --skill token-conservationインストール後、Claude Code で/token-conservationを入力して読み込まれたか確認します。
同梱ファイルmodules/source-selection.md
詳細
トークン節約ワークフロー
使用するタイミング
- すべてのセッションの開始時、およびプロンプトのサイズやツール呼び出しが増え始めたときに実行します。
- 長時間実行する分析、広範囲にわたる差分の確認、大量のコンテキストの読み込みを開始する前に必ず実行します。
使用しないタイミング
- コンテキスト最適化ですでに対処できている場合
- コンテキストが最小限で済む簡単な質問の場合
必須の TodoWrite 項目
token-conservation:quota-checktoken-conservation:context-plantoken-conservation:delegation-checktoken-conservation:compression-reviewtoken-conservation:logging
ステップ 1 – クォータの確認(quota-check)
- 現在のセッション時間と週間使用量を(
/statusまたはノートブックから)記録します。 Claude コミュニティのお知らせに記載された、5 時間のローリング上限と週間上限に注意してください。 - 残りの予算を確認し、このタスクの最大トークン数を設定します。
ステップ 2 – コンテキスト計画(context-plan)
-
ファイルを読む前に、調査の読み取り予算を設定します。
Read呼び出しと、コンテンツモードのGrep呼び出しはそれぞれ 1 回の読み取りとして数えます。Glob と、ファイル名のみを対象とする Grep は無料です。- 仕様/要件に基づく実装:最大 8 回
- 既知の場所のバグ修正:最大 5 回
- 範囲が明確なリファクタリング:変更するファイル 1 つにつき最大 1 回
- 範囲未定の調査:最大 15 回
-
読み取り順(価値の高いものから):仕様/要件、変更するファイル、インポート/インターフェース。その後は読み取りをやめて、書き始めます。
-
予算を使い切った場合:コンテキストの追加が必要かユーザーに尋ねます。追加の読み取りを独断で許可してはいけません。ユーザーからの明示的な承認がある場合に限り、予算を超えて読み取れます。
-
ファイル全体を読み込む代わりに、
offset/limitパラメーターを指定したRead、またはGrepツールを優先します。50 行未満を対象とするReadは 0.5 回として数えます。Bash 経由のcat/sed/awkは避けてください。Claude Code 2.1.21+ では、ネイティブのファイルツール(Read、Edit、Write、Grep、Glob)の使用が推奨されます。 -
PDF(Claude Code 2.1.30+):ドキュメント全体を読み込む代わりに、対象を絞って読むには
pages: "1-5"を指定したReadを使用します。大きな PDF(10 ページ超)は @ メンション時に軽量な参照情報を返すため、pagesパラメーターを使って特定のセクションを読み取ってください。上限:最大 100 ページ、PDF 1 つにつき最大 20MB。これらの上限を超えると、以前はセッションが永久にロックされていました(2.1.31 で修正済み)。 -
プロンプトに含める前に、文章形式の指示を箇条書きに変換し、不可欠な情報だけがモデルに渡るようにします。
-
ウェブ検索や取得を行う前に、その主張に出典が本当に必要か判断します。
modules/source-selection.mdでは、引用する価値のある主張(バージョン、パフォーマンス、セキュリティ、API、価格)と、そうでない主張を分類し、それぞれの方法にかかるトークンコストも説明しています。
ステップ 3 – 委任の確認(delegation-check)
- 計算負荷の高いタスクを Qwen MCP やその他の外部ツールに任せられるか評価します(必要に応じて
qwen-delegationスキルを使用します)。 - ローカルで作業する場合、可能であれば LLM の推論よりも、決定論的なスクリプト(フォーマッター、アナライザー)を優先します。
ステップ 4 – 圧縮の見直し(compression-review)
- 新しいコンテキストを追加する前に、これまでの手順や結果を要約します。 重複する履歴を削除し、ログをまとめ、同じコードを繰り返し投稿しないようにします。
prompt cachingの考え方を活用します。モデルがすでに情報を処理している場合は、内容を言い直す代わりに、以前の出力を参照します(スニペット ID を明記してください)。- 現在のスレッドを圧縮する必要があるか判断します。
- 古くなっているのが最近のコンテキストだけの場合は、メッセージセレクターから 「Summarize from here」(Claude Code 2.1.32+)を使って会話の一部を要約します。これにより、最近のコンテキストを保持したまま、古い部分を圧縮できます。
- 現在のワークフローが完了していて、以前のコンテキストを再利用しない場合は、ユーザーに
/newの実行を案内します。 - 既存のスレッドで作業を続ける必要があるものの、コンテキストウィンドウが膨らんでいる場合は、続行前に
/compactを実行するようユーザーに案内します。
- 自動メモリ(Claude Code 2.1.32+):Claude はセッションのメモリを自動的に記録し、呼び出すようになりました。トークンのオーバーヘッドはわずかに増えますが、セッションをまたいだ継続性が向上します。特別な操作は不要です。基準となるコンテキスト使用量に影響することを把握しておいてください。
ステップ 5 – ロギング(logging)
実施したトークン節約策を記録し、残りのトークン予算を明記します。予算が少ない場合は、ユーザーに明示的に警告し、代替案を提案します。/new または /compact の使用に関する推奨事項を記録するか、どちらも必要なかった理由を説明し、今後のコンテキスト管理の判断に役立てます。
出力要件
- トークン節約の手順、委任したタスク、残りの余裕についての簡潔な説明。
- 会話を簡潔に保つための具体的な次のアクション一覧(例):
- 「次のターン:失敗したテストの出力の40~60行目のみを提示」
- トークン節約になると判断した場合は、
/newまたは/compactを明示的に推奨します(それ以外の場合は、現時点ではリセットや圧縮は不要と記載します)。
完了条件
- 5つの TodoWrite 項目がすべて作成され、順番どおりにチェック済みであること:
quota-check、context-plan、delegation-check、compression-review、logging - 最初の
Read呼び出しの前に調査用読み込み予算が設定され、タスクの種類(spec/bug/refactor/exploration)と最大読み込み数が記録されていること - 出力の要約に残りのトークン余力(または「予算が少ない」という警告)が記載され、
/newまたは/compactの明示的な推奨、あるいはどちらも不要である理由が含まれていること - 同じセッション内でユーザーから明示的な許可を得ることなく、読み込み予算の上限に達した後にファイルを追加で読み込んでいないこと
- 出力に含まれるすべてのバージョン、パフォーマンス、セキュリティ、API、価格に関する主張に、
modules/source-selection.mdに従って出典または不確実性を示す印が付いていること