Skip to content

Symbiont ドキュメント

本番環境向けのポリシー制御エージェントランタイム。明示的なポリシー、アイデンティティ、監査制御の下で AI エージェントとツールを実行します。

Symbiont とは?

Symbiont は、明示的なポリシー、アイデンティティ、監査制御の下で AI エージェントとツールを実行するための Rust ネイティブランタイムです。

ほとんどのエージェントフレームワークはオーケストレーションに焦点を当てています。Symbiont は、エージェントが実際のリスクを伴う実環境で実行される場合に何が起こるかに焦点を当てています:信頼されないツール、機密データ、承認境界、監査要件、再現可能な実施。

仕組み

Symbiont はエージェントの意図と実行権限を分離します:

  1. エージェントが提案 — 推論ループ(Observe-Reason-Gate-Act)を通じてアクションを提案
  2. ランタイムが評価 — 各アクションをポリシー、アイデンティティ、信頼チェックに照らして評価
  3. ポリシーが決定 — 許可されたアクションは実行、拒否されたアクションはブロックまたは承認に回送
  4. すべてが記録される — すべての決定に対する改ざん防止監査証跡

モデル出力は実行権限として扱われることはありません。ランタイムが実際に何が起こるかを制御します。

コア機能

機能 説明
ポリシーエンジン エージェントのアクション、ツール呼び出し、リソースアクセスに対する Cedar によるきめ細かな認可
ツール検証 実行前に SchemaPin による MCP ツールスキーマの暗号学的検証
エージェントアイデンティティ AgentPin によるエージェントとスケジュールタスクのドメイン固定 ES256 アイデンティティ
推論ループ ポリシーゲートとサーキットブレーカーを備えた型状態強制の Observe-Reason-Gate-Act サイクル
サンドボックス 3つの OSS ティアによるエージェントごとの分離 — Docker(Tier 1)、gVisor(Tier 2)、Firecracker microVM(Tier 3) — Enterprise ゲーティングなしで DSL から選択可能
監査ログ すべてのポリシー決定に対する構造化レコード付き改ざん防止ログ
シークレット管理 Vault/OpenBao 統合、AES-256-GCM 暗号化ストレージ、エージェントごとのスコープ
MCP 統合 制御されたツールアクセスを備えたネイティブ Model Context Protocol サポート

追加機能:ツール/スキルコンテンツの脅威スキャン、cron スケジューリング、永続エージェントメモリ、ハイブリッド RAG 検索(LanceDB/Qdrant)、webhook 検証、配信ルーティング、OTLP テレメトリ、HTTP セキュリティ強化、チャネルアダプター(Slack/Teams/Mattermost)、および Claude CodeGemini CLI のガバナンスプラグイン。


クイックスタート

プロジェクトをスキャフォールドして実行(Docker、約60秒)

# 1. プロジェクトを作成。symbiont.toml、agents/、policies/、
#    docker-compose.yml、および新しく生成された SYMBIONT_MASTER_KEY を含む .env を生成します。
docker run --rm -v $(pwd):/workspace ghcr.io/thirdkeyai/symbi:latest \
  init --profile assistant --no-interact --dir /workspace

# 2. ランタイムを起動します。.env を自動的に読み込みます。
docker compose up

ランタイム API は http://localhost:8080、HTTP 入力は http://localhost:8081 で公開されます。

インストール(Docker なし)

インストールスクリプト(macOS / Linux):

curl -fsSL https://symbiont.dev/install.sh | bash

Homebrew(macOS):

brew tap thirdkeyai/tap
brew install symbi

ソースから:

git clone https://github.com/thirdkeyai/symbiont.git
cd symbiont
cargo build --release

ビルド済みバイナリは GitHub Releases からも入手できます。詳細については入門ガイドをご覧ください。

最初のエージェント

agent secure_analyst(input: DataSet) -> Result {
    policy access_control {
        allow: read(input) if input.verified == true
        deny: send_email without approval
        audit: all_operations
    }

    with memory = "persistent", requires = "approval" {
        result = analyze(input);
        return result;
    }
}

