STDOUT — 更新情報・記録
TonographをMac App Storeで発売しました
TonographをMac App Storeで発売しました

Noopが開発するmacOS用のタブ譜エディタ「Tonograph」がMac App Storeの審査を通過し、9月24日から販売を始めました。書いた譜面を自分で組んだペダルボードの音で再生できるアプリです。価格は¥4,000(日本)の買い切りです。

cat /var/log/stdout/tonograph-mac-app-store.md →
もはやIDEは買うものではなく、自分で作る時代へ
もはやIDEは買うものではなく、自分で作る時代へ

IDEを開いている理由を数えてみると、diffのレビューとコミット、Markdownの閲覧、そしてコードを読むことの4つしか残っていませんでした。書くのがAIなら、書くための機能に払っているコストはそのまま余ります。用途を4つに絞ったmacOSネイティブの開発環境Wispを自作した話です——常駐40MB、起動0.2秒、空いたぶんはAIに回します。

cat /var/log/stdout/wisp-build-your-own-ide.md →
docs-kitポストモーテム——設計書はトークンを節約しなかった
docs-kitポストモーテム——設計書はトークンを節約しなかった

7月30日に公開したdocs-kitを、失敗と総括しました。狙った効果——AIに設計書を効率よく読ませ、トークンを節約する——は得られず、逆に全コミットの63%が文書の同期作業に消えました。何を間違え、どこで気づけたはずだったのか。同じ問題を解こうとする人のための一次資料として、記録を公開します。

cat /var/log/stdout/docs-kit-postmortem.md →
LabsにAIコーディング用設計管理ツールdocs-kitを追加しました
LabsにAIコーディング用設計管理ツールdocs-kitを追加しました

Labsに自社開発のdocs-kitを公開しました。AIコーディングのための設計書管理ツールです。AIは設計書を疑わないので、古い設計書は「間違った指示」として働いてしまう。docs-kitは鮮度をgitの履歴から判定し、AIには必要な文書だけを開かせます——手戻りとトークンの両方が減ります。

cat /var/log/stdout/docs-kit-labs.md →
AIコーディングがもたらすパラダイム・シフト
AIコーディングがもたらすパラダイム・シフト

小さなベンチャーが新しい仕組みを出すと、大企業が資本力で同じものを作り、広告費でシェアを奪う——長らくそれがこの業界の勝ちパターンでした。AIによって実装コストが落ちたいま、その前提は崩れつつあります。人月という単位を残したまま価格競争になったとき、強いのは固定費の小さいほうです。

cat /var/log/stdout/ai-coding-paradigm-shift.md →
自社プロダクト「Tonograph」を発表しました
自社プロダクト「Tonograph」を発表しました

macOS用のタブ譜エディタ「Tonograph」を開発しています。本日、製品サイトtonograph.appを先行公開しました。タブ譜を書き、それを自分で組んだペダルボードで鳴らせるアプリです。

cat /var/log/stdout/tonograph-launch.md →
BROTHER JOYFACTORY TOKYOが開業しました
BROTHER JOYFACTORY TOKYOが開業しました

弊社がシステム開発で参加した体験型施設「BROTHER JOYFACTORY TOKYO」が、2026年6月30日に開業しました。担当範囲などの詳細は、事例(CASE)でご紹介しています。

cat /var/log/stdout/joyfactory-launch.md →
コーポレートサイトをリニューアルしました
コーポレートサイトをリニューアルしました

noop.co.jpを全面リニューアルしました。コンセプトは「動き続けるシステムを、そのまま見せる」。会社紹介を読むページではなく、稼働中のコンソールを覗くようなサイトです。

cat /var/log/stdout/site-renewal.md →
STDOUT — COLUMN もはやIDEは買うものではなく、自分で作る時代へ
STDOUT — COLUMN

もはやIDEは買うものではなく、自分で作る時代へ

2026-08-16 ・ Noop, LLC.
COLUMN2026-08-16

IDEを開いている理由を数えてみると、diffのレビューとコミット、Markdownの閲覧、そしてコードを読むことの4つしか残っていませんでした。書くのがAIなら、書くための機能に払っているコストはそのまま余ります。用途を4つに絞ったmacOSネイティブの開発環境Wispを自作した話です——常駐40MB、起動0.2秒、空いたぶんはAIに回します。

もはやIDEは買うものではなく、自分で作る時代へ

開発の道具を買うのをやめて、自分で作りました。WispというmacOS専用の統合開発環境で、複数プロジェクトのClaude Codeを1つのウィンドウで並行して走らせるためのものです。

気づけばIDEの用途は4つに減っていた

