fix: rename installed binaries
This commit is contained in:
+9
-9
@@ -10,12 +10,12 @@ From the repository root:
|
||||
nix build .#
|
||||
```
|
||||
|
||||
The default package is implemented by `package.nix` and builds the Cargo workspace binaries `pod` and `tui`. The derivation uses the checked-in `Cargo.lock`, so Cargo dependencies are fetched by the normal Nix Rust packaging path instead of by network access during the build.
|
||||
The default package is implemented by `package.nix` and builds the Cargo packages `pod` and `tui` as installed binaries `insomnia-pod` and `insomnia`. The derivation uses the checked-in `Cargo.lock`, so Cargo dependencies are fetched by the normal Nix Rust packaging path instead of by network access during the build.
|
||||
|
||||
The package output contains:
|
||||
|
||||
- `bin/pod` — Pod CLI / runtime process.
|
||||
- `bin/tui` — terminal UI.
|
||||
- `bin/insomnia-pod` — Pod CLI / runtime process.
|
||||
- `bin/insomnia` — terminal UI.
|
||||
- `share/insomnia/resources/` — bundled runtime resources, including `resources/prompts/`.
|
||||
- `share/doc/insomnia/nix.md` — this document.
|
||||
|
||||
@@ -24,15 +24,15 @@ The package output contains:
|
||||
After `nix build`:
|
||||
|
||||
```sh
|
||||
./result/bin/pod --help
|
||||
./result/bin/tui
|
||||
./result/bin/insomnia-pod --help
|
||||
./result/bin/insomnia
|
||||
```
|
||||
|
||||
With flakes:
|
||||
|
||||
```sh
|
||||
nix run .#tui
|
||||
nix run .#pod -- --help
|
||||
nix run .#insomnia
|
||||
nix run .#insomnia-pod -- --help
|
||||
```
|
||||
|
||||
`nix run .#` defaults to the TUI.
|
||||
@@ -53,8 +53,8 @@ The Nix package does not put user configuration, sessions, sockets, or other mut
|
||||
|
||||
The package derivation has a credential-free install check that verifies:
|
||||
|
||||
- `pod --help` starts successfully.
|
||||
- `tui` is installed and reaches argument parsing.
|
||||
- `insomnia-pod --help` starts successfully.
|
||||
- `insomnia` is installed and reaches argument parsing.
|
||||
- bundled prompt resources and this Nix usage document are present in the output.
|
||||
|
||||
For full validation before handing changes to review, run:
|
||||
|
||||
@@ -172,7 +172,7 @@ unique であれば workspace を指定しなくて済む。
|
||||
## Daemon-less リモート Pod 生成(SSH-only モデル)
|
||||
|
||||
リモートホスト上の Pod 生成は **daemon 無しで SSH だけで成立する**。
|
||||
remote 側に必要なのは `pod` バイナリと SSH アクセスのみ。
|
||||
remote 側に必要なのは `insomnia-pod` バイナリと SSH アクセスのみ。
|
||||
|
||||
### 前提
|
||||
|
||||
@@ -182,7 +182,7 @@ remote 側に必要なのは `pod` バイナリと SSH アクセスのみ。
|
||||
- insomnia が転送するのは**セッション(会話履歴)と manifest overlay**
|
||||
だけ。コードベースの同期は外部に委ねる
|
||||
- コンテナ内で動かすか bare metal で動かすかも insomnia は問わない。
|
||||
`pod` バイナリが動くホストの fs 上で活動する主体がある、
|
||||
`insomnia-pod` バイナリが動くホストの fs 上で活動する主体がある、
|
||||
それだけが前提
|
||||
|
||||
### フロー
|
||||
@@ -193,7 +193,7 @@ host_a (spawner) host_b (remote)
|
||||
│
|
||||
├── ssh: session データを転送 ────────→ ファイル書き込み
|
||||
├── ssh: overlay TOML を転送 ─────────→ ファイル書き込み
|
||||
├── ssh: `pod --overlay ... &` ───────→ Pod プロセス起動、socket 作成
|
||||
├── ssh: `insomnia-pod --overlay ... &` ───────→ Pod プロセス起動、socket 作成
|
||||
├── ssh -L: socket を tunnel ─────────→ Pod B の unix socket
|
||||
│
|
||||
└── localhost:tunnel に接続 ──────────→ Method::Run / Event stream
|
||||
@@ -209,7 +209,7 @@ tar cz session/ | ssh insomnia@host-b "tar xz -C ~/workspaces/task-123/store"
|
||||
echo "$OVERLAY" | ssh insomnia@host-b "cat > ~/workspaces/task-123/overlay.toml"
|
||||
|
||||
# 2. Pod を起動(detach)
|
||||
ssh insomnia@host-b "pod --store ~/workspaces/task-123/store \
|
||||
ssh insomnia@host-b "insomnia-pod --store ~/workspaces/task-123/store \
|
||||
--overlay ~/workspaces/task-123/overlay.toml &"
|
||||
|
||||
# 3. socket を tunnel で引っ張る
|
||||
|
||||
+7
-7
@@ -56,7 +56,7 @@ manifest 中のパス(`model.auth.file` / `scope.*.target` /
|
||||
|
||||
Pod の作業ディレクトリは manifest に含まれない。プロセス起動時の
|
||||
`std::env::current_dir()` がそのまま Pod の pwd となるため、別の作業
|
||||
ディレクトリで Pod を走らせたい場合は `cd` してから `pod` を起動する
|
||||
ディレクトリで Pod を走らせたい場合は `cd` してから `insomnia-pod` を起動する
|
||||
(または `SpawnPod` が子に対して行っているように、親プロセス側で
|
||||
`Command::current_dir` を明示する)。
|
||||
|
||||
@@ -297,12 +297,12 @@ import-map 形式のプレフィックスで指定する:
|
||||
|
||||
---
|
||||
|
||||
## `pod` CLI
|
||||
## `insomnia-pod` CLI
|
||||
|
||||
`pod` は通常、builtin default → user manifest → project manifest → overlay の cascade で manifest を解決して起動する。
|
||||
`insomnia-pod` は通常、builtin default → user manifest → project manifest → overlay の cascade で manifest を解決して起動する。
|
||||
|
||||
```
|
||||
pod [--project <path>] [--overlay <toml>] [-s/--store <path>] [--session <uuid>]
|
||||
insomnia-pod [--project <path>] [--overlay <toml>] [-s/--store <path>] [--session <uuid>]
|
||||
```
|
||||
|
||||
| フラグ | 説明 |
|
||||
@@ -323,15 +323,15 @@ user manifest は CLI フラグではなく、以下の規則で解決する。
|
||||
単一ファイルだけで起動したい場合は cascade を使わず、`--manifest` を指定する。
|
||||
|
||||
```
|
||||
pod --manifest <path> [-s/--store <path>] [--session <uuid>]
|
||||
insomnia-pod --manifest <path> [-s/--store <path>] [--session <uuid>]
|
||||
```
|
||||
|
||||
`--manifest` は指定 TOML 1 枚だけを `PodManifest::from_toml` で読み、user / project / overlay layer は一切読まない。したがって `--project`、`--overlay`、非空の `INSOMNIA_USER_MANIFEST` とは併用不可。
|
||||
|
||||
spawn 子 Pod 用の内部フラグとして `--adopt` と `--callback <path>` がある。これらは `SpawnPod` が scope allocation と親 callback socket を引き継がせるために使うもので、通常の手動起動では使わない。
|
||||
|
||||
Pod の作業ディレクトリは `pod` 起動時の cwd が直接使われる。別ディレクトリで
|
||||
動かしたい場合は `cd <path> && pod ...` のように外側で `cd` してから起動する。
|
||||
Pod の作業ディレクトリは `insomnia-pod` 起動時の cwd が直接使われる。別ディレクトリで
|
||||
動かしたい場合は `cd <path> && insomnia-pod ...` のように外側で `cd` してから起動する。
|
||||
|
||||
引数無しで起動すると、cwd + `manifest::paths` の自動解決だけで動く最小構成になる
|
||||
(overlay 無し、プロジェクトに `.insomnia/manifest.toml` があればそれを使う)。
|
||||
|
||||
@@ -111,7 +111,7 @@ Running 中に割り込みたい場合、ほとんどのケースで `Ctrl-C`(
|
||||
|
||||
`Ctrl-X` は Running 中だけ Cancel、Idle / Paused では Shutdown。`Ctrl-C` は Running 中だけ Pod に `Method::Pause` を送り、それ以外では Pod は落とさず TUI プロセスだけ抜ける。`Ctrl-D` は常に Pod へ制御メソッドを送らず TUI プロセスだけ抜ける。
|
||||
|
||||
TUI のダイアログから Pod を起動する経路では、起動した Pod は TUI の子プロセスとして管理・終了されず、独立したプロセスとして残る。TUI 終了後は `tui <pod-name>` で再接続できる。
|
||||
TUI のダイアログから Pod を起動する経路では、起動した Pod は TUI の子プロセスとして管理・終了されず、独立したプロセスとして残る。TUI 終了後は `insomnia <pod-name>` で再接続できる。
|
||||
|
||||
## 履歴メモ
|
||||
|
||||
|
||||
Reference in New Issue
Block a user