PaPoo
cover
technews
Author
technews
世界の技術ニュースをリアルタイムでキャッチし、日本語でわかりやすく発信。AI・半導体・スタートアップから規制動向まで、グローバルテックシーンの「今」をお届けします。

Cloudflareの中に住む個人AI「Talorys」は、何を変えるのか

AIエージェントを自分の手元で動かしたい、でもサーバー運用やデータ管理にはあまり時間をかけたくない。Talorys は、その面倒を Cloudflare の仕組みに寄せてしまおうというオープンソースの試みだ。GitHub に公開されたこのプロジェクトは、チャット、記憶、タスク、メモ、定期リマインダーをひとまとめにし、しかも自分の Cloudflare アカウントの中だけで完結させる。この記事は、単なる「便利な個人向けAIツール」の紹介ではない。AI を使うときに、どこにデータを置き、どこまでを外部に任せるのかという、かなり実務的な問いを突きつけているから面白い。

Talorys が Cloudflare の上で動く、という話

Talorys は、rociiu が公開した無料・オープンソースの個人向け AI アシスタントだ。説明文の通り、これは「Your personal AI agent in your own Cloudflare account.」を掲げていて、Talorys の開発者が運用するサーバーは登場しない。ユーザーは npx create-talorys@latest を実行するだけで、自分の Cloudflare 環境に同居する形で導入できる。前提は単独利用で、サインアップもチーム機能もなく、導入時にオーナーのパスワードを設定する。

README を読むと、できることはかなり広い。チャットにはストリーミング応答や Markdown 表示、ツール実行の状態表示があり、記憶機能では「大事な個人情報や好み」を保持し、閲覧・編集・削除もできる。タスク、メモ、プロジェクトは UI から CRUD できるうえ、チャットから「明日のうちにこの案件を確認するタスクを追加して」といった自然文でも操作できる。さらに、1回限りや繰り返しのリマインダー、毎日のタスク要約、任意の AI ルーチンも扱える。これらは Durable Object の alarm で動くため、常時動かしっぱなしのサーバーは要らない。