コードを書くのがAIに移ってから、IDEを開いたままにしている理由を数えてみたところ、4つしか残っていませんでした。diffのレビュー、手でコミットするためのgitツール、そのdiffをグラフィカルに眺めること、そしてMarkdownのドキュメントを読むこと。補完もインスペクションもリファクタリングも、ここしばらく一度も使っていません。

IDEは「書く道具」から「読む道具」に変わっていたのに、こちらが払っているコストは書く道具のままだった、ということです。しかも並行しているプロジェクトの数だけウィンドウが開き、そのそれぞれが独立したインデックスを抱えます。実測すると重量級のIDEは1インスタンスで4.9GBを使っていて、それが4つ並んでいる状態は、本来AIとそのツールに回すべきメモリとCPUを寝かせているのと変わりません。

買うのではなく作れるようになった

数年前なら、IDEを自作するという発想そのものが正気ではありませんでした。実装コストがはっきり下がったこと(→ AIコーディングがもたらすパラダイム・シフト)に加えて、もうひとつ大きいのが自分専用でよいという点です。

売り物の道具は誰にでも合うように作らなければならず、その汎用性がそのまま重さになります。自作なら先ほどの4用途を満たせば済むので、要らないものを積まないという判断を、そのまま実装に落とせます。

Wisp — ひとつのウィンドウに複数のClaude Code

3ペインの単一ウィンドウで、タブもターミナルもありません。左がプロジェクト一覧とSessions / Files / Changesの3タブ、中央がチャット、右がコード・diff・Markdownの兼用席です。

プロジェクトを開くとclaudeが1本起動し、別のプロジェクトへ移っても止まりません。4つ開いていれば4本が同時に走っていることになり、どれが自分の返事を待っているのかが常に見えるところに出ています。

ネイティブで作ると常駐40MBで収まる

SwiftとAppKitで書いています。4プロジェクトを開いた状態での実測は次のとおりです。

常駐メモリ 38.8〜39.5MB(1プロジェクトに2会話ずつ、計8本のclaudeを走らせた実運用の条件でも46〜71MB)
起動 0.19〜0.21秒(ウィンドウが出るまで)
プロジェクトの切り替え 8.2ms(中央値)
応答1行の受信から画面反映まで 0.058ms(中央値)
過去セッションの全文検索 1ms前後(3万件のメッセージに対して)

数字そのものより、空けたCPUとメモリの行き先のほうが大事です。claudeは1本あたり340MBほど使うので4本で1.3GBになりますが、こちら側を40MBに畳んでおけば、そのぶんはまるごとAIとそのツールに回せます。

気づかないことがいちばん損をする

複数プロジェクトを並行させて実際に困ったのは性能ではなく、合図を取りこぼすことでした。ターンが回っているあいだ、人は別のウィンドウを見ています。

そこで状態(実行中 / 入力待ち / 完了 / エラー)を5つの層に出しました。メニューバーの常駐項目、Dockバッジ、通知センター、サイドバーのドット、そして音です。本命はメニューバーで、通知が流れて消えるのに対してこちらは残り続けます。開けばプロジェクトごとに「いま何を待っているか」がBash · 4.2sのように並び、クリックすればその会話まで飛べます。

さらに、通知のバナーからそのままAllow / Denyを返せます。 ただしボタンを付けるのは、バナーの本文が要求を言い切れているときだけにしました。押す人が読んでいる文が、許可の対象そのものでなければならないからです。この粒度は、ネイティブでなければ出せませんでした。

Claude Desktopでできることはひととおりできる

ここは自作でいちばん妥協したくないところなので、基準を1行だけ決めてあります——Claude Desktop版のClaude CodeでできてWispでできないことがあれば、それは穴として数える。

端末エミュレータを埋め込むのではなく、claudeをstream-jsonで駆動してネイティブのUIに描いています。応答はMarkdownとして描画され、ツールの呼び出しはカード、権限の確認はモーダルではなく入力欄の真上に出るバーです。planの承認、AskUserQuestionの質問カード、サブエージェントの入れ子、バックグラウンドタスク、推論Effortのスライダ、チェックポイントからの巻き戻し、画像の添付——ひととおり揃っています。

権限バーとツールカード

権限の確認をモーダルにしなかったのは、複数プロジェクトを並行させることと正面からぶつかるからです。答えないまま別のプロジェクトへ行ってよく、その要求は自分の会話の中で待ち続けます。

読むための機能だけをIDEから持ってくる

AIがコードを書くのであれば、人間の側にLSPは要りません。例外は定義ジャンプ(Go to Definition)だけで、これはレビューに必須です。

3ペイン。右がコードビューア

シンタックスハイライト 19言語。 右ペインだけでなく、チャットの中のコードブロックも同じ表を引きます
定義ジャンプ 13言語。 ⌘Bか、⌘を押しながらのクリックで飛びます。⌘を押しているあいだ、索引が答えられる識別子だけがリンクの顔になるので、飛べる語と飛べない語が押す前に分かります
検索 PhpStormのFind in Pathに寄せた⌘⇧Fと、ファイル名のファジー検索⌘⇧O

索引はtree-sitterの単層だけで、型解決はしません。名前ベースなので候補が複数になることは前提で、そのときは候補リストが出ます。インデクサのプロセスは1つも起動せず、索引はin-processのSQLiteに置いてあります。先ほどの40MBは、ここを削った結果です。

索引が更新されるのは、プロジェクトを開いたときと、ターンが終わったときと、ファイルを保存したとき。Claude Codeが書いたコードは、そのターンの終わりには⌘Bから見えます。

索引は人だけのものではない

今回いちばん効いたのがここです。Wisp自身がMCPサーバーになり、起動したclaudeに自分の索引と右ペインを4つのツールとして渡します。

Wisp が Claude Code に渡す 4 つの MCP ツール。definition はコード索引を、past_sessions はセッション索引を引き、open と show_diff は右ペインを動かす
ツール 何をするか
definition 名前を渡すと、その定義の位置を返す(コード索引)
past_sessions このプロジェクトの過去の会話を全文検索する(セッション索引)
open 右ペインにファイルを開く。行を指定できる
show_diff そのファイルの未コミットのdiffを右ペインに出す

前の2つは、AIが他の手段では届かない索引に答えさせるものです。「この名前はどこで定義されているか」という同じ問いを、索引ツールで解かせた場合とgrepとReadで解かせた場合とで比べると、入力トークンが1/12、所要時間が1/6になりました。grep経路は8ターンかけて249,957トークンを読み、索引ツールは2ターンの20,424トークンで同じ答えに着いています(1問だけの比較なので倍率をそのまま一般化はできませんが、桁が違います)。索引はもともと⌘Bのために持っているものなので、渡すための追加コストはほぼありません。

後ろの2つは向きが逆で、AIが画面を動かします。 「この関数はここです」と文章で説明する代わりに、右ペインにその行を開いてしまう。読む席が1つしかないので、開けば必ずそこに出ます。

過去の会話を文脈に戻す

past_sessionsを別に立てたのは、これが並行開発でいちばん失われやすいものだからです。

Claude Codeは会話の記録をJSONLで残しますが、それを探す手段は実質ありません。「前に試して駄目だったよね」「その方針は却下したはず」を覚えているのは人間だけで、プロジェクトが4つあれば人間も覚えていません。

Wispは全プロジェクトの過去セッションをFTS5 + bigramで索引しています(日本語で引けます)。3.6GBあった記録が40MBの索引に収まり、検索は1ms前後で返ります。人は⌘⌥Fで全プロジェクトを横断して引き、AIには同じ索引を、そのプロジェクトのぶんだけ渡しています。

効果があるのは「提案する前に、前に決めたことを見に行かせる」ことです。同じ議論を2回やらずに済み、一度却下した案が別の会話で復活することも減ります。

買うのをやめると道具が自分の側に来る

エンドユーザー向けのドキュメントを書き終えたところで、近くLabsから公開する予定です。

バージョン v0.3.0
OS macOS 14以上
CPU Apple Silicon
必須 Claude Code CLI(アカウントと課金はWispの外にあります)

作ってみて分かったのは、道具のほうを自分のワークフローに合わせられることの効果の大きさでした。IDEを買うと、そこに用意された作業の流れに人が合わせることになります。ひとつのウィンドウに4本のclaudeを並べ、返事を待っているものを常に見えるところに置く——この形は、売り物の中には見当たりませんでした。

書くことがAIに移ったあと、人間の側に残るのは読むこと・判断すること・差し戻すことです。その3つのためだけの道具は、まだ誰も売っていません。

PRODUCT — Wisp

AIエージェントとの協働に特化したmacOSネイティブの統合開発環境。複数プロジェクトのClaude Codeを1つのウィンドウで並行させ、どれが返事を待っているかを常に見えるところに置きます。v0.3.0。

WHY — 自作の理由

書くのがAIに移ると、IDEに残る仕事は読む・判断する・差し戻すの3つだけ。その3つのためだけの道具は売られていないので、自分で作りました。

お問い合わせはこちらから
OPERATIONAL UPTIME ----:--:--:-- TOYAMA, JP DELIVERED 000 / HW 000 --:--:-- JST LABS PRIVACY