同じ道路を二度掘らないために、入口に札を掛ける

同じ道路を二度掘らないために、入口に札を掛ける

舗装したばかりの道路が、翌月また掘り返されることがあります。水道が終わったあとにガスが来て、そのあとに電話線が来る。

一度にやれば済む工事が三度になるのは、誰がいつどこを掘るかが、掘る前に見えていないからです。だから工事の入口には札が掛かります。着工日、業者、工期、連絡先。あの札は通行人のためではなく、次に掘ろうとしている業者のために掛かっています。

札を掛けるのは手間です。掛ける側に得はありません。それでも掛けるのは、掛けなかったときに損をするのが自分ではなく次の人で、そして次の人がいつか自分になるからです。

日曜の午後に三時間

使っているライブラリの issue を見ていました。issue というのは、直したいことを書いておくメモで、番号が付きます。

#842 Windows でパスが二重になる

再現できたので、直し始めます。三時間かけて、提案を出しました。そこで気づきます。すでに同じ内容の提案が二日前に出ていました。

三時間が無駄になったわけではありません。勉強にはなりました。でも、二日前に知っていれば別のことをしていました。

逆の立場もあります。自分が直し始めた issue に、他の人が入ってくることもあります。そのときはいま直していますと書く手段がありますが、毎回書きません。作業を始めるときは、書き込むことを考えていないからです。数日後に思い出したときには、もう遅い。

札を掛ける手間が、掛ける側には得にならないからです。

自動で書き込める。そして既定で無効

MulmoTerminal には、このいま直していますを自動で書く設定があります。AI を何枚ものマスに並べて見張るための画面で、無料で、オープンソースとして公開されています。

既定では無効です。理由が率直で、自分の名前で GitHub に書き込むことになり、しかも多くは他人が立てた issue だからです。

これは妥当な判断だと思います。自動で他人の issue に書き込む機能が既定で有効だと、知らないうちに書いていることになります。オープンソースに慣れていない人が最初にこれを踏むと、気づいたときに気まずい。だから自分で有効にする形になっています。

パソコン単位の設定です。他人の issue に自動で書き込むかは方針の話なので、プロジェクトごとに変えるものではない、という整理です。

書かれるのは一件だけ

有効にすると、着手したときに一件投稿されます。

Working on this in `842-windows-path`.
- started — 2026-08-04 14:20 UTC
posted by MulmoTerminal

提案を出したとき、取り込まれたときは、同じコメントを編集します。新しいコメントは足しません。

Merged in #1240. Work done in `842-windows-path`.
- started — 2026-08-04 14:20 UTC
- PR #1240 — 2026-08-04 15:05 UTC
- merged in #1240 — 2026-08-04 16:40 UTC
posted by MulmoTerminal

一件を編集し続けるのが要点です。三件付けば、他人の issue のスレッドが自動投稿で埋まります。それは迷惑なので。

節目を三つに絞っている

書くのは着手、提案、取り込みの三つだけです。テストの赤緑は書きません。

理由が書かれていて、CI の赤緑は提案を見れば分かるうえに往復するからです。全部書けば issue が読めなくなります。

テストは一つの提案で五回赤くなることがあります。それを全部書くと、行が十本を超えます。

書かないことを決めているのが設計だと思います。取れる情報を全部出すと、読む価値が下がります。工事の札に、掘った土の量は書きません。

時刻が入っていることに意味がある

時刻は UTC で入ります。そしてそこが要点だと書かれています。

三週間前に書かれて以後動いていない宣言と、今朝動いた宣言は、読み手にとって別物です。

やっていますだけでは判断できません。三週間前のやっていますは、たいてい放棄されています。だから時刻が入っていて、読み手が世界中にいるので UTC です。

冒頭の場面で言うと、二日前の提案を見つけたときに本当に進んでいるのかが分かる、という話になります。工事の札の工期と同じ役目です。

フォルダの名前だけで、上の階層は出さない

書かれるのはフォルダの名前だけです。自分のどの複製かに答えるためのもので、公開の issue に載るからです。

/Users/yourname/work/client-projects/... を公開の issue に貼らない、という配慮です。フォルダ名一つで目的は足ります。

もう一つ効果があります。issue ごとに作業フォルダを切る使い方では、二つのターミナルが、あるいは二人が、同じ issue を二重に始めるのを止めます。自分の中での重複も防げます。

自動投稿だと明記する

コメントには、このアプリが書いたと明記されます。他人が立てた issue に載るので、何が宣言しているのかを読み手に推測させないためです。

