原文(日本語に翻訳)
/effort ピッカーが CLAUDE_CODE_EFFORT_LEVEL 環境変数のオーバーライドを反映していなかった問題を修正しました。
原文(英語)
Fixed /effort picker not reflecting the CLAUDE_CODE_EFFORT_LEVEL env var override
概要
CLAUDE_CODE_EFFORT_LEVEL 環境変数でデフォルトのエフォートレベルを設定している場合、/effort コマンドで開くピッカーUIにその設定値が反映されず、常にデフォルト値(通常はnormal)が選択されている状態で表示されていました。この修正により、/effort ピッカーが環境変数で設定されたエフォートレベルを正しく現在の値として表示するようになります。
基本的な使い方
CLAUDE_CODE_EFFORT_LEVEL 環境変数でエフォートレベルを設定した後、/effort コマンドでピッカーを開くと、設定した値が現在の選択として正しく表示されます。
bash
# エフォートレベルを環境変数で設定してClaude Codeを起動
CLAUDE_CODE_EFFORT_LEVEL=high claude
# Claude Code内で/effortコマンドを実行
# 修正前: ピッカーがhighを反映せず、別のデフォルト値が選択されていた
# 修正後: ピッカーが環境変数で設定したhighを正しく表示するエフォートレベルは以下の値が指定できます。
bash
# 利用可能なエフォートレベル
CLAUDE_CODE_EFFORT_LEVEL=low claude # 最小限の思考・処理
CLAUDE_CODE_EFFORT_LEVEL=normal claude # 通常(デフォルト)
CLAUDE_CODE_EFFORT_LEVEL=high claude # 高い思考・処理(extended thinking)実践例
高エフォートモードでの作業
複雑な問題解決や深い分析が必要な場合に高エフォートレベルを使用します。
bash
# 環境変数で高エフォートモードを設定
export CLAUDE_CODE_EFFORT_LEVEL=high
# Claude Codeを起動
claude
# 起動後に/effortでピッカーを開くと
# 修正後: "high" が現在の選択として正しく表示される
# そのまま確認するか、必要に応じて変更できるシェル設定での固定エフォートレベル
特定の作業環境では常に同じエフォートレベルを使いたい場合の設定方法。
bash
# ~/.bashrc または ~/.zshrc に追加
# 開発作業用プロファイル:高エフォートモードをデフォルトに
export CLAUDE_CODE_EFFORT_LEVEL=high
# または低エフォートモード(素早い回答が必要な場合)
# export CLAUDE_CODE_EFFORT_LEVEL=lowbash
# 設定後にシェルを再読み込み
source ~/.bashrc
# Claude Codeを起動すると環境変数が適用される
claude
# /effort ピッカーで現在のレベルを確認・変更できる(修正後は正しく表示)セッション中のエフォートレベル確認と変更
環境変数でデフォルトを設定しつつ、セッション中に必要に応じて変更する場合。
操作手順:
1. CLAUDE_CODE_EFFORT_LEVEL=high でClaude Codeを起動
2. 複雑な作業を行う(highモードで実行)
3. 単純な質問をしたくなった場合
4. /effort コマンドを入力
5. ピッカーが表示される(修正後: "high" が現在値として正しく表示)
6. "low" を選択して変更
7. 以降は低エフォートモードで応答
# エフォートレベルを変更後、再度確認
# /effort → ピッカーが最新の設定値を正しく表示する注意点
CLAUDE_CODE_EFFORT_LEVELは Claude 3.5以降の拡張思考(extended thinking)機能を持つモデルで効果を発揮します。モデルによって対応状況が異なります。/effortコマンドでセッション中に変更した値は、環境変数の設定より優先されます。セッション終了後は環境変数の設定に戻ります。- エフォートレベルを
highに設定すると、応答の生成に時間がかかり、トークン消費量も増加します。コスト面を考慮して適切なレベルを選択してください。 lowモードは素早い回答が必要な場合に便利ですが、複雑な推論が必要なタスクでは品質が低下する可能性があります。- この修正は表示の問題(環境変数の値がピッカーに反映されない)の修正です。実際のエフォートレベルの動作自体は以前から環境変数が有効でした。