OpenVikingは、AIエージェントのためのオープンソースのコンテキストデータベースです。メモリ、リソース、スキルを viking:// プロトコル配下の1つの仮想ファイルシステムとして保存するため、エージェントはブラックボックスのベクトルストアに問い合わせる代わりに、ls、tree、find で自分のコンテキストを閲覧できます。コンテンツは L0(abstract)、L1(overview)、L2(details)の3階層に処理され、必要に応じてロードされます。すべての検索は、観察してデバッグできる軌跡を残します。詳しい紹介はこちら: Getting started。
OpenViking Studio のプレイグラウンド — インストール不要でブラウザから試せるライブデモです。
- すべてのコンテキストを1つのファイルシステムに。 メモリ、リソース、スキルにはそれぞれ
viking://URI が与えられます。エージェントは、ファイルを扱う開発者のように、コンテキストを決定論的に特定・操作できます。→ Viking URI · Context types - 階層型ローディングで token 消費を削減。 すべてのエントリは書き込み時に L0(abstract)、L1(overview)、L2(details)へ処理され、タスクが必要とする深さまでだけロードされます。→ Context layers
- ディレクトリ再帰検索。 ベクトル検索でまず最高スコアのディレクトリを特定し、そこから層ごとに掘り下げるため、結果は周辺のコンテキストを保ったまま返ってきます。→ Retrieval
- 観察可能な検索。 各クエリはディレクトリ閲覧の軌跡を保存します。結果がおかしいときは、どのパスがその結果を生んだのかを正確に確認できます。→ Retrieval
- セッションはメモリになる。 セッションのコミット後、OpenVikingはユーザーの好みとエージェントの経験を非同期に抽出し、長期メモリとして保存します。→ Session
各要素がどう組み合わさるか: Architecture。設計思想: The Database Paradigm for Context Engineering。
viking://
├── resources/ # リソース: プロジェクトドキュメント、リポジトリ、Webページなど
│ └── my_project/
│ ├── docs/
│ │ ├── api/
│ │ └── tutorials/
│ └── src/
└── user/
└── {user_id}/
├── memories/
│ └── preferences/
│ ├── writing_style
│ └── coding_habits
├── resources/
│ └── private_project/
├── skills/
│ ├── search_code
│ └── analyze_data
└── peers/
└── web-visitor-alice/
3つのローディング階層:
- L0(Abstract): 迅速な関連性チェックのための一文の要約。
- L1(Overview): 計画立案のためのコア情報と使用シナリオ。
- L2(Details): 完全なオリジナルデータ。必要な場合にのみ読み込まれます。
各ディレクトリが自身の L0/L1 レイヤーを持つため、ファイル全体を読む前に関連性を判断できます:
viking://resources/my_project/
├── .abstract # L0: 〜100 tokens - 迅速な関連性チェック
├── .overview # L1: 〜2k tokens - 構造とキーポイント
└── docs/
├── .abstract
├── .overview
└── api/
├── auth.md # L2: 完全なコンテンツ、オンデマンドでロード
└── endpoints.md
OpenViking 0.3.22 は、長い会話でのユーザーメモリ(LoCoMo)と複数ターンのエージェントタスク(tau2-bench)で評価されています。ナレッジベースQAを含む完全な結果と実験設定はベンチマークレポートを、再現用スクリプトは ./benchmark を参照してください。
メモリ評価では、VLM に Doubao 2.0 Pro、Embedding モデルに Doubao-embedding-vision-251215 を使用しました。
- ユーザーメモリ(LoCoMo): OpenViking を接続すると、3つのエージェント統合すべてで精度が 80–83% に達します(ネイティブメモリでは 24–57%)。同時に入力 token は 34.3–91.0%、クエリレイテンシは 58.45–66.10% 削減されます。
- エージェント経験(tau2-bench): 経験メモリにより、タスク成功率は同一 LLM(メモリなし)比で Retail +6.87pp、Airline +11.87pp 向上します。
💡 まず動くところを見たい方へ: OpenViking Studio をお試しください。コンテキストプレイグラウンド、セマンティック検索、マルチエージェント Hub を備えたライブホスト版インスタンスで、インストールは不要です。
Python 3.10 以上が必要です。
pip install openviking --upgrade
openviking-server init # 対話式ウィザード: プロバイダー、モデル、ov.conf
openviking-server doctor # セットアップを検証
openviking-server # 起動または、サーバーをバックグラウンドで実行します:
nohup openviking-server > /data/log/openviking.log 2>&1 &init はプロバイダー設定を対話的に進め、~/.openviking/ov.conf を書き出します。Volcengine、OpenAI、Codex OAuth、Kimi、GLM、ローカルの Ollama をサポートし、Ollama についてはランタイムの検出とインストール、ハードウェアに適したモデルの取得も行えます。doctor は、サーバーを起動せずに設定ファイル、Python バージョン、プロバイダーへの接続性、ディスク容量をチェックします。
手動で書く ov.conf テンプレート、プロバイダーごとの設定例、環境変数、Windows でのセットアップ、CLI/クライアント設定は、Configuration guide と Quick start docs にあります。
サーバーが起動したら:
ov status
ov add-resource https://github.com/volcengine/OpenViking # --wait
ov ls viking://resources/
ov tree viking://resources/volcengine -L 2
# --wait を付けない場合は、セマンティック処理の完了までしばらく待ちます
ov find "what is openviking"
ov grep "openviking" --uri viking://resources/volcengine/OpenViking/docs/en既存インデックスの再構築: ov reindex <uri> --mode vectors_only はベクトルのみ更新します。--mode semantic_and_vectors はセマンティック生成物(.abstract.md、.overview.md)を再生成してからベクトルを更新し、--mode prune_orphans はソースファイルが存在しないベクトルレコードを削除します(--dry-run でプレビュー可能)。semantic や full というモードエイリアスはありません。
クライアント設定は ov config で対話的に初期化できます。複数のサーバーを運用する場合は ov config switch で切り替えます。
Rust CLI は npm i -g @openviking/cli でインストールできます。ソースからのビルドは cargo install --git https://github.com/volcengine/OpenViking ov_cli を使います — CLI setup を参照してください。公式 Docker イメージもあります。Deployment guide を参照してください。
統合機能は、OpenViking の recall をエージェントのコンテキストに注入し、セッションメモリを自動的にコミットします:
- Claude Code
- Codex
- OpenClaw
- Hermes
- Cursor
- Trae
- OpenCode
- pi
- Agent Plugins 1.0
- MCP クライアント
- LangChain / LangGraph
各エージェントのセットアップ手順: Agent integrations overview。
OpenViking Helper はデスクトップコンソールで、現在 macOS と Windows x64 向けの Beta 版として提供しています:
- ローカルエージェント設定の可視化: OpenViking CLI、Claude Code、Codex、Cursor、Trae、OpenCode を検出し、対応する plugin、MCP、Hook、CLI 統合を設定します。
- セッショントレースの確認: Claude Code、Codex、Trae のセッションを解析し、OpenViking の recall、プロンプト注入、MCP 呼び出し、capture、commit の各イベントを表示します。
- ローカルメモリとスキルの管理: ローカルの memory / rule ファイルと
SKILL.mdスキルを確認し、OpenViking に同期します。
ダウンロード:
VikingBot は、OpenViking 上に構築された AI エージェントフレームワークです:
pip install "openviking[bot]"
openviking-server --with-bot
ov chat # 別のターミナルで実行公式 Docker イメージには VikingBot が同梱されており、サーバーとコンソール UI とともにデフォルトで起動します。詳細: VikingBot guide。
本番環境では、OpenViking をスタンドアロンの HTTP サービスとして実行してください — Server deployment と Deployment guide を参照してください。
オープンソース版が機能制限されることはありません。 本リポジトリの OpenViking は AGPLv3 で完全にオープンソースです。機能ロックなし、アカウント登録なし、アクティベーションコードなしで、上記の本番環境へのデプロイに従って自分で本番運用できます。今後もそれは変わりません。
以下の 2 つの版が解決するのは「誰が運用し、どこで動かすか」であって、「使えるかどうか」ではありません。
Volcano Engine 上で公式にホスティングされ、構築も運用も不要です。
オープンソース版のユーザーは移行ツールでそのまま移行できます。 → Volcano Engine 製品ページ · ドキュメント 中国以外の地域向けグローバルホスティングは BytePlus で提供予定です。 |
自社環境内で動作し、データは外部に出ません。
オープンソース版に加えて分散デプロイと公式サポートを提供し、アクティベーションコードで有効化します。 |
オープンソース版を自分で動かしたいだけですか?問題ありません。誰にも連絡する必要はなく、クイックスタートへどうぞ。
OpenViking は、VikingMem 論文に記載されたコア機能の一部をオープンソースとして公開しています:
VikingMem: A Memory Base Management System for Stateful LLM-based Applications Jiajie Fu, Junwen Chen, Mengzhao Wang, Aoxiang He, Maojia Sheng, Xiangyu Ke, Yifan Zhu, and Yunjun Gao. arXiv:2605.29640, 2026. Accepted by VLDB 2026. 📄 arXiv で論文を読む
OpenViking は、コンテキストデータエコシステムを構築するために他のオープンソースプロジェクトとのコラボレーションを歓迎します。確認済みのパートナーは以下の通りです:
- deer-flow - オープンソースの長時間 SuperAgent フレームワーク
- NoKV - AI ネイティブの分散ファイルシステム
- loopx - 軽量なループエンジニアリング状態カーネル
- Hermes Agent - あなたと共に成長するエージェント
パートナーリストへの参加に興味がありますか?コミュニティに issue を提出して申請してください。
OpenViking はまだ初期段階にあり、作るべきものが数多く残っています。
- ドキュメント: docs.openviking.ai · FAQ
- ブログ: blog.openviking.ai
- チーム: About us
- チャット: 📱 Larkグループ · 💬 WeChat · 🎮 Discord · 🐦 X
- コントリビュート: バグ修正も新機能も歓迎します — CONTRIBUTING_JA.md を参照してください
このプロジェクトはセキュリティを重視しています。 脆弱性の報告方法とサポート対象バージョンについては、SECURITY.md を参照してください
OpenViking プロジェクトは、コンポーネントごとに異なるライセンスを使用しています:


