【Prj.JARVIS】個人AI秘書を最上位司令塔とする分散エージェント・アーキテクチャ

エージェント
  • Prj.JARVIS:ユーザーに直接仕える個人AI秘書であり、システム全体の最上位司令塔。 音声・チャットを窓口に、予定、タスク、個人記憶、ニュース、投資、PC操作などを統括。
  • MiTiR-Base:専門エージェント、サービス、アプリを管理・実行する技術基盤。 JARVISが依頼を判断し、MiTiR-Baseが調査・分析・設計計算などの専門業務を実行。
  • 両者は別リポジトリとし、REST API、将来的にはMCP/A2Aで接続。
  • JARVISはWindowsノートPC(32GB)、MiTiR-BaseはMac mini M4 Pro(48GB)で稼働。 両端末はTailscaleで安全に接続し、MiTiR-Baseをインターネットへ直接公開しない。
  • JARVISは独自の薄いコアとし、OpenAI、Claude、Gemini、Ollamaなどを交換可能。
  • 個人記憶にはSQLite・Markdown・Obsidian、PC操作にはPowerShell・Playwrightなどを利用。
  • 最初のMVPは、JARVISからMiTiRの状態確認、タスク実行、ユーザー承認、結果・履歴保存まで。 JARVIS=あなたとの窓口・最上位司令塔MiTiR-Base=専門家と実働部隊を束ねる業務実行基盤
レイヤー位置づけ
あなた最上位の意思決定者
Prj.JARVISあなたに直接仕える個人秘書・全体司令塔
MiTiR-BaseJARVISから仕事を受ける専門組織の管理基盤
Agents / Services / Apps実際に調査・分析・計算する実働部隊
LLMJARVISやMiTiRが必要に応じて利用する「思考エンジン」

はじめに

映画『アイアンマン』に登場するJ.A.R.V.I.S.のように、音声で人と対話し、予定や情報を整理し、必要に応じて複数のツールや専門AIへ仕事を割り振る――。Prj.JARVISは、この「統合AI秘書・司令塔」を個人環境で実現するプロジェクトである。

ただし、目指すものは単なる音声チャットボットではない。Windows PC、Mac mini、クラウドLLM、ローカルLLM、個人ナレッジ、専門エージェント、既存アプリケーションを一つの窓口から利用できる、長期運用可能な個人AI基盤を構築する。

本稿では、公開されている各種「JARVIS」の調査結果を踏まえ、Prj.JARVISの基本方針、MiTiR-Baseとの役割分担、採用するハードウェア構成、通信方式、そして最初の開発ロードマップを整理する。

世の中の「JARVIS」は同じシステムではない

現在、YouTubeやInstagramには「Hey Jarvis」と呼びかけて、予定確認、メール処理、PC操作、Web調査などを実行する多数のデモが公開されている。しかし、これらがすべて同じフレームワークから派生しているわけではない。

「JARVIS」は特定製品の名前というより、「音声で操作する高度な個人AI秘書」を表す通称として使われている。実装方法もさまざまである。

  • Brahma AI:Pythonバックエンド、Electronのデスクトップ画面、Gemini APIなどを組み合わせた独自実装
  • Claude/Claude Code型:Claudeを中心にGmail、Google Docs、GitHub、PC操作などを接続した個人開発
  • n8n型:ワークフロー自動化、LLM、音声サービス、各種クラウドサービスを接続したノーコード/ローコード構成
  • 独自Python型:音声認識、LLM API、PowerShellやブラウザ操作を個別に統合したもの
  • Stanford OpenJarvis:ローカルファーストの個人AIエージェントを構築する研究・開発基盤

Stanford系のOpenJarvisは、モデル、推論エンジン、エージェント、ツールとメモリ、学習という五つのレイヤーを統合するオープンソース基盤である。Windows用デスクトップアプリも提供され、Ollamaなどのローカル推論を重視している。公式導入ガイド

