kylon-cli 0.2.4-next.453 → 0.2.5-next.454

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -28,20 +28,20 @@ two distinct copy-paste entry points:
28
28
  Because the link carries the credential, treat the command as a secret until
29
29
  it is used or expires.
30
30
 
31
- A machine may be registered with one Kylon server and workspace at a time.
31
+ A local runtime may be connected with one Kylon server and workspace at a time.
32
32
  Equivalent spellings of the same server (`https://dev.purework.ai/api` and
33
33
  `https://api.purework.ai`, `https://app.kylon.io/api` and
34
34
  `https://api.kylon.io`) count as the same registration; preview environments
35
35
  never do, even though they serve the same workspace ids as dev. Run
36
- `kylon computer unlink` to point a machine somewhere else it forgets the
37
- local registration only, revoking nothing in the workspace and unassigning no
38
- agent.
36
+ `kylon disconnect` before connecting it somewhere else. This forgets only the
37
+ local runtime registration; it revokes nothing or changes any workspace-side
38
+ agent configuration.
39
39
 
40
40
  `auth login` browser-authenticates the human operator for `kylon workspace`
41
41
  commands. `agent link` authenticates only the link operation with its embedded
42
- credential; it never creates a human CLI session. Linking mints or reuses a
43
- machine-scoped credential stored locally with mode `0600` and starts the host
44
- daemon. In release builds on supported hosts a user-level
42
+ credential; it never creates a human CLI session. Linking mints or reuses an
43
+ installation credential stored locally with mode `0600` and starts the local
44
+ agent runtime. In release builds on supported environments a user-level
45
45
  `launchd` / `systemd --user` service is installed so the daemon survives
46
46
  terminal exit, reboot, and sleep/wake; otherwise the daemon runs in the
47
47
  foreground until `Ctrl+C`.
@@ -54,7 +54,7 @@ Requirements: Node.js 22.15.0+ (npm ships with Node). Linux / macOS only
54
54
 
55
55
  ### One managed `kylon` for humans and agents
56
56
 
57
- The bootstrap commands (`agent link`, `connect`, and `auth login`) pin the CLI under
57
+ The bootstrap commands (`agent link` and `auth login`) pin the CLI under
58
58
  `~/.kylon/bin`: the exact bundle the daemon and its agents execute, exposed as
59
59
  the `kylon` command. After the bootstrap they offer to add that directory to
