Orbit CLIでOrbit Localを使用する(orbit)
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
- ステータス: ベータ版
Orbit CLI(orbit)は、任意のローカルリポジトリのコードグラフを構築し、ローカルのDuckDBファイルに対してクエリを実行します。GitLabへの接続は不要です。
インストール
ワンラインインストーラーでスタンドアロンのorbitバイナリをインストールします。
curl -fsSL "https://gitlab.com/gitlab-org/orbit/knowledge-graph/-/raw/main/install.sh" | bashこれによりorbitがPATHに追加されます。新しいターミナルを開き、インストールを確認します。
orbit helpGitLab CLI(glab)をすでに使用している場合は、glab orbit local --installでマネージドバイナリをインストールすることもできます。そのバイナリはorbitを直接使用するのではなく、glab orbit local <command>として実行します。詳細はglabでOrbit Localを使用するを参照してください。
ソースからビルドする
Orbitにコントリビュートする場合や、未リリースのビルドを実行する場合は、バイナリを自分でコンパイルします。
前提条件:
- Rustツールチェーン(stable)
- ツール管理用の
mise
git clone https://gitlab.com/gitlab-org/orbit/knowledge-graph.git
cd knowledge-graph
mise install
mise run build:cliコンパイルされたバイナリはtarget/release/orbitにあります。PATHに追加するか、直接実行してください。
リポジトリをインデックス作成する
orbit index /path/to/your/repoOrbitはリポジトリを解析し、DuckDBグラフを~/.orbit/graph.duckdbに書き込みます。複数のリポジトリをインデックス作成できます。各リポジトリはマニフェストテーブル内でプロジェクトIDとブランチによってスコープが設定されます。
| フラグ | 説明 |
|---|---|
--threads | ワーカースレッド数。0(デフォルト)はCPUコア数から自動検出します。 |
--stats | JSON出力に詳細な統計情報を含めます。 |
--verbose | stderrへの詳細ログを有効にします。 |
スキーマを確認する
orbit schemaはローカルDuckDBグラフのすべてのテーブルとカラムを一覧表示します。
orbit schemaテーブル名を位置引数として渡すと、出力をスコープできます。
orbit schema gl_definition # scoped to one table
orbit schema gl_definition gl_edge # scoped to two tables| フラグ | 説明 |
|---|---|
--raw | デフォルトのテーブルビューではなくJSONで出力します。 |
--db | DuckDBのパスを上書きします。デフォルトは~/.orbit/graph.duckdbです。 |
ローカルグラフに対してSQLを実行する
orbit sql 'SELECT count(*) FROM gl_definition'
orbit sql -F json 'SELECT name FROM gl_definition LIMIT 3'
echo 'SELECT 1+1' | orbit sql -
orbit sql --file query.sql| フラグ | 説明 |
|---|---|
-F、--format | table(デフォルト)、json、ndjson、またはcsv。 |
-f、--file | ファイルからSQLを読み込みます。 |
--db | DuckDBのパスを上書きします。デフォルトは~/.orbit/graph.duckdbです。 |
インデックス済みリポジトリを一覧表示する
グラフには複数のリポジトリを保持できます。内容を確認するには次のコマンドを実行します。
orbit list
orbit list -F json各行にはリポジトリのパス、ブランチ、コミット、インデックス作成ステータス、および最終インデックス作成日時が表示されます。
+------------------------+--------+------------+---------+---------------------+
| repo_path | branch | commit_sha | status | last_indexed_at |
+------------------------+--------+------------+---------+---------------------+
| /home/dev/workspace/kg | main | 9606ae8... | indexed | 2026-05-18 10:14:02 |
| /tmp/cli-test | main | 654f3a6... | indexed | 2026-05-18 10:13:55 |
+------------------------+--------+------------+---------+---------------------+| フラグ | 説明 |
|---|---|
-F、--format | table(デフォルト)、json、ndjson、またはcsv。 |
--db | DuckDBのパスを上書きします。デフォルトは~/.orbit/graph.duckdbです。 |
まだ何もインデックス作成されていない場合、orbit listは0で終了します。テーブルビューには何も表示されず、構造化フォーマットは有効な空の出力(jsonの場合は[]、ndjsonの場合はレコードなし)を返すため、orbit list -F json | jqのようなパイプラインも正常に動作します。
MCPサーバーとして実行する
stdioを通じてローカルグラフをMCP対応のAIエージェントに公開します。
orbit mcp serve~/.orbit/graph.duckdbに対してrun_sql、get_graph_schema、indexを提供します。クライアントごとの設定についてはMCPで接続するを参照してください。
ストレージ
グラフは~/.orbit/graph.duckdbに保存されます。複数のリポジトリが同じデータベースを共有します。最初からやり直すにはファイルを削除してください。
課金
Orbit LocalはGitLabクレジットを消費しません。すべての処理はローカルで行われます。
次のステップ
- MCPで接続する - Claude Code、Codex、その他のエージェントをローカルグラフに接続します。
- glabでOrbit Localを使用する -
glab orbit localを通じてCLIを呼び出します。 - スキーマリファレンス - 利用可能なノードタイプとプロパティ。
- Cookbook - 一般的なユースケース向けのコピー&ペーストクエリ。