アーキテクチャとコード
アーキテクチャとコード
プラットフォームはどう構築されているか
エージェントシステム全体、そして領域ごとに1ページ — プラットフォーム、オーケストレーション、チャネル、エージェントランタイム。
5つのセクション
セクション 01エージェントシステムUIの下にある全システムを一つの文書に — エージェントシステム、オーケストレーション、チャネル、そしてハーネス/エージェントランタイム。セクション 02プラットフォームサービス境界と責務、エージェントシステム、そして横断的関心事 — デプロイ、セキュリティ、コードマップ、設計原則。セクション 03オーケストレーション企業、エージェント、起動、実行、ライブイベント — そしてそれらを駆動する運用シーケンス。セクション 04チャネルWhatsAppとTelegramの受信、ディスパッチ、そして共有の送信メッセージツール。セクション 05エージェントランタイムハーネス — ランタイムインターフェース、インボーカ、アダプタ対ランタイム設定、環境レイヤー、実行スコープ認証。GitHubで ↗モノレポLIFEOSAIはgithub.com/metaweavehqにあります。エンゲージメントクライアントには読み取り権限を付与。ご要望により完全オープンソース化も可能。
LifeOSAIアーキテクチャ
スタンドアロンのアーキテクチャパック — インラインスタイルのみ、リモートアセットやランタイムスクリプトはありません。上部の全画面ボタンをご利用いただくか、新しいタブで完全な図を開く ↗。
図のセット
-
全システムアーキテクチャ
- 外部のエントリ面:ブラウザ、Tauriデスクトップ、チャネル、オペレーター、CI。
- ブラウザ向け制御プレーン:
apps/web、apps/auth、apps/user-management。 - プロダクトドメイン:LifeOSAI Chat、LifeOSAI Companies、LifeOSAI Apps。
- ランタイムプレーン:
apps/api、企業オーケストレーション、起動、スケジューラ、エージェントインボーカ、ライブイベントバス、ランタイムアダプタ。 - データと運用:データベース、ワークスペース、トランスクリプト、企業ファイル、スキル、アーティファクト、ログ、ヘルスチェック。
- クラウドとローカルのレーン:同じプロダクトAPI、異なる実行ロケール。
-
企業オーケストレーションランタイム
- 作業ソース:課題割り当て、課題コメント、承認、ルーチンタイマー、ハートビートタイマー、ダイレクトチャット、即時実行、チャネル受信メッセージ。
enqueueWakeupがソースとコンテキストのスナップショットを伴うキュー入り実行を作成。- スケジューラが対象作業を取得しランタイム呼び出しを開始。
- エージェントインボーカが実行スコープのベアラートークンを発行し、環境、cwd、モデル、アダプタメタデータを組み立てる。
- ランタイムアダプタが実行ログ、アクティビティ、課題更新、企業ライブイベントを発行。
- 実行ステータスとエージェントステータスは意図的に分離。
-
LifeOSAI Chatシステム
- 通常のLifeOSAIチャット。
- 企業エージェントとのダイレクトチャット。
- ライブ実行トランスクリプトモード。
- 完了済みトランスクリプトの再生。
- ファイル、スポットライト、スキル、コネクタ、プラグイン、ランタイム/モデル選択。
- セッション一覧は限定的に保ち、メッセージ検索は既知の企業エージェントのトランスクリプトパスを解決可能。
-
チャネルアーキテクチャ
- WhatsAppとTelegramの受信。
- チャネルレジストリとセッションメタデータ。
- チャネルからエージェントへのディスパッチ。
- 共有の送信ツール契約:Claude Code向けの
mcp__channels__messageと、Pi Agent向けの等価ツールパス。 - 配信監査により受信および送信メッセージが企業、エージェント、実行、チャネルセッションに紐付けられる。
-
ランタイムアダプタとツールプレーン
adapter_config:プロセス環境、cwd、コマンド、引数、モデル、インストラクション検出、アダプタ固有の実行ノブ。runtime_config:ハートビートポリシー、スケジューラポリシー、将来のセッションコンパクションポリシー。- エージェント環境とプロジェクト環境は同じバインディングモデルを共有し、衝突時はプロジェクト環境が優先。
- シークレット参照は企業スコープで、書き込み時に検証され、呼び出し時に解決され、永続化された出力抜粋からは秘匿化される。
-
クラウドとローカルのデプロイ
- クラウド:GCPプロジェクト
lifeosai-481608、リージョンasia-south-1、Cloud Runサービス、Compute Engineエージェントランタイムコンテナ、Artifact Registrydocker-images、クラウドデータベース、ワークスペースストレージ。 - ローカル:Tauri 2.0デスクトップラッパー、ポート3000/3001/3002/4000のサイドカー、ローカルデータベース、
~/LIFEOSAI、~/.lifeosai/companies。
- クラウド:GCPプロジェクト
-
セキュリティ、データ、可観測性
- ユーザー認証と実行認証は分離した境界。
- エージェント向けAPIは
Authorization: Bearer $LIFEOSAI_RUN_TOKENを要求。 - 企業アクセス、シークレット参照、ワークスペースパスはそれぞれの境界で検証される。
- アクティビティログはアクター、エンティティ、アクション、エージェントID、実行ID、詳細を保持。
-
運用シーケンス
- 課題割り当て。
- エージェントとのダイレクトチャット。
- ルーチンタイマー。
- チャネル受信。
- シークレット環境変数の解決。
ソースアンカー
図のメンテナンスに役立つコードアンカー:
| パス | 責務 |
|---|---|
apps/web | LifeOSAIブラウザアプリ、静的エクスポート面、チャット/企業/アプリのシェル。 |
apps/tauri | ローカルデスクトップラッパーとサイドカー境界。 |
apps/user-management/src | 中央のブラウザ向けルーティングハブ。 |
apps/user-management/src/sessions/reader.ts | Claude CodeとPi Agentセッション向けのチャット/セッショントランスクリプトリーダー。 |
apps/api/src/orchestration/engine/heartbeat.ts | ハートビートスケジューラと実行ライフサイクル。 |
apps/api/src/orchestration/engine/wakeup.ts | 起動キューのヘルパー。 |
apps/api/src/orchestration/engine/agent-invoker.ts | ランタイム呼び出し、環境変数の組み立て、実行トークンの注入、イベント発行。 |
apps/api/src/orchestration/engine/event-bus.ts | 企業ライブイベントバス。 |
apps/api/src/orchestration/routes/middleware.ts | エージェントAPI向けの実行スコープベアラートークン認証。 |
apps/api/src/channels/dispatch.ts | チャネルからエージェントへのディスパッチ。 |
apps/api/src/channels/message-tool.ts | mcp__channels__message。 |
packages/agent/src/runtimes | Claude CodeとPi Agentのランタイムアダプタ。 |
packages/shared/src/orchestration/constants.ts | ライブイベント型定数。 |
packages/shared/src/orchestration/types/live.ts | 型付けされたライブイベントペイロード。 |
packages/shared/src/orchestration/env-config.ts | 環境バインディング、正規化、シークレット参照処理、秘匿化ヘルパー。 |