結城浩の一言
たくさんのクロコさん(Claude Code)に並行で働いてもらうことが多くなって、Ghosttyのタブのどれがどのプロジェクトなのかわかりやすくしたいと思いました。それでプロジェクトごとに背景色を変えるようなプログラムを作ってもらいました。
プロジェクトごとに背景色が変わるClaude Code起動スクリプト
2026年2月15日 結城浩×クロコさん(Claude Code)


クロコさんに相談です。ターミナルでClaude Codeを複数プロジェクトで開いていると、どのウインドウがどのプロジェクトか混乱するときがあります。プロジェクトごとに違う背景色にしたいんですが。いまは通常のターミナルのときは白で、クロコさんが起動しているときにはライトブルーになっています。
それなら、起動時にカレントディレクトリからハッシュ値を計算して、プロジェクトごとに自動で背景色を割り当てるようにしましょう。設定ファイルは不要で、同じディレクトリなら常に同じ色になりますよ。
おお、それはいいですね。でも暗い色にならないようにしてください。文字は黒なので。
パステルカラーだけで100色のパレットを用意しますね。ピンク、オレンジ、黄色、緑、青、紫、ニュートラル系を均等に入れて、どの色になっても読みやすいようにします。
スクリプト
claude-code として保存して使います。
#!/bin/bash
# pwdのハッシュからプロジェクト別の背景色を選択
colors=(
"#FFD1DC" "#FFE4E1" "#FADADD" "#F8C8DC" "#FFB6C1"
"#FFDAB9" "#FFE5B4" "#FFDFBA" "#FFECD2" "#FFD8A8"
"#FFFACD" "#FFF8DC" "#FAFAD2" "#F0E68C" "#FFE680"
"#D5F5E3" "#C1E1C1" "#B5EAD7" "#98FB98" "#BDFCC9"
"#C1F0C1" "#A8E6CF" "#B2F2BB" "#D0F0C0" "#CCFFCC"
"#C5E8D0" "#A3D9A5" "#B6E3C4" "#ACE1AF" "#B0E57C"
"#D4F1F9" "#BFEFFF" "#B0E0E6" "#ADD8E6" "#B4D8E7"
"#C6E2FF" "#A8D8EA" "#AEC6CF" "#AFEEEE" "#B0C4DE"
"#D1C4E9" "#D8BFD8" "#DDA0DD" "#E6E6FA" "#D7BDE2"
"#C8A2C8" "#E0B0FF" "#D4A5D0" "#CDB4DB" "#CCCCFF"
"#FFE0F0" "#FFC0CB" "#FFB7CE" "#FFA6C9" "#FF9DC6"
"#FFDEAD" "#FFE4C4" "#FFDEAD" "#F5DEB3" "#FFE4B5"
"#E0FFFF" "#F0FFFF" "#E8F8F5" "#D1F2EB" "#D5F5E3"
"#F5F5DC" "#FAF0E6" "#FFFDD0" "#FFFFF0" "#FFF8E7"
"#F0F8FF" "#F5F5F5" "#F8F8FF" "#F0FFF0" "#FFF5EE"
"#E8DAEF" "#D2B4DE" "#BB8FCE" "#C39BD3" "#D7BDE2"
"#A9DFBF" "#7DCEA0" "#73C6B6" "#76D7C4" "#82E0AA"
"#F9E79F" "#F7DC6F" "#F4D03F" "#F8C471" "#FAD7A0"
"#F5B7B1" "#F1948A" "#EC7063" "#E6B0AA" "#F0B27A"
"#AED6F1" "#85C1E9" "#7FB3D8" "#A9CCE3" "#D4E6F1"
)
hash=$(pwd | md5 | cut -c1-8)
index=$(( 16#$hash % ${#colors[@]} ))
color="${colors[$index]}"
printf '\033]11;%s\007' "$color"
claude "$@"
printf '\033]11;#FFFFFF\007'
仕組みの解説
やっていることはシンプルです。
- 100色のパステルカラーパレットを配列で定義します
pwd(カレントディレクトリのパス)のMD5ハッシュを計算し、先頭8文字を取り出します- その16進数を10進数に変換し、100で割った余りを色のインデックスにします
- ANSIエスケープシーケンス
\033]11;色\007でターミナルの背景色を変更します claudeを起動します(引数はそのまま渡します)- Claude Code終了後、背景色を白に戻します
ポイントは「同じディレクトリなら同じハッシュ値になる」ことです。設定ファイルや色の指定は一切不要で、プロジェクトごとに決定論的に色が割り当てられます。
補足
いくつか補足です。
- macOSの
md5コマンドを前提としています。Linuxならmd5sumに読み替えてください - ターミナルがANSIエスケープシーケンスによる背景色変更に対応している必要があります(macOSのターミナル.appやGhosttyなど)
- 100色のパレットはすべてパステル調なので、黒い文字が読みにくくなることはありません
フィードバックはこちらから
(2026年2月15日)