1. AI駆動開発部の日常
  2. 51【ゼロから作るか、乗っかる..
51【ゼロから作るか、乗っかるか?】Orca拡張の自作アプリで並列開発
2026-07-21 26:12

51【ゼロから作るか、乗っかるか?】Orca拡張の自作アプリで並列開発

今回は、前回紹介したターミナルアプリOrcaを土台に、僕が作り始めたMacアプリ「メディエーター」についてお話ししています。AIエージェントを並走させるほど、段取りやセッション間の橋渡しといった人間の仕事が増えていく。その世話係ごとAIに任せたい、というのが開発のきっかけでした。
サイドチャットで別のセッションに文脈を渡したり、バッテリー切れ寸前に全セッションの再開コマンドをコピーして残したり。どの機能がどんな面倒から生まれたのかは、本編で語っています。
面白かったのは、阿部さんが同じアプリに別の価値を見つけていたことです。ターミナル表示の読みにくさという積年の不満が解消され、並列作業の上限が一段上がったのだとか。課題の違いがそのまま機能の幅になっていく感覚がありました。
後半は、開発を支えるElectronの話へ。アプリ開発はしんどいと思い込んでいた阿部さんの見方が変わった経緯から、Rustでアプリを作れるTauriへの興味、AnthropicのClaude Fable 5が自作のハードルを下げた実感まで、ツールを自作する時代の空気を語り合いました。気になった方がいればOSS公開も考えているので、ぜひコメントをください。

【関連リンク】
▼Orca(GitHub)
https://github.com/stablyai/orca
▼Orca 公式サイト
https://www.onorca.dev/
▼Electron
https://www.electronjs.org/
▼Tauri
https://tauri.app/

【配信サービス】
▼Spotify
https://open.spotify.com/show/5b4x1u0M2f0Kmr1Xnv1Z7r?si=12580ee9ade0414e
▼Youtube
https://youtube.com/@ai-nichijo-fm
▼Apple Podcasts
https://podcasts.apple.com/jp/podcast/ai%E9%A7%86%E5%8B%95%E9%96%8B%E7%99%BA%E9%83%A8%E3%81%AE%E6%97%A5%E5%B8%B8/id1843990202
▼amazon music
https://music.amazon.co.jp/podcasts/4fd4926b-a654-4dc7-a858-01ff5e0e8c25/ai%E9%A7%86%E5%8B%95%E9%96%8B%E7%99%BA%E9%83%A8%E3%81%AE%E6%97%A5%E5%B8%B8
▼stand.fm
https://stand.fm/channels/68dc82a9036795923c400b4f
▼LISTEN
https://listen.style/p/ai-nichijo-fm?xtIZk9qq
---
stand.fmでは、この放送にいいね・コメント・レター送信ができます。
https://stand.fm/channels/68dc82a9036795923c400b4f

感想

まだ感想はありません。最初の1件を書きましょう!