自動投稿であることを隠しません。読み手が、この人は本当に作業しているのか、道具が勝手に書いたのかを判断できるようにしています。

二重に書かない仕組み

タブを何枚も開いていて、それぞれが定期的に問い合わせています。再読み込みもします。それでもそれぞれ一回だけです。

仕組みは、コメントに見えない印が入っていて、それを読み返すことです。節目もコメントの本文から読み出すので、二回目以降は何も書きません。

状態を手元に持たず、コメント自身から読みます。複数のタブでも、再読み込み後でも、アプリの再起動後でも二重になりません。別の複製で同じ issue を触れば二件目が付きますが、それは事実どおりです。

気づいた時刻であって、起きた時刻ではない

正直に書かれている制約です。書くのは、そのマスが実際に見た節目だけです。

先月出した提案の枝を再読み込みで開いても、行は増えません。こちら側が知っているのは気づいた時刻であって、起きた時刻ではないからです。

過去を遡って埋めません。知らないことは書かない、という態度です。

編集では通知が飛ばない

最初の一件は知らせるべきことで、以降は状態だからです。

誰かが着手したは知らせる価値があります。その人が提案を出したは、提案自身が通知します。他人の issue の購読者に、自動投稿の更新を何度も飛ばさない配慮です。

書けなかったときは、理由が出る

コメントを書くには、読む権限だけでは足りません。書き込む権限が要ります。読み取り専用に設定した gh では書けません。

書けなかったときの挙動が親切です。マスに理由が出ます。作業中の表示の隣に小さく issue を更新できていないと出て、直し方を名指しします。gh を入れる、ログインする、権限を確認する、のどれかです。

作業そのものには影響しません。コメントを飛ばすだけで、次の節目でまた試します。黙って失敗せず、かつ作業を止めない。ここが効きます。

使ってみる

MulmoTerminal は、次の一行で立ち上がります。ターミナル(Windows なら PowerShell、Mac ならターミナル)を開いて、そのまま貼り付けます。

npx mulmoterminal@latest

ブラウザが開いて http://localhost:34567 が表示されれば成功です。インストールという作業はなく、合わなければ閉じるだけで終わります。止めるときは、打ったターミナルで Ctrl + C を押します。

動かない場合、足りないものは次の二つのどちらかです。

確かめ方 無ければ
Node.js 22.12 以上 node -v nodejs.org/ja/download の LTS。入れたらターミナルを閉じて開き直す
Claude Code claude --version macOS は curl -fsSL https://claude.ai/install.sh | bash、Windows は irm https://claude.ai/install.ps1 | iex。そのあと claude でログイン

Claude Code は、AI をターミナルから使うためのコマンドです。使うには Claude の有料プラン(Pro / Max / Team / Enterprise)か API のアカウントが必要で、無料プランには含まれていません。MulmoTerminal 自体は無料で、AI の使用量はその契約から引かれます。

先に gh を入れます。GitHub が配っているコマンドです。

# macOS
brew install gh

# Windows(PowerShell)
winget install -e --id GitHub.cli

ログインします。

gh auth login

この設定には、読むだけでなく書き込む権限が要ります。issue へのコメントは書き込みなので、読み取り専用にした gh では書けません。いま何ができるかは gh auth status で分かります。Token scopes に repo または public_repo があれば書けます。無ければ gh auth refresh -s repo で足します。

書き込む先は、多くの場合自分が立てた issue ではありません。他人が立てた issue に、自分の名前でコメントが付きます。まず自分のプロジェクトで一度試してから、他人のものに使ってください。

書く場所は ~/.mulmoterminal/config.json です。無ければ作ります。設定画面の GitHub and GitLab のチェックでも変えられます。

{
  "issueWorkComments": true
}

この設定は起動時に一度だけ読まれるので、アプリを再起動してタブを再読み込みします。

issue から作業を始めて、その issue にコメントが一件付けば成功です。付かないときは、マスに理由が出ます。

やめるときは false にします。すでに書いたコメントは残るので、消したいときは GitHub 上で自分で消します。

まとめ

工事の入口の札は、通行人のためではなく次に掘る業者のために掛かっています。掛ける側に得はなくて、掛けなかったときに損をするのは次の人です。

オープンソースの issue も同じで、着手を書かないと同じものを二人が直します。自動で書ける設定がありますが、書き込む先は他人の issue なので既定で無効です。

一件を編集し続けるのと、節目を三つに絞るのと、時刻を入れるのは、どれも他人のスレッドに載るものだからです。工期の書かれていない札は、掛かっていないのと同じです。

この記事をシェア

関連記事

記事一覧に戻る