@amd-gaia/gaia 0.2.0 → 0.3.0

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/SPEC.md CHANGED
@@ -254,7 +254,7 @@ the header.
254
254
  | ------------------ | --------------------------------------- |
255
255
  | Default port | `8141` (`DEFAULT_PORT` in `server.py`) |
256
256
  | Reserved port | `4001` — refused with a `RangeError` |
257
- | Contract version | `API_VERSION = "2.12"` |
257
+ | Contract version | `API_VERSION = "2.17"` |
258
258
  | Agent id / prefix | `gaia` → `/v1/gaia/...` |
259
259
 
260
260
  ### 5.1 Endpoints
@@ -265,13 +265,67 @@ the header.
265
265
  | `GET` | `/version` | Contract probe. `{ "apiVersion", "agentVersion" }` |
266
266
  | `GET` | `/v1/gaia/version` | The TUI's negotiation probe |
267
267
  | `GET` | `/v1/gaia/init` | Readiness detail (Lemonade, model, connectors) |
268
+ | `GET` | `/v1/gaia/memory` | The `/memory` snapshot (contract ≥ 2.13) |
269
+ | `GET` | `/v1/gaia/skills` | The skills the agent can load (contract ≥ 2.17) |
268
270
  | `POST` | `/v1/gaia/query` | The streaming surface (`text/event-stream`) |
269
271
  | `POST` | `/v1/gaia/query/{run_id}/cancel` | Cancel a run by its host-minted `run_id` |
270
272
  | `POST` | `/v1/gaia/query/{run_id}/respond`| Answer a mid-run question |
