Claude Code関連ノウハウ・備忘録

20260406 記録

セッション途中で閉じたい場合

まず最初にChatGPTに質問したところ、「セッション復帰は無理(意訳)」という答え。

次にClaude Codeに質問してみる↓

/btw Claude Codeのセッションをいったん閉じたい。目的はマシンの再起動のため。マシン再起動後にまた同じセッションを再開して続けることは可能?

はい、可能です。

Claude Codeはセッションの会話履歴を保持しているため、再起動後に同じディレクトリでClaude Codeを起動すれば、この会話の続きから再開できます。

ただし以下の点に注意してください。

- Apache・MySQLは再起動で止まります。WSL2を再起動した場合は sudo service apache2 start と sudo service
mysql start を再度実行する必要があります
- WSL2自体の再起動(Windowsを再起動した場合)も同様にサービスの再起動が必要です

再開時にまず「前回の続きから」と一言添えると、コンテキストを把握しやすくなります。

再度、ChatGPTに質問↓

Claude Code自身に同じ質問をしたところ、
「Claude Codeはセッションの会話履歴を保持しているため、再起動後に同じディレクトリでClaude Codeを起動すれば、この会話の続きから再開できます。」
という回答を得た。
したがって、あなた(ChatGPT)の回答は間違っているのでは?
思考時間: 11s

はい。その指摘の通り、私の前回回答は不正確でした。

Claude Code の公式ドキュメントでは、再起動後でも同じディレクトリで前回の会話を続ける機能が案内されています。具体的には、

claude -c は current directory の直近の会話を継続
/resume や claude –resume で 過去の会話を再開
Quickstart にも、起動時に recent conversations が表示され、そこから続きに戻れる旨があります。

なので、あなたが Claude Code から得た

再起動後に同じディレクトリでClaude Codeを起動すれば、この会話の続きから再開できます

という説明は、公式情報と整合的です。

ただし、正確にはこう整理するのがよいです。

会話履歴の再開は可能
しかし、OS再起動でその瞬間に動いていたプロセス自体は消える
したがって、開きっぱなしの一時状態や未保存の外部プロセス状態まで完全にそのまま復元、とは限らない

つまり、「会話セッションの再開」は可能だが、「実行中プロセスの完全な継続」とは別です。これは CLI リファレンスの「continue / resume previous conversations」という説明とも整合します。

実務上の答えとしては、
Claude Codeを閉じて再起動してよい。再起動後、同じディレクトリで claude -c か /resume を使えば、かなりの確率で続きから再開できます。

前回はそこを切り分けずに「不可」と言い切ったので、そこは私の誤りです。

以下は再びClaude Codeに対する質問↓

/btw このセッションをいったん閉じたい。後日またresumeできるようにしてほしい

そのまま閉じて大丈夫です。後日以下のコマンドで再開できます。

直近のセッションをそのまま再開する場合
claude --continue

複数のセッションから選んで再開する場合
claude --resume

一覧が表示されるので、今日の日付・このフォルダのセッションを選べばOKです。

/btw claude -c と claude –continue は同じものですか

はい、同じです。-c は --continue の短縮形(ショートハンド)で、どちらも直前の会話セッションを再開するオプションです。

/btw claude -c で前回のセッションを引き継ぐことが可能だが、もし起動時に-cをオプションを付け忘れてしまった場合、そこからリカバリーすることは可能ですか

リカバリーは可能です

最も簡単な方法:そのまま終了して再起動

1. 誤って起動してしまった新セッションを /exit で終了
2. 改めて claude -c で起動

これで直前のセッションに戻れます。誤起動したセッションでまだ何も作業していなければ、実質的にノーダメージです。

---
特定のセッションを選んで再開したい場合

claude --resume

過去のセッション一覧が表示され、そこから選択して再開できます(-c が「直前のセッション」なのに対し、--resume
は「選んで再開」)。

---
注意点

- 誤起動したセッションで何か作業をしてしまった場合、その会話履歴は新しい別セッションとして残ります。-c
で戻れるのは「最後に使ったセッション」なので、作業してしまった後に -c すると誤起動セッションの続きになってしまいます
- そのような場合は --resume で目的のセッションを明示的に選ぶのが確実です

20260410 追記

AIは日本語文章の出力において、「~」などを多用します。たとえば「10~15日」のように。これがエディタで開いてみると「?」に文字化けする。日本語全角文字の「~」ではないからですね。

このような文字化けしやすい文字を全てのプロジェクトにおいて明示的なルールを設定して禁止したい。どのファイルにどのような設定を記述すればよいかをClaude Codeに尋ねて設定してもらいました。

~/.claude/CLAUDE.md (WindowsならC:\Users\xxxxx\.claude\CLAUDE.md) に、

# Global Claude Code Rules

## 文字コード・文字使用ルール

日本語出力において、エディタで文字化け(`?` 表示など)を引き起こしやすい文字を**使用禁止**とする。

### 禁止文字一覧

| 禁止文字 | Unicode | 名称 | 代替表現 |
|----------|---------|------|----------|
| ~ | U+FF5E | 全角チルダ (Fullwidth Tilde) | 〜 または「から」「〜」なしで言い換える |
| 〜 | U+301C | 波ダッシュ (Wave Dash) | 「から」「―」または言い換える |
| − | U+2212 | マイナス記号 (Minus Sign) | `-`(ハイフンマイナス U+002D)|
| ― | U+2015 | 水平バー (Horizontal Bar) | `—`(em dash)または `-` |
| ‐ | U+2010 | ハイフン (Hyphen) | `-`(ハイフンマイナス U+002D)|
| * | U+FF0A | 全角アスタリスク | `*`(半角) |
| ! | U+FF01 | 全角感嘆符 | `!`(半角) |
| ? | U+FF1F | 全角疑問符 | `?`(半角) |
| ( ) | U+FF08/FF09 | 全角括弧 | `(` `)` (半角、コード内のみ)|
|   | U+3000 | 全角スペース | 半角スペース(コード内のみ)|

### ルール

- 上記の禁止文字をコード、コメント、ドキュメント(Markdown含む)の出力に使用しない。
- 特に `~`(U+FF5E)と `〜`(U+301C)は視覚的に区別しにくいが、どちらも使用禁止。
- 範囲表現が必要な場合は「から」「〜」を使わず「A から B」のように言い換えるか、`-`(ハイフンマイナス)を使う。
- 数値のマイナスには必ず `-`(U+002D)を使う。

上記を追加。

しかし、Claude Codeが提案してきたこのルールはちょっと過剰すぎると思ったのでいろいろツッコミを入れたところ、以下のように訂正されました。

# Global Claude Code Rules

## 文字コード・文字使用ルール

日本語出力において、エディタで文字化け(`?` 表示など)を引き起こしやすい文字を**使用禁止**とする。

### 禁止文字一覧

| 禁止文字 | Unicode | 名称 | 代替表現 |
|----------|---------|------|----------|
| 〜 | U+301C | 波ダッシュ (Wave Dash) | `~`(U+FF5E)または「から」を使う |
| − | U+2212 | マイナス記号 (Minus Sign) | `-`(ハイフンマイナス U+002D)|

### ルール

- `〜`(U+301C)は Shift-JIS 変換時の文字化け原因となるため禁止。代わりに `~`(U+FF5E)を使う。
- 数値のマイナスには必ず `-`(U+002D、ハイフンマイナス)を使う。
- 全角記号(!?()~など)は日本語文章で自然なため制限しない。

うん、とりあえずこれでいいと思う。

コメント

タイトルとURLをコピーしました