@
1980年。ダンジョン探索ゲーム Rogue が登場し、主人公は「@」という1文字で表現された。装備も表情もステータスバーも見えない。プレイヤーは、「@」という1文字に、その全人格を投影したアバターを見出した。その30年後の僕はUI/UXデザインにこだわることこそが人間らしい仕事だと思っており、今から思えば過剰な演出をも良いものと思い込んでいた。
この「事前準備を厚くして、実行時の入力を最小化する」というアプローチは、まさにコンテキストエンジニアリングの実践となる。デスクトップ環境でじっくりスキルを設計しておけば、Twitter 感覚で意図を伝えていくような形にできる。
さらに10年以上が経った今、僕はモバイル端末のターミナルに向かって最低限のプロンプトを打ち込んでいる。Claude Codeにソフトウェアキーボードや音声で短い指示を投げ、返ってきたテキストの結果を脳内でレンダリングし、また短い言葉でフィードバックし、実現されるべき「預言書」をTODOとして更新していく。
GUIのボタンやメニューは徐々に使わなくなっていくのだろう。抽象的な預言書の実現はLLMが担ってくれるからだ。このプログラムや文章を統べる僕の神的暴力は神話的暴力に変遷する。
入力速度が思考の生存を保証する
そんなことを考えていた時に「ephe」というWebアプリケーションを知った。コンセプトは"just one clean page to focus your day"。マークダウン形式でメモを書くが、レンダリングはしない。# は見出しに変換されず、- [ ] はチェックボックスに変換されず、記号のまま残る。ただし、入力補完はしてくれる。
"Capture now, organize later."——今キャプチャして、後で整理する。ブレインダンプにおいて速度は命綱だ。「この考えをどこに保存しよう」「どんなフォーマットで書こう」と迷っている間に、閃きは蒸発する。WYSIWYGエディタでボタンを探している間に、書こうとしていた文章を忘れる。プレビューペインでレンダリング結果を確認している間に、思考の流れが途切れる。摩擦の最小化こそが鍵であり、速度だけが思考の生存を保証する。
GTD においてはまず TODO リストを作ることに集中し、それをシーケンシャルに実行するのも自分であることがキモだったのだけれども、実行の大半は Claude Code がやってくれる。なので、人間としての自分は LLM と壁打ちしながら実現したかった事とそのための手順をメンテナンスすることが主な仕事になる。
GhosttyとMarkdownのTODO管理さえあれば実行は LLM が担ってくれる時代においては、ファイル管理不要、レンダリング不要でただ素早くTODOを作れることが重要なのかもしれない。そこにはVSCodeのような重厚なIDEも、Notionのようなオールインワンツールも、過剰だったのではないか。ターミナルとテキストファイルの一汁一菜でよいという提案。
最小限のヒエログリフが想像力を解放する
Rogue においてダンジョンはシード値からオンデマンド生成され、何が出るかわからない。それでもプレイヤーは「この剣を拾えたのは導きだった」と物語を見出す。抽象化された生成物を受け取るからこそ、人の脳内やLLMが文脈を補完し"レンダリング"を行う。その入力情報が少ないほど、出力に「自分の意図が反映された」と感じる逆説がある。
ノストラダムスの大予言と呼ばれる四行詩が何世紀も渡って「預言的中」とされてきたのは、抽象性が解釈の余地を最大化するからだ。ダンジョンに「この配置には意味がある」と感じるのも、LLMの出力に「わかってるじゃん」と思うのも、同じ認知構造に基づいている。この構造は、意外な場所にも見出せる。TRPG(テーブルトークRPG)のVTT(バーチャルテーブルトップ)に、Owlbear Rodeoというミニマリスト向けツールがある。
設計思想は明快だ。「VTTに本当に必要なのはマップとトークンだけ」。イニシアチブトラッカーもダイナミックライティングも派手なエフェクトもない。グリッド付きのキャンバスにトークンを置く——それだけ。まるでテーブルにドライイレースボードを広げてコインをキャラクターに見立てるような、物理的なTRPG体験のデジタル再現だ。興味深いのはトークンのデザインだ。精緻なキャラクターイラストではなく、象徴的なアイコンが使われる。モンクには拳、バードにはリュート。たったそれだけで、プレイヤーは自分のキャラクターを投影する。
無ではなくアフォーダンスを喚起すべき最低限
アフォーダンスとは心理学者ジェームズ・J・ギブソンが提唱した概念で、「環境や物が人に提供する行動の可能性」を意味する。ドアノブを見れば「回せる」と知覚し、ボタンを見れば「押せる」と理解する。Owlbear RodeoやRogueが示す記号は無よりはアフォーダンスを与えるが、与えすぎない。拳のアイコンは「モンク」というラベル以上の情報を持たず、だからこそプレイヤーは、自分のモンクがどんな顔をしていて、どんな戦い方をするのかを想像する。
ノストラダムスの預言書の構造もLLMの Skills 設定にも示唆を与える。過剰に詳細な定義は LLMを融通の効かないルール遵守マシンにしてしまう。預言書的な抽象性を残しながらもカルチャーやフィロソフィーを表現したメタプロンプトの方が、LLMやツールの発展、そして創発性を引き出せるのではないか。良いプロンプトとは、モデルが賢くなるほど出力も良くなるもの。つまり時間に対してロバストネスな設計だ。
Markdown は現代のヒエログリフである
ここで認知科学の概念「認知的オフローディング」を導入したい。人間の脳は限られたワーキングメモリしか持たない。複雑な情報を処理するとき、すべてを頭の中で保持しようとするとオーバーロードを起こす。だから外部のツールや記号に認知作業を委ねる——これが認知的オフローディングだ。買い物リストを紙に書くのは、覚えておくという認知負荷を紙に委ねる行為だ。TRPGのシンプルなトークンも同じ構造を持つ。拳のアイコンを見れば「あれはモンクだ」と即座にわかる。トークンが意味を担ってくれるから、プレイヤーは戦術や物語に集中できる。
Markdownもまた、認知的オフローディングの装置だ。## を見れば見出しだとわかる。- [ ] を見ればタスクだとわかる。HTMLの<h2>タグやチェックボックスウィジェットにレンダリングされる必要がない。記号自体が意味を伝達する。「どのように書くか」に脳力を浪費せず、トークンに構造を委ねて、思考を生かし続ける。
古代エジプトのヒエログリフを考えてみる。鳥の絵は鳥を意味し、目の絵は目を意味した。表意文字と表音文字が混在し、見た目から意味が直接読み取れる。Markdownの#や>や[[]]は、現代のヒエログリフなのかもしれない。記号が視覚的な構造を直接表現する。WYSIWYGエディタはこの表意性を「親切に」奪い、レンダリング結果だけを見せる。しかしそれは、記号が担っていた認知的オフローディング機能を殺してしまう。
「脳内レンダリング」と「認知的オフローディング」は矛盾しない。Markdownの記号を見て構造を理解するとき、脳は「このテキストをHTMLに変換したらどう見えるか」を計算しているわけではない。記号自体が構造を伝えているから、その認知作業は記号に委ねられている。脳がレンダリングしているのは、構造ではなく意味だ。
CLIルネサンスと抽象性を許容する預言書の時代
プレーンテキストファイルとCLIについては強力な推進ツールも出ている。
Ghosttyの登場はCLIルネサンスの象徴だ。HashiCorp共同創業者Mitchell Hashimotoが開発した次世代ターミナルエミュレータ。従来のターミナルは「速度」「機能の豊富さ」「ネイティブUI」のいずれかを犠牲にせざるを得なかったが、Ghosttyはこの三拍子を両立させた。興味深いのは、Ghosttyが非営利化を選択したことだ。VCによる収益化のプレッシャー、AIピボット、買収リスクを明確に拒否している。これはツールが肥大化しないための選択なのかもしれない。
最小の入力、最大の脳内レンダリング。テキストへの螺旋的回帰。40年以上前のRogueプレイヤーが@を見て冒険者のアバターを想像したように、現代のエンジニアは##を見て構造を理解し、LLMの出力に物語を見出す。リッチなGUIがなくても、テキストファイルがあれば、計算は完結する。
それもまた過渡期の揺り戻しなのかもしれないが、最小限の記号をターミナルに打ち込み、LLMという神託実行機関に預言書を渡すことが新たな開発スタイルになりつつある。そういえば、アバターとは「神の化身」という意味であった。実行主体が人間であった従前のTODOリストは全部は終わらないことが前提の優先順位ありきだったけれども、アーティファクトな神託リソースが無限にあると事実上の「預言書」になるという観点は個人的に大きな転換な気がしている。
