hci-atrium 0.3.1 → 0.4.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.
Files changed (77) hide show
  1. package/README.md +75 -24
  2. package/dist/atrium.d.ts +126 -42
  3. package/dist/atrium.d.ts.map +1 -1
  4. package/dist/atrium.js +192 -87
  5. package/dist/atrium.js.map +1 -1
  6. package/dist/dash.d.ts +3 -3
  7. package/dist/dash.d.ts.map +1 -1
  8. package/dist/dash.js +1 -2
  9. package/dist/dash.js.map +1 -1
  10. package/dist/env.d.ts +14 -0
  11. package/dist/env.d.ts.map +1 -1
  12. package/dist/env.js +22 -0
  13. package/dist/env.js.map +1 -1
  14. package/dist/index.d.ts +4 -4
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +11 -3
  17. package/dist/index.js.map +1 -1
  18. package/dist/models.d.ts +84 -31
  19. package/dist/models.d.ts.map +1 -1
  20. package/dist/models.js +97 -25
  21. package/dist/models.js.map +1 -1
  22. package/dist/player/play-command.d.ts +6 -6
  23. package/dist/player/play-command.d.ts.map +1 -1
  24. package/dist/player/play-intent.d.ts.map +1 -1
  25. package/dist/player/play-intent.js +2 -1
  26. package/dist/player/play-intent.js.map +1 -1
  27. package/dist/player/runtime.d.ts +7 -3
  28. package/dist/player/runtime.d.ts.map +1 -1
  29. package/dist/player/runtime.js.map +1 -1
  30. package/dist/react/use-room-connection.d.ts +4 -1
  31. package/dist/react/use-room-connection.d.ts.map +1 -1
  32. package/dist/react/use-room-connection.js +5 -1
  33. package/dist/react/use-room-connection.js.map +1 -1
  34. package/dist/rooms/index.d.ts +3 -1
  35. package/dist/rooms/index.d.ts.map +1 -1
  36. package/dist/rooms/index.js +4 -3
  37. package/dist/rooms/index.js.map +1 -1
  38. package/dist/rooms/offer-transcription.d.ts +1 -1
  39. package/dist/rooms/offer-transcription.js +1 -1
  40. package/dist/rooms/owned-room.d.ts +251 -0
  41. package/dist/rooms/owned-room.d.ts.map +1 -0
  42. package/dist/rooms/owned-room.js +844 -0
  43. package/dist/rooms/owned-room.js.map +1 -0
  44. package/dist/rooms/recorder.d.ts +1 -1
  45. package/dist/rooms/recorder.js +1 -1
  46. package/dist/rooms/room.d.ts +82 -278
  47. package/dist/rooms/room.d.ts.map +1 -1
  48. package/dist/rooms/room.js +60 -854
  49. package/dist/rooms/room.js.map +1 -1
  50. package/dist/rooms/standing-source.d.ts +1 -1
  51. package/dist/rooms/standing-source.js +1 -1
  52. package/dist/rooms/transcriber.d.ts +3 -3
  53. package/dist/rooms/transcriber.d.ts.map +1 -1
  54. package/dist/rooms/transcriber.js +2 -2
  55. package/dist/rooms/transport.d.ts +1 -1
  56. package/dist/rooms/transport.js +2 -2
  57. package/dist/shaping/assets.d.ts +13 -0
  58. package/dist/shaping/assets.d.ts.map +1 -1
  59. package/dist/shaping/assets.js +27 -0
  60. package/dist/shaping/assets.js.map +1 -1
  61. package/dist/shaping/chat.d.ts +3 -1
  62. package/dist/shaping/chat.d.ts.map +1 -1
  63. package/dist/shaping/chat.js +4 -2
  64. package/dist/shaping/chat.js.map +1 -1
  65. package/dist/shaping/rooms.d.ts +78 -1
  66. package/dist/shaping/rooms.d.ts.map +1 -1
  67. package/dist/shaping/rooms.js +58 -6
  68. package/dist/shaping/rooms.js.map +1 -1
  69. package/dist/shaping/sources.d.ts +7 -3
  70. package/dist/shaping/sources.d.ts.map +1 -1
  71. package/dist/shaping/sources.js +9 -10
  72. package/dist/shaping/sources.js.map +1 -1
  73. package/dist/transcribe-stream.d.ts +1 -1
  74. package/dist/transcribe-stream.js +1 -1
  75. package/dist/transcribe.d.ts +2 -2
  76. package/dist/transcribe.js +2 -2
  77. package/package.json +11 -2
