SJ blog
ai
B

信頼度ランク

S 公式ソース確認済み
A 成功実績多数・失敗例少数
B 賛否両論
C 動作未確認・セキュリティリスク高
Z 個人所感

`/rewind`ファースト:違和感を感じた瞬間に巻き戻す習慣

Claude Codeの出力がおかしいと思った時に、言い訳を聞いたり修正を依頼したりするより即座に `/rewind` で巻き戻す方が速くて正確、というベテラン共通の鉄則と、/clear, /compact との使い分けを整理します。

一言結論

AIの誤った出力を「修正して」と頼むのは間違った方向に進んだ車を「引き返して」と言うのと同じで、一度コンテキストに入った誤りは修正指示でも残留する。/rewindで巻き戻して正しい指示を出し直す方が速い。

Claude Codeの出力が意図とズレた時、多くの人はこうします。

ユーザー: そうじゃなくて、◯◯にしてほしい。修正して。

これは最も遅い対処法です。

なぜ「修正して」が遅いのか

Claude Codeはコンテキスト(会話履歴)を見て次の出力を決めます。「修正して」と頼んだ時点で、以下がコンテキストに残っています。

  1. 最初の(間違った)指示
  2. Claude が出した(間違った)出力
  3. 「修正して」という追加指示

Claude は 1→2→3 を全部参照して次の出力を生成します。つまり間違った出力が「参考情報」として残っている状態です。人間に例えると「さっきの答えは忘れて」と言われても記憶には残っている——それと同じことがLLMでも起きます。

結果として、修正後の出力は前の間違いに引きずられる確率が上がります。特にコード生成では、最初の実装のパターン(変数名・関数分割・エラー処理の方針)が「修正版」にも混入しやすいです。

/rewind で巻き戻す

/rewind は直近のアシスタント発言とそれに至るツール実行をコンテキストから完全に消すコマンドです。

ユーザー: 認証ミドルウェアをリファクタして
Claude: [何か間違った実装をする]

ユーザー: /rewind

(↑ Claude の出力がコンテキストから消える)

ユーザー: 認証ミドルウェアをリファクタして。ただしセッション管理には
         express-session ではなく独自の Redis ラッパーを使うこと。

2回目の指示は、1回目の間違った出力を一切参照しない状態で処理されます。クリーンなコンテキストから再スタートするため、結果の精度が構造的に高くなります。

「違和感 → 即巻き戻し」の習慣

ベテランに共通している習慣は、Claude の出力を見て「あれ?」と思った瞬間に /rewind を押すことです。

判断基準は次の3つです。

  • 方向が違う: 求めていた変更と全然別のことをしている → 即 /rewind
  • 精度が低い: やろうとしていることは合っているが雑 → 指示を補足して再試行。巻き戻す必要なし
  • 部分的に正しい: 3ファイル中2ファイルは良いが1ファイルがおかしい → /rewind して「◯◯ファイルだけ修正」と絞る

「方向が違う」のケースで議論を続けるのは時間の無駄です。LLMに「なぜ間違えたか」を説明させても意味がありません。黙って巻き戻して、指示を書き直す。

/rewind / /clear / /compact の使い分け

コマンド何が起きるか使う場面
/rewind直近のアシスタント発言を消す1手戻したい。文脈は残したい
/clear履歴を全消去(CLAUDE.mdだけ残る)タスクが切り替わった。前の文脈は不要
/compact履歴を要約して圧縮文脈は残したいがトークン節約したい

判断フローはこうなります。

「直前の出力だけおかしい?」
 ├─ Yes → /rewind
 └─ No
    └─ 「前の議論の文脈はまだ必要?」
       ├─ No → /clear
       └─ Yes → /compact

/clear のタイミング

タスクの切り替え時には必ず /clear。前のタスクで蓄積したコンテキストが次のタスクの判断を歪めるためです。

ユーザー: 認証のリファクタが終わった。次はAPIのレート制限を実装して。

この時点で /clear を打たないと、認証リファクタで触ったファイル・変数名・設計判断がコンテキストに残り、レート制限の実装に無関係な情報としてノイズになります。

/compact の注意点

/compact は便利ですが、要約過程で重要な制約が落ちるリスクがあります。

例えば議論の中で「このテーブルには外部キー制約があるからCASCADE DELETEは使わない」と合意した場合、/compact の要約では「テーブル設計について議論した」程度に丸められる可能性があります。

大事な制約は /compact に頼らず、CLAUDE.md に書き戻すのが安全策です。

巻き戻しすぎの落とし穴

/rewind を連打して何手も戻すと、有益だった探索結果まで消えるリスクがあります。

例えば Claude が3ファイルを読んだ上で実装を出した場合、/rewind するとファイル読み込み結果も消えます。次の指示では Claude が再びファイルを読むところからやり直すため、その分の時間とトークンが無駄になります。

「ファイル読み込み結果は残したいが実装は消したい」場合は /rewind ではなく、テキストで「実装をやり直して。ただし先ほど読んだファイルの内容は前提にして」と指示する方が良いこともあります。

まとめ

Claude Codeとの対話で最も非効率なのは、間違った出力を起点に修正を重ねることです。間違いがコンテキストに残った状態での修正は、汚れた水で洗い物をしているようなものです。

違和感を感じた瞬間に /rewind → 指示を書き直す。この1秒の判断が、10分の手戻りを防ぎます。


参考: