Skip to main content
arkor CLI は Arkor プロジェクトを取り巻くコマンド面です。プロジェクト生成ツール(pnpm create arkor)が arkor をローカル devDependency としてインストールするので、CLI をグローバルにインストールしていない限り、素の arkor ではなく利用しているパッケージマネージャーのローカル bin 実行コマンド(例: pnpm exec arkor <command>npx arkor <command>yarn arkor <command>bunx arkor <command>)を使ってください。以降の例は pnpm 形式で記載しますが、他のパッケージマネージャーでも同じように動きます。

コマンド

コマンド共通の慣例

  • --help / -h はすべてのコマンドで使えます。arkor <command> --help でフラグ一覧と使い方が表示されます。
  • arkor --version / -V はインストール済み SDK バージョン(パッケージがエクスポートしている SDK_VERSION と同じ)を表示します。
  • 終了コード。 成功は 0。ほとんどのコマンドは失敗時(未捕捉の throw、ビルドエラーなど)に非ゼロで終わります。arkor whoami は意図的な例外で、失敗を stdout に出しても通常のクラウド API エラー(Failed to fetch /v1/me (<status>)/v1/me の取得に失敗しました)では 0 で終了し、クラウド API が 426(SDK が古すぎる)を返したときだけ process.exitCode = 1 を立てます。whoami の失敗を検知したいラッパースクリプトは終了コードではなく stdout を grep してください。
  • テレメトリー。 すべてのコマンドは小さな計測ラッパー越しに走るので、利用イベントを PostHog に送れます。完全なオプトアウト/デバッグの仕組みは下記の 環境変数 を参照。
  • 非推奨通知。 クラウド API のレスポンスに Deprecation: true が付いていると、CLI は実行終了時に推奨アップグレードコマンド付きの 1 行警告を出します。WarningSunset ヘッダー(あれば)はメッセージのフォーマットに使われ、それ単独で警告をトリガーすることはありません。

環境変数

ロードマップ上

CLI は ARKOR_CLOUD_API_URL を読み、設定されていればクラウド API のエンドポイントとして使います(packages/arkor/src/core/credentials.tsdefaultArkorCloudApiUrl)。ただし、デフォルト以外のエンドポイント(セルフホストやステージング)を指すことは まだ 安定したユーザー向けノブではありません: この環境変数は内部用で予告なく変わる可能性があり、別エンドポイントへの互換性保証もありません。セルフホスト/ステージングデプロイへのファーストクラス対応はロードマップにあります

プログラムからの呼び出し

arkor パッケージは runTrainer を再エクスポートしているので、arkor start 経由でなく自分の TypeScript コードから学習を駆動できます:
CLI のコマンドランナー本体(runBuildrunStartrunDev など)は意図的に 公開面ではなく、予告なく変わる可能性があります。学習を自分のコードに組み込みたいなら runTrainer を使うか、trainer.start() / trainer.wait() を直接呼んでください。

プロジェクト状態 vs ユーザー状態

CLI が読み書きする場所は 2 つです:
  • .arkor/(プロジェクトごと、gitignore 済み): state.json(プロジェクトのルーティング)と build/index.mjs(バンドルされたトレーナー)。
  • ~/.arkor/(ユーザーごと): credentials.json(認証)と studio-token(起動ごとの CSRF トークン、一時的)。
ファイル単位の説明は プロジェクト構成 を参照。