metadataschedulewebhookchannel ブロックを含む完全な文法については DSL ガイドをご覧ください。

プロジェクトスキャフォールディング

symbi init        # インタラクティブなプロジェクトセットアップ — symbiont.toml、agents/、
                  # policies/、docker-compose.yml、および生成された SYMBIONT_MASTER_KEY を含む
                  # .env を書き込みます。特定のディレクトリを対象にするには --dir <PATH> を
                  # 渡します(コンテナ内で実行する場合は必須)。
symbi run agent   # フルランタイムを起動せずに単一エージェントを実行
symbi up          # 自動設定でフルランタイムを起動
symbi shell       # インタラクティブなエージェントオーケストレーションシェル(Beta) — 以下を参照

インタラクティブシェル (Beta)

symbi shell は、LLM 支援によるエージェント、ツール、ポリシーのオーサリング、マルチエージェントパターン(/chain/parallel/race/debate)のオーケストレーション、スケジュールとチャネルの管理、リモートランタイムへのアタッチを行うための ratatui ベースのターミナル UI です。ステータスは beta であり、コマンドサーフェスと永続化フォーマットはマイナーリリース間で変更される可能性があります。Symbi Shell ガイド を参照してください。

シングルエージェントのデプロイ (Beta)

シェルの /deploy コマンドは、アクティブなエージェントをパッケージ化し、Docker(/deploy local)、Google Cloud Run(/deploy cloudrun)、または AWS App Runner(/deploy aws)にデプロイします。OSS スタックはシングルエージェント構成です。マルチエージェントトポロジーはクロスインスタンスメッセージングで構成します。Symbi Shell — デプロイ を参照してください。


アーキテクチャ

graph TB
    A[Policy Engine — Cedar] --> B[Core Runtime]
    B --> C[Reasoning Loop — ORGA]
    B --> D[DSL Parser]
    B --> E[Sandbox — Docker]
    B --> I[Audit Trail]

    subgraph "Scheduling"
        S[Cron Scheduler]
        H[Session Isolation]
        R[Delivery Router]
    end

    subgraph "Channels"
        SL[Slack]
        TM[Teams]
        MM[Mattermost]
    end

    subgraph "Knowledge"
        J[Context Manager]
        K[Vector Search]
        L[RAG Engine]
        MD[Agent Memory]
    end

    subgraph "Trust Stack"
        M[MCP Client]
        N[SchemaPin]
        O[AgentPin]
        SK[Threat Scanner]
    end

    C --> S
    S --> H
    S --> R
    R --> SL
    R --> TM
    R --> MM
    C --> J
    C --> M
    J --> K
    J --> L
    J --> MD
    M --> N
    C --> O
    C --> SK

セキュリティモデル

Symbiont はシンプルな原則に基づいて設計されています:モデル出力を実行権限として信頼すべきではありません。

アクションはランタイム制御を通じて流れます:

  • ゼロトラスト — すべてのエージェント入力はデフォルトで信頼されない
  • ポリシーチェック — すべてのツール呼び出しとリソースアクセスの前に Cedar 認可
  • ツール検証 — ツールスキーマの SchemaPin 暗号学的検証
  • サンドボックス境界 — 信頼されない実行のための Docker 分離
  • オペレーター承認 — 機密アクションのための人間レビューゲート
  • シークレット制御 — Vault/OpenBao バックエンド、暗号化ローカルストレージ、エージェント名前空間
  • 監査ログ — すべての決定の暗号学的改ざん防止レコード

詳細についてはセキュリティモデルガイドをご覧ください。


ガイド


コミュニティとリソース


次のステップ

はじめる

Symbiont をインストールして、最初のガバナンスエージェントを実行しましょう。

クイックスタートガイド

セキュリティモデル

信頼境界とポリシー実施を理解しましょう。

セキュリティガイド

DSL リファレンス

エージェント定義言語を学びましょう。

DSL ガイド