60
60
  your shell PATH (a marker-wrapped `. "$HOME/.kylon/env"` line in your shell rc,
@@ -64,23 +64,23 @@ artifact, one version, one upgrade.
64
64
 
65
65
  A leftover npm-global or npx-cached copy stays harmless: when it starts and
66
66
  finds a strictly newer pinned install, it defers to it automatically
67
- (installer commands — `agent …`, `connect`, and `gateway …` — always run as invoked, so a
67
+ (installer commands — `agent …` and `gateway …` — always run as invoked, so a
68
68
  fresh `npx` can still install itself over an older pinned copy; set
69
69
  `KYLON_PINNED_TRAMPOLINE=0` to disable the deferral).
70
70
 
71
- ### Upgrading a gateway host
71
+ ### Upgrading a local runtime
72
72
 
73
73
  ```bash
74
74
  npx --yes kylon-cli@latest gateway service upgrade
75
75
  ```
76
76
 
77
77
  (`@next` on dev.) The daemon and the pinned agent `kylon` both run the
78
- installed bundle under `~/.kylon/bin`, which only this command (or a
79
- re-connect) refreshes: the freshly-resolved CLI installs its own bundle and
78
+ installed bundle under `~/.kylon/bin`, which only this command (or a fresh
79
+ `agent link`) refreshes: the freshly-resolved CLI installs its own bundle and
80
80
  drain-restarts the running daemon onto it, moving both in lockstep.
81
81
  `npm install -g` alone updates the operator's terminal binary and leaves the
82
- gateway on the old build. The update notice the CLI prints on gateway hosts
83
- uses exactly this command; `kylon gateway service repair` is the same
82
+ runtime service on the old build. The update notice the CLI prints for local
83
+ runtimes uses exactly this command; `kylon gateway service repair` is the same
84
84
  reconciliation under its recovery-oriented name.
85
85
 
86
86
  The drain waits up to five minutes for in-flight agent work, and a drain that
@@ -182,8 +182,8 @@ state:
182
182
  workspace secret grants with browser authorization. Create API keys through
183
183
  the secure Connection flow in Kylon.
184
184
  - Use `kylon gateway secret list|set|delete --agent <agent-id>` for agent-local
185
- records, authenticated by this machine's computer credential through the
186
- per-agent computer routes.
185
+ records, authenticated by this installation's saved runtime credential
186
+ through agent-scoped runtime routes.
187
187
 
188
188
  This separation prevents browser credentials from reaching the
189
189
  daemon-authenticated secret endpoints and avoids state-dependent command
@@ -198,59 +198,33 @@ that entry from the local collection. With no `--workspace`, it selects the most
198
198
  recently authorized entry. If Kylon cannot confirm revocation, it keeps the local
199
199
  credential so you can retry. `kylon auth logout --local-only` deliberately skips
200
200
  the remote revocation. This logout is deliberately credential-only: it does not
201
- disconnect a computer or unassign its agents. If that installation still hosts
202
- external agents, it remains listed as an **Authorized device** so its host
203
- authority can still be removed without signing the CLI in again.
201
+ disconnect the local agent runtime or change connected agents. If that installation
202
+ still runs external agents, it remains listed as an **Authorized device** so its
203
+ runtime access can still be removed without signing the CLI in again.
204
204
 
205
205
  You can instead remove an **Authorized device** from **Settings → Kylon CLI**.
206
206
  After warning about the impact, that workspace-scoped action revokes any active
207
- installation credential, disconnects and revokes the computer host associated
208
- with the same installation, and unassigns every external agent hosted there.
209
- The device's authorizations and host registrations in other workspaces, browser
207
+ installation credential, removes the local runtime access associated with the
208
+ same installation, and disconnects every external agent using it. The device's
209
+ authorizations and runtime access in other workspaces, browser
210
210
  sessions, and workspace service keys are unaffected.
211
211
 
212
212
  Credentials created by the earlier browser flow appear as **Legacy user API
213
213
  key** in Settings. They can be revoked there, but they are not bound to a single
214
214
  workspace; sign in again to replace one with the per-installation flow.
215
215
 
216
- ### Register a computer for manual placement
217
-
218
- `kylon connect` remains the advanced computer-first entrypoint when the user
219
- explicitly wants to register a host before choosing an agent:
220
-
221
- ```bash
222
- npx --yes kylon-cli@latest connect --workspace <WORKSPACE_ID>
223
- ```
224
-
225
- This browser-authenticates the operator (the same PKCE flow as `kylon auth
226
- login`), enrolls the machine as a **computer** keyed on its stable install id
227
- (re-running is idempotent), persists the machine-scoped credential, and starts
228
- the host daemon. New external-agent onboarding should use the agent-specific
229
- `agent link` command instead; creation never asks the user to select a computer.
230
-
231
- The daemon then reconciles the computer's assigned agents from the server:
232
- each agent gets an isolated state root under `~/.kylon/agents/<agent-id>/`,
233
- provider readiness (Codex / Claude Code install + authentication) is reported
234
- per agent, and assignments arrive over the computer's single SSE stream.
235
- Linking or relinking an agent later happens from that agent's Onboarding tab;
236
- the daemon picks the change up without re-running `connect`.
237
-
238
- Use `--no-start` to register without starting the daemon, `--json` for
239
- machine-readable output, and `--server-url` to target a non-default API origin
240
- for direct computer registration.
241
-
242
216
  ### Run
243
217
 
244
- `gateway run` starts the host daemon from this machine's saved computer
245
- registration. It is the command the installed `launchd` / `systemd --user`
246
- service execs; run it manually to host agents in the foreground.
218
+ `gateway run` starts the local runtime service from this environment's saved
219
+ connection. It is the command the installed `launchd` / `systemd --user`
220
+ service execs; run it manually to keep connected agents available in the foreground.
247
221
 
248
222
  ```bash
249
223
  kylon gateway run
250
224
  ```
251
225
 
252
- It takes no connection flags: register first with `kylon connect`. Without a
253
- saved computer registration it exits with an error pointing there.
226
+ It takes no connection flags: link an agent first with `kylon agent link`.
227
+ Without a saved runtime connection it exits with guidance pointing there.
254
228
 
255
229
  ### Sleep, wake, and keep-awake (macOS)
256
230
 
@@ -273,7 +247,7 @@ seconds, no service restart required.
273
247
  When the machine does sleep (battery, lid closed, manual sleep), assignments
274
248
  dispatched to its agents queue server-side. The daemon detects the wake
275
249
  instantly (a wall-clock jump across its monitor tick) and recovers in one
276
- pass: it force-reconnects the computer event stream with reset backoff,
250
+ pass: it force-reconnects the runtime event stream with reset backoff,
277
251
  re-asserts presence on the fresh connection, and claims the queued work —
278
252
  instead of waiting out inactivity timeouts and heartbeat intervals.
279
253
 
@@ -281,21 +255,11 @@ instead of waiting out inactivity timeouts and heartbeat intervals.
281
255
 
282
256
  | Command | Description |
283
257
  |---|---|
284
- | `kylon connect` | **Recommended.** Register this computer (browser auth + enrollment) and run the host daemon. `--url` also assigns one agent. |
285
- | `kylon computer unlink` | Forget this machine's saved computer registration so it can be linked elsewhere. Local only: revokes nothing and unassigns no agent. |
286
- | `kylon gateway run` | Run the host daemon from the saved computer registration (service entrypoint). |
258
+ | `kylon agent link --url <link> [-- <launch command>]` | **Recommended.** Connect one agent and start its local runtime. ACP launch commands are saved in the same operation. |
259
+ | `kylon disconnect` | Forget this environment's saved runtime connection. Local only: workspace-side agent configuration is unchanged. |
260
+ | `kylon gateway run` | Run the local runtime service from the saved connection (service entrypoint). |
287
261
  | `kylon keep-awake [mode]` | Show or set macOS sleep prevention (`always` (default) / `while-busy` / `off`). |
288
262
 
289
- ### Connect Options
290
-
291
- | Flag | Description |
292
- |---|---|
293
- | `--workspace <id>` | Workspace to register this computer with |
294
- | `--url <setup url>` | Agent setup link from Kylon; implies the workspace and assigns that agent after enrollment (alternative to `--workspace`) |
295
- | `--server-url <url>` | API server URL (defaults to `https://api.kylon.io`; ignored in favor of the origin resolved from `--url`) |
296
- | `--no-start` | Register only; do not start the daemon |
297
- | `--json` | Emit machine-readable JSON |
298
-
299
263
  ### Supported Providers
300
264
 
301
265
  - `codex` — OpenAI Codex CLI
@@ -600,5 +564,5 @@ npm deprecate kylon-cli@<bad> "Broken release — use <last-good>."
600
564
 
601
565
  Operators on `@latest` pick up the re-pointed version the next time they run
602
566
  `npx --yes kylon-cli@latest gateway service upgrade` (the command the update
603
- notice prints on gateway hosts); in-flight daemons keep their current pinned
567
+ notice prints for local runtimes); in-flight daemons keep their current pinned
604
568
  bundle until that drain-restart. Do not `npm unpublish`.