package/README.md CHANGED
@@ -64,10 +64,12 @@ component that consumes a [room](#live-rooms) by connect code — loginless, so
64
64
  and no sign-in. It joins, classifies failures, and tears the handle down on unmount, returning
65
65
  `{ status, room }`: `status` is `"connecting"` → `"connected"`, `"unreachable"` for a join/connect
66
66
  failure, or a typed terminal end (`"bad-code"` / `"code-rotated"` / `"room-gone"`); `room` is the
67
- `Room` handle, `null` before it exists and again after a terminal end. Register signal handlers in
68
- `onRoom` — it runs the moment the handle exists, **before** `connect()`, so a replayed durable signal
69
- isn't missed — and return a cleanup from it if you need one. `identity` is the presence name (e.g.
70
- `"viewer:web"`); `baseUrl` defaults to `location.origin`.
67
+ participant `Room` handle (loginless — no host-side surface), `null` before it exists and again after
68
+ a terminal end. Register signal handlers in `onRoom` — it runs the moment the handle exists,
69
+ **before** `connect()`, so a replayed durable signal isn't missed — and return a cleanup from it if
70
+ you need one. `identity` is the presence name (e.g. `"viewer:web"`); `baseUrl` defaults to
71
+ `ATRIUM_BASE_URL`, then the page's own origin, then the deployed instance — the same ladder the
72
+ `Atrium` client walks.
71
73
 