一方、Prj.JARVISではクラウドLLM APIも積極的に利用する。したがってOpenJarvisを全面採用するより、参考実装・将来の交換可能な実行基盤の一つとして評価する方が適している。

Prj.JARVISの基本方針

Prj.JARVISでは、すべてをゼロから作り直すことも、一つの既存フレームワークに全面依存することもしない。

採用するのは、独自の薄いJARVISコアを持ち、LLM、音声、MCP、記憶、PC操作などには既存技術を組み合わせる方式である。

JARVISコアが担当するのは次の機能である。

  • 音声・チャットによるユーザー窓口
  • ユーザーの意図判定とタスクの振り分け
  • 個人設定、会話履歴、長期記憶の管理
  • OpenAI、Claude、Gemini、Ollamaなどのモデル切り替え
  • Windows上のツールやアプリケーション操作
  • 外部処理を実行する前のユーザー承認
  • MiTiR-Baseへの専門タスク依頼
  • 実行状態、結果、エラー、履歴の提示

これにより、特定のLLMやエージェントフレームワークが変更されても、JARVIS全体を作り直さずに済む。

MiTiR-Baseとは分離して接続する

Prj.JARVISとMiTiR-Baseは、別リポジトリ、別プロセス、別責務で開発する。

システム役割
Prj.JARVISユーザーと対話する個人AI秘書・最上位司令塔
MiTiR-Baseエージェント、サービス、個別アプリを管理・実行する技術基盤
個別アプリニュース収集、投資分析、タービン設計などを実行する専門機能

JARVISは「何をしたいか」を理解し、MiTiR-Baseは「どの専門機能で、どのように実行するか」を担当する。

たとえば「今日のAIニュースをまとめて」という指示を受けた場合、JARVISが要求を構造化し、MiTiR-Baseに登録されたニュース収集サービスへ依頼する。「この条件でタービン性能を計算して」という指示なら、MiTiR-Baseが設計エージェントと解析サービスを選択して実行する。

両者を分離することで、個人の予定・メール・生活情報を扱うJARVISと、研究・設計・アプリ運用を担うMiTiR-Baseを独立して発展させられる。将来、MiTiR-Baseを技術コンサルティングや社内用途へ展開する場合にも、個人秘書機能を持ち込まずに済む。

採用する分散構成

Prj.JARVISはWindowsノートPC、MiTiR-BaseはMac miniで稼働させる。

項目WindowsノートPCMac mini M4 Pro
メモリ32GB48GB
稼働システムPrj.JARVISMiTiR-Base
主な役割音声・チャット、Windows操作、承認、個人記憶専門エージェント、サービス、アプリ、バックグラウンド処理
LLM主にクラウドAPIOllamaのローカルLLM+クラウドAPI
稼働形態使用時に起動原則として常時稼働
接続TailscaleクライアントTailscale経由でサービスを提供

概念構成は次のようになる。

ユーザー
   ↓ 音声・チャット
WindowsノートPC:Prj.JARVIS
   ↓ 構造化されたタスク依頼
Tailscaleプライベートネットワーク
   ↓
Mac mini:MiTiR-Base
   ↓
Agents / Services / Apps / Ollama

WindowsノートPCは「JARVISの顔と手」、Mac miniは「専門組織と計算センター」である。

Tailscaleによる安全なリモート接続

Mac mini上でMiTiR-BaseのAPIサーバーを起動し、WindowsのJARVISからTailscale経由で呼び出す。MiTiR-BaseのAPIを一般のインターネットへ直接公開せず、許可された端末だけが参加するプライベートネットワーク内で通信させる。

MagicDNSを利用すれば、変化し得るIPアドレスではなく、次のような端末名でアクセスできる。

http://ohidemac-mini:8000

初期段階ではREST APIを採用し、将来的に必要となった時点でMCPやA2Aを追加する。なお、Prj.JARVISからMiTiR-BaseのPythonコードを直接importしない。API契約を境界にすることで、双方を独立して変更・再起動・配置換えできるようにする。

