Claude Codeでトークンを
リフレッシュする
(echo “/exit”)

  • Claude Codeはサブスクリプション認証のトークンを使って動作しますが、claude -pから呼び出すとトークンが古くなることがあります。
  • その場合、対話モードで起動するとトークンが自動的にリフレッシュされます。
  • すぐ終了させるにはecho "/exit" | claudeと入力します。
  • 移植性を重視するならprintf "/exit\n" | claudeの方が安全です。
echo "/exit" | claudeCode language: PHP (php)

関連記事

1. Claude Codeのアクセストークン

Claude Codeでは、サブスクリプションの認証を使って利用できます。
このトークンは、~/.claude/.credentials.json の .claudeAiOauth.accessTokenに保存されています。

Claude Code アクセストークン 保存場所 ~/.claude/.credentials.json キー名 claudeAiOauth.accessToken 注意 claude -p 経由だとトークンが古くなる サブスクリプション認証を使用

ただし、claude -pから呼び出していると、このトークンが古くなって使えないことがよくあります。
そこで、Claude Codeの対話モードで呼び出すことが必要になります。
このときには、とくにブラウザでの認証などはなく、起動するとそのままトークンがリフレッシュされます。

Claude Code を CLIで起動してすぐ終了させるには、標準入力で /exit を渡します。

1. Claude Codeのアクセストークン
echo "/exit" | claudeCode language: PHP (php)

/exit は Claude Code の 内部コマンド(slash command)で、対話セッションを終了するためのものです。
これで起動したclaude は、/exit コマンドを受け取り、すぐ終了します。

もし Claude Code の初期化だけ行って終了したい用途(シェルスクリプト等)であれば、次の方法もよく使われます。

printf "/exit\n" | claudeCode language: JavaScript (javascript)

echo の挙動はシェルやオプションによって微妙に異なる場合があるため、シェルスクリプトで移植性を重視するなら printf の方が安全だからです。
たとえば echo -e の解釈はbashとshで違います。