72
74
  ```tsx
73
75
  import { useState } from "react"
@@ -130,16 +132,18 @@ apps).
130
132
 
131
133
  | Member | Description |
132
134
  | --- | --- |
133
- | `library.search(query?, opts?)` | Semantic search — text, `like` (an asset/hit/id), `image`/`audio`/`video`, or `vector`. `matchBy` (weighted map), tag facets, and the long tail ride `filters`. |
135
+ | `library.search(query, opts?)` / `library.search(opts)` | Semantic search — text, `like` (an asset/hit/id), `image`/`audio`/`video`, or `vector`. Two forms, no filler positional: pass the text first, or go options-only when there is none. `matchBy` (weighted map), tag facets, and the long tail ride `filters`. |
134
136
  | `library.searchByExamples(positives, opts?)` | Mood-board search over a set of example assets (`method` defaults to `"cav"`). Seeds are `Asset` or `by.asset(id)`. |
135
137
  | `library.compare(a, b, opts?)` | Similarity of two operands (`Asset` / text / `by.*`), raw + calibrated. `opts.space` forces the embedding space. |
138
+ | `library.add(opts)` | The front door into the library: `{ file }` uploads, `{ description }` alone creates a **fileless** asset whose description *is* the content. |
136
139
  | `library.enrich(query, opts)` | Pull external candidates into the library; `opts.preview` is a dry-run. Returns the raw payload. |
137
140
  | `assets.list(opts?)` / `assets.get(id, opts?)` / `assets.upload(file, opts?)` | Browse, fetch, and upload assets. `file` is a `Blob`/`File` or a URL string. |
138
- | `sources.list()` / `sources.search(query, opts?)` / `sources.import(opts)` | External-provider gateway — read-only fan-out search, then import a `Candidate`. |
139
- | `sessions.start(opts?)` / `sessions.resume(id)` / `sessions.event(id, type, opts?)` | Durable, append-only session logs. |
140
- | `rooms.open(opts?)` / `rooms.get(id)` / `rooms.list()` / `rooms.join(code)` | Live [`Room`](#live-rooms) handles — `open`/`get`/`list` are authenticated, `join(code)` is a loginless participant. |
141
- | `surveys.start(template?, opts)` / `surveys.template(name, body, opts?)` / … | [Surveys](#surveys) on a session, and the project's survey templates. |
142
- | `chat(messages, opts?)` | Chat completion. Pass `responseFormat` a **Zod** schema for validated structured output (Zod is an optional peer dep), or `stream: true` for an [`AsyncIterable<string>`](#streaming-chat) of deltas. |
141
+ | `sources.list()` / `sources.search(query, opts?)` / `sources.import(target, opts?)` | External-provider gateway — read-only fan-out search, then import a `Candidate` (or an explicit `{ sourceId, externalId }`). |
142
+ | `sessions.start(opts?)` / `sessions.resume(id)` / `sessions.event(id, type, payload?, opts?)` | Durable, append-only session logs. A `Session` handle also carries the bound `session.event(type, payload?)`. |
143
+ | `rooms.open(opts?)` / `rooms.get(id)` / `rooms.list()` / `rooms.join(code)` | Live room handles — `open`/`get`/`list` return an [`OwnedRoom`](#live-rooms), `join(code)` a participant [`Room`](#live-rooms). |
144
+ | `surveys.start(opts)` / `surveys.template(name, body, opts?)` / … | [Surveys](#surveys) on a session, and the project's survey templates. |
145
+ | `chat(messages, opts?)` | Chat completion — always a promise of one reply. Pass `responseFormat` a **Zod** schema for validated structured output (Zod is an optional peer dep). |
146
+ | `chatStream(messages, opts?)` | The same completion as an [`AsyncIterable<string>`](#streaming-chat) of deltas, returned synchronously. |
143
147
  | `agent(prompt, { tools, … })` | A [tool-calling loop](#agents-and-tools) over explicit tool descriptors. |
144
148
  | `addDirectModel(name, { baseUrl, apiKey? })` | Route one model name straight to an OpenAI-compatible endpoint ([direct models](#direct-models)) instead of Atrium. |
145
149
  | `embed(opts)` | Embed exactly one of `text` / `image` / `audio` / `video` into a vector; `model` is required. |
@@ -152,13 +156,33 @@ apps).
152
156
 
153
157
  A `Room` is pure live transport over one WebSocket — text signals *and* the ephemeral binary
154
158
  audio-analysis stream. `room.on(type, handler)` registers a handler (its return value auto-replies to
155
- a matching `room.request(...)`); `room.send(type, payload, { to })` fans out; player controls
159
+ a matching `room.request(...)`); `room.send(type, payload, { to, replyTo })` fans out; player controls
156
160
  (`play` / `configureLayers` / `clearLayer` / `clearAll` / `setLayerEffects` / `queryLayers` /
157
161
  `watchLayers` / `playerUrl`) drive the hosted Player; `room.audioSignals(cb)` decodes the
158
162
  loudness/spectrum/beat stream. `connect()` opens the socket (every wire method calls it for you);
159
163
  `close()` / `await using` / a passed `AbortSignal` tears it down.
160
164
 
161
- Host-side surfaces on an **owned** room (`atrium.rooms.open/get/join`, not the loginless `joinRoom`):
165
+ `room.play` takes an `Asset`, a `SearchHit`, an id/URL string, a typed `PlayTrack` for per-sound
166
+ options, or a list of any of those — the track fields are camelCase (`assetId`, `contentUrl`,
167
+ `delaySeconds`, `clipStartSeconds`, `fadeInMs`, …) and the shaping layer translates them to the
168
+ dialect's snake_case wire spelling. The wire spelling is typed too, so a descriptor written straight
169
+ against [`audio-layers-dialect.md`](../../docs/reference/audio-layers-dialect.md) compiles and
170
+ reaches the wire untouched; a key belonging to *neither* spelling is a compile error:
171
+
172
+ ```ts
173
+ await room.play(hit, { layer: "ambient" })
174
+ await room.play({ asset: hit, gain: 2, loop: true, delaySeconds: 0.5 }, { layer: "sfx" })
175
+ await room.play({ asset_id: "a1", fade_in_ms: 250 }) // the dialect's own spelling
176
+ ```
177
+
178
+ `room.configureLayers` follows the same rule: `{ id, label?, volume?, crossfadeMs?, effects? }` or
179
+ the wire's `crossfade_ms`. (`queryLayers` / `watchLayers` hand back the Player's raw snapshot —
180
+ snake_case, as it arrives.)
181
+
182
+ **`Room` vs `OwnedRoom`.** `atrium.rooms.open/get/list` return an `OwnedRoom`: everything above plus
183
+ the host-side surfaces the account credential unlocks. `joinRoom(code)` and `atrium.rooms.join(code)`
184
+ return a plain `Room` — a connect code grants live transport, not the account, so those members are
185
+ **absent from its type** rather than throwing at runtime:
162
186
 
163
187
  | Member | Description |
164
188
  | --- | --- |
@@ -168,6 +192,7 @@ Host-side surfaces on an **owned** room (`atrium.rooms.open/get/join`, not the l
168
192
  | `room.dashboard(opts?)` → [`Dashboard`](#observation-dashboard) | Host-side state for the hosted observation dashboard (`/tools/dashboard`). |
169
193
  | `room.trace()` → `RoomTrace` | Mirror the SDK's own activity into the room as `trace.*` signals (default off). |
170
194
  | `room.offerTranscription()` / `offerAudioCapture()` / `offerEmbeds()` / `offerChat()` | Standing services + capability brokers for code-joined peers. |
195
+ | `room.rotateCode()` / `room.delete()` | Room management (owner only). |
171
196
 
172
197
  This SDK now covers every Python-SDK surface except the documented parity exceptions — the CLI, the
173
198
  Home Assistant bridge, a sync surface, and raw-PCM mic input — each with its reason in
@@ -231,7 +256,10 @@ changed, and flips `default` when asked — so your templates live in your repo,
231
256
  await atrium.surveys.template("post-study", postStudyBody, { default: true })
232
257
 
233
258
  const session = await atrium.sessions.start({ participantRef: "p-07" })
234
- const survey = await atrium.surveys.start("post-study", {
259
+ await session.event("phase.start", { phase: "post-study" }) // bound to the session it came from
260
+
261
+ const survey = await atrium.surveys.start({
262
+ template: "post-study",
235
263
  into: session,
236
264
  returnTo: "https://study.example/next",
237
265
  })
@@ -247,16 +275,26 @@ file (survey imagery) and returns the `id` a template body's `image` field refer
247
275
 
248
276
  ### Streaming chat
249
277
 
250
- `chat(messages, { stream: true })` returns an `AsyncIterable<string>` of content deltas — **not** a
251
- promise, so there is nothing to `await` before the loop. It works the same on a direct endpoint, and
252
- can't be combined with a schema `responseFormat` (structured output validates a complete reply).
278
+ `chatStream(messages, opts?)` returns an `AsyncIterable<string>` of content deltas — **not** a
279
+ promise, so there is nothing to `await` before the loop. It works the same on a direct endpoint. It
280
+ is its own method rather than a `stream: true` flag on `chat`: a flag that swaps the return type
281
+ between a promise and an iterable makes every call site narrow a union it already knows the answer
282
+ to. Structured output stays on `chat`, which always resolves one complete reply.
253
283
 
254
284
  ```ts