LLMとGPUに対する考え方

JARVISのLLMは、必ずしもローカルで動かす必要はない。高度な推論はOpenAI、Claude、GeminiなどのAPIに任せられるため、WindowsノートPCに高性能GPUは必須ではない。

Windows側で必要なのは、音声受付、API通信、タスク管理、メモリ保存、ツール実行、画面表示などである。32GBのメモリがあれば、JARVISの司令塔として十分な余裕がある。

一方、Mac miniにはすでにOllamaとローカルLLMを配置できる。機密性を重視する処理、API障害時の代替、定型処理、クラウド費用を抑えたい処理はMac miniへ振り分ける。つまり、Prj.JARVIS全体はクラウドとローカルを使い分けるハイブリッド構成となる。

最初のAPI契約

JARVISからMiTiR-Baseへ送る依頼は、最初から共通形式にする。

{
  "request_id": "uuid",
  "source": "prj-javis",
  "task": "daily_ai_news",
  "parameters": {
    "period_hours": 12,
    "max_items": 10
  },
  "approval": "approved"
}

MiTiR-Baseは、受付状態、実行状態、結果、生成ファイル、エラー情報を共通形式で返す。時間のかかる処理については、同期的に待たせるのではなく、タスクIDを返してJARVISが進捗を確認する方式へ発展させる。

第1段階のMVP

最初から音声、記憶、PC操作、複数エージェントをすべて実装すると、問題の切り分けが難しくなる。そこで第1段階では、分散構成の成立を確認する。

  1. Mac miniでMiTiR-Baseの/health APIを起動する
  2. WindowsからTailscale経由で/healthへアクセスする
  3. JAVISに「MiTiRの状態を確認して」と指示する
  4. JAVISがAPIを呼び出し、healthyを回答する
  5. 通信結果と実行履歴を保存する

次の段階で、「Hey JARVIS」という音声起動、今日の予定とタスクの回答、ニュース収集サービスの実行、結果のObsidian保存を追加する。

今後のロードマップ

Phase 1:接続確認

  • WindowsとMac miniのTailscale接続
  • MiTiR-BaseのヘルスチェックAPI
  • JARVISからの疎通確認
  • タイムアウト、再試行、エラー表示

Phase 2:会話型MVP

  • テキストチャット画面
  • クラウドLLM API接続
  • 基本的な意図分類
  • MiTiRタスクの呼び出し
  • 実行履歴のSQLite保存

Phase 3:JARVISらしい操作体験

  • 「Hey JARVIS」による起動
  • 音声認識と音声合成
  • 今日の予定、タスク、ニュースの統合報告
  • Obsidianとの連携
  • 承認が必要な操作の確認画面

Phase 4:専門業務の統合

  • 投資・不動産分析
  • AI・経済・地政学ニュース
  • タービン設計・解析
  • コーディングとCodex連携
  • 専門エージェント間の委譲

Phase 5:複数端末化

  • スマートフォンを追加のJARVIS窓口にする
  • 外出先からの音声指示
  • 通知・承認・処理結果の受信
  • 端末別の権限管理

まとめ

Prj.JARVISは、既存の「JARVIS」という名前のアプリをコピーするプロジェクトではない。複数のLLM、ツール、個人ナレッジ、専門エージェントを統合し、ユーザーとの唯一の窓口として機能する独自の個人AI秘書を構築する試みである。

設計上の中核は、次の三点に集約される。

  1. JARVISは独自の薄いコアとし、既存技術を交換可能な部品として利用する
  2. Prj.JARVISとMiTiR-Baseは分離し、APIで接続する
  3. WindowsノートPCを対話・操作端末、Mac miniを常時稼働する専門処理基盤とする

この構成なら、小さなMVPから始めながら、ニュース、投資、知識管理、開発、そしてタービン設計まで段階的に統合できる。Prj.JARVISは単独のアプリではなく、今後増えていくAIエージェントやサービスを、人間の意図に沿って束ねる最上位の司令塔となる。