273
+ | `POST` | `/v1/gaia/query/{run_id}/tool_decision` | Answer a confirmation-gated tool (≥ 2.14) |
274
+ | `POST` | `/v1/gaia/sessions/{session_id}/bypass` | Run gated tools without asking, for one session (≥ 2.14) |
275
+ | `POST` | `/v1/gaia/query/{run_id}/followup`| Add to a run already in flight (contract ≥ 2.15) |
276
+
277
+ #### `/query` request body
278
+
279
+ The full, machine-readable contract — every field, type, and which are
280
+ required — is the committed
281
+ [`openapi.gaia.json`](https://github.com/amd/gaia/blob/main/hub/agents/gaia/python/openapi.gaia.json),
282
+ regenerated from the live routes by `python -m gaia_agent.export_openapi` and
283
+ checked for drift in CI — the same pattern as the email agent's own
284
+ `openapi.email.json`. Required: **`query`**, **`run_id`**,
285
+ **`context`** — `additionalProperties: false`, so an unrecognized field or a
286
+ missing required one is `422` before the agent runs. `run_id` must parse as a
287
+ UUID (`uuid.UUID(v)`); a non-UUID string is also `422`. Everything else
288
+ (`model`, `provider`, `max_steps`, `session_id`, `can_answer_questions`,
289
+ `documents`) is optional.
290
+
291
+ `documents` (contract ≥ 2.16) carries the absolute paths of the files the user
292
+ attached to the conversation. Send the whole set on every turn. Before the turn
293
+ runs, the agent indexes the ones it has not indexed yet, so a file attached
294
+ mid-conversation is read on the next turn. Each path is granted as that exact
295
+ file, never its folder. A relative path is a `422`. A missing file, a folder, or
296
+ a secret the path policy refuses is reported as not indexed in the turn's
297
+ `index_documents` step, and the turn still runs. Pre-2.16 binaries `422` the
298
+ field, so probe `/version` before sending it.
299
+
300
+ ```json
301
+ {
302
+ "query": "What's in this directory?",
303
+ "run_id": "5b1f6e2a-7c34-4b4d-9b3e-2b6d9a7a1c3e",
304
+ "context": [],
305
+ "session_id": "my-session-1",
306
+ "can_answer_questions": true
307
+ }
308
+ ```
271
309
 
272
310
  `/health` is liveness only. It says nothing about whether Lemonade is up or a
273
311
  model is loaded — `/v1/gaia/init` answers that.
274
312
 
313
+ `GET /v1/gaia/memory` returns the read-only snapshot behind the TUI's
314
+ `/memory` view: `{ "available", "reason", "stats", "contexts", "shown",
315
+ "total", "items" }`. `available: false` means the session has no live memory
316
+ store (Lemonade down, embedding model not pulled, disabled via env) — `reason`
317
+ names why, so an outage never renders as "you have no memories". This is the
318
+ daemon-transport counterpart of the stdio `MEMORY_DUMP_QUERY` sentinel; both
319
+ paths call the same `build_memory_dump()` and return the identical shape.
320
+
321
+ `GET /v1/gaia/skills` (contract ≥ 2.17) lists the skills the agent can load:
322
+ `{ "skills": [{ "name", "description", "version", "tier", "tools", "path" }],
323
+ "invalid": { "<folder>": "<why it failed to parse>" } }`. It reads the same
324
+ roots the agent does — its bundled skills, `~/.gaia/skills`, Claude Code skill
325
+ folders — so a host without the Python package (the bundled skills live inside
326
+ the binary) can still show them. A skill root that cannot be read is a `500`
327
+ naming it.
328
+
275
329
  ### 5.2 `session_id` and agent retention
276
330
 
277
331
  `POST /v1/gaia/query` accepts an optional `session_id` in the request body.
@@ -279,27 +333,47 @@ model is loaded — `/v1/gaia/init` answers that.
279
333
  whole conversation.** Contract ≥ 2.12 resolves `session_id` to a *retained*
280
334
  agent instead of a throwaway built fresh per call — indexed documents and
281
335
  `load_skill` state only survive between turns when the same `session_id`
282
- threads them together.
336
+ threads them together. A `session_id` must be 1–128 characters from
337
+ `A-Z a-z 0-9 . _ -`, not only dots (a UUID works); any other value is a **400**
338
+ naming the allowed characters, on `/query` and on `/sessions/{session_id}/bypass`.
339
+ Omitting it is a valid, explicit one-shot: nothing persists past that single
340
+ turn, and the agent is not told otherwise.
341
+
342
+ Internal explicit deletion follows the same idle-only rule as eviction: it returns
343
+ `False` for an absent or busy session and preserves a running agent. Successful
344
+ deletion claims the turn lock before removal and closes outside the registry lock.
345
+
346
+ A skill **captured** in-conversation (the `capture_skill` tool — itself
347
+ confirmation-gated, so over `/query` it needs a session that can answer) loads
348
+ **instruction-only** until a human runs `gaia skill promote <name>` in a
349
+ terminal: `load_skill` injects its body but defers registering any tools it
350
+ declares, and reports the deferral in its result. Integrators must not expect
351
+ a captured skill's `<skill>/<tool>` names to exist before that promote.
283
352
 
284
353
  A retained skill stays *loaded* but its body is not necessarily in the prompt
285
354
  every turn: the agent selects per turn which loaded bodies match the query and
286
355
  collapses the rest to a one-line menu entry (re-activated by calling
287
356
  `load_skill` again). `GAIA_DYNAMIC_SKILLS=0` disables the selection;
288
357
  `GAIA_DYNAMIC_SKILLS_TAU=<float>` overrides its threshold; an embedder outage
289
- disables it for the session and every body renders. Omitting it is a valid, explicit one-shot: nothing
290
- persists past that single turn, and the agent is not told otherwise.
358
+ disables it for the session and every body renders.
291
359
 
292
360
  A retained session also carries a **project map** — up to 600 prompt tokens of
293
361
  directory shape, entry points, installed commands and platform quirks, present
294
362
  whenever the agent's working directory resolves to a code repository (a VCS
295
363
  directory or a recognised manifest at its root). `GAIA_PROJECT_ROOT=<path>`
296
364
  picks the project when the working directory is not it. If that repository has
297
- no code index, the first turn starts one in a background thread;
298
- `GAIA_PROJECT_MAP_AUTO_INDEX=0` disables that. Neither affects the wire
299
- contract — they change what the agent knows and what the first turn costs.
365
+ no code index, the first `search_code_index` builds one;
366
+ `GAIA_PROJECT_MAP_AUTO_INDEX=1` builds it in a background thread at task start
367
+ instead. The same repository check also
368
+ makes `run_shell_command` always-on for the session instead of semantically
369
+ selected. Neither affects the wire contract — they change what the agent
370
+ knows, what tools it is offered, and what the first turn costs.
300
371
 
301
372
  A second `/query` for a `session_id` that already has a turn in flight gets
