Skip to content

ARI CLI リファレンス

ARI のコマンドライン操作の完全なリファレンスです。CLI は Web ダッシュボードと同等の機能をターミナルベースのワークフロー向けに提供します。


コマンド一覧

コマンド説明ダッシュボード相当
ari run新しい実験を実行New Experiment ウィザード → Launch
ari resume中断された実験を再開Experiments ページ → Resume ボタン
ari paper論文のみ生成(実験をスキップ)POST /api/run-stage {stage: "paper"}
ari status実験ツリーとサマリーを表示Monitor / Tree ページ
ari vizWeb ダッシュボードを起動--
ari projects過去のすべての実験を一覧表示Experiments ページ
ari show実行結果の詳細を表示Results ページ
ari deleteチェックポイントを削除Experiments ページ → Delete ボタン
ari settings設定の表示または変更Settings ページ
ari skills-list利用可能なツールを一覧表示Settings → MCP Skills
ari memory ...Letta メモリバックエンドを管理Settings → Memory (Letta)
ari ear <subcmd>EAR キュレーション/公開/プロモーションのライフサイクル (v0.7.0)
ari clone <ref>キュレート済み EAR バンドルを取得 (file/https/ari/gh/doi)、digest 検証 (v0.7.0)
ari registry <subcmd>セルフホスト EAR レジストリ: serve / token issue|revoke|list (v0.7.0)
ari migrate node-reports <checkpoint>旧 (v0.6.0) checkpoint に node_report.json を補完

ari migrate node-reports

v0.7.0 (task2.md) で experiments/{run_id}/{node_id}/node_report.json を ノードごとに記録するようになりました。旧 checkpoint には存在しないため、 ダウンストリーム (generate_ear / nodes_to_science_data / bfts.expand / GUI Tree Report タブ) はレガシーヒューリスティックにフォールバックします。 旧 checkpoint に対しては一度だけ以下を実行してレポートを補完してください:

bash
ari migrate node-reports /path/to/checkpoint
ari migrate node-reports /path/to/checkpoint --overwrite   # 既存レポートも上書き

再構築されたレポートには migration_source: "auto" が付くため、ダウンストリーム フィルタはやや保守的に振る舞います (例: for_code は files_changed 空でも auto レポートのノードを採用)。復元できないフィールド (original_direction, delta_vs_parent, next_steps_hints) は null になります。


ari run

実験 Markdown ファイルから新しい実験を実行します。

bash
ari run <experiment.md> [--config <config.yaml>] [--profile <profile>] \
                        [--virsci-live/--no-virsci-live] \
                        [--virsci-k N] [--virsci-team-size N] \
                        [--virsci-n-authors N] [--virsci-n-papers N]
引数必須説明
experiment.mdはい実験 Markdown ファイルへのパス
--configいいえカスタム設定 YAML(省略時は自動生成)
--profileいいえ環境プロファイル: laptophpc、または cloud
--virsci-live / --no-virsci-liveいいえアイデアスキル: 再実装の議論ループの代わりに、ライブの Semantic Scholar スナップショット上で VirSci 本物のマルチエージェントエンジン(vendor-wrap)を実行。ARI_IDEA_VIRSCI_REAL を設定。既定 OFF。
--virsci-kいいえVirSci-live の議論ターン数(vendor group_max_discuss_iteration)。ARI_IDEA_VIRSCI_K を設定。既定 7。
--virsci-team-sizeいいえVirSci-live のチームあたり最大メンバー数。ARI_IDEA_VIRSCI_TEAM_SIZE を設定。既定 3。
--virsci-n-authorsいいえVirSci-live の select_coauthors 用著者プールサイズ。ARI_IDEA_VIRSCI_N_AUTHORS を設定。既定 16。
--virsci-n-papersいいえVirSci-live の SPECTER2 検索コーパスサイズ。ARI_IDEA_VIRSCI_N_PAPERS を設定。既定 800。

これらのフラグは、アイデアスキルが読み込む ARI_IDEA_VIRSCI_* 環境変数の契約を 設定します(下記 アイデア生成 (VirSci-live) 参照)。 --virsci-live が ON のとき、仮説生成はライブの Semantic Scholar スナップショット 上で VirSci 本物の select_coauthors + generate_idea メカニズムを実行します。 依存が無い場合や実行時エラーが発生した場合は、idea.json の契約が同一のまま 再実装ループへ degrade します。