付録

提示された以下の「JARVIS」は全部Stanford OpenJarvisではありません。むしろ、ほとんどが制作者それぞれの独自実装です。「JARVIS」は製品名というより、いまや「音声で動く個人AI秘書」の通称になっています。

リンク正体・ベースStanford版との関係
YouTube:OW5PJVpH0IgBrahma AI。Pythonバックエンド+Electron画面+Gemini APIでPCを操作する独自実装別物
YouTube:dCKBxcYGkoEClaude/Claude Codeを中心に、Gmail・Google Docs・Canva・GitHubなどをつないだ独自JARVIS別物
Instagram:DYw6w3RxYJ0LLM・エージェント・ツール・通信チャネルを束ねる「中央ハブ」として作者が開発中。参加待ちリスト形式Stanford版とは確認できず、独自プロジェクトの可能性が高い
Instagram:DY4o8dluXdK公開検索では技術情報を十分取得できないStanford版だと示す情報なし
Instagram:DbTJRPnORTMOpenJarvis公開前の古い投稿と考えられる少なくとも現在のStanford OpenJarvis由来ではない

Brahma AIは「PythonとElectronでゼロから構築した」と説明され、別動画ではGemini APIを使うWindows向けオープンソースAIとして紹介されています。Brahma AIの動画情報

Claude版も、Claude Codeを使ってMac操作、個人メモ、Web調査などを組み上げた個人開発です。Claude版JARVIS動画

つまり共通するのは名前と完成イメージであって、コードやフレームワークは共通ではありません。

どれも中身はだいたい同じ構造





違うのは、それぞれがこの部品を何で作っているかです。

  • LLM:Claude、Gemini、OpenAI、ローカルLLM
  • 司令塔:独自Python、LangGraph、Claude Code、OpenJarvisなど
  • 音声:Whisper、LiveKit、ElevenLabsなど
  • PC操作:PowerShell、Playwright、PyAutoGUI、専用MCP
  • 記憶:Markdown、SQLite、ベクトルDB
  • 画面:Electron、Web UI、Tauri

OpenJarvisを土台にすべきか

OpenJarvisの強みは次の部分です。

  • OllamaなどローカルLLMとの統合
  • ハードウェア自動判定
  • エージェント、MCP、メモリの統合
  • ローカル利用履歴による改善
  • 電力・速度・コストの評価
  • Windows用デスクトップアプリ

Windows版も提供されていますが、バックエンド、Ollama、Python、Rust、フロントエンドを含む比較的大きな仕組みです。OpenJarvis導入ガイド

一方で、今回のPrj.JAVISはクラウドAPIを積極的に使い、Windows、Mac mini、既存アプリ、Codex、Obsidian、ニュース収集、設計ツールなどを束ねる構想です。そのため、OpenJarvisの最大の特徴である「完全ローカル・省電力評価」は、中心的な要件ではありません。

私の推奨方針

完全なゼロ開発でも、OpenJarvis全面依存でもなく、「自分の薄いJAVISコアを作り、既存部品を組み込む」のが最適です。

具体的には、

部分採用候補
自分専用の司令塔Python+FastAPI
エージェント制御OpenAI Agents SDKまたはLangGraph
LLM切替OpenAI/Claude/Gemini/Mac mini Ollama
ツール接続MCP
長期記憶SQLite+Markdown/Obsidian
定期実行APSchedulerまたはWindowsタスク
音声認識Whisper APIまたはローカルWhisper
音声合成OpenAI音声API、ElevenLabs等
Windows操作PowerShell+Playwright、必要箇所のみPyAutoGUI
操作画面最初はWeb UI、後でデスクトップ化

この方式なら、OpenJarvisも後から「ローカル実行エンジンの一つ」として試せます。モデルもOpenJarvisもClaudeも交換可能です。

コメント

タイトルとURLをコピーしました