00:00
こんにちは、AI駆動開発部の日常へようこそ。 このポッドキャストは、日々AI駆動開発を行う
企業課の山本とエンジニアの阿部が、 AI駆動開発のリアルを緩く語り合う番組です。
はい、じゃあよろしくお願いします。 よろしくお願いします。
はい、ではですね、今回は前回、Orcaっていう ターミナルアプリの紹介したかなと思うんですけれども、
それを活用して、自分たちで開発を円滑にする みたいな仕組みを作っているので、
そちらのどんなことをしているかみたいなことが シェアできたらなというふうに思っております。
よろしくお願いします。
はい、じゃあざっくり前回のおさらいみたいな ところなんですけれども、Orcaいろいろ
CLIで操作もできて、モバイルアプリも かなり優れていて、外出てる時も操作可能で、
かなりいいよねっていうところだったんですけれども、 そこから
一応2つというか、僕がOrcaをラップしたような アプリを作り始めたんですけれども、
僕の中で2つ課題があって、その課題解決のために ちょっと作っていきたいなっていうのと、
あとはMacアプリ作るのどのくらい大変なんかな みたいなのも含めて、ちょっと裸を得たかったっていう
意味合いで作り始めたんですけれども、 1つ目がOrcaでオーケストレーションする仕組みが用意されてる。
阿部ちゃんが言ってたように、CLIベースで新しいセッションを AIエージェントごとセッション立ち上げられるみたいなものもそうだし、
Orcaが用意しているスキル、オーケストレーションのスキルは、 そのCLIを使ってセッション同士がやり取りできるみたいな
仕組みが使われてる。 これってコーデックス、クロードコード、オープンコード関係なく、
どのハーネスにも依存せずに、どのハーネス同士でも やり取りができるみたいなのがあるんで、
これめっちゃいいなっていうふうに思っていて、 そうすると僕が結構面倒くさいなぁみたいな思ってたのが、
複数のセッションで検討を走らせた時に、
いっぱい検討させたけど、どこから始めたらいいんだっけ? みたいなのとか、あと2つのセッション、
例えば4つぐらいセッションしているうちの2つのセッションが、おそらく近しそうなんだけど、
03:00
だから一括でやった方が良さそうなんだけど、
それを経緯も含めて、もう一回既存のAI、もしくは新しいAIにその経緯含めて伝えるのって結構面倒くさいみたいな、
まとめさせて、言語化させて、それを新しいAIエージェントのセッションを立てて、
シェアして、じゃあどこから始めるのがいいのか? みたいなのとか、それやった結果、
じゃあ実際に分離し始めた方がいいよ、みたいな話かもしれないし、 その努力の結果、そういうのが結構面倒くさいなって思った時に、
複数セッションのコンテキストをわりと分かった上で、
段取りを決める、複数セッションを監視しながら、 こいつここ今やろうとしてるから、お前ここやらなくていいんだよ、みたいな話とか、
お前その動きおかしいから、こういうふうにやりなよ、みたいなアドバイスを送る、みたいなのとか、
今まで人間がやってたことがオルカを返してできそうだな、みたいな感覚が、
それでアプリを開発し始めた、みたいなのが経緯としてありますと、
後で具体的にどういう機能があるのか、みたいな話できたらと思うんですけれども、
それともう一つが、全員がエンジニアというか開発知識があるわけじゃないチームなんで、
けど非エンジニアの人でもクロードコールとかを扱ってもらった方がいいなっていう段階に来てて、
やっぱチャットアプリだけ使ってても、そこでできた成果物を資産にしていく、みたいなのがなかなか難しいな、みたいな感覚があって、
なんでクロードコールとかコーデックスとか、できればオープンコールとかも使っていってほしいな、みたいなのがあって、
それにはちょっとオルカでもいくら見やすいとはいえ、ターミナルっぽいこのアプリだと、
ちょっと見づらいというか、抵抗感あるなっていうのと、
あとコーデックスとかクロードとかの純正アプリとかもあると思うんですけど、
それだと非エンジニア向けにチューニングされているわけじゃないんで、
非エンジニアの人が見やすくなるための機能みたいなとか、そういうのは作り込まれなさそうだな、みたいな感覚があって、
非エンジニアがクロードコールとかコーデックスとかを上手く使いやすいように、わかりやすく使えるような感じで使えるっていうのと、
あとは俺がめんどくさい作業をAIが代わりにやってくれるっていう、この2つを目的として作り始めたっていうのがあります。
オルカができることが割とあるから、それをラップしながらわかりやすくやっていっているみたいなのが基本メインであるっていう感じです。
06:10
具体的にどんな機能があるかみたいなんで言うと、まずサイドランっていう機能。
最近だとコーデックスでも確かクロードのアプリでも搭載されたのかな。カーサーでも確か搭載されたのかなと思うんですけど、サイドチャット機能ですね。
サイドチャット機能を例えばクロードコードで走らせてたんだけど、そのセッションを解釈してわかりやすく教えてほしいってあったりとか、
これを解釈してこの部分だけ別でやってほしいみたいなことが一応できるようになった。しかもその時にクロードコードとかだとクロードコードでしかできないんですけど、
コーデックスのセッションで引き継ぐみたいなこともできるっていうのが結構便利なところかなって思っていて、
かつあとリポジトリ横断でどのワークツリーのセッションでもそのセッションのコンテキストを渡せるっていうところも結構俺的にはいいところかな。
複数セッションのコンテキストを渡したりもできるみたいな。
これ便利だよね。サイドチャットで起動するときに他のコンテキストを渡すってこともできるし、
普通に新しいセッションをスタートして会話している中で他のセッションの情報を見てみたいなのを、
結構選択チェックボックス、サイドパネル、サイドメニューのところに実行しているセッションの一覧があって、
それを選択するとすぐコンテキストを注入できるようになっているから結構便利だよね。
あれ結構便利よね。
あと最近ね、僕がヒーエンジニアの人向けに作った、これもサイドチャットの応用ではあるんですけど、
簡単説明機能っていうのをやってて。クロードコードとかからもそうだけど、質問が来るけど専門用語ぐらい過ぎて意味わからんみたいな。
あれを簡単説明ボタンをポチって押して、質問解説っていうのをボタンをポチって押すと、
HTMLで分かりやすく使いしてくれて、全体構造がこうで、今こういう質問が来てて、これが推奨なんだけどそれはこういう理由で、
他のやつを選ぶとこういうトレードオフがあるみたいなのを全部説明してくれるみたいな機能。
あと作業状況解説みたいな、これは僕も結構使うんですけど、でっかい計画とか進めてて、特にコーデックスとか何やってるのかよく分かんなくなる時があって、
何なんでしょうね、UIで割と隠蔽化されてるせいか分かんないけど、そういう時に今どういう状況なんだろうみたいな時に、
09:07
その作業状況を解説ってしたら、サイドチャット的なのが開いて、そこでHTMLで今こういう計画全体で進んでて、ここまで終わってて、今ここでみたいな。
しかもさらにサイドチャットは普通に素の新しいAIアジェントのセッションを作ってるだけだから、そこからさらにこういう風にするのどうだろうみたいな質疑応答ができたりとか、
何だったらそのまま実装を進めてくれるみたいなことができたりとかするみたいな感じの機能になってて、これもクロードコード、オープンコード、コーデックス、どれでも指定して立ち上げれるみたいな感じになってて、これもなかなか。
便利だよね。例えばクロードコードの純正のサイドカーというかサイドチャット機能、BTWとかは追加質問ができないとかっていうのがあったりするからね。
それが追加質問したり、そのまま指示出して何か作業してもらったりとかっていうのができるの結構便利だなって思うよね。
あとクロードコードで実装してて、横でコーデックスにレビューさせたいみたいな、今の作業した時にも使ってる。
割と固く進めたいなみたいな時に、その時にまだ今開発してこれから検証みたいな感じだけど、見守り機能みたいなのを作ってて、
それが10分とか30分とか指定してると、そのサイドチャットが開いて、そのセッションの状況がどうか、もしアドバイスが必要だったらアドバイスをそのセッションに対して送る。
自分でもユーザーの使用に、ユーザー体験とか使用に関わりそうなことの問題であれば、通知してくれる、教えてくれるみたいな機能を作ってて、
10本機にセッションが開始されて、機能も今作ってて、だからやっぱセッション横断で色々なセッションのコンテキストを渡し合えたりとか、
メッセージ送り合えるっていう機能はかなり有用で、できることの幅がめっちゃ増えた感覚が僕的にはあるんですよね。
そうだね。こういうのができるようになったのも、結局ORCAが結構、ターミナルの中身を見に行けるような仕組みとか、
あとはエージェントをそれぞれ動かす仕組みとか、CLIで操作できるっていうのが、かなり揃ってるからこそできるようになったなって感じがして、
これをね、いつから僕らが作ろうと思ったら結構大変だったけど、ORCAを中継するっていうアプローチで今アプリ作ってると思うんだけど、
12:04
これをやることでかなりショートカットして、しかも結構使いやすいようになってるよね。
あと、全セッション再開コマンドのコピー機能って面白いよね。
これね、そうそうそうそう。一応ORCAにも全セッション再開するような機能自体はあるんだけど、やっぱりちょっとバグってるところがあったりして、
これ全セッション再開ボタンを押すと、これもORCAのCLIのコマンドを叩けるようなものをクリップボードにコピーしてくれるだけなんだけど、
これで一撃で全部再開ちゃんとされるっていうのも便利だよね。
アベちゃんはMac mini使ってて、家に帰る時とか全部遮断しないといけないから、それを全部もう一回再起動しないといけないのがだるいみたいなんで。
そうなんですよ。あんまりいないと思いますけどね、Mac miniを持ち歩いている人なんて会社とお家で幸福するなんて。
僕はコスパだけ見て安くいいマシンとしてMac miniが最適だなと思ったから、会社にモニターもあるし、家にもモニターあるからっていうので、Mac miniをリュックにいつも入れて持ち運んでるっていう感じなんですけど。
だからこそ欲しかった機能ですよね。
けどね、俺も出張で山奥とかに行く時があって、その時にもうどうしようもない時があるわけですよ。充電がなくなって全部切れちゃったみたいな。
その時にその10円あと1%みたいな時にこの全選手の再開コマンドでコピーしておいて、スナックリ投げておいてみたいなやつら、そういう時は使えたね。
あー良かった。
意外とあるのかもしれない、もしかしたら。
確かに意外といるかもしれないね、そう考えると。バッテリー切れとかもあるか。
そうそうバッテリー切れとかだったらどうしようもないからね。
そうだね。
うん。まあオルクは結構セクションの耐久性が高いから、前回の話でもあったけど。
うんうん。
っていうのはあるけどって感じよね。
そうだね。
あと何だろうね、まあとりあえずその、なんか常駐監視というか、人間の代わりにお世話してくれるエージェントが1人立てれるっていうの結構デカいなって思ってて。
まあそうね、あとまあヤマちゃん的にはそういう、まあなんか監視してくれるとか、コンテキストを横断して渡して統括して実行するみたいな、なんかそういうところに課題感があったのかなと思って。
僕的にはなんかあれないよね、あのやっぱターミナル上でエージェント色々動かしてると、読むの辛くなってくる問題があって。
15:08
はいはいはいはい。
なんかターミナルで出されるあのマークダウン、疑似マークダウンっぽいやつってやっぱ読みにくいし、あとまあターミナルにマーメイドとか出力された、まあマーメイドって言って、まあ決まったこのフォーマットでプログラミング言語っぽく出力されると、
それをうまくこう図に変換するような仕組みが、まあマーメイドっていう仕組みがあるんですけど、あれを単純に吐き出されると全く読めないっていうのがあって。
なんかそれをAIと会話しながらネイティブにもうプレビューちゃんとしてくれて、会話してるけど、まあターミナルの見にくいプレビューじゃなくて、ちゃんとこうマークダウンが整形された状態で見れるっていうのが個人的には欲しかったんですけど、
そういうプレビューみたいなのがですね、なんかあんまりAIエージェントを全部統合して、まあオープンコード、コーデックス、クロードコード、全部見れますみたいなのはあんまり今ない、まあずっとないんですよね正直。
使えるやつもいくつかあったりするんですけど、なんか結構機能が少なかったりして、なんかいろんなセッションをバーッとこう見ていく中で結構こうフラストレーションが溜まりがちだったんですけど、なんかそういうのを全部見やすくとか操作しやすくっていうのを、僕はひたすらこの今作ってるアプリに指示を出してめちゃくちゃ見やすくなってるので、
なんか結構作業を今まで複数で並列してやっていたものの最大数がちょっとまた引き上がったような感覚が、これはすごく嬉しいですね。
たしかにね、あーなんかわかる、まあオルカー使い始めてからかな、まあ俺は、まあメディエーターもそうだ、メディエーターっていうその自分たち作ってるやつはメディエーターっていう名前でやってるんですけど、あのー、そう並列開発がめっちゃやりやすくなった。
結構ね、簡単に言ってたら変だけど、割とエレクトロンでサクッと作れちゃうからが、みんなさ、おすすめですって感じですね、これは自分たち用に作ってるけど。
エレクトロンは思いのほか簡単に、まあ簡単なのかわかんないけど、僕はもうAIにちょっとエレクトロンはもうやってもらう感じなので、あんまり詳しいこと、僕もね正直ここは理解してない中でやってるんですけど、全然そんなに、
もともと僕アプリ開発、Flutterとか、それこそSyncとかやったりしてたんですけど、結構大変なんですよ。そしてAIにやらせるとなると、よりこう、なんかあんまりAIが得意じゃないのか、うまくワークしてくれないことが多くて、なんかバグがあって、
18:21
サクサクコード書いてくれてバグもなく、普通に実装してできましたね、動いてるみたいな。しかもエレクトロンっていうウェブの技術を使っているから、プレイライトとか、そのE2Eテストを素直に書いて実行できるっていうのがまた良くてですね、かなりAIと親和性が高く開発できる。
アプリ開発しんどいっていう僕はずっとマインドでいたんですけど、このエレクトロンでMacアプリ限定にはなっちゃうんですけど、かなり楽にできるんだなっていう成功体験を得ることができます。
いいよね、ほんとに。
ちょっとしただからツールとかをエレクトロンで作ってもらうは、1個ありなんかなって。
ちょっとね、ビルドして配布するとか、そこまで行こうとすると、Appleのデベロッパーアカウントが必要で年間1万円かかるとか、そういった障害はありつつも、手元で動かすときは割と十分かなって。
本当にそう思います。タオリもね、ちょっと気になるけどね。
そうだね、エレクトロンと同じような感じでね、アプリを作れる。あれ?ゲームってラストなんだ?
ラストかな?ラストって言ってたと思う。
確か。
ちょっと気になるよね。
あとなんかベータ版ではあるけど、iOSやAndroidにも対応してるらしい。
そうなんだ。
うん。
ちょっとモバイルアプリ作りたいなって気持ちが湧いてきてるので。
ね。モバイル系もいけるんだったらよりいいよね。
いや、ほんとに。
いやー、結構ツールを自作する時代が来てるなっていうのを感じちゃいますよね。
いやー、感じますね。
うん。
やっぱりモデルがフェイブルになったことっていうのはまた大きいかなと思ってますけどね。
今までだったらアプリを作ってもらおうと思って、
これはちょっとね、自分が普段やってる業務を楽にするとか、ちょっとモヤっとしてるのを改善してもらうのって、
ある程度言語化できてAIに指示出せるとはいえ、
結局メンテしてとか、手掛けて指示出ししてっていうところのコストが意外と高いのでなかなか手掛けられないっていうのが僕の中ではあったんですけど、
21:10
これがフェイブルになったことによって、アンソロフィックのフェイブルモデルが出たことによって、
今までわりとザクッと教えてうまくいかないなっていうのがフェイブルだと、
上手くこう前回もフェイブルの時に話したように現実世界をよく知ってるというか、
限界をよくわかってるし、それに対する妥協案の提案とかもよく筋が良かったりして、
わりと手放しで開発してくれるようになったから、
ちょっとモヤっとしてるけどツール化して便利にできそうだなっていう思いがあったら、
フェイブルに投げて、今回みたいにメディエーターってやっぱりポンと作ってくれて、
あとはそれに対してフェイブルにどんどんこういうの使いにくいんだけどって言ったら、
もうかなり使えるアプリになるっていうのはすごい時代になってますよね。
本当にそう思います。
ただなんかこういうオルカみたいに、やっぱり接続点をどう増やすとか、
AIエージェントのランタイム側というか、メッセージを立ち上げてセッションを保持してあげるとか、
その辺って結構多分大変だと思うんですよ。
実際にそこに対していろいろ、ある意味多分TMAXも同じようなことをしてて、
だから一応そのメディエーターはTMAXも対応するように作ってはいるんですけど、
そういう設置面をどういうふうに、CLIでオルカだと全部操作できるようにしてくれてるみたいなとか、
そういうエージェン対エージェントでも使用感がいいというか、できることが多いっていうのは結構重要なんだろうなっていうのをある意味感じますよね。
僕らでいう外面のメディエーターみたいなのは、みんなが自作していて、
けどコアな部分とか一番だるいと感じる部分に関しては、オルカ側に預けとくみたいな。
そうすると本当に真に自分たちが欲しいUI、UXの革新部分だけやっとけるから、
結構すぐに価値感じたなって思ってて、メディエーター。
これ多分オルカっぽいのをゼロから始めようみたいな感じになった瞬間、結構積んでた気がするよね。
どんだけ楽になったからといってとはいえって感じだから。
そうだね。だからこそちゃんと束ねてインターフェイス化するというか、標準化してその価値を提供してあげるっていうことの重要性が、
より今後開発していく中では重要になっていくかっていうのを気づかされるよね。
24:02
そうだね。やっぱオープンコード、コーデックス、クロード、PIとかもそうだけど、
何でも動かせてそれにどこに対してもコンテキスト引っ張ってくれるみたいな。
コンテキスト引っ張ってくる部分はどっちかというとそれぞれに個別最適してやってるんだけど、実装的にはね。
まあけどとはいえそのメッセージ送ったりとか、いわゆる面の部分を標準化してくれる何かがいるだけで、
ここまで変わるかみたいな感覚があるから、そういう役割のサービス作りみたいなのは、
意識しながらしないといけないなっていうのはすごい今回のメディエーター作る上でも感じたところだね。
そうだね。
本当にそんな感じかな。じゃあ今日はオルカ最高っていうところから、
オルカの上に乗っかってちょっとこうそういうのを作ってみてますっていうところの話となりました。
じゃあそんなもんかな。
はい。
はいじゃあありがとうございました。
ありがとうございました。
本日もAI駆動開発部の日常をお聞きいただきありがとうございました。いかがでしたでしょうか。
今回は前回話したオルカというターミナルアプリを拡張というか上に乗っかるような形で、
メディエーターっていう自作アプリを作り始めてるんですけれども、そちらについてのシェアでした。
社内的にはみんなで使っていて結構便利に使われてるなみたいな印象はあるので、
もしなんかコメントとか使いたいよみたいな人がいたらOSSとして公開するみたいなのもありなのかなというふうには思ってはいるので、
ぜひなんか気になった方とか使ってみたいとかっていう方いたらコメントとか頂戴できますと幸いです。
こんな感じでAI駆動開発について色々試したりとか自分たち作ってみたりして喋っているので、
もしこのPodcast気に入ってくれた方は、いいねやフォロー、高評価ぜひお願いいたします。
それではまた次回もお楽しみください。バイバイ。
26:12

コメント

スクロール