使用例:

bash
# 基本的な実行(設定を自動検出)
ari run experiment.md

# 環境プロファイルを指定
ari run experiment.md --profile laptop

# カスタム設定を指定
ari run experiment.md --config ari-core/config/workflow.yaml

# 環境変数でオーバーライド
ARI_MAX_NODES=10 ARI_PARALLEL=2 ari run experiment.md

# アイデア生成に VirSci 本物のマルチエージェントエンジンを使用(vendor-wrap)
ari run experiment.md --virsci-live --virsci-k 7 --virsci-team-size 3

実行される処理:

  1. ARI がユニークなプロジェクト名を生成(LLM が生成するタイトル)
  2. チェックポイントディレクトリを作成: ./checkpoints/<run_id>/
  3. arXiv と Semantic Scholar で関連論文を検索
  4. VirSci マルチエージェント議論で仮説を生成
  5. Best-First Tree Search(BFTS)で実験を実行
  6. LLM ピアレビューで結果を評価
  7. 図表と引用を含む LaTeX 論文を執筆
  8. 再現性を独立して検証

ari resume

チェックポイントから中断された実験を再開します。

bash
ari resume <checkpoint_dir> [--config <config.yaml>]

使用例:

bash
ari resume ./checkpoints/20260328_matrix_opt/

保存されたツリーを読み込み、保留中または失敗したノードを特定し、停止した箇所から再開します。


ari paper

実験を実行せずに論文のみを生成します。実験がすでに完了している場合に便利です。

bash
ari paper <checkpoint_dir> [--experiment <experiment.md>] [--config <config.yaml>] \
                           [--rubric <rubric_id>] \
                           [--fewshot-mode static|dynamic] \
                           [--num-reviews-ensemble N] \
                           [--num-reflections N]

# 同梱ルーブリック (16 種): neurips (既定、v2 互換)、iclr、icml、cvpr、acl、
#   sc、chi、osdi、stoc、icra、siggraph、nature、usenix_security、
#   journal_generic、workshop、generic_conference。加えて内蔵の `legacy`
#   フォールバック (v0.5 スキーマ) も利用可能。
#   ari-core/config/reviewer_rubrics/ に <id>.yaml を追加するだけで
#   新しい venue に対応できます。

使用例 — v2 互換の既定 (NeurIPS 形式、1-shot、5 reflection):

bash
ari paper ./checkpoints/20260328_matrix_opt/

使用例 — Supercomputing (SC) ルーブリックで 5 名アンサンブル + メタ査読:

bash
ari paper ./checkpoints/20260328_matrix_opt/ \
          --rubric sc --num-reviews-ensemble 5

論文パイプラインは: データ変換、図生成、論文執筆、VLM 図査読、ルーブリック 駆動の論文査読 (rubric 形式 + reflection + オプションのアンサンブル + Area Chair メタ査読)、再現性チェック (ari/agent/react_driver.py 駆動の ReAct エージェント) を実行します。

CLI フラグは環境変数でも設定可能: ARI_RUBRICARI_FEWSHOT_MODEARI_NUM_REVIEWS_ENSEMBLEARI_NUM_REFLECTIONS


ari status

実験ツリーとサマリー統計を表示します。

bash
ari status <checkpoint_dir>

使用例:

bash
ari status ./checkpoints/20260328_matrix_opt/

# 出力:
# ── Experiment Tree ──
# root (success) score=153736
# ├── improve_1 (success) score=180200
# │   ├── ablation_1 (success) score=120000
# │   └── validation_1 (success) score=178500
# └── draft_2 (failed)
#
# Summary: 4 success, 1 failed, 0 running, 0 pending

ari viz

ビジュアル実験管理のための Web ダッシュボードを起動します。

bash
ari viz <checkpoint_dir> [--port <port>]
引数デフォルト説明
checkpoint_dir(必須)監視するチェックポイントディレクトリ
--port8765サーバーのポート番号

使用例:

