Documentation Index
Fetch the complete documentation index at: https://docs.arkor.ai/llms.txt
Use this file to discover all available pages before exploring further.
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 形式で記載しますが、他のパッケージマネージャーでも同じように動きます。
コマンド
| コマンド | 役割 |
|---|---|
arkor init | カレントディレクトリに src/arkor/index.ts + arkor.config.ts をスキャフォールド。 |
arkor dev | Studio を http://localhost:4000 で起動(設定可)。 |
arkor build | src/arkor/index.ts を .arkor/build/index.mjs にバンドル。 |
arkor start | ビルド成果物を実行(無いときは自動ビルド)。 |
arkor login | サインイン。フラグなしでは対話ピッカー(初期選択: Anonymous)を表示。--oauth でループバック上の Arkor Cloud OAuth(PKCE)フロー、--anonymous でピッカーをスキップして使い捨てトークン。 |
arkor logout | ~/.arkor/credentials.json を削除。 |
arkor whoami | 現在の identity と到達できる org を表示。 |
コマンド共通の慣例
--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 行警告を出します。WarningとSunsetヘッダ(あれば)はメッセージのフォーマットに使われ、それ単独で警告をトリガーすることはありません。
環境変数
| 変数 | 効果 |
|---|---|
DO_NOT_TRACK=1 | すべてのコマンドでテレメトリを無効化。永続テレメトリ ID ファイルは作成も読込もされません。 |
ARKOR_TELEMETRY_DISABLED=1 | DO_NOT_TRACK と同じ。DO_NOT_TRACK で他ツールをゲートしているがスイッチを分けたい構成のための Arkor 専用エイリアス。 |
ARKOR_TELEMETRY_DEBUG=1 | テレメトリモジュール内部の冗長ログを有効化(init 失敗、identity ファイルの read/write エラー、capture 失敗、shutdown エラー)。このフラグが ON でも テレメトリは送信されます。診断補助で、dry-run スイッチではありません。送信を止めるには DO_NOT_TRACK=1 か ARKOR_TELEMETRY_DISABLED=1 を使ってください。 |
CI=1(または stdout が非 TTY) | 非対話モードを強制。arkor init はプロンプトをスキップしてフラグで渡された値(--yes 時は組み込みのデフォルト)を使い、--git か --yes 指定時は git init が確認なしで走り、それ以外では黙ってスキップされます。arkor init § CI / 非対話シェル を参照。 |
ロードマップ上
CLI はARKOR_CLOUD_API_URL を読み、設定されていればクラウド API のエンドポイントとして使います(packages/arkor/src/core/credentials.ts の defaultArkorCloudApiUrl)。ただし、デフォルト以外のエンドポイント(セルフホストやステージング)を指すことは まだ 安定したユーザー向けノブではありません: この環境変数は内部用で予告なく変わる可能性があり、別エンドポイントへの互換性保証もありません。セルフホスト/ステージングデプロイへのファーストクラス対応はロードマップにあります。
プログラムからの呼び出し
arkor パッケージは runTrainer を再エクスポートしているので、arkor start 経由でなく自分の TypeScript コードから学習を駆動できます:
runBuild、runStart、runDev など)は意図的に 公開面ではなく、予告なく変わる可能性があります。学習を自分のコードに組み込みたいなら runTrainer を使うか、trainer.start() / trainer.wait() を直接呼んでください。
プロジェクト状態 vs ユーザー状態
CLI が読み書きする場所は 2 つです:.arkor/(プロジェクトごと、gitignore 済み):state.json(プロジェクトのルーティング)とbuild/index.mjs(バンドルされたトレーナー)。~/.arkor/(ユーザーごと):credentials.json(認証)とstudio-token(起動ごとの CSRF トークン、一時的)。