302
- `409 Conflict` — cancel the running turn or wait for it, then retry. A
373
+ `409 Conflict` — cancel the running turn or wait for it, then retry. Once that
374
+ turn has been cancelled, the new `/query` is held until it finishes its
375
+ in-flight model call (up to **240 s**) and then runs, instead of getting `409`;
376
+ only a cancelled turn that outlasts the wait still gets `409`. A
303
377
  `/query` that needs a **new** session while every retained slot is busy and
304
378
  none is idle enough to evict gets `503` with the reason in `detail` — a
305
379
  temporary, retryable condition, not a bug: wait for a turn to finish (or
@@ -317,10 +391,24 @@ not survive and should be reloaded.
317
391
  A second `/query` reusing a `run_id` that is still in flight gets `409` —
318
392
  `run_id` is caller-minted, so mint a fresh UUID per request; reusing one would
319
393
  leave the earlier run with no way to be cancelled. A `/query` supplying a `model`
320
- that differs from the one its `session_id` was built with also gets `409`: only
321
- agent construction reads a model, so the request cannot be honoured on the
322
- retained agent. Omit `model` to continue on the session's current one, or start a
323
- new `session_id` to switch.
394
+ that differs from the one its `session_id` was built with **switches the retained
395
+ agent in place** (≥ 2.14), so the conversation and any loaded skills survive the
396
+ change; the same machinery the stdio transport's `/model` uses. A switch that
397
+ fails — a missing Claude credential, an unknown local model — is a `409` naming
398
+ the reason, and leaves the session on its previous model. The session records its
399
+ `provider` too: a turn naming a different `provider` switches it the same way,
400
+ onto that turn's `model` or, if it names none, the provider's default model. A
401
+ `model` from the other provider than the one named (a `claude-*` id with
402
+ `"lemonade"`, or a non-Claude id with `"claude"`) is a `400` on a new session and
403
+ an existing one alike, before anything is built or switched.
404
+
405
+ `provider` is optional, and an omitted one is **not** read as `"lemonade"` — it
406
+ means "whatever the `model` implies", so a `claude-*` id alone reaches Anthropic
407
+ and any other id runs locally. The `400` above therefore fires only when a
408
+ request names a `provider` that disagrees with its `model`; there is no pair to
409
+ disagree when only one is given. On a retained session, omitting both leaves the
410
+ session on the provider it is already using, so an ordinary follow-up turn never
411
+ moves a Claude conversation back to Lemonade.
324
412
 
325
413
  ### 5.3 Version gate
326
414
 
@@ -367,6 +455,15 @@ mints a per-session token and passes it as `GAIA_GAIA_SIDECAR_TOKEN_FILE`
367
455
  (`gaia.daemon.sidecars.spec` mirrors both names as plain strings so core never
368
456
  imports this wheel).
369
457
 
458
+ **Child processes.** The programs the agent starts — shell commands, MCP
459
+ servers, CLI installs and sign-ins, native hub agents, media tools, the Lemonade
460
+ server — never inherit the sidecar token or GAIA's other internal credentials
461
+ (the model-broker token, custody secret and engineering pairing token): their
462
+ environment comes from `gaia.env.child_env`, which also drops any name listed
463
+ in `GAIA_CHILD_ENV_DENY` (comma or space separated). User credentials such as `GH_TOKEN` pass through unchanged.
464
+ `GAIA_NO_DOTENV=1` in the sidecar's launch environment stops it loading `.env`
465
+ files; a `.env` file cannot set that switch itself.
466
+
370
467
  ### 5.5 Other transports
371
468
 
372
469
  The HTTP server above is the surface this package drives, and everything in
@@ -378,18 +475,25 @@ the hub, which is what this package delivers, is supervised by the daemon over
378
475
  the HTTP surface above instead (§6.1).
379
476
 
380
477
  It emits the identical canonical event vocabulary, but its input channel accepts
381
- a JSON line carrying a `gaia_control` key, which gives it something HTTP does
382
- not have: a back-channel that can answer a confirmation prompt *while* a turn is
383
- in flight, and stop that turn (`cancel`) without ending the process — so loaded
384
- skills, "always" grants, history and the bypass mode survive a cancel. It also
385
- takes `--bypass-permissions` (start with gating off) and
386
- `--use-claude` / `--claude-model` (route chat to the Anthropic API instead of
387
- local Lemonade; embeddings stay on Lemonade either way). None of that is
388
- reachable over `/v1/gaia/query`.
478
+ a JSON line carrying a `gaia_control` key: a back-channel that answers a
479
+ confirmation prompt *while* a turn is in flight, toggles full access or
480
+ "accept edits" (file edits inside the starting folder run unasked; commands still
481
+ ask), and stops a turn (`cancel`) without ending the process — so loaded skills,
482
+ "always" grants, history and the permission mode survive a cancel.
483
+
484
+ Contract 2.14 gave the HTTP surface the same three capabilities per run and per
485
+ session — `/tool_decision`, `/sessions/{id}/bypass` (the route keeps its
486
+ original spelling), and `provider: "claude"`. What remains stdio-only is the
487
+ *launch* form of those switches: `--full-access` starts a process with gating
488
+ already off, `--accept-edits` starts it in accept-edits mode, and `--use-claude` / `--claude-model` pin the backend for the life
489
+ of the process (embeddings stay on Lemonade either way).
389
490
 
390
491
  The stdio TUI also supports Local, Fireworks AI, and AMD LLM Gateway through
391
- Lemonade. `/model` lists downloaded local and discovered cloud chat models;
492
+ Lemonade. `/model` lists downloaded local and discovered cloud chat models,
493
+ grouped by provider, with `(default)` beside the configured default model;
392
494
  `/model <id>` switches the live client while preserving conversation and skills.
495
+ The switch reply is one line naming the model, where it runs, and, for a cloud
496
+ model, that messages and anything read from files or memory are sent there.
393
497
  Cloud IDs (`fireworks.*`, `amd.*`) route through Lemonade without local model
394
498
  loading. Model-state status events identify the provider and remote inference.
395
499
  The TUI's `/provider` panel configures credentials directly with local Lemonade;
@@ -397,8 +501,79 @@ keys never travel through stdio queries. These controls are not exposed over
397
501
  `/v1/gaia/query`. Lemonade may independently be configured to route a model
398
502
  remotely, so a local server URL alone does not establish local inference.
399
503
 
504
+ `--bypass-permissions` turns off more than the prompt. It also lifts the shell
505
+ tool's own guardrails for the session: the shell-only operators — redirection
506
+ (`>`, `>>`, `<`), backgrounding (`&`), substitution (`` ` ``, `$()`) and the
507
+ newline — parse and run, chaining (`&&`, `||`, `;`, `|`) already ran by
508
+ default, the read-only binary allowlist is replaced by a developer set
509
+ (`node`, `npm`, `make`, `cmake`, `go`, `cargo`, `sed`, `awk`, `curl`, `sleep`,
510
+ `timeout`, `export`, `cp`, `mv`, plus `python`/`python3`/`pytest`/`gh`/`git`,
511
+ which already had their own paths), and the shell rate limit is dropped. `git`
512
+ being in that set means its policy's outright refusals — push, reset, rebase —
513
+ also stop applying under bypass. That is
514
+ arbitrary code execution in the working directory, which is why it exists only
515
+ on this transport: one local parent process on a private pipe. It is **not**
516
+ reachable over HTTP, and the request body cannot ask for it —
517
+ `POST /v1/gaia/sessions/{id}/bypass` stops an HTTP session's approval prompts
518
+ but never lifts these shell gates. `rm` is excluded
519
+ from the developer set — not a boundary, since anything in the set can delete a
520
+ file, but a tripwire against an accidental recursive delete. Redirection has one
521
+ exception: a command that is nothing but a skill-granted CLI runs argv-only
522
+ rather than through a shell, so a `>` there is refused with an explanation
523
+ instead of reaching the binary as a literal argument.
524
+
525
+ Every shell command run under bypass is recorded with its full arguments and its
526
+ per-segment breakdown in `~/.gaia/cache/file_audit.log` — skipping the prompt
527
+ does not skip the record. Treat that file as sensitive; arguments are verbatim.
528
+ The host can toggle bypass mid-session over `gaia_control`, and the shell gates
529
+ follow on the very next command.
530
+
531
+ `--use-claude` is the one with a reach beyond the machine, and it cannot be
532
+ turned on for what this package delivers: the terminal UI **refuses** the launch
533
+ flag for a daemon-transport agent, with an error saying so, because it pins the
534
+ backend for the life of the process and the daemon relay has no such lever.
535
+
536
+ That is a limit on the *launch flag*, not on the agent. Since contract 2.14 a
537
+ caller can ask for Anthropic per request with `/query`'s `provider` field (§5.2),
538
+ so local inference is this package's **default**, not a property of the transport
539
+ that nobody can change. Anything reaching Anthropic is named by the request that
540
+ asked for it.
541
+
400
542
  ---
401
543
 
544
+ ### 5.6 Adding to a turn already running
545
+
546
+ `POST /v1/gaia/query/{run_id}/followup` with `{ "text": "…" }` hands a live run
547
+ something the user typed after it started. Contract ≥ 2.15.
548
+
549
+ It is not a second turn and not an interrupt. The run keeps going on its
550
+ existing SSE stream; the agent folds the text into that turn's context at its
551
+ next agent-loop step boundary, labelled as arriving mid-task, and answers it
552
+ alongside the work already in progress. A five-minute turn can therefore be
553
+ corrected ("actually, only the unread ones") while it is still running, instead
554
+ of the correction waiting out the turn it was meant to change.
555
+
556
+ Two refusals, both loud, because the caller has already taken the message from
557
+ the user and owes them a truthful answer about where it went:
558
+
559
+ | Status | Meaning |
560
+ | ------ | ------------------------------------------------------------ |
561
+ | `404` | No such run in flight — it finished or was cancelled. Send it as a new `/query`. |
562
+ | `409` | The run's agent is not accepting mid-turn input. |
563
+
564
+ A turn that has already formed its answer takes one more step to address a
565
+ follow-up, so a turn answering in a single step is covered too. The one
566
+ exception is a turn already at its step limit: the message stays queued rather
567
+ than being consumed into a context no model call will read.
568
+
569
+ Because `/query` is stateless (§2.4) the host still owns the transcript: record
570
+ a delivered follow-up in the `context` you push on the **next** turn, between
571
+ that turn's question and its answer, or the conversation loses words the agent
572
+ demonstrably saw.
573
+
574
+ Clients that predate 2.15 get a `404` on the path itself. Probe `/version`
575
+ before sending rather than reading a 404 as "the run ended".
576
+
402
577
  ## 6. Process ownership
403
578
 
404
579
  Two distinct paths, deliberately:
@@ -458,7 +633,7 @@ failed start never leaks a process.
458
633
  | Code | Meaning |
459
634
  | ------- | ----------------------------------------------------------------------- |
460
635
  | `0` | Success |
461
- | `1` | A typed failure: `IntegrityError`, `PlatformError`, `HealthTimeoutError`, `VersionMismatchError`, `BinaryNotFoundError`, `PortInUseError`, `SidecarExitedError`, `MalformedResponseError`, or an unexpected error |
636
+ | `1` | A typed failure: `IntegrityError`, `PlatformError`, `HealthTimeoutError`, `VersionMismatchError`, `BinaryNotFoundError`, `PortInUseError`, `SidecarExitedError`, `MalformedResponseError`, or an unexpected error; also `serve` on Ctrl+C when the sidecar survives the forced kill (the message names its pid and the kill command) |
462
637
  | `2` | Usage error: unknown command, invalid `--port`, or a flag the command does not read (`run --port`, `serve --component`, `serve --cache-dir`, `run`/`serve` `--platform`), an unknown `--component`, or a non-https `--base-url` without `--allow-insecure-base-url` |
463
638
  | *other* | From `run`: the TUI's own exit code, propagated verbatim |
464
639
 
@@ -535,3 +710,24 @@ yourself, which no lock describes, and `{ lock }` to reuse an already-loaded loc
535
710
  `DEBUG=gaia` (or `DEBUG=*`) enables debug output. **Everything goes to stderr** —
536
711
  stdout belongs to the TUI once it is exec'd, and to machine-readable JSON for
537
712
  `fetch` / `version`.
713
+
714
+ ## Developer engineering mode
715
+
716
+ - **Opt-in.** The agent enables it with `--developer-mode` or `GAIA_DEVELOPER_MODE=1`
717
+ in the host process. `gaia engineering` and the engineering MCP server accept only
718
+ the explicit `--developer-mode` flag. It is separate from diagnostic `--dev`.
719
+ - **Surface.** Only in that mode does the agent load the `gaia-harness-engineering`
720
+ skill and the `share_engineering_context`, `append_engineering_context`,
721
+ `approve_engineering_code`, `engineering_status`, `open_engineering_app` and
722
+ `revoke_engineering_context` tools. Sessions without it have none of them.
723
+ - **Consent.** Sharing, appending and code approval each ask for a fresh approval of
724
+ the exact content or scope shown. None of them can be remembered or auto-approved.
725
+ Snapshots are recipient-bound and expire; revoking stops future reads.
726
+ - **Pairing.** Configure the coding app's MCP connection from a Python GAIA install
727
+ with the `[mcp]` extra. The frozen binary this package ships can reuse that
728
+ configuration but cannot launch the Python MCP server itself.
729
+ - **Code.** Fixes happen in the coding app, in worktrees from GAIA's managed source
730
+ cache. Preview results are reported by that app, not verified by GAIA. Nothing
731
+ self-assesses or updates the installed GAIA.
732
+
733
+ See the [usage guide](https://amd-gaia.ai/docs/guides/harness-engineering).
@@ -1,76 +1,76 @@
1
1
  {
2
2
  "schemaVersion": "3.0",
3
- "agentVersion": "0.2.0",
3
+ "agentVersion": "0.3.0",
4
4
  "components": {
5
5
  "sidecar": {
6
- "componentVersion": "0.2.0",
7
- "baseUrl": "https://hub.amd-gaia.ai/agents/gaia/0.2.0",
6
+ "componentVersion": "0.3.0",
7
+ "baseUrl": "https://hub.amd-gaia.ai/agents/gaia/0.3.0",
8
8
  "platforms": {
9
9
  "win32-x64": {
10
10
  "filename": "gaia-agent-win32-x64.exe",
11
11
  "executable": "gaia-agent.exe",
12
- "sha256": "5d2ea1a5fd40e2399ba2bf50aec80b44d89c7e7bfdbad846c050f683fc8bf842",
13
- "size": 103531825
12
+ "sha256": "12e79e63e1169eafadbdd453e2d5e9114bc8c9c04e7ab95e9bd1c96249f50067",
13
+ "size": 169416076
14
14
  },
15
15
  "darwin-arm64": {
16
16
  "filename": "gaia-agent-darwin-arm64",
17
17
  "executable": "gaia-agent",
18
- "sha256": "fbe526e7eb044a2ce633fbd487a1ae75001683eff190d8359eabf9ccc7196069",
19
- "size": 88311472
18
+ "sha256": "f431642fc5cd9c05110cb8f0ffd05fe36853fe1a579bbd0b5421a3c79adc5ddd",
19
+ "size": 159366272
20
20
  },
21
21
  "darwin-x64": {
22
22
  "filename": "gaia-agent-darwin-x64",
23
23
  "executable": "gaia-agent",
24
- "sha256": "b02731c786d79d7f5e644662238a64d1761eb6a23d421821df46e6a8282b585d",
25
- "size": 94294544
24
+ "sha256": "c793fa760b42c1c1acea7aa411f7a6830ee3bd9f68f56c5b6fac686801883f3b",
25
+ "size": 168077296
26
26
  },
27
27
  "linux-x64": {
28
28
  "filename": "gaia-agent-linux-x64",
29
29
  "executable": "gaia-agent",
30
- "sha256": "6c68a22c25954ea3c8d2a0a541bc04eba2401281d2a2b6448007983acd050a00",
31
- "size": 140015368
30
+ "sha256": "b2b115d0ae84e5fbe9aebcf055b264b5b68ae2f1a4b436bdd80de6602ca51437",
31
+ "size": 221414096
32
32
  }
33
33
  }
34
34
  },
35
35
  "tui": {
36
- "componentVersion": "0.24.1",
37
- "baseUrl": "https://hub.amd-gaia.ai/agents/terminal-hub/0.24.1",
36
+ "componentVersion": "0.25.0",
37
+ "baseUrl": "https://hub.amd-gaia.ai/agents/terminal-hub/0.25.0",
38
38
  "platforms": {
39
39
  "win32-x64": {
40
40
  "filename": "gaia-win-x64.exe",
41
41
  "executable": "gaia-tui.exe",
42
- "sha256": "ce07269674de6773fd304d67eef3ff19cd578f447fc90a13f0309a61ae5ef504",
43
- "size": 19213824
42
+ "sha256": "9b1c467b04b267f172a6024589f1ba0ddc882729337913d8afa7dcd43a7a7967",
43
+ "size": 20604416
44
44
  },
45
45
  "win32-arm64": {
46
46
  "filename": "gaia-win-arm64.exe",
47
47
  "executable": "gaia-tui.exe",
48
- "sha256": "41f2a25b2bf15bea6f70626bb519496aeb822cc2629dd3529e325319b7abb3ca",
49
- "size": 17744384
48
+ "sha256": "332068c5588e5639213225d63e4a1827d9258928e4053b7d6602668dc7eda60c",
49
+ "size": 19030016
50
50
  },
51
51
  "darwin-arm64": {
52
52
  "filename": "gaia-darwin-arm64",
53
53
  "executable": "gaia-tui",
54
- "sha256": "dc334e89cebefaa2cc5117942ccbc4dc391034c3013ebf02d2bebf87f5e99a5a",
55
- "size": 17499282
54
+ "sha256": "bb5ae28ae99ad25c095b3f57c4abf4e2ff67fa560122dc0a99036aedf9184802",
55
+ "size": 18801330
56
56
  },
57
57
  "darwin-x64": {
58
58
  "filename": "gaia-darwin-x64",
59
59
  "executable": "gaia-tui",
60
- "sha256": "9af8c1fefeff4814bae6bbe9698ffaac3b59f248a422525e9f9b50812f5435da",
61
- "size": 18629664
60
+ "sha256": "5259c82dc195297130e16377586ed6e0e668c5ec7f8b27a76ee029d67d776b52",
61
+ "size": 20015840
62
62
  },
63
63
  "linux-x64": {
64
64
  "filename": "gaia-linux-x64",
65
65
  "executable": "gaia-tui",
66
- "sha256": "ef80198f3c4f6c2a4e92993fe19257c67cf009e29632398642549274ef8c2ffa",
67
- "size": 18292898
66
+ "sha256": "07f1cc448f8056b5915eff2869f9f3eec3a5d04485d93e448ccad00d186d23c5",
67
+ "size": 19669154
68
68
  },
69
69
  "linux-arm64": {
70
70
  "filename": "gaia-linux-arm64",
71
71
  "executable": "gaia-tui",
72
- "sha256": "31d9e1fee15e4a21e677ca7abb707fcf08257d5e7f50f1baa71bc7159335c170",
73
- "size": 17105058
72
+ "sha256": "c324100d2de989823e816a6aae7eb4e1224019096b9a46ef1a6983ca6b98598f",
73
+ "size": 18350242
74
74
  }
75
75
  }
76
76
  }
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAGA;;;;;;;;;;;GAWG;AA8BH,UAAU,UAAU;IAClB,CAAC,EAAE,MAAM,EAAE,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;IACxC,mEAAmE;IACnE,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAaD,4EAA4E;AAC5E,qBAAa,UAAW,SAAQ,KAAK;CAAG;AAExC,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAuCpD;AAsID;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,GAAE,MAAM,GAAG,SAA+B,EACjD,KAAK,GAAE,MAAM,GAAG,SAA2B,GAC1C,MAAM,GAAG,SAAS,CAsBpB;AA+CD,4EAA4E;AAC5E,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAUnG;AAuKD,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAkC1D"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAGA;;;;;;;;;;;GAWG;AA8BH,UAAU,UAAU;IAClB,CAAC,EAAE,MAAM,EAAE,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;IACxC,mEAAmE;IACnE,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAaD,4EAA4E;AAC5E,qBAAa,UAAW,SAAQ,KAAK;CAAG;AAExC,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAuCpD;AAsID;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,GAAE,MAAM,GAAG,SAA+B,EACjD,KAAK,GAAE,MAAM,GAAG,SAA2B,GAC1C,MAAM,GAAG,SAAS,CAsBpB;AA+CD,4EAA4E;AAC5E,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAUnG;AAsLD,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAkC1D"}
package/dist/cli.js CHANGED
@@ -379,7 +379,7 @@ async function cmdServe(args) {
379
379
  }
380
380
  stopping = true;
381
381
  process.stderr.write("\n[gaia] stopping the sidecar ...\n");
382
- void shutdown(sidecar).catch(() => undefined).finally(resolve);
382
+ shutdown(sidecar).then(() => resolve(undefined), (e) => resolve(e instanceof Error ? e : new Error(String(e))));
383
383
  };
384
384
  // process.on, not once: a second Ctrl+C during the shutdown would
385
385
  // otherwise hit Node's default disposition and kill us mid-teardown,
@@ -388,8 +388,9 @@ async function cmdServe(args) {
388
388
  for (const sig of SERVE_SIGNALS)
389
389
  process.on(sig, stop);
390
390
  });
391
+ let stopError;
391
392
  try {
392
- await stopped;
393
+ stopError = await stopped;
393
394
  }
394
395
  finally {
395
396
  // Left installed, they would swallow every later signal AND suppress
@@ -397,10 +398,21 @@ async function cmdServe(args) {
397
398
  for (const sig of SERVE_SIGNALS)
398
399
  process.removeListener(sig, stop);
399
400
  }
401
+ // A surviving sidecar keeps the port bound; its error names the pid to kill.
402
+ if (stopError) {
403
+ process.stderr.write(`[gaia] ${stopError.message}\n`);
404
+ return 1;
405
+ }
400
406
  return 0;
401
407
  }
402
408
  catch (e) {
403
- await shutdown(sidecar).catch(() => undefined);
409
+ try {
410
+ await shutdown(sidecar);
411
+ }
412
+ catch (cleanupError) {
413
+ const message = cleanupError instanceof Error ? cleanupError.message : String(cleanupError);
414
+ process.stderr.write(`[gaia] failed to clean up sidecar: ${message}\n`);
415
+ }
404
416
  throw e;
405
417
  }
406
418
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ export declare const DEFAULT_PORT = 8141;
24
24
  /** Repo-wide reserved port. Nothing here may ever bind it. */
25
25
  export declare const RESERVED_PORT = 4001;
26
26
  /** The apiVersion this package is built against (`server.py: API_VERSION`). */
27
- export declare const API_VERSION = "2.12";
27
+ export declare const API_VERSION = "2.17";
28
28
  /** The agent id in the sidecar's route prefix (`/v1/gaia/...`). */
29
29
  export declare const AGENT_ID = "gaia";
30
30
  /** `GET /health` response. */
@@ -110,7 +110,7 @@ export interface WaitForHealthOptions {
110
110
  */
111
111
  export declare function waitForHealth(baseUrl: string, opts?: WaitForHealthOptions): Promise<void>;
112
112
  export interface VersionCheckOptions {
113
- /** apiVersion this package was built against. Default API_VERSION ("2.12"). */
113
+ /** apiVersion this package was built against. Default API_VERSION ("2.17"). */
114
114
  expectedApiVersion?: string;
115
115
  }
116
116
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../src/lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../src/lifecycle.ts"],"names":[],"mappings":"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"}
package/dist/lifecycle.js CHANGED
@@ -33,7 +33,7 @@ export const DEFAULT_PORT = 8141;
33
33
  /** Repo-wide reserved port. Nothing here may ever bind it. */
34
34
  export const RESERVED_PORT = 4001;
35
35
  /** The apiVersion this package is built against (`server.py: API_VERSION`). */
36
- export const API_VERSION = "2.12";
36
+ export const API_VERSION = "2.17";
37
37
  /** The agent id in the sidecar's route prefix (`/v1/gaia/...`). */
38
38
  export const AGENT_ID = "gaia";
39
39
  /** Basename the sidecar executable is written as (matches the lock). */
@@ -342,7 +342,7 @@ export async function waitForHealth(baseUrl, opts = {}) {
342
342
  `(${attempts} probes). Last error: ${lastErr}. ` +
343
343
  "Re-run with DEBUG=gaia to see the sidecar's own output, and check the port is free.");
344
344
  }
345
- /** Parse "2.12" → 2 (major). Throws on a non-numeric major. */
345
+ /** Parse "2.15" → 2 (major). Throws on a non-numeric major. */
346
346
  function majorOf(v) {
347
347
  const major = Number.parseInt(String(v).split(".")[0] ?? "", 10);
348
348
  if (Number.isNaN(major)) {
@@ -570,7 +570,13 @@ export async function startSidecar(opts) {
570
570
  }
571
571
  catch (e) {
572
572
  log.error(`startSidecar failed (${e.message}); shutting down`);
573
- await shutdown(sidecar).catch(() => undefined);
573
+ try {
574
+ await shutdown(sidecar);
575
+ }
576
+ catch (cleanupError) {
577
+ const message = cleanupError instanceof Error ? cleanupError.message : String(cleanupError);
578
+ log.error(`startSidecar cleanup failed: ${message}`);
579
+ }
574
580
  throw e;
575
581
  }
576
582
  }