bash
# ダッシュボードの起動
ari viz ./checkpoints/ --port 8765

# 特定の実行を監視
ari viz ./checkpoints/20260328_matrix_opt/ --port 9878

ブラウザで http://localhost:<port> を開いてください。ダッシュボードの使い方はクイックスタートガイドを参照してください。


ari projects

過去のすべての実験を一覧表示します。

bash
ari projects [--checkpoints <dir>]

使用例:

bash
ari projects

# 出力:
# ID                              Nodes  Status    Best Score  Modified
# 20260328_matrix_opt             28     complete  153736      2h ago
# 20260327_sorting_benchmark      12     complete  0.95        1d ago
# 20260326_benchmark_test         5      failed    --          2d ago

ari show

特定の実験の詳細な結果を表示します。

bash
ari show <checkpoint> [--checkpoints-dir <dir>]

実験ツリー、レビューレポートの概要、および成果物の一覧を表示します。


ari delete

チェックポイントディレクトリを削除します。

bash
ari delete <checkpoint> [--yes]
フラグ説明
-y / --yes確認プロンプトをスキップ

ari settings

ARI の設定を表示または変更します。

bash
ari settings [--config <config.yaml>] [options]
オプション説明
--model <name>LLM モデル名を設定
--api-key <key>API キーを設定
--partition <name>SLURM パーティション名を設定
--cpus <count>CPU 数を設定
--mem <GB>メモリを GB 単位で設定

使用例:

bash
# 現在の設定を表示
ari settings

# モデルを変更
ari settings --model gpt-4o

# 複数のオプションを設定
ari settings --model qwen3:32b --partition gpu --cpus 64 --mem 128

ari ear — v0.7.0

1 つの checkpoint に対する Experiment Artifact Repository の キュレーション・公開・プロモーションを行います。キュレーションは 決定論的 (LLM 不使用)、公開は curated tarball をバックエンドに送って 検証可能な ref を得ます。

bash
ari ear curate   <checkpoint> [--show-files] [--json]
ari ear status   <checkpoint>
ari ear publish  <checkpoint> [--backend ari-registry|local-tarball|gh|zenodo] \
                              [--visibility staged] [--dry-run]
