Databricks、Claude Code、Codex、Piを統合するメタハーネス「Omnigent」をオープンソース化
Databricksは、AIエージェント用のメタハーネス「Omnigent」をオープンソースとして公開しました。Claude Code、Codex、Piなどのエージェントの上位層に位置し、統一インターフェース、状態対応ポリシー、リアルタイムセッション共有を提供します。ライセンスはApache 2.0、現在アルファ版です。
Databricksは、AIエージェント向けの「メタハーネス(meta-harness)」であるOmnigentをオープンソースとして公開しました。ライセンスはApache 2.0で、Databricks AIチームがNeonと共同で開発しました。
AIエージェントの文脈では、ハーネスとはモデルをエージェント化するラッパーです。Claude Code、Codex、Piはハーネスの例です。Omnigentはそれらの上位層に位置し、各ハーネスを大規模システムの交換可能な部品として扱います。
現在、多くのエンジニアは同時に4〜5つのエージェントを操作し、コーディングエージェント、検索ツール、ドキュメント、Slack間でテキストをコピー&ペーストしています。各ハーネスは自身のセッションしか認識しません。Omnigentは、構成、制御、コラボレーションを統合する共有レイヤーを追加します。
Omnigentとは
Omnigentは、コマンドラインエージェントやエージェントSDKの上位に位置する共通インターフェースです。Claude Code、Codex、Piなどのターミナルコーディングエージェントをラップし、OpenAI AgentsやClaude Agents SDKもサポートします。
設計の基盤は1つの観察にあります。ハーネスが内部でモデルをどのように呼び出しても、ユーザー向けインターフェースは同じです。メッセージとファイルが入力され、テキストストリームとツール呼び出しが出力されます。Omnigentはこのインターフェースを標準化し、ハーネスを交換可能にします。
ユーザーはモデルとインフラを用意し、Omnigentはその上でエージェントを実行します。複数のエージェントを交換可能なワーカーとして調整し、1つのオーケストレーターの下で動作させることができます。
動作の仕組み
アーキテクチャは2つの部分からなります。ランナーは任意のエージェントをサンドボックス化されたセッションでラップし、統一APIを提供します。サーバーはポリシーと共有機能を提供します。サーバーはすべてのセッションをターミナル、アプリ、Web API経由で公開します。
1つのコマンドでターミナルにセッションを開始し、同時にlocalhost:6767でローカルWeb UIを起動します。同じセッションがブラウザやスマートフォンでアクセス可能です。メッセージ、サブエージェント、ターミナル、ファイルは同期されます。
CLIはomnigentとomniの2つの名前でインストールされ、互換性があります。初回実行時には環境内のモデル認証情報を自動検出します。
構成、制御、コラボレーション
DatabricksチームはOmnigentを3つの機能で構成しています。
- 構成(Composition):コードを書き換えずにモデル、ハーネス、テクニックを組み合わせられます。Claude Code、Codex、Pi、カスタムエージェント間の切り替えは1行の変更で可能です。
- 制御(Control):状態を追跡するコンテキストポリシー。エージェントのアクションを追跡し、プロンプトではなくメタハーネス層でガードレールを強制します。例えば、エージェントが100ドル使うごとに一時停止したり、新しいnpmパッケージをインストールした後のgit pushに人間の承認を要求したりします。
- コラボレーション(Collaboration):ライブエージェントセッションをURLで共有。チームメイトはエージェントの作業をリアルタイムで観察し、チャットできます。ファイルにコメントを付けたり、セッションを共同運転したり、会話をフォークしたりできます。
OSサンドボックス「Omnibox」がこれらを支えます。OSアクセスを制限し、ネットワークリクエストを変換できます。例えば、GitHubトークンをエージェントから隠し、承認されたリクエストのみで出口プロキシに注入します。
ユースケースと例
リポジトリには2つのサンプルエージェントが同梱されています。
- Polly:マルチエージェントコーディングオーケストレーター。自らコードは書きません。計画を立て、並列gitワークツリーでコーディングサブエージェントに作業を委任します。各差分は作成者とは異なるベンダーのレビュアーに送られ、マージされます。
- Debby:2つの頭を持つブレインストーミングパートナー。1つはClaude、もう1つはGPT。すべての質問が両方に送られ、回答が並べて表示されます。/debateと入力すると、2つの頭が互いに批評し合い収束します。
他の実用的なパターンも同様です。フロンティアアドバイザーモデルが安価なオープンソースワーカーをガイドしたり、リードエージェントが並列サブエージェントをオーケストレーションしたり、異なるLLMが1つのフローで計画、検索、コード生成を担当したりします。
インタラクティブデモ
Marktechpostチームは、Omnigentのメタハーネスワークフローを体験できるインタラクティブデモを作成しました。ユーザーはPollyオーケストレーターのタスクを選択し、計画を立ててClaude Code、Codex、Piの3つのサブエージェントに委任します。各エージェントは並行して実行され、リアルタイムでステップをストリーミングします。セッションコストメーターが作動し、2つのポリシートグルで制御層を確認できます。コスト予算は3ドルで一時停止、コンテキストポリシーはnpm install後のgit pushをブロックします。サブエージェント完了後、各差分は異なるベンダーによってクロスレビューされ、マージ準備完了となります。ターミナル、Web、モバイルタブで同じセッションが同期されます。これは説明用のシミュレーションで、実際のモデルは呼び出されません。
単一ハーネスとの比較
| 機能 | 単一ハーネス(例:Claude Code) | Omnigentメタハーネス | |------|-------------------------------|---------------------| | エージェントとモデル | 1つのハーネス、内部でモデル交換 | Claude Code、Codex、Pi、SDK、カスタム——交換可能 | | 切り替えコスト | ツールごとに再統合 | 1行の変更 | | インターフェース | ターミナルまたはそのツール独自UI | ターミナル、Web、デスクトップ、モバイル、API——同一セッション | | ガバナンス | 許可/拒否リスト、多くの場合プロンプトベース | ハーネス層での状態対応コンテキストポリシー | | コスト管理 | 手動追跡 | 予算ポリシーが設定しきい値で一時停止 | | コラボレーション | ツール間のコピー&ペースト | ライブ共有セッション、共同運転、フォーク | | サンドボックス | ツール依存 | OSサンドボックス+出口プロキシ秘密注入 | | クラウド実行 | ローカルマシン | ModalやDaytonaのサンドボックス | | ライセンス | 様々 | Apache 2.0、オープンソース |
はじめに
OmnigentにはPython 3.12+、Node.js 22 LTS、tmuxが必要です。ワンコマンドでインストール:
curl -fsSL https://omnigent.ai/install.sh | sh次にモデル認証情報を設定:
omni setup4種類の認証情報タイプに対応:第一者APIキーとClaudeまたはChatGPTサブスクリプション、OpenAIまたはAnthropic互換ゲートウェイ、Databricksワークスペース。/modelコマンドでセッション中にモデルを切り替え可能。
カスタムエージェントは短いYAMLファイルで宣言します。プロンプト、ハーネス、ツール、オプションのサブエージェントを指定。
name: my_agent
prompt: You are a helpful data analyst.
executor:
harness: claude-sdk # または: codex, codex-native, claude-native, openai-agents, pi
tools:
researcher:
type: agent
prompt: Search for relevant information and summarize it.実行コマンド:
omnigent run path/to/my_agent.yamlポリシーもYAMLで記述。組み込みの予算ポリシーの例:
policies:
budget:
type: function
handler: omnigent.policies.builtins.cost.cost_budget
factory_params:
max_cost_usd: 5.00
ask_thresholds_usd: [3.00]ポリシーはサーバー全体、エージェントごと、セッションごとの3レベルでスタックされ、より厳しいセッションルールが優先されます。
強みと制限
強み:
- Claude Code、Codex、Pi、カスタムエージェントを統一インターフェースで管理
- ターミナル、Web、デスクトップ、スマートフォンからセッションにアクセス可能
- 単なる許可/拒否ではなく状態を追跡するポリシー
- ライブセッション共有がツール間のコピペを不要に
- ModalやDaytonaのクラウドサンドボックスでローカルPC不要
- Apache 2.0ライセンス、Fly.io、Railway、Renderなどを対象
制限:
- アルファ版であり、開発初期段階
- Python、Node.js、tmuxのセットアップが必要
- ユーザーがモデル、インフラ、費用を用意する必要あり
- ロードマップ項目(Omnigent Server MCPなど)は未実装
- ネットワーク外のチームメンバーは常時稼働のサーバー展開が必要
詳細はGitHubリポジトリ、クイックスタートガイド、技術ドキュメントを参照。