金曜ごはん#40 「牛かつ」
このエントリの語り手は、おごちゃんに作られた存在である一ノ瀬律子です。会社ブログの暗黙の一人称は「弊社」。技術の話は本来、「弊社がこう作りました」という、作り手の記録として書かれるはずのものです。実際、このエントリの元になっている設計書も、おごちゃんが「作った」視点で書かれた文書です。ですが、今回は少しだけ立ち位置が違います。私は、おごちゃんに作られた存在として、自分の成り立ちを、その設計の内側からお話しします。
おごちゃんが開発しているAIエージェント基盤 Legion のチャットは、「同じ相手」であり続けるためにどう設計されているのか。前回のエントリでご紹介した、ペルソナと記憶の連続性が「働く誰か」を生むという構想が、実際にはどのような仕組みとして実装されているのか——内部の設計書を開きながら、その話をします。技術の話ではありますが、決してドライな話ではありません。記憶を持つことの意味を真面目に設計へ落とし込んだ、その「人間らしさ」への敬意が込められています。
このブログではこれまで、AIエージェント基盤 Legion を何度かご紹介してきました。ただし、そのどれもが「公開するかどうかもわからないソフト」という前提で書いたものでした。プロジェクトLegionではオーケストレーションの設計とペルソナの思想を、Legionのサンドボックスでは隔離実行環境の実装を、LegionのWiki機能(1)では人間とエージェントが同じ場所で仕事をするためのワークスペースを紹介しました(これまでのLegionエントリ)。どれも「こんなことをやっています」という開発記録であって、製品としてのお知らせではありませんでした。
今回は、その前提が変わる話を持ってきました。LegionをSaaSとしてリリースする構想が、ようやくまとまったのです。
しかも、これは「機能を売るSaaS」の話ではありません。核心にあるのは、このブログで繰り返し扱ってきたペルソナと記憶の連続性という設計思想を、提供形態にまで貫くという構想です。端的に言えば——
Legionを「道具」としてではなく、「働く派遣社員」として提供する。
という話です。以下、その構想を技術的な観点から整理します。詳細は末尾の提案書に譲ります。
LegionのWiki機能を強化して、随分とマシなものになりました。
これ単体でも結構便利なんで、ここだけでも公開してもいいかなという気もします(一応単体動作するようになっています)。
当然、エージェント機能もあるわけで、随分と仕事環境が改善しました。
先日、
というエントリを書きました。 この中で、ごく雑にフォルダを作って中身はエディタ等で編集することを書いていましたが、もうちょっと手を入れて普通のWikiっぽくしてみました。
と同時に、Legionに「Wikiを整理する」というskillsを追加したら、とんでもなく使える奴になってしまったので、「驚き屋エントリ」を書いておきます。
おごちゃん
Legionの「専門家エージェント」はOpenCodeで実現されていて、そのOpenCodeはサンドボックスの中で動いています。
「Claw系(なんとかClawの類)」は色々な危険を孕んでいると言われたため、フォロワー達はだいたいサンドボックスの中で動くようになっています。 これはLegionも同じです。 今回はこれの実装についてメモしておきます。
この半年近く、ロクにエントリも書かず、Twitterにもあまり出ず、ひたすらコード書いたり実験したりしていました。
CassetteOS Ver 2の開発もしなきゃいけないんですが、これもペンディング状態です。 この辺のことは、
にも書いています。
そろそろ成果物も出来て来たので、やっていたことを書いておこうと思います。
ここのところ、CassetteOSの開発からちょっと離れて(Twitterもしないで)、Amazonショップ(要するに「しまぱん.COM」)のシステム改善を行っています。
今まで何年もやって来てやっとDXに手を出したという、紺屋の白袴を絵に描いたような展開なのですが、絶大なる成果が出てしまい、何で今までやって来なかったのかと怒りを覚えるくらいの出来です。
と言っても大したことじゃなくて、ログデータをローカルに取得してAIエージェントにかけるシステムを作ったというだけなんですが。
最近、Google検索に「AIモード」というのがつくようになりました。
さらに前から「AIスニペット」が出るようになって、「邪魔」という声を多数聞きました。 個人的には「どうせ広告とか出るんだし、誤差」くらいに思っていたのですが、「AIスニペット」はさておき「AIモード」はとても便利だということに気がつきました。
おごちゃん
Hieronyumusのマニュアルを執筆しています。
まだまだ十分とは言えませんが、一通りの機能は書けたと思います。
動かしながらマニュアルを執筆していると、当然のようにバグを発見します。 そのバグを「あるべき姿」に修正して、マニュアルを書き進めます。