ari ear promote  <checkpoint> [--target public|unlisted]
サブコマンド動作
curateear/publish.yaml の allowlist と built-in deny list (.env*secrets/***.pem*.keyid_rsaid_ed25519) を適用し、{checkpoint}/ear_published/ + manifest.lock (決定論的 bundle_sha256 入り) を書き出す。publish.yaml が無ければ静かにスキップ。
statusキュレーション manifest 概要 + publish_record.json を表示。
publishear_published/ から再現可能な tarball を構築し、バックエンドへ送信。最初は常に visibility=staged (FR-P5)。ARI_PUBLISH_DRYRUN=1--dry-run を強制。
promotestaged → public/unlisted に昇格。降格は拒否。

バックエンド: ari-registry (セルフホスト)、local-tarball (サーバ不要)、gh (GitHub release)、zenodo (DOI 採番)。

エンドツーエンドの例:

bash
# 1. 著者が論文パイプライン後にバンドルをキュレート
ari ear curate ./checkpoints/run_20260504_xy/

# 2. allow/deny ルール後の中身を確認
ari ear status ./checkpoints/run_20260504_xy/
# bundle_sha256: 0ccabb16...
# files:         42
# visibility:    staged

# 3. registry に staged で publish
ari ear publish ./checkpoints/run_20260504_xy/ --backend ari-registry

# 4. 査読 + 再現性チェック合格後に public に昇格
ari ear promote ./checkpoints/run_20260504_xy/ --target public

bundle_sha256finalize_paper ステージで論文の \codedigest{...} マクロに焼き付けられます。論文を持っている人なら、registry が落ちていても任意のコピーを digest で検証できます。


ari memory

v0.6.0 で追加された Letta メモリバックエンド管理用のコマンド群。各 サブコマンドは --checkpoint <path> または ARI_CHECKPOINT_DIR 環境変数 から対象チェックポイントを解決します。

bash
ari memory <subcommand> [options]
サブコマンド説明
healthバックエンドへ ping、レイテンシ、namespace ハッシュ、サーバーバージョンを表示
migratev0.5.x の memory_store.jsonl (および --react 付与時は memory.json) を Letta コレクションへ一括取り込み。元ファイルは *.migrated-<ts> にリネーム
backupLetta 上のメモリを {ckpt}/memory_backup.jsonl.gz (gzipped JSONL) にスナップショット保存。パイプライン段の境界とシャットダウン時に自動実行
restorebackup の逆。--on-conflict=skip|overwrite|merge (既定 skip)。ari resume 時に Letta が空なら自動実行
start-localローカル Letta サーバを起動: --path=auto|docker|singularity|pip
stop-localdocker/singularity/pip Letta を停止 (best-effort)
prune-localローカル Letta の状態 (volumes / venv / ~/.letta) を削除。--yes 必須
compact-accessローテーション済みの memory_access.<ts>.jsonlmemory_access.summary.json に集約し原ファイルを削除

使用例:

bash
# 現在のチェックポイントで Letta 到達性をチェック
ARI_CHECKPOINT_DIR=/path/to/ckpt ari memory health

# v0.5.x チェックポイントをアップグレード
ari memory migrate --checkpoint /path/to/ckpt --react

# ポータブルなアーカイブ
ari memory backup  --checkpoint /path/to/ckpt
rsync -a /path/to/ckpt/ other-host:/home/user/ckpt/
ssh other-host "ari memory restore --checkpoint /home/user/ckpt"

# `ari setup` で Letta が起動しなかった場合
ari memory start-local --path=docker

ari skills-list

利用可能なすべての MCP ツールとその説明を一覧表示します。

bash
ari skills-list [--config <config.yaml>]

環境変数

コア設定

変数説明デフォルト
ARI_BACKENDLLM バックエンド(ollama / openai / anthropic / claudeollama
ARI_MODELモデル名qwen3:8b
OPENAI_API_KEYOpenAI API キー--
ANTHROPIC_API_KEYAnthropic API キー--
OLLAMA_HOSTOllama サーバーの URLhttp://localhost:11434
LLM_API_BASE汎用 API ベース URL(フォールバック)--

BFTS 設定

変数説明デフォルト
ARI_MAX_NODES実験の最大総数50
ARI_MAX_DEPTHツリーの最大深さ5
ARI_PARALLEL同時実行の実験数4
ARI_MAX_REACTノードごとの最大 ReAct ステップ数80
ARI_TIMEOUT_NODEノードごとのタイムアウト(秒)7200

HPC 設定

変数説明デフォルト
ARI_EXECUTOR実行バックエンド(local / slurm / pbs / lsflocal
ARI_SLURM_PARTITIONSLURM パーティション名--
ARI_SLURM_CPUSSLURM ジョブの CPU 数オーバーライド(自動検出)

検索・VLM

変数説明デフォルト
ARI_RETRIEVAL_BACKEND論文検索: semantic_scholar / alphaxiv / bothsemantic_scholar
VLM_MODEL図レビュー用 VLM モデルopenai/gpt-4o
ARI_ORCHESTRATOR_PORTorchestrator スキルの HTTP ポート9890

メモリ (Letta)

変数説明デフォルト
LETTA_BASE_URLLetta サーバエンドポイントhttp://localhost:8283
LETTA_API_KEYLetta Cloud で必須--
LETTA_EMBEDDING_CONFIGアーカイバルメモリ用の埋め込みハンドル(チャット LLM は ARI から呼び出さないため固定)letta-default
ARI_MEMORY_BOOTSTRAP_LOCAL_LETTAauto / pip / docker / singularity / noneauto
ARI_MEMORY_LETTA_TIMEOUT_S呼び出しごとのタイムアウト10
ARI_MEMORY_LETTA_OVERFETCH祖先ポストフィルタ用のオーバーフェッチ K200
ARI_MEMORY_LETTA_DISABLE_SELF_EDITLetta self-edit を無効化 (CoW セーフ)true
ARI_MEMORY_ACCESS_LOG{checkpoint}/memory_access.jsonl への書き込みon
ARI_MEMORY_ACCESS_LOG_MAX_MBローテーション閾値100
ARI_MEMORY_AUTO_RESTOREari resume 時にバックアップを自動復元true
ARI_MEMORY_BACKUP_INTERVAL_S実行中の機会的バックアップ (0 = OFF)0

論文査読 (ルーブリック)

変数説明デフォルト
ARI_RUBRIC査読に使う rubric_id (例: neuripsscnaturegeneric_conference)neurips
ARI_FEWSHOT_MODEstatic (内蔵 examples) / dynamic (OpenReview 等から取得)static
ARI_NUM_REVIEWS_ENSEMBLE独立査読者数 (N>1 で Area Chair メタ査読も実行)1
ARI_NUM_REFLECTIONSself-reflection ループ回数5

フェーズごとのモデルオーバーライド

変数フェーズ
ARI_MODEL_IDEAアイデア生成
ARI_MODEL_BFTSBFTS 実験
ARI_MODEL_PAPER論文執筆

アイデア生成 (VirSci-live)

アイデア生成のオプトイン vendor-wrap 経路。ARI_IDEA_VIRSCI_REAL が ON の とき、アイデアスキルはライブの Semantic Scholar スナップショット上で VirSci 本物のマルチエージェント機構(select_coauthors + generate_idea)を実行 します。既定の OFF では挙動は変わりません。ari run--virsci-live / --virsci-k / --virsci-team-size / --virsci-n-authors / --virsci-n-papers フラグがこれらの変数を設定します。議論 LLM はフェーズごとの ARI_MODEL_IDEA モデルに従います。virsci pip extra が必要で、無い場合や実行時エラー時は idea.json の契約が同一のまま再実装ループへ degrade します。

変数説明デフォルト
ARI_IDEA_VIRSCI_REALreal vendor-wrap 経路の切り替え(未設定/OFF)
ARI_IDEA_VIRSCI_K議論ターン数(vendor group_max_discuss_iteration7
ARI_IDEA_VIRSCI_TEAM_SIZE最大チームメンバー数(vendor max_teammember3
ARI_IDEA_VIRSCI_N_AUTHORSselect_coauthors 用著者プール16
ARI_IDEA_VIRSCI_N_PAPERSSPECTER2 検索コーパスサイズ800
ARI_IDEA_VIRSCI_MAX_TEAMSgenerate_idea に通すチーム数の上限=n_ideas
ARI_IDEA_VIRSCI_SPECTER2_MODELローカルのクエリ埋め込みモデルallenai/specter2_base

.env ファイル

ARI は .env ファイルを自動的に読み込みます(以下の順序で確認):

  1. <checkpoint_dir>/.env(最優先)
  2. <project_root>/.env
  3. <project_root>/ari-core/.env
  4. ~/.env(最低優先)

形式: KEY=VALUE# で始まる行は無視されます)。


HPC(SLURM)での実行

bash
# エグゼキューターを設定
export ARI_EXECUTOR=slurm
export ARI_SLURM_PARTITION=your_partition

# SLURM ジョブとして投入
sbatch << 'EOF'
#!/bin/bash
#SBATCH --job-name=ari
#SBATCH --partition=your_partition
#SBATCH --nodes=1
#SBATCH --cpus-per-task=32
#SBATCH --time=04:00:00
#SBATCH --output=ari_%j.out

# GPU ノードで Ollama を使用する場合:
ollama serve &
sleep 10

export ARI_BACKEND=ollama
export ARI_MODEL=qwen3:32b

cd /path/to/ARI
ari run /path/to/experiment.md --profile hpc
EOF

重要なルール:

  • 常に絶対パスを使用してください(~ や相対パスは使わない)
  • SLURM スクリプト内で標準出力をリダイレクトしないでください(SLURM が --output で自動キャプチャします)
  • クラスターで必要とされない限り、--account-A フラグを追加しないでください

ari clone <ref> [<dest>] — v0.7.0+

curated な EAR bundle を「取得 + digest 検証 + 展開」する。 コード実行は伴わない。論文を再現する読者の「1 行 install」経路を提供する。

対応スキーム (PR ごとに段階展開)

スキームresolver
file://<path>ローカル file/dir
https://<url>tarball ダウンロード
ari://<id>ari-registry
gh:<user>/<repo>GitHub repo or release
doi:<doi>Zenodo deposition

フラグ

--expect-sha256 <hex>   bundle digest を強制検証。不一致は hard fail。
--no-extract            tarball のみ取得 (展開なし)。
--registry <name>       ari:// resolver を registries.yaml の特定 registry に限定。
                        `$ARI_REGISTRIES_FILE` env var、または
                        `$ARI_CHECKPOINT_DIR/.ari/registries.yaml` を設定すること。
                        レガシーの `$HOME/.ari/registries.yaml` は v0.5.0 で
                        廃止され DeprecationWarning を出す(v1.0 でフォールバック削除)。
--token <env-or-value>  bearer token (環境変数名 → 値の順で解決)。

検証モデル

  1. resolver が artifact を一時 dir に展開
  2. orchestrator が sibling 一時 dir に展開
  3. 各ファイルの sha256 を再計算し manifest.lock と照合
  4. 正規化 files-only manifest から bundle digest を再計算し manifest.lock.bundle_sha256 と照合
  5. --expect-sha256 指定時はそれが再計算 digest と一致しなければ hard fail
  6. 全工程成功時のみ dest に rename。失敗時は dest を残さない (atomic)

ari registry — v0.7.0+

キュレート済み EAR バンドルをホスティングするセルフホスト HTTP レジストリ。ari ear publishari cloneari:// resolver の デフォルト backend です。サーバ無しで運用したいなら local-tarball で問題ありませんし、学術的恒久性なら Zenodo / GitHub release を推奨します。

bash
ari registry serve   [--host 0.0.0.0] [--port 8290] [--data-dir <dir>]
ari registry token issue  <user>          # 平文は1度のみ表示
ari registry token revoke <token-id>
ari registry token list

セットアップ:

bash
# 1. サーバ依存の追加インストール (デフォルトでは含めない)
./setup.sh --with-registry        # または pip install fastapi uvicorn[standard] python-multipart

# 2. データディレクトリを指定して起動 (デフォルトポート 8290)
#    NOTE: `$HOME/.ari/registry-data` は v0.5.0 でデフォルトから削除されました。
#    $ARI_REGISTRY_DATA を明示設定すること(レガシーフォールバックは v1.0 で削除)。
export ARI_REGISTRY_DATA="$PWD/.ari_registry"
./scripts/registry/start_local.sh

# 3. ユーザに token を発行
ari registry token issue alice
# 平文は 1 度のみ表示 — 安全に保管
項目内容
エンドポイントPOST /artifactGET|HEAD /artifact/<id>GET /artifact/<id>/manifest.lockPOST /artifact/<id>/promoteDELETE /artifact/<id>/healthz/version
認証bearer token (sqlite ハッシュ保管)。upload/delete/promote は所有者 token 必須
可視性staged (所有者のみ) → unlisted (id 知っている者のみ) / public (公開)。降格は拒否
Artifact idsha256(bundle.tar.gz)[:16] のコンテンツアドレス
ストレージ${ARI_REGISTRY_DATA}/artifacts/<id>/{bundle.tar.gz, manifest.lock, meta.json}

デプロイモード (詳細は docs/reference/registry.md):

  • scripts/registry/start_local.sh — uvicorn + sqlite、シングルプロセス。Laptop / dev。
  • scripts/registry/docker-compose.yml — nginx + uvicorn + sqlite-on-volume。Production。
  • scripts/registry/start_singularity.sh — Apptainer / Singularity SIF。HPC。

クライアント設定の registries.yaml を以下のいずれかに配置: $ARI_REGISTRIES_FILE env override、$ARI_CHECKPOINT_DIR/.ari/registries.yaml、 または ./.ari/registries.yaml$HOME/.ari/registries.yaml は v0.5.0 で 廃止され、フォールバックは v1.0 で削除されます。

yaml
registries:
  - name: default
    url: http://127.0.0.1:8290
    token: $ARI_REGISTRY_TOKEN

そのうえで export ARI_REGISTRY_TOKEN=ari_<発行された値> し、ari clone ari://<id>ari ear publish --backend ari-registry を使います。