18/Documentation
コマンド
すべてのcollie動詞、PATHへのcollieの追加、Herdr管理のインストールでそれらの動詞に対応するHerdrアクション
すべてのverbはcollie <verb>の形式を使用する。これはすべてのインストール環境で共通の標準構文であり、バイナリ(cli/)に直接実装されている。collieをPATH(以下)に追加する前に、リポジトリのルートからbin/collie <verb>を実行する。Herdrで管理された環境では、これらのverbは同一の動作をするHerdrアクション(以下)として登録される。
ホストで複数のインスタンスを実行する場合は、各動詞の前に COLLIE_INSTANCE=<name> を付加してください。詳細は 単一ホスト上での複数 Collie インスタンスの実行 を参照してください。
| 動詞 | コマンド | 説明 |
|---|---|---|
| 起動 | collie start | 必要に応じてビルドし、配信してURLを表示 |
| 停止 | collie stop | ブリッジを一時停止(削除は行わない) |
| 再起動 | collie restart | 停止してから起動 |
| ステータス | collie status | Collie は実行中です のバナーとURL |
| URL | collie url | tailnet のURLを表示 |
| QR | collie qr | 同じURLのスキャン可能なコード |
| バージョン | collie version | 実行中のバージョン(0.x.y+sha) |
| Skill | collie skill | ターミナルで動作するAIコーディングエージェント向けのCollieに関する概要(collie --skillも参照)。collie skill install、uninstall、sync、status、printはエージェントの指示ファイル内のwalky talkyスキルを管理します。collie updateは各更新(スキルのインストール)の後にsyncを実行します。 |
| ドキュメント | collie docs · collie docs <name> · collie docs --all | バイナリ自体から出力されたページ |
| アップデート | collie update | 現在のメジャーバージョンの最新リリースをステージングし、切り替え、再起動して検証します (--checkで事前チェック、--statusでレポート、--majorでメジャー移行) |
| ロールバック | collie update --rollback | 前のバージョンに戻します (ステージングが存在しないHerdr管理のチェックアウトでは使用不可) |
| アンインストール | collie uninstall | サービスを削除(.env とインストール本体は保持) |
| ペアリング | collie pair · collie pair --expires <duration> | 10分間有効な8文字のコードとQRコードを表示します。QRコードをスキャンすると、コードが入力された状態で「設定」→「システム」→「ペアリング済みデバイス」が開き、手動でコードを入力してペアリング済みを取得することもできます。--expiresを指定しない場合、トークンの有効期限は無期限となり、コマンドにその旨が表示されます。指定した場合(12h、30d、2w)、申請後にトークンが無効になる日時が表示されます。スクリプトはscriptなどの独自のラベルを付けてコードを申請し、1回ペアリングします(デバイスに有効期限を設定する) |
| デバイス | collie devices list · collie devices revoke <label> · collie devices set-expiry <label> <duration> · collie devices clear-expiry <label> | ペアリング済みデバイスのリスト表示、取り消し、または有効期限日時の変更を行います。listは各デバイスの有効期限をno expiry、expires <date>、またはEXPIRED <date>として表示します。set-expiryは現在から新しい有効期間をカウントし、clear-expiryはデバイスを削除します。ラベルは完全一致するか、1台のデバイスにのみ該当する場合は大文字と小文字を区別せずに一致します。 |
| リンク | collie link · collie unlink | collie を PATH に追加(以下) |
| ログ | collie logs | サービスログを末尾から監視 |
| 設定 | collie config show · collie config check · collie config init | すべての設定とその参照元を表示、設定ファイルを検証、またはコメント付きのconfig.toml(設定ファイル)を出力します |
| durable agent | collie durable attach <name> --socket <path> · collie durable attach <name> --url <url> --token-env <VAR> · collie durable detach <name> · collie durable list | sources.json に durable agent を追加、削除、または実行中の bridge が認識している各 durable agent の状態を一覧表示します。attach と detach は次回の再起動時、または --restart で即座に適用されます。フラグ、出力、終了コード: durable agent |
| トランシーバー | collie walky who · collie walky send <address> <text> · collie walky reply <id> <text> · collie walky inbox · collie walky status <id> | ターミナルから、またはエージェント間で、エージェントセッションにメッセージを送信する(トランシーバー) |
| 音声 | collie stt setup · stt test · stt status · stt off | 音声入力 の設定 / 確認 / 無効化 |
| プッシュキー | collie push-keys | .env に VAPID キーペアを生成 |
| プッシュテスト | collie push-test | 動作確認用の通知を1件送信 |
CLI には、使用頻度の低いタスク向けに build、serve、unserve、doctor、crew … も用意されています。
start と status の両方が Collie は実行中です バナーを出力します。これはヘルスチェックマークとバージョン、続いて service、local、tailnet の各行で構成されます。初回実行 には、ヘルスチェック失敗時に出力される内容を含め、その全体が表示されます。報告されるバージョンは配信されるバンドルのスタンプから読み取られ、アクティブなビルドが反映されます。
Ink またはプレーンテキスト。 start、status、doctor、crew add、crew status コマンドは、標準出力が TTY のときに対話型ターミナル UI を描画します。--plain を渡すか、出力をパイプ、ファイル、systemd ジャーナル、CI ランナーにリダイレクトすると、生の行出力にフォールバックします。
collie doctor は読み取った状態を示します。 最初の行にはインスタンス名(default、または COLLIE_INSTANCE 内の名前)と、読み取る状態ディレクトリが表示されます。1台のマシンで2つのレーンを実行している場合、誤った COLLIE_INSTANCE を持つシェルは誤ったレーンを読み取るため、残りの情報を信用する前にその行を確認してください。--json は、collie エントリの instance および stateDir と同じ2つの値を出力します。
collie doctor はエージェントプログラムを一覧表示します。 Collieが入力プロファイルを持つ各プログラムに対して、1つの harness-<name> 行が割り当てられます: ログインシェルの PATH 上でCollieが実行するファイル、出力されたバージョン、およびそのバージョンに対するプロファイルの判定結果です。検証済み範囲を超えるバージョンは注記に過ぎず、ターン内の送信は引き続き信頼されます。ファイルは解決するもののバージョンが読み取れない場合(PATH の先頭にあって $HOME を必要とするラッパーや、破損したインストールなど)、その行で警告されます。バージョンが読み取れるまで、Collieはそのプログラムへのすべての送信を暫定的なものとして扱います。インストールされていないプログラムには not installed が表示されます。--json では、各行に harness、binary、version、profileStatus も含まれます。
collie doctor には確認対象のペインがないため、行には PATH 上のコピーの名前が表示されます。Herdrでの送信はペイン内で実行されているプログラムに問い合わせるため、フルパスで起動されたものやプロジェクト内にインストールされたものなど、別のコピーを実行しているペインでは、そのレシートに該当コピーのバージョンが表示されます。
collie を PATH に追加
collie link を実行して ~/.local/bin/collie を公開:
bin/collie link # ~/.local/bin/collie → <checkout>/bin/collie
collie status # from anywhere
bin/collie unlink # take the name back downチェックアウトのバイナリへのシンボリックリンク を作成するため、その後の collie build の更新は追加の手順なしで即座に反映されます(ADR 0021)。このコマンドは、他の Collie チェックアウトによる既存のリンクを置き換え、上書きした対象を出力します。該当パスにある Collie 以外のファイルは上書きしません。unlink は、シンボリックリンクが現在の現在のチェックアウトを指している場合にのみ削除します。
PATH に ~/.local/bin が含まれていない場合、link は警告を表示して終了します。シェルのプロファイルは変更しません。collie doctor を実行して path-link の行を確認すると、引数なしの collie コマンドがどのチェックアウトに解決されるかが分かります。
Herdr アクション
herdr plugin install AltanS/collie または herdr plugin link で作成された Herdr で管理されたインストールにのみ適用。Herdr は Collie がサポートする 5 つのマルチプレクサの 1 つです。これらのアクションはアダプターに直接対応します。各アクションは、上記の表に記載されている同じ collie バイナリに動詞を転送します。scripts/install.sh 経由で作成されたバイナリインストールでは、プラグインアクションは存在せず、collie <verb> が唯一の構文となります。
Collie はこれらのアクションを herdr-plugin.toml に登録します。herdr plugin action invoke <id> --plugin herdr.collie で呼び出すか、herdr plugin action list --plugin herdr.collie で表示します:
<id> | 同等の動詞 | 説明 |
|---|---|---|
start | collie start | 必要に応じてビルドし、サービスを開始して tailscale serve、URL とバナーを出力 |
stop | collie stop | ブリッジを一時停止(削除は行わない) |
restart | collie restart | stop + start |
status | collie status | Collie は実行中です バナー: 準備状況(✓/⚠)、バージョン、URL |
url | collie url | tailnet のURLを表示 |
version | collie version | 実行中のバージョン(0.x.y+sha)を出力します |
update | collie update | チェックアウトの更新(pull、または fetch + 再detach)、再ビルド、再起動を実行します |
uninstall | collie uninstall | サービスを破棄します(.env とチェックアウトは保持されます) |
push-keys | collie push-keys | サービスが読み込む .env に VAPID 鍵ペアを書き込みます |
push-test | collie push-test | 購読しているすべての端末に通知を1件送信します |
qr、pair、devices、link、logs、stt、configは端末や位置引数、またはその両方が必要なため、対応するプラグインアクションがありません。collie <verb>として実行してください。
Herdr アクションは、端末バナーの代わりに Herdr の JSON エンベロープを返します。 アクションのキャプチャされた標準出力は herdr plugin log list --plugin herdr.collie で確認できます。インラインで出力したい場合は collie <verb> を直接実行してください。herdr plugin list --json の出力には、アクティブなバージョンではなく plugin link 時にキャッシュされたバージョンが反映されます。リンクされたクローンでは、update がキャッシュを修正するために自動で再リンクします。これは herdr plugin link "$(pwd)" で強制実行できます。Herdr ≥0.8.0 では、呼び出しごとにマニフェストがディスクから再読み込みされます。
注。scripts/collie-ctl.sh <verb>は引き続きサポートされます。ブートストラップシムとして動作し、Bunを検出して、チェックアウトにbin/collieがなければコンパイルし、argvをそのまま渡します。新しくリンクされたクローンはこのパスを使って初期バイナリをビルドします。Herdr <0.8.0はインストール時にキャッシュされたアクション定義(ADR 0006)を固定するため、Herdrアクションは引き続きこのスクリプトを参照します。各verbはcli/内のコンパイル済みバイナリで一度だけ実装されます。