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 +32 -68
- package/dist/kylon-bundle.mjs +1 -1
- package/package.json +2 -2
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
|
|
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
|
|
37
|
-
local registration
|
|
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
|
|
43
|
-
|
|
44
|
-
|
|
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
|
|
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
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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
|
|
186
|
-
|
|
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
|
|
202
|
-
external agents, it remains listed as an **Authorized device** so its
|
|
203
|
-
|
|
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,
|
|
208
|
-
|
|
209
|
-
|
|
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
|
|
245
|
-
|
|
246
|
-
service execs; run it manually to
|
|
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:
|
|
253
|
-
saved
|
|
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
|
|
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
|
|
285
|
-
| `kylon
|
|
286
|
-
| `kylon gateway run` | Run the
|
|
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
|
|
567
|
+
notice prints for local runtimes); in-flight daemons keep their current pinned
|
|
604
568
|
bundle until that drain-restart. Do not `npm unpublish`.
|