255
- for await (const piece of atrium.chat("describe a rainy street", { stream: true })) {
285
+ for await (const piece of atrium.chatStream("describe a rainy street")) {
256
286
  process.stdout.write(piece)
257
287
  }
258
288
  ```
259
289
 
290
+ Anything OpenAI-shaped that the SDK doesn't own itself rides `params` — an explicit passthrough bag
291
+ on both `chat` and `agent`, so a misspelled SDK option is a compile error instead of a silently
292
+ forwarded param:
293
+
294
+ ```ts
295
+ await atrium.chat("hi", { model: "gpt-4o", params: { temperature: 0.3, top_p: 0.9 } })
296
+ ```
297
+
260
298
  ### Agents and tools
261
299
 
262
300
  `agent(prompt, { tools })` runs the tool-calling loop: the model may call your tools until it
@@ -386,16 +424,27 @@ through the `unhandled` hook.
386
424
 
387
425
  ```ts
388
426
  import { joinRoom } from "hci-atrium"
389
- import { PlayerRuntime } from "hci-atrium/player"
427
+ import { buildSignalEnvelope, PlayerRuntime } from "hci-atrium/player"
390
428
 
391
429
  const baseUrl = "https://atrium.example.edu"
392
- const room = await joinRoom("ABC12345", { baseUrl })
430
+ const code = "ABC12345"
431
+ const room = await joinRoom(code, { baseUrl })
393
432
  const context = new AudioContext() // create it on the user's Start gesture — autoplay policy
394
433
 
395
434
  const runtime = new PlayerRuntime({
396
435
  context,
397
436
  baseUrl, // asset-resolution root for the `asset_id`-only play shape
398
- send: (type, payload, opts) => void room.send(type, payload as Record<string, unknown>, opts),
437
+ // The sink rides the REST `/signal` POST, not `room.send`: the runtime's traffic is ephemeral
438
+ // state chatter, and the room transport's inbound path forces `ephemeral: false` — a `room.send`
439
+ // sink would write a `layer.state` heartbeat into every recording session.
440
+ send: (type, payload, opts) => {
441
+ const body = buildSignalEnvelope(type, payload, room.connectionId, opts)
442
+ void fetch(`${baseUrl}/v1/rooms/${room.id}/signal`, {
443
+ method: "POST",
444
+ headers: { "content-type": "application/json", "x-session-code": code },
445
+ body: JSON.stringify(body),
446
+ })
447
+ },
399
448
  onLog: (line) => console.log(line),
400
449
  onSnapshot: (layers) => renderLayers(layers), // engine snapshot → your UI
401
450
  })
@@ -415,10 +464,12 @@ await room.connect()
415
464
  `LayerEngine` is the mixer; `PlayerRuntime` is the mixer *plus* the dialect. It exposes
416
465
  `runtime.engine` for listener-side controls (per-layer / master volume, normalization, device-change
417
466
  resume) and `runtime.masterGain` as an analyzer tap (pre-limiter); `dispose()` tears down the engine,
418
- its timers, and the master chain it built, leaving the host's `AudioContext` alone. One caveat on the
419
- `send` sink: `Room.send` carries `to` and `ephemeral` but not `replyTo`, so a host that must answer a
420
- peer's `layer.query` builds the envelope itself `buildSignalEnvelope` from the same subpath does
421
- exactly that for a `POST /v1/rooms/{id}/signal` transport, which is what the hosted Player runs on.
467
+ its timers, and the master chain it built, leaving the host's `AudioContext` alone. On the `send`
468
+ sink: `room.send` carries `to` and `replyTo` only enough to *route* a `layer.query` reply, but the
469
+ frame lands durable (the room's inbound path forces `ephemeral: false`), so `layer.state` chatter
470
+ would be recorded by any `room.record(...)` bridge. `buildSignalEnvelope` + the `POST
471
+ /v1/rooms/{id}/signal` route, as above, is the sink that keeps the dialect's ephemerality; an
472
+ owned-room host can equally publish through its own authenticated REST caller.
422
473
 
423
474
  ## Honest caveat: the guard is UX, not secrecy
424
475
 
package/dist/atrium.d.ts CHANGED
@@ -8,9 +8,9 @@ import { DEFAULT_BASE_URL } from "./env.js";
8
8
  import type { FileSource } from "./files.js";
9
9
  import type { Candidate } from "./models.js";
10
10
  import { type Asset, type AssetBinder, type AssetPage, type AssetRef, type AssetVector, type AssetVectorsOptions, type ChatReply, type CompareResult, type Filters, type IndexEntry, type ProjectFile, type SessionEvent as ReadSessionEvent, type SearchByExamplesHit, type SearchHit, type SegmentRef, type Session, type Event as SessionEvent, type SessionInfo, type SourceInfo, type SourceSearchResult, type Space, type Survey, type SurveyResponse, type SurveyTemplate, type TagDefinition, type Transcript } from "./models.js";
11
- import { type FetchImpl, Room, type RoomTransportMode, type WebSocketCtor } from "./rooms/index.js";
11
+ import { type FetchImpl, OwnedRoom, Room, type RoomTransportMode, type WebSocketCtor } from "./rooms/index.js";
12
12
  import { type ChatMessage, type SessionExportFormat, type ShapedRequest, type ZodLike } from "./shaping/index.js";
13
- export type { SessionExportFormat } from "./shaping/rooms.js";
13
+ export type { LayerDeclaration, LayerDeclarationLike, PlaySource, PlayTrack, PlayTrackLike, SessionExportFormat, } from "./shaping/rooms.js";
14
14
  import { type ToolDescriptor } from "./tools.js";
15
15
  import { type TraceSink } from "./trace.js";
16
16
  import { type AudioChunk, type TranscribeStreamOptions } from "./transcribe.js";
@@ -152,13 +152,13 @@ export declare class Atrium implements ClientInternal, AsyncDisposable {
152
152
  /** POST a chat body to a direct endpoint (raw ``fetch``, never the authed transport). */
153
153
  private directChat;
154
154
  /**
155
- * Chat completion (``POST /v1/chat/completions``).
155
+ * Chat completion (``POST /v1/chat/completions``) — **always** a promise of one reply.
156
156
  *
157
157
  * Pass ``responseFormat`` a **Zod schema** for structured output: the reply is validated and the
158
158
  * parsed value returned (with one repair turn, then {@link StructuredOutputError}). A raw
159
- * ``responseFormat`` dict passes through as an OpenAI param. ``stream: true`` returns an
160
- * ``AsyncIterable<string>`` of content deltas instead of a reply ``for await`` over it (there is
161
- * nothing to ``await`` first); it can't be combined with a schema ``responseFormat``.
159
+ * ``responseFormat`` dict passes through as an OpenAI param. For token-by-token output use
160
+ * {@link chatStream}, a separate method one call, one return type, so nothing has to narrow a
161
+ * ``Promise | AsyncIterable`` union at the call site.
162
162
  *
163
163
  * A ``model`` registered via {@link addDirectModel} is served directly by its endpoint,
164
164
  * transparently: same return types and errors as the Atrium path.
@@ -166,16 +166,30 @@ export declare class Atrium implements ClientInternal, AsyncDisposable {
166
166
  chat<T>(messages: string | ChatMessage[], opts: ChatOptions & {
167
167
  responseFormat: ZodLike<T>;
168
168
  }): Promise<T>;
169
- chat(messages: string | ChatMessage[], opts: ChatOptions & {
170
- stream: true;
171
- }): AsyncIterable<string>;
172
169
  chat(messages: string | ChatMessage[], opts?: ChatOptions): Promise<ChatReply>;
173
- /** The chat body for one completion: the caller's passthrough params plus the SDK-owned keys. */
170
+ /**
171
+ * Stream a chat completion's content deltas — an ``AsyncIterable<string>`` returned
172
+ * **synchronously**, so there is nothing to ``await`` before the ``for await`` loop.
173
+ *
174
+ * The streaming sibling of {@link chat}, and its own method rather than a ``stream: true`` flag:
175
+ * the return type differs completely, and a flag that changes it makes every call site narrow a
176
+ * union the caller already knows the answer to. Structured output has no meaning here (a schema
177
+ * validates a *complete* reply) — that's {@link chat}. Works the same on a direct endpoint.
178
+ */
179
+ chatStream(messages: string | ChatMessage[], opts?: ChatOptions): AsyncIterable<string>;
180
+ /**
181
+ * The chat body's params for one completion: the caller's passthrough bag plus the SDK-owned keys
182
+ * (applied last, so they win a collision).
183
+ *
184
+ * ``stream`` **throws** — it would swap the response for an SSE body that ``chat`` then parses as
185
+ * JSON, so the only honest answer names {@link chatStream}. ``messages`` is dropped: the messages
186
+ * argument is the messages, and a second copy in the bag can only be an accident.
187
+ */
174
188
  private chatParams;
175
189
  private chatOnce;
176
190
  /** Content deltas of a streamed completion (SSE, ``[DONE]``-terminated) — the Atrium route or,
177
191
  * for a registered model, the direct endpoint. Mirror of Python's ``_chat_stream``. */
178
- private chatStream;
192
+ private streamDeltas;
179
193
  private chatParse;
180
194
  /**
181
195
  * Validate ``reply`` into ``schema``; on failure run ONE tool-free json-mode repair turn, then give
@@ -195,7 +209,8 @@ export declare class Atrium implements ClientInternal, AsyncDisposable {
195
209
  * ``responseFormat`` takes a **Zod schema** to structure the **final** answer (json-mode conflicts
196
210
  * with the tool-calling turns, so it applies only after the loop ends): the answer is parsed and
197
211
  * validated — with one repair turn, then {@link StructuredOutputError} — and the value returned.
198
- * Any other option (``temperature``, ``strictParams``, …) is forwarded to every ``chat`` call.
212
+ * ``strictParams`` and every key of the ``params`` passthrough bag (``temperature``, ``top_p``, …)
213
+ * are forwarded to every ``chat`` call in the loop, including the structuring turn.
199
214
  */
200
215
  agent<T>(prompt: string, opts: AgentOptions & {
201
216
  responseFormat: ZodLike<T>;
@@ -264,6 +279,9 @@ interface Scoped {
264
279
  signal?: AbortSignal;
265
280
  }
266
281
  export interface SearchOptions extends Scoped {
282
+ /** The search text — the object form's spelling of {@link Library.search}'s ``query`` argument.
283
+ * Passing both (``search("rain", { query: "storm" })``) is an error, not a silent precedence rule. */
284
+ query?: string;
267
285
  like?: Asset | SearchHit | string;
268
286
  likeBy?: string;
269
287
  modality?: string;
@@ -382,6 +400,12 @@ export interface UploadOptions {
382
400
  collection?: string;
383
401
  signal?: AbortSignal;
384
402
  }
403
+ /** Options for {@link Library.add} — the front door into the library. One of ``file`` /
404
+ * ``description`` is required (a fileless asset's description **is** its content). */
405
+ export interface LibraryAddOptions extends UploadOptions {
406
+ /** A ``Blob``/``File`` or a URL string. Omit it for a fileless asset. */
407
+ file?: FileSource;
408
+ }
385
409
  export interface SourcesSearchOptions {
386
410
  providers?: string | string[];
387
411
  k?: number;
@@ -389,10 +413,13 @@ export interface SourcesSearchOptions {
389
413
  modality?: string;
390
414
  signal?: AbortSignal;
391
415
  }
416
+ /** What to import: a {@link Candidate} straight from ``sources.search``, or the explicit provider
417
+ * pair. A union rather than three optional keys — the "exactly one form" rule is the type's job. */
418
+ export type ImportTarget = Candidate | {
419
+ sourceId: string;
420
+ externalId: string;
421
+ };
392
422
  export interface SourceImportOptions {
393
- candidate?: Candidate;
394
- sourceId?: string;
395
- externalId?: string;
396
423
  modality?: string;
397
424
  description?: string;
398
425
  signal?: AbortSignal;
@@ -407,8 +434,8 @@ export interface SessionStartOptions {
407
434
  signal?: AbortSignal;
408
435
  }
409
436
  export interface SessionEventOptions {
410
- payload?: Record<string, unknown>;
411
437
  source?: string;
438
+ /** Optional provenance metadata (e.g. ``{ room_id }``). */
412
439
  via?: Record<string, unknown>;
413
440
  signal?: AbortSignal;
414
441
  }
@@ -426,7 +453,7 @@ export interface LiveRoomOptions {
426
453
  * strips WS upgrades, like the production edge). */
427
454
  transport?: RoomTransportMode;
428
455
  /** Injected ``WebSocket`` constructor (Node <22 has none global; also the test seam). */
429
- WebSocketCtor?: WebSocketCtor;
456
+ webSocketCtor?: WebSocketCtor;
430
457
  /** Injected ``fetch`` for the SSE transport / roster reads — the test seam. */
431
458
  fetchImpl?: FetchImpl;
432
459
  /** Aborting this closes the returned room handle. */
@@ -441,10 +468,18 @@ export interface ChatOptions {
441
468
  model?: string;
442
469
  responseFormat?: ZodLike | Record<string, unknown>;
443
470
  strictParams?: boolean;
444
- /** Return an ``AsyncIterable<string>`` of content deltas instead of a reply. */
445
- stream?: boolean;
446
471
  signal?: AbortSignal;
447
- [key: string]: unknown;
472
+ /**
473
+ * Extra OpenAI params merged into the request body verbatim (``temperature``, ``top_p``,
474
+ * ``tools``, ``max_tokens``, …). An explicit passthrough bag rather than an index signature, so a
475
+ * misspelled SDK option (``responseFormatt``) is a **compile error** instead of a silently
476
+ * forwarded param.
477
+ *
478
+ * The SDK-owned keys are not passthrough: ``model`` / ``response_format`` / ``strict_params`` are
479
+ * applied after this bag and win; ``messages`` is dropped (the messages argument is the messages);
480
+ * ``stream`` throws, naming {@link Atrium.chatStream}.
481
+ */
482
+ params?: Record<string, unknown>;
448
483
  }
449
484
  export interface AgentOptions {
450
485
  /** The tools the model may call this run (see {@link ToolDescriptor}). */
@@ -454,11 +489,18 @@ export interface AgentOptions {
454
489
  maxTurns?: number;
455
490
  /** A **Zod schema** structuring the final answer (applied after the tool-calling turns). */
456
491
  responseFormat?: ZodLike;
492
+ /** Refuse the call server-side when a param isn't supported, instead of dropping it — forwarded to
493
+ * every turn of the loop (the same key as {@link ChatOptions.strictParams}). */
494
+ strictParams?: boolean;
457
495
  signal?: AbortSignal;
458
- /** Extra OpenAI params (``temperature``, ``strictParams``, …) forwarded to every turn. */
459
- [key: string]: unknown;
496
+ /** Extra OpenAI params (``temperature``, ``top_p``, …) forwarded to every turn — the same explicit
497
+ * passthrough as {@link ChatOptions.params}, for the same typo-catching reason (and with the same
498
+ * reserved keys). */
499
+ params?: Record<string, unknown>;
460
500
  }
461
501
  export interface SurveyStartOptions {
502
+ /** The template to pin, by name. Omit it to use the project's DEFAULT template. */
503
+ template?: string;
462
504
  /** The session the survey is recorded on — a {@link Session} handle or its id. */
463
505
  into: Session | string;
464
506
  /** The data object's name (defaults to the template name, else ``"survey"``). */
@@ -505,6 +547,18 @@ export interface EmbedOptions {
505
547
  export declare class Library {
506
548
  private readonly c;
507
549
  constructor(c: ClientInternal);
550
+ /**
551
+ * Add an asset to the library (``POST /v1/assets``); it indexes in the background — the front door
552
+ * for putting something in (mirror of Python's ``library.add``).
553
+ *
554
+ * Pass a ``file`` to upload it (a ``Blob``/``File`` or a URL string — never a filesystem path, the
555
+ * core is browser-safe), or omit it and pass only a ``description`` to create a **fileless** asset
556
+ * whose description *is* the content (the web UI's "Add other" — a mood note, a data-only record).
557
+ * One of the two is required. ``modality`` is a free-form label for search/display only; for a file
558
+ * the server derives the real ``contentKind`` from the bytes, and a fileless asset defaults to
559
+ * ``"other"``. {@link Assets.upload} is the file-only twin.
560
+ */
561
+ add(opts?: LibraryAddOptions): Promise<Asset>;
508
562
  /** List the searchable embedding spaces (``GET /v1/library/spaces``). */
509
563
  spaces(opts?: {
510
564
  signal?: AbortSignal;
@@ -519,8 +573,17 @@ export declare class Library {
519
573
  * per-call refetch). The returned space's ``id`` is what search/scoring take as ``space``.
520
574
  */
521
575
  defaultSpace(modality: string): Promise<Space | undefined>;
522
- /** Semantic search — by text, an example asset (``like``), a media file, or a raw ``vector``. */
523
- search(query?: string, opts?: SearchOptions): Promise<SearchHit[]>;
576
+ /**
577
+ * Semantic search — by text, an example asset (``like``), a media file, or a raw ``vector``.
578
+ *
579
+ * Two forms, no filler positional: ``search("rain", { modality: "audio" })`` when you have query
580
+ * text, and ``search({ like: hit, modality: "audio" })`` when you don't. ``query`` inside the
581
+ * options object is the object form's spelling of the same field; giving both throws — as does
582
+ * handing the object form an *operand* (an asset / hit / ``by.*`` marker) instead of options: that
583
+ * is ``search({ like: hit })``.
584
+ */
585
+ search(opts?: SearchOptions): Promise<SearchHit[]>;
586
+ search(query: string, opts?: SearchOptions): Promise<SearchHit[]>;
524
587
  /** Find assets similar to a *set* of example assets (a mood board). */
525
588
  searchByExamples(positives: OperandLike[], opts?: SearchByExamplesOptions): Promise<SearchByExamplesHit[]>;
526
589
  /**
@@ -585,7 +648,8 @@ export declare class Assets {
585
648
  * {@link IndexEntry} is one stored signal's processing state; the server's internal ``via``
586
649
  * surfaces as ``matchedBy``. Also available as the bound ``asset.index()``. */
587
650
  index(assetOrId: AssetRef): Promise<IndexEntry[]>;
588
- /** Upload a file to the library (``POST /v1/assets``); it indexes in the background. */
651
+ /** Upload a file to the library (``POST /v1/assets``); it indexes in the background. The file-only
652
+ * twin of {@link Library.add}, which it delegates to — same request, same result. */
589
653
  upload(file: FileSource, opts?: UploadOptions): Promise<Asset>;
590
654
  }
591
655
  /** External sources — search several providers at once, then import what you pick. */
@@ -598,8 +662,9 @@ export declare class Sources {
598
662
  }): Promise<SourceInfo[]>;
599
663
  /** Search external sources for a query (``POST /v1/library/sources/search``) — read-only. */
600
664
  search(query: string, opts?: SourcesSearchOptions): Promise<SourceSearchResult>;
601
- /** Import one candidate into the shared library (``POST …/{source}/import``). */
602
- import(opts: SourceImportOptions): Promise<Asset>;
665
+ /** Import one candidate into the shared library (``POST …/{source}/import``) — ``target`` is a
666
+ * {@link Candidate} from {@link search}, or an explicit ``{ sourceId, externalId }`` pair. */
667
+ import(target: ImportTarget, opts?: SourceImportOptions): Promise<Asset>;
603
668
  }
604
669
  /** Start / resume sessions and append to their durable log. */
605
670
  export declare class Sessions {
@@ -647,8 +712,10 @@ export declare class Sessions {
647
712
  exportBundle(ids: string[], opts?: {
648
713
  signal?: AbortSignal;
649
714
  }): Promise<Uint8Array>;
650
- /** Append a durable event to a session's log (``POST /v1/sessions/{id}/events``). */
651
- event(sessionId: string, type: string, opts?: SessionEventOptions): Promise<SessionEvent>;
715
+ /** Append a durable event to a session's log (``POST /v1/sessions/{id}/events``) — the id-based
716
+ * form. A {@link Session} handle from {@link start} / {@link resume} carries the bound
717
+ * ``session.event(type, payload?)``, which is the same call with the id threaded for you. */
718
+ event(sessionId: string, type: string, payload?: Record<string, unknown>, opts?: SessionEventOptions): Promise<SessionEvent>;
652
719
  }
653
720
  /**
654
721
  * Survey templates + starting surveys.
@@ -674,9 +741,10 @@ export declare class Surveys {
674
741
  /**
675
742
  * Start a survey on a session: creates the data object (pinning the template's current version —
676
743
  * or the project's DEFAULT template when ``template`` is omitted) and returns the handle with its
677
- * once-only token.
744
+ * once-only token. Options-only — ``start({ template: "post-study", into: session })``, or just
745
+ * ``start({ into: session })`` for the default template.
678
746
  */
679
- start(template: string | undefined, opts: SurveyStartOptions): Promise<Survey>;
747
+ start(opts: SurveyStartOptions): Promise<Survey>;
680
748
  /**
681
749
  * Ensure a template exists with exactly this body (idempotent, code-first).
682
750
  *
@@ -714,22 +782,38 @@ export declare class Surveys {
714
782
  */
715
783
  uploadFile(file: FileSource, opts?: SurveyUploadOptions): Promise<ProjectFile>;
716
784
  }
717
- /** Open / fetch / join rooms — each returns a live {@link Room} handle (connect, send, on, request,
718
- * player controls, audio signals). ``connect()`` (called for you by any wire method) opens the socket. */
785
+ /**
786
+ * Open / fetch / join rooms. ``open`` / ``get`` / ``list`` return an {@link OwnedRoom} the live
787
+ * handle *plus* the host-side surfaces the account credential unlocks (``record`` / ``transcribe`` /
788
+ * ``audioVectors`` / ``dashboard`` / ``trace`` / the standing offers / ``rotateCode`` / ``delete``).
789
+ * ``join(code)`` returns a plain {@link Room}: a code grants live transport, not the account, so the
790
+ * host-side members are absent from its **type** rather than throwing at runtime.
791
+ * ``connect()`` (called for you by any wire method) opens the socket.
792
+ */
719
793
  export declare class Rooms {
720
794
  private readonly c;
721
795
  constructor(c: ClientInternal);
722
- private wrap;
723
- /** Open a room (``POST /v1/rooms``) and return a live handle. */
724
- open(opts?: RoomOpenOptions): Promise<Room>;
725
- /** Fetch a room by id (``GET /v1/rooms/{id}``) and return a live handle. */
726
- get(roomId: string, opts?: LiveRoomOptions): Promise<Room>;
727
- /** List the rooms you can see (``GET /v1/rooms``) as live handles. */
796
+ /** The participant deps every handle gets — the live-connection knobs, no credential. */
797
+ private liveDeps;
798
+ /** The owned handle: the participant deps plus this client's REST caller and capability slice. */
799
+ private own;
800
+ /** Open a room (``POST /v1/rooms``) and return a live owned handle. */
801
+ open(opts?: RoomOpenOptions): Promise<OwnedRoom>;
802
+ /** Fetch a room by id (``GET /v1/rooms/{id}``) and return a live owned handle. */
803
+ get(roomId: string, opts?: LiveRoomOptions): Promise<OwnedRoom>;
804
+ /** List the rooms you can see (``GET /v1/rooms``) as live owned handles. */
728
805
  list(opts?: {
729
806
  signal?: AbortSignal;
730
- }): Promise<Room[]>;
731
- /** Join a room by its connect code (``GET /v1/rooms/resolve``) — a participant handle that can
732
- * ``send`` / ``on`` / ``request`` / play / consume audio, but not manage the room. */
807
+ }): Promise<OwnedRoom[]>;
808
+ /**
809
+ * Join a room by its connect code (``GET /v1/rooms/resolve``) a **participant** handle that can
810
+ * ``send`` / ``on`` / ``request`` / play / consume audio, but not manage the room.
811
+ *
812
+ * Deliberately a {@link Room}, not an {@link OwnedRoom}, even though the resolve call itself is
813
+ * authenticated: a join-by-code handle is built without the REST caller and the capability slice,
814
+ * so the host-side surfaces would throw. The type says so instead. Need them? The room is yours —
815
+ * use {@link get} with its id.
816
+ */
733
817
  join(code: string, opts?: LiveRoomOptions): Promise<Room>;
734
818
  }
735
819
  //# sourceMappingURL=atrium.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"atrium.d.ts","sourceRoot":"","sources":["../src/atrium.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atrium.d.ts","sourceRoot":"","sources":["../src/atrium.ts"],"names":[],"mappings":"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"}