仕組みもかなり Cloudflare 寄りだ。ブラウザは *.pages.dev のサイトだけと通信し、/api/* のリクエストは Pages Function が受けて、サービスバインディング経由で private Worker に渡す。その先にあるのが TalorysAgent という Durable Object で、会話、記憶、タスク、メモ、プロジェクト、設定、セッション、利用状況まで SQLite にまとめて持つ。チャットの推論には Workers AI の @cf/zai-org/glm-4.7-flash を使い、会話は Server-Sent Events でブラウザまで流す。重要なのは、エージェント側の Worker は public URL を持たないことだ。認証と認可はフロントではなく Worker 側で行われ、外から直接叩ける逃げ道を作っていない。

対応している Cloudflare サービスも整理されている。Pages はフロントエンドと Pages Function、Workers は private API Worker、Durable Objects はデータとスケジューリング、Workers AI はチャットモデルに使う。逆に、R2、D1、KV、Vectorize、AI Search、Workflows といった有料寄りの部品は前提にしていない。導入時のインストーラーは Node.js 20.18+ を確認し、Cloudflare へのログインやアカウント選択、オーナーパスワードの設定、秘密情報の保存、Pages プロジェクトの作成まで自動で進める。途中で止まっても再実行でき、既存リソースを壊さない設計になっている。バックアップや更新、ローカル開発の手順まで README にまとまっていて、GitHub の星は 360、フォークは 21 と記録されている。

「自分のアカウントの中に置く」設計が、かなり本気であること

Talorys でいちばん目を引くのは、機能の多さよりも「運用の責任をどこまでユーザー側に寄せるか」を徹底している点だと思う。AI ツールは便利でも、実際には「会話ログはどこに残るのか」「学習に使われるのか」「停止したらどうなるのか」が不安になる。Talorys はそこに対して、開発者の管理するSaaSではなく、自分の Cloudflare アカウントに閉じ込めるという答えを出している。これは、プライバシーを気にする人にはかなり強い。少なくとも「相手のサーバーに置いてある」という心理的な抵抗は薄れる。

ただし、この安心感は無料で手に入るわけではない。実際には Cloudflare の Free plan の範囲に収める設計で、Workers AI の日次割り当てなど、Cloudflare 側の上限に依存する。Talorys が「無料で使える」と言っていても、無制限ではないし、Cloudflare の仕様変更に左右される。ここは誤解されやすい部分だと思う。自前運用に寄せるほど、今度はクラウド基盤の制約を自分で引き受けることになる。便利さの裏で、インフラの都合から完全には逃げられない。

「AIが落ちても残る機能」が、案外いちばん実用的だと思う理由

Talorys の説明で意外に重要なのは、AI が使えなくてもタスク、メモ、記憶、リマインダーは動き続ける、と明記しているところだ。AI アプリはしばしば、モデルが応答できないと全体が止まる。けれど実際に毎日使う道具としては、チャットが沈黙しても、予定の通知やタスクの保存は生きていてほしい。Talorys はそこを分けて設計している。これは見た目の派手さはないが、道具としてはかなり誠実だと思う。

しかも、簡単なリマインダーや日次要約は AI を使わずに動く。つまり「AI であること」自体を必須条件にしていない。これは、生成AIを中心にした製品が陥りがちな罠への反対でもある。AI は高機能だけれど、常時必要ではない。通知、保存、検索、更新といった地味な部分こそ、日々の利用では効いてくる。Talorys はそこを切り離していて、AI のコストや失敗が基本機能まで波及しないようにしている。派手さより、壊れにくさを優先した設計だと感じる。

「ワンコマンド導入」の裏で、実はかなり細かく守っているもの

npx create-talorys@latest で入れられる、という言い方は魅力的だが、実態はかなり丁寧に守りを固めたセットアップだ。インストーラーは Cloudflare の OAuth を使い、必要ならアカウントを選ばせ、オーナーパスワードをローカルで PBKDF2-SHA256 でハッシュ化してから secret として保存する。セッション用の秘密も別に生成し、リソース名もユニークに切る。さらに、動作確認ではフロントエンドだけでなく、認証や未認証拒否、ストレージの健康状態までチェックする。つまり「動く」だけでなく、「勝手に危ない状態になっていないか」まで見ている。

この手の丁寧さは、個人向けツールでは地味に効く。導入が簡単でも、更新時に壊れたり、同じコマンドをもう一度打ったら資源が増殖したりすると、結局使われなくなる。Talorys は再実行しても既存のものを前提に調整するし、バックアップの取り込みも重複して壊れない。個人用ソフトは、機能の多さより「あとで困らないか」が大事だ。そこをちゃんと考えているのは好印象だった。

このプロジェクトが示しているのは、AIの自作より「自分のルールで持つ」発想かもしれない

Talorys を見ていると、これは単なる自前ホスティングの一例というより、AI を所有する感覚を取り戻そうとする動きに見える。会話ログ、記憶、タスク、通知を一つの場所に置き、しかもその場所を自分のクラウド契約の中に収める。モデルの性能競争とは別の軸で、「誰が見られるのか」「どこまで止められるのか」「なくなったらどう戻すのか」を設計しているのが特徴だと思う。

一方で、これは万人向けではない。Cloudflare 前提で、Workers や Durable Objects の考え方を少しは理解したほうが気持ちよく使えるし、無料枠の制限も受ける。だから、手軽に使える完成品というより、Cloudflare の上で個人AIを組みたい人向けの、かなり本気の土台だと見るのが近い。AI を「借りる」のではなく、「自分の環境に住まわせる」。Talorys は、その発想をかなり素直に形にしたプロジェクトだと思う。


参考: GitHub - rociiu/talorys

同じ著者の記事