課題:20 個のプロジェクトに "icon": "..." を書くのが面倒
ターミナルで動く AI エージェントを並列に見張っていると、セルを色だけで見分けるのは限界があります。プロジェクトのロゴが出ていれば、文字を読む前に絵で分かります。
MulmoTerminal には、ディレクトリごとに .mulmoterminal.json を置いて "icon": "docs/logo.png" のように指定する機能があります。
{ "icon": "docs/logo.png" }
ここで手が止まります。プロジェクトが 20 個あります。
20 回フォルダを開いて、ロゴのパスを調べて、1 行書く。やる気になるまで半年かかります。
さらに悪いのは、仕事中は忘れることです。新しいクローンを作ったときに毎回設定を書く習慣は、2 週目に消えます。
既存のやり方とそのコスト
20 回手で書く
丁寧ですが続きません。半年後にクローンが 25 個に増えたとき、追従できません。
テンプレート化する
.mulmoterminal.json を各リポジトリに commit しておけば、clone した時点でアイコンが付きます。ただし、
- 他人のリポジトリに自分の都合で
.mulmoterminal.jsonを入れることになる(PR の説得コストが別で発生する) - MulmoTerminal を使っていないメンバーには意味がない
公開リポジトリでは採用しにくいアプローチです。
MulmoTerminal の解決:未設定のディレクトリは favicon を自動で拾う
MulmoTerminal では、.mulmoterminal.json に icon を書いていないディレクトリに対して、そのリポジトリがすでに持っている favicon を自動で探して使います。
Web 系のプロジェクトなら、ブラウザのタブに出す小さなアイコンがもう置かれています。それを拝借します。「表札がすでに掛かっている家」はそのまま使い、「掛かっていない家」だけ新しく札を作る、という分担です。
20 個のうちウェブ系のものは、何もしなくてもアイコンが付きます。
詳細
探す順序は「よくある順」ではなく「14 ピクセルで崩れない順」
探索は次の順で行われます。
public/favicon.svg(なければfavicon.svg)public/apple-touch-icon.png(なければapple-touch-icon.png)public/favicon.png(なければfavicon.png)public/favicon.ico(なければfavicon.ico)- アプリの設定ファイル(
manifest.json等)に書かれた一番大きいアイコン
この並びは「よくある順」ではなく、小さく描いたときに崩れない順です。セルのヘッダーに出るアイコンは 14 ピクセルほどなので、そのサイズで意味をなすかが唯一の基準になります。
- SVG が 1 番 — どのサイズでも崩れないため
apple-touch-icon.pngが 2 番 — iOS 用なので小さく見られる前提で作られているfavicon.icoが 4 番 — 古い形式で、中身のサイズがまちまち- 最後の段で「余白を持つ前提のアイコン」を除外しているのも同じ理由。14 ピクセルに押し込むと中身が何も見えない
docs/logo.png はあえて探さない
これも意図的です。docs/logo.png や assets/logo.* は探しません。
「ロゴ」という語は、実は 2 つの別のものを指しています。README の先頭に置く横長のバナーと、favicon にする正方形のマークです。ファイル名では区別できません。
横長のバナーを 14 ピクセル四方に押し込むと、ただの染みになります。だから favicon として置かれたものだけを信用する、という判断です。
横長でないロゴを明示したいなら、設定で書きます。
{ "icon": "docs/logo.png" }
書き間違えたら、何も出ない(favicon にフォールバックしない)
気づきにくい仕様があります。書き間違えたキー("icon": "logo.png" の指す先が無い等)は、favicon に落ちません。
意図的な設計です。壊れた設定が壊れて見えないと、設定が効いているのか、設定が壊れて別のものが出ているのかが分かりません。何も出ないほうが分かります。
落ちた設定は、設定画面に一覧で出ます。
パスは、そのフォルダの中だけ
絶対パスや ../ で外に出るものは断られます。開いたプロジェクトが、パソコン上の別の場所を指せないようにするためです。
他人のプロジェクトを clone して開くことは普通にあります。もし取ってきた設定ファイルが /Users/you/private/secret.png を読めてしまうと、それは「そのファイルの存在を確認する手段」になります。そこが閉じているのは安心できる部分です。
同じアイコンが 6 か所に出る
同じ絵が、起動前のフォルダボタン、セルのヘッダー、拡大時の一覧、下に並ぶサムネイル、スマホの一覧、スマホの画面に出ます。
起動する前も、起動したあとも、パソコンでもスマホでも、同じ絵で見分けられます。特に「起動前のボタン」に出るのが地味に効きます。起動する前に「このプロジェクトだ」と分かるので、パスを読み間違えて別のプロジェクトで起動する事故が減ります。
切り方が 2 つあって意味が違う
アイコンを出したくない場合、
- そのプロジェクトだけ —
.mulmoterminal.jsonに"icon": false。worktree にも引き継がれる - 全体で — 設定画面の Directory appearance のチェックを外す、またはパソコン全体の設定で
"autoDirIcon": false
20 個全部に "icon": false を書いて回るのは違います。挙動そのものが不要なら全体で切ります。
使ってみる
既存の MulmoTerminal インストールがあれば、追加設定なしに動きます。初めての方は MulmoTerminal 完全ガイド の「使い方 3 ステップ」から。
動作確認の最小シナリオ
- Web 系のリポジトリ(
public/favicon.svgなどを持つもの)を MulmoTerminal のグリッドで開く - セルのヘッダーの名札の隣に、そのリポジトリの favicon が自動で出れば成功
- 明示したいプロジェクトでは、そのフォルダの一番上に
.mulmoterminal.jsonを置く
{ "icon": "docs/logo.png" }
AI にファイルを書かせたときは即座に反映されます。エディタで手で書いたときは、タブを再読み込みします。
やめるときは、そのプロジェクトだけなら "icon": false、仕組みごと要らなければ Settings → Directory appearance のチェックを外します。
まとめ
- 並列エージェントのセルにアイコンがあると文字より速く見分けがつく。しかし 20 プロジェクトに手で設定を書くのは続かない
- MulmoTerminal は未設定のディレクトリで、リポジトリが持つ favicon を自動で拾う
- 探す順序は「よくある順」ではなく「14 ピクセルで崩れない順」。
docs/logo.pngはあえて探さない(横長バナーの可能性があるため) - 書き間違えたキーは favicon にフォールバックしない — 壊れた設定は壊れて見えるべき
関連: MulmoTerminal 公式ガイドの設定ページ / MulmoTerminal の git worktree 隔離 / Cursor の代替としての MulmoTerminal



