@motebit/sdk 1.1.0 → 2.0.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/dist/index.d.ts CHANGED
@@ -9,7 +9,10 @@ export * from "./surface-options.js";
9
9
  export * from "./governance-config.js";
10
10
  export * from "./voice-config.js";
11
11
  export * from "./appearance-config.js";
12
+ export * from "./pixel-consent.js";
13
+ export * from "./session-state.js";
12
14
  import type { SensitivityLevel, NodeId, MotebitId, TrustMode, BatteryMode, EventLogEntry, MemoryContent, MemoryCandidate, ToolDefinition, AgentTrustRecord, EventStoreAdapter, IdentityStorage, AuditLogAdapter, StateSnapshotAdapter, AuditLogSink, ConversationStoreAdapter, PlanStoreAdapter, AgentTrustStoreAdapter, ServiceListingStoreAdapter, BudgetAllocationStoreAdapter, SettlementStoreAdapter, LatencyStatsStoreAdapter, CredentialStoreAdapter, ApprovalStoreAdapter, MotebitIdentity, AuditRecord } from "@motebit/protocol";
15
+ import type { SessionStateSnapshot } from "./session-state.js";
13
16
  export declare enum RelationType {
14
17
  Related = "related",
15
18
  CausedBy = "caused_by",
@@ -173,6 +176,28 @@ export interface ContextPack {
173
176
  * `curiosityHints`.
174
177
  */
175
178
  selectedSkills?: SkillInjection[];
179
+ /**
180
+ * Prompt-1 — runtime session-state snapshot, formatted into a
181
+ * `[Session]` block in the system prompt's dynamic suffix.
182
+ *
183
+ * Surfaces the truth the AI tends to confabulate: whether a
184
+ * cloud-browser session is open, who holds control, what
185
+ * sensitivity tier the session operates at, whether pixel
186
+ * passthrough is granted. Composed by the runtime from a
187
+ * surface-supplied `BrowserSessionInfo` plus its own sensitivity
188
+ * + consent fields.
189
+ *
190
+ * Absent when the runtime hasn't wired a session-state provider
191
+ * (in-tree tests, surfaces without computer-use). Absence means
192
+ * "no session-state context" — the prompt omits the block
193
+ * entirely rather than emitting a misleading "Browser: unknown"
194
+ * default.
195
+ *
196
+ * Doctrine: `packages/sdk/src/session-state.ts` + the
197
+ * PERCEPTION_DOCTRINE block in `packages/ai-core/src/prompt.ts`
198
+ * (runtime gates / state arrive as typed signal, never inference).
199
+ */
200
+ sessionState?: SessionStateSnapshot;
176
201
  }
177
202
  /**
178
203
  * One skill body the runtime resolved as relevant for the current turn,
@@ -223,17 +248,35 @@ export interface SkillInjection {
223
248
  export interface SkillSelectorHook {
224
249
  selectForTurn(turn: string): Promise<SkillInjection[]>;
225
250
  }
251
+ /**
252
+ * In-memory conversation message. Optional `sensitivity` field is the
253
+ * runtime's effective tier at write time (composed from session tier
254
+ * × tier-bounded slab items via `getEffectiveSessionSensitivity`).
255
+ * Persisted messages carry the same value via the conversation
256
+ * store's `appendMessage`. The runtime's `trimmed()` consumes this
257
+ * field to filter trimmed history at AI-context construction time
258
+ * — read-side companion to the write-side floor that landed in
259
+ * commit 6a3c3b9a. Untagged messages (legacy data, in-memory
260
+ * pre-floor) flow through filters unchanged for backward compat.
261
+ *
262
+ * Same compounding pattern as `MemoryNode.sensitivity` and
263
+ * `SlabItem.sensitivity`: write-side classification → tag → read-
264
+ * side filter. See doctrine: motebit-computer.md §"Mode contract."
265
+ */
226
266
  export type ConversationMessage = {
227
267
  role: "user";
228
268
  content: string;
269
+ sensitivity?: SensitivityLevel;
229
270
  } | {
230
271
  role: "assistant";
231
272
  content: string;
232
273
  tool_calls?: ToolCall[];
274
+ sensitivity?: SensitivityLevel;
233
275
  } | {
234
276
  role: "tool";
235
277
  content: string;
236
278
  tool_call_id: string;
279
+ sensitivity?: SensitivityLevel;
237
280
  };
238
281
  export interface ToolCall {
239
282
  id: string;
@@ -251,6 +294,29 @@ export interface AIResponse {
251
294
  input_tokens: number;
252
295
  output_tokens: number;
253
296
  };
297
+ /**
298
+ * Task-step narration — what motebit is currently doing, at the
299
+ * supervisor-cares-about granularity. Single first-person present-
300
+ * tense sentence ("Reading the page" / "Filling in the form" /
301
+ * "Hit a paywall — need your input"). Cap ~80 chars; the chrome is
302
+ * calm. Granularity is between action-step (too noisy) and
303
+ * goal-step (too sparse) — the chunk a supervisor cares about.
304
+ *
305
+ * Consumed by the slab's chrome in the `motebit × virtual_browser`
306
+ * register (and other `motebit × *` cells). Validated by
307
+ * `validateTaskStepNarration` in `@motebit/ai-core` before display
308
+ * — falsified narration is replaced with a runtime-templated
309
+ * fallback so the chrome never renders model claims contradicted
310
+ * by typed truth. Doctrine: third graduation of
311
+ * `runtime-invariants-over-prompt-rules.md`, the typed-truth-
312
+ * perception triple applied to in-flight motebit-voiced text.
313
+ * Architectural primitive: `chrome-as-state-render.md`.
314
+ *
315
+ * Optional. Absent / null when the model didn't emit a narration
316
+ * for this turn (idle, thinking, no active task-step). The chrome
317
+ * recedes to the empty register when absent.
318
+ */
319
+ task_step_narration?: string;
254
320
  }
255
321
  export interface IntelligenceProvider {
256
322
  generate(contextPack: ContextPack): Promise<AIResponse>;
@@ -338,6 +404,22 @@ export interface StorageAdapters {
338
404
  auditLog: AuditLogAdapter;
339
405
  stateSnapshot?: StateSnapshotAdapter;
340
406
  toolAuditSink?: AuditLogSink;
407
+ /**
408
+ * audit-chain-2 — durable hash-chained audit store. When provided
409
+ * alongside `toolAuditSink`, the runtime wraps the sink in a
410
+ * `ChainedAuditSink` so every appended entry lands in the chain
411
+ * with a `previous_hash`-linked SHA-256 — tamper-evident trail
412
+ * across restart. Surfaces with a SQLite driver pass
413
+ * `new SqliteAuditChainStore(driver)`; surfaces without omit it
414
+ * (the runtime still gets per-entry signed receipts via the
415
+ * existing crypto path; chain-level integrity is the optional
416
+ * upgrade).
417
+ *
418
+ * Doctrine: `audit_chain_signing_endgame` memory + audit-chain-1
419
+ * (`ChainedAuditSink` in `@motebit/policy`) + audit-chain-2
420
+ * (`SqliteAuditChainStore` in `@motebit/persistence`).
421
+ */
422
+ auditChainStore?: import("@motebit/protocol").AuditChainStoreAdapter;
341
423
  conversationStore?: ConversationStoreAdapter;
342
424
  planStore?: PlanStoreAdapter;
343
425
  gradientStore?: GradientStoreAdapter;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AAEnC,OAAO,KAAK,EACV,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,SAAS,EACT,WAAW,EACX,aAAa,EACb,aAAa,EACb,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,YAAY,EACZ,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,0BAA0B,EAC1B,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EACf,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAI/D,oBAAY,YAAY;IACtB,OAAO,YAAY;IACnB,QAAQ,cAAc;IACtB,UAAU,gBAAgB;IAC1B,aAAa,mBAAmB;IAChC,UAAU,eAAe;IACzB,MAAM,YAAY;IAClB,UAAU,eAAe;CAC1B;AAID,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,SAAS,CAAC;IACtB,YAAY,EAAE,WAAW,CAAC;CAC3B;AAID,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAID,eAAO,MAAM,mBAAmB;;;;;EAKrB,CAAC;AAEZ,MAAM,MAAM,kBAAkB,GAAG,OAAO,mBAAmB,CAAC;AAI5D,uDAAuD;AACvD,MAAM,WAAW,UAAW,SAAQ,aAAa;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,SAAS,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,YAAY,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IACpD,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACtD,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAChD,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,kGAAkG;IAClG,kBAAkB,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACzE;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACtD,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;CACvD;AAID,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,uBAAuB,EAAE,MAAM,CAAC;IAChC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAID,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,aAAa,EAAE,CAAC;IAC/B,iBAAiB,EAAE,aAAa,EAAE,CAAC;IACnC,aAAa,EAAE,YAAY,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAC7C,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,8EAA8E;IAC9E,WAAW,CAAC,EAAE;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,2FAA2F;IAC3F,cAAc,CAAC,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxE,qGAAqG;IACrG,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACjC,yGAAyG;IACzG,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7C,oGAAoG;IACpG,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8FAA8F;IAC9F,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,cAAc,EAAE,CAAC;IAClC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,YAAY,CAAC,EAAE,oBAAoB,CAAC;CACrC;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,cAAc;IAC7B,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,oFAAoF;IACpF,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,UAAU,EAAE,UAAU,GAAG,kBAAkB,CAAC;IAC5C,yFAAyF;IACzF,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,iBAAiB;IAChC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;CACxD;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,mBAAmB,GAC3B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,gBAAgB,CAAA;CAAE,GACjE;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC;IAAC,WAAW,CAAC,EAAE,gBAAgB,CAAA;CAAE,GAC/F;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAE5F,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,eAAe,EAAE,CAAC;IACrC,aAAa,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACrC,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC;IACxB,mDAAmD;IACnD,KAAK,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IACxD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACxD,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,uBAAuB,CAAC,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;CAC3E;AAID,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,SAAS,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,SAAS,EAAE,WAAW,EAAE,CAAC;CAC1B;AAID;;;;;;;;;;GAUG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,mFAAmF;IACnF,gBAAgB,EAAE,MAAM,CAAC;IACzB,kFAAkF;IAClF,kBAAkB,EAAE,MAAM,CAAC;IAC3B,8EAA8E;IAC9E,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAID,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,oBAAoB,EAAE,MAAM,CAAC;QAC7B,uBAAuB,EAAE,MAAM,CAAC;QAChC,kBAAkB,EAAE,MAAM,CAAC;QAC3B,qBAAqB,EAAE,MAAM,CAAC;QAC9B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,eAAe,EAAE,MAAM,CAAC;QACxB,uBAAuB,EAAE,MAAM,CAAC;QAChC,WAAW,EAAE,MAAM,CAAC;QACpB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,kBAAkB,EAAE,MAAM,CAAC;QAC3B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,sBAAsB,EAAE,MAAM,CAAC;QAC/B,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;CACH;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACvC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAAC;IACnD,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAAC;CAC7D;AAID,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,aAAa,EAAE,oBAAoB,CAAC;IACpC,eAAe,EAAE,eAAe,CAAC;IACjC,QAAQ,EAAE,eAAe,CAAC;IAC1B,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,EAAE,OAAO,mBAAmB,EAAE,sBAAsB,CAAC;IACrE,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;IAC7C,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,eAAe,CAAC,EAAE,sBAAsB,CAAC;IACzC,mBAAmB,CAAC,EAAE,0BAA0B,CAAC;IACjD,qBAAqB,CAAC,EAAE,4BAA4B,CAAC;IACrD,eAAe,CAAC,EAAE,sBAAsB,CAAC;IACzC,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;IAC7C,eAAe,CAAC,EAAE,sBAAsB,CAAC;IACzC,aAAa,CAAC,EAAE,oBAAoB,CAAC;CACtC;AAMD,uEAAuE;AACvE,MAAM,WAAW,iBAAiB;IAChC,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CACnE;AAED,6EAA6E;AAC7E,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,qCAAqC;AACrC,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,qBAAqB,CAAC;CACvC;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,CACJ,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,EACD,KAAK,EAAE,cAAc,EAAE,GACtB,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAChC"}
package/dist/index.js CHANGED
@@ -9,6 +9,8 @@ export * from "./surface-options.js";
9
9
  export * from "./governance-config.js";
10
10
  export * from "./voice-config.js";
11
11
  export * from "./appearance-config.js";
12
+ export * from "./pixel-consent.js";
13
+ export * from "./session-state.js";
12
14
  // === Relation Types (product — graph semantics for memory edges) ===
13
15
  export var RelationType;
14
16
  (function (RelationType) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AA+BvC,sEAAsE;AAEtE,MAAM,CAAN,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,mCAAmB,CAAA;IACnB,sCAAsB,CAAA;IACtB,0CAA0B,CAAA;IAC1B,gDAAgC,CAAA;IAChC,yCAAyB,CAAA;IACzB,kCAAkB,CAAA;IAClB,yCAAyB,CAAA;AAC3B,CAAC,EARW,YAAY,KAAZ,YAAY,QAQvB;AA2BD,uFAAuF;AAEvF,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC/C,WAAW,EAAE,IAAI;IACjB,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,IAAI;IACpB,mBAAmB,EAAE,GAAG;CAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AAgCnC,sEAAsE;AAEtE,MAAM,CAAN,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,mCAAmB,CAAA;IACnB,sCAAsB,CAAA;IACtB,0CAA0B,CAAA;IAC1B,gDAAgC,CAAA;IAChC,yCAAyB,CAAA;IACzB,kCAAkB,CAAA;IAClB,yCAAyB,CAAA;AAC3B,CAAC,EARW,YAAY,KAAZ,YAAY,QAQvB;AA2BD,uFAAuF;AAEvF,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC/C,WAAW,EAAE,IAAI;IACjB,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,IAAI;IACpB,mBAAmB,EAAE,GAAG;CAChB,CAAC,CAAC"}
package/dist/models.d.ts CHANGED
@@ -1,9 +1,42 @@
1
1
  /** Anthropic Claude models: opus (strongest), sonnet (default), haiku (fast). */
2
- export declare const ANTHROPIC_MODELS: readonly ["claude-opus-4-6", "claude-sonnet-4-6", "claude-haiku-4-5-20251001"];
2
+ export declare const ANTHROPIC_MODELS: readonly ["claude-opus-4-7", "claude-sonnet-4-6", "claude-haiku-4-5-20251001"];
3
3
  /** OpenAI models: gpt-5.4 (strongest), gpt-5.4-mini (default), gpt-5.4-nano (fast). */
4
4
  export declare const OPENAI_MODELS: readonly ["gpt-5.4", "gpt-5.4-mini", "gpt-5.4-nano"];
5
5
  /** Google models: 2.5 pro (strongest), 2.5 flash (default), 2.5 flash-lite (fast). */
6
6
  export declare const GOOGLE_MODELS: readonly ["gemini-2.5-pro", "gemini-2.5-flash", "gemini-2.5-flash-lite"];
7
+ /**
8
+ * DeepSeek models served via DeepSeek's OpenAI-compatible hosted API
9
+ * (`https://api.deepseek.com`). The API-facing identifier `deepseek-chat`
10
+ * routes to DeepSeek V3 — the workhorse, tool-use-capable model at
11
+ * roughly Claude-Sonnet-class capability and ~10× cheaper pricing
12
+ * ($0.27/M input · $1.10/M output). DeepSeek-R1 (`deepseek-reasoner`)
13
+ * is reasoning-class but tool-use support is uncertain at the Jan 2026
14
+ * cutoff; deferred to a sibling slice once verified.
15
+ *
16
+ * Single-entry registry today; expandable. The list shape stays
17
+ * symmetric with the other per-vendor `*_MODELS` constants so the
18
+ * settings UIs across surfaces consume them identically.
19
+ */
20
+ export declare const DEEPSEEK_MODELS: readonly ["deepseek-chat"];
21
+ /**
22
+ * Groq-hosted models served via Groq's OpenAI-compatible API
23
+ * (`https://api.groq.com/openai/v1`). Groq's pitch is speed + price —
24
+ * the LPU inference hardware delivers ~280 tokens/second on Llama 3.3
25
+ * 70B (roughly 5× faster than typical GPU-served Llama) at $0.59/M
26
+ * input · $0.79/M output (~5× cheaper than Claude Sonnet, ~5× more
27
+ * expensive than DeepSeek). Independent American option in the BYOK
28
+ * registry — post-NVIDIA-licensing-deal (December 2025) Groq remains
29
+ * an independent company under CEO Simon Edwards; the API service
30
+ * continues. Default `llama-3.3-70b-versatile` is the tool-use-
31
+ * capable workhorse; `openai/gpt-oss-120b` is OpenAI's open-weights
32
+ * release (only hosted competitively via Groq, MoE architecture
33
+ * comparable to GPT-4 class on tool benchmarks).
34
+ *
35
+ * The list shape stays symmetric with the other per-vendor
36
+ * `*_MODELS` constants so the settings UIs across surfaces consume
37
+ * them identically.
38
+ */
39
+ export declare const GROQ_MODELS: readonly ["llama-3.3-70b-versatile", "openai/gpt-oss-120b"];
7
40
  /**
8
41
  * Common open-weights models that any local inference server can run.
9
42
  *
@@ -29,13 +62,27 @@ export declare const LOCAL_SERVER_SUGGESTED_MODELS: readonly ["llama3.2", "llama
29
62
  */
30
63
  export declare const OLLAMA_SUGGESTED_MODELS: readonly ["llama3.2", "llama3.1", "llama3", "mistral", "codellama", "gemma2", "phi3", "qwen2"];
31
64
  /** Models available through the Motebit proxy (all cloud providers). */
32
- export declare const PROXY_MODELS: readonly ["claude-opus-4-6", "claude-sonnet-4-6", "claude-haiku-4-5-20251001", "gpt-5.4", "gpt-5.4-mini", "gpt-5.4-nano", "gemini-2.5-pro", "gemini-2.5-flash", "gemini-2.5-flash-lite"];
65
+ export declare const PROXY_MODELS: readonly ["claude-opus-4-7", "claude-sonnet-4-6", "claude-haiku-4-5-20251001", "gpt-5.4", "gpt-5.4-mini", "gpt-5.4-nano", "gemini-2.5-pro", "gemini-2.5-flash", "gemini-2.5-flash-lite"];
33
66
  /** Default Anthropic model. */
34
67
  export declare const DEFAULT_ANTHROPIC_MODEL = "claude-sonnet-4-6";
35
68
  /** Default OpenAI model. */
36
69
  export declare const DEFAULT_OPENAI_MODEL = "gpt-5.4-mini";
37
70
  /** Default Google model. */
38
71
  export declare const DEFAULT_GOOGLE_MODEL = "gemini-2.5-flash";
72
+ /**
73
+ * Default DeepSeek model — V3 via the `deepseek-chat` API identifier.
74
+ * The tool-use-capable workhorse; matches the per-vendor "default tier"
75
+ * convention used by `DEFAULT_ANTHROPIC_MODEL` / `DEFAULT_OPENAI_MODEL` /
76
+ * `DEFAULT_GOOGLE_MODEL`.
77
+ */
78
+ export declare const DEFAULT_DEEPSEEK_MODEL = "deepseek-chat";
79
+ /**
80
+ * Default Groq model — Llama 3.3 70B served at ~280 tok/sec via the
81
+ * Groq LPU inference stack. Tool-use-capable; matches the per-vendor
82
+ * "default tier" convention used by the other `DEFAULT_*_MODEL`
83
+ * constants.
84
+ */
85
+ export declare const DEFAULT_GROQ_MODEL = "llama-3.3-70b-versatile";
39
86
  /** Default Ollama model — used as the `local-server` default too. */
40
87
  export declare const DEFAULT_OLLAMA_MODEL = "llama3.2";
41
88
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AASA,iFAAiF;AACjF,eAAO,MAAM,gBAAgB,gFAInB,CAAC;AAEX,uFAAuF;AACvF,eAAO,MAAM,aAAa,sDAAuD,CAAC;AAElF,sFAAsF;AACtF,eAAO,MAAM,aAAa,0EAIhB,CAAC;AAEX;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,6BAA6B,gGAShC,CAAC;AAEX;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,gGAAgC,CAAC;AAErE,wEAAwE;AACxE,eAAO,MAAM,YAAY,0LAUf,CAAC;AAIX,+BAA+B;AAC/B,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAE3D,4BAA4B;AAC5B,eAAO,MAAM,oBAAoB,iBAAiB,CAAC;AAEnD,4BAA4B;AAC5B,eAAO,MAAM,oBAAoB,qBAAqB,CAAC;AAEvD,qEAAqE;AACrE,eAAO,MAAM,oBAAoB,aAAa,CAAC;AAE/C;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B,aAAuB,CAAC;AAE/D,6DAA6D;AAC7D,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AAIvD,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC/D,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AACzD,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AACzD,MAAM,MAAM,yBAAyB,GAAG,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC;AACvF;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AAC7D,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AASA,iFAAiF;AACjF,eAAO,MAAM,gBAAgB,gFAInB,CAAC;AAEX,uFAAuF;AACvF,eAAO,MAAM,aAAa,sDAAuD,CAAC;AAElF,sFAAsF;AACtF,eAAO,MAAM,aAAa,0EAIhB,CAAC;AAEX;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,4BAA6B,CAAC;AAE1D;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,WAAW,6DAA8D,CAAC;AAEvF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,6BAA6B,gGAShC,CAAC;AAEX;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,gGAAgC,CAAC;AAErE,wEAAwE;AACxE,eAAO,MAAM,YAAY,0LAUf,CAAC;AAIX,+BAA+B;AAC/B,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAE3D,4BAA4B;AAC5B,eAAO,MAAM,oBAAoB,iBAAiB,CAAC;AAEnD,4BAA4B;AAC5B,eAAO,MAAM,oBAAoB,qBAAqB,CAAC;AAEvD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,kBAAkB,CAAC;AAEtD;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,4BAA4B,CAAC;AAE5D,qEAAqE;AACrE,eAAO,MAAM,oBAAoB,aAAa,CAAC;AAE/C;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B,aAAuB,CAAC;AAE/D,6DAA6D;AAC7D,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AAIvD,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC/D,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AACzD,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AACzD,MAAM,MAAM,yBAAyB,GAAG,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC;AACvF;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AAC7D,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC"}
package/dist/models.js CHANGED
@@ -8,7 +8,7 @@
8
8
  // When a new model ships, update the arrays — every surface picks it up.
9
9
  /** Anthropic Claude models: opus (strongest), sonnet (default), haiku (fast). */
10
10
  export const ANTHROPIC_MODELS = [
11
- "claude-opus-4-6",
11
+ "claude-opus-4-7",
12
12
  "claude-sonnet-4-6",
13
13
  "claude-haiku-4-5-20251001",
14
14
  ];
@@ -20,6 +20,39 @@ export const GOOGLE_MODELS = [
20
20
  "gemini-2.5-flash",
21
21
  "gemini-2.5-flash-lite",
22
22
  ];
23
+ /**
24
+ * DeepSeek models served via DeepSeek's OpenAI-compatible hosted API
25
+ * (`https://api.deepseek.com`). The API-facing identifier `deepseek-chat`
26
+ * routes to DeepSeek V3 — the workhorse, tool-use-capable model at
27
+ * roughly Claude-Sonnet-class capability and ~10× cheaper pricing
28
+ * ($0.27/M input · $1.10/M output). DeepSeek-R1 (`deepseek-reasoner`)
29
+ * is reasoning-class but tool-use support is uncertain at the Jan 2026
30
+ * cutoff; deferred to a sibling slice once verified.
31
+ *
32
+ * Single-entry registry today; expandable. The list shape stays
33
+ * symmetric with the other per-vendor `*_MODELS` constants so the
34
+ * settings UIs across surfaces consume them identically.
35
+ */
36
+ export const DEEPSEEK_MODELS = ["deepseek-chat"];
37
+ /**
38
+ * Groq-hosted models served via Groq's OpenAI-compatible API
39
+ * (`https://api.groq.com/openai/v1`). Groq's pitch is speed + price —
40
+ * the LPU inference hardware delivers ~280 tokens/second on Llama 3.3
41
+ * 70B (roughly 5× faster than typical GPU-served Llama) at $0.59/M
42
+ * input · $0.79/M output (~5× cheaper than Claude Sonnet, ~5× more
43
+ * expensive than DeepSeek). Independent American option in the BYOK
44
+ * registry — post-NVIDIA-licensing-deal (December 2025) Groq remains
45
+ * an independent company under CEO Simon Edwards; the API service
46
+ * continues. Default `llama-3.3-70b-versatile` is the tool-use-
47
+ * capable workhorse; `openai/gpt-oss-120b` is OpenAI's open-weights
48
+ * release (only hosted competitively via Groq, MoE architecture
49
+ * comparable to GPT-4 class on tool benchmarks).
50
+ *
51
+ * The list shape stays symmetric with the other per-vendor
52
+ * `*_MODELS` constants so the settings UIs across surfaces consume
53
+ * them identically.
54
+ */
55
+ export const GROQ_MODELS = ["llama-3.3-70b-versatile", "openai/gpt-oss-120b"];
23
56
  /**
24
57
  * Common open-weights models that any local inference server can run.
25
58
  *
@@ -55,7 +88,7 @@ export const LOCAL_SERVER_SUGGESTED_MODELS = [
55
88
  export const OLLAMA_SUGGESTED_MODELS = LOCAL_SERVER_SUGGESTED_MODELS;
56
89
  /** Models available through the Motebit proxy (all cloud providers). */
57
90
  export const PROXY_MODELS = [
58
- "claude-opus-4-6",
91
+ "claude-opus-4-7",
59
92
  "claude-sonnet-4-6",
60
93
  "claude-haiku-4-5-20251001",
61
94
  "gpt-5.4",
@@ -72,6 +105,20 @@ export const DEFAULT_ANTHROPIC_MODEL = "claude-sonnet-4-6";
72
105
  export const DEFAULT_OPENAI_MODEL = "gpt-5.4-mini";
73
106
  /** Default Google model. */
74
107
  export const DEFAULT_GOOGLE_MODEL = "gemini-2.5-flash";
108
+ /**
109
+ * Default DeepSeek model — V3 via the `deepseek-chat` API identifier.
110
+ * The tool-use-capable workhorse; matches the per-vendor "default tier"
111
+ * convention used by `DEFAULT_ANTHROPIC_MODEL` / `DEFAULT_OPENAI_MODEL` /
112
+ * `DEFAULT_GOOGLE_MODEL`.
113
+ */
114
+ export const DEFAULT_DEEPSEEK_MODEL = "deepseek-chat";
115
+ /**
116
+ * Default Groq model — Llama 3.3 70B served at ~280 tok/sec via the
117
+ * Groq LPU inference stack. Tool-use-capable; matches the per-vendor
118
+ * "default tier" convention used by the other `DEFAULT_*_MODEL`
119
+ * constants.
120
+ */
121
+ export const DEFAULT_GROQ_MODEL = "llama-3.3-70b-versatile";
75
122
  /** Default Ollama model — used as the `local-server` default too. */
76
123
  export const DEFAULT_OLLAMA_MODEL = "llama3.2";
77
124
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,EAAE;AACF,oEAAoE;AACpE,sGAAsG;AACtG,4EAA4E;AAC5E,EAAE;AACF,kDAAkD;AAClD,yEAAyE;AAEzE,iFAAiF;AACjF,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,iBAAiB;IACjB,mBAAmB;IACnB,2BAA2B;CACnB,CAAC;AAEX,uFAAuF;AACvF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,cAAc,CAAU,CAAC;AAElF,sFAAsF;AACtF,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,gBAAgB;IAChB,kBAAkB;IAClB,uBAAuB;CACf,CAAC;AAEX;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,UAAU;IACV,UAAU;IACV,QAAQ;IACR,SAAS;IACT,WAAW;IACX,QAAQ;IACR,MAAM;IACN,OAAO;CACC,CAAC;AAEX;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,6BAA6B,CAAC;AAErE,wEAAwE;AACxE,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,iBAAiB;IACjB,mBAAmB;IACnB,2BAA2B;IAC3B,SAAS;IACT,cAAc;IACd,cAAc;IACd,gBAAgB;IAChB,kBAAkB;IAClB,uBAAuB;CACf,CAAC;AAEX,yBAAyB;AAEzB,+BAA+B;AAC/B,MAAM,CAAC,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;AAE3D,4BAA4B;AAC5B,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAEnD,4BAA4B;AAC5B,MAAM,CAAC,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEvD,qEAAqE;AACrE,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;AAE/C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,oBAAoB,CAAC;AAE/D,6DAA6D;AAC7D,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,EAAE;AACF,oEAAoE;AACpE,sGAAsG;AACtG,4EAA4E;AAC5E,EAAE;AACF,kDAAkD;AAClD,yEAAyE;AAEzE,iFAAiF;AACjF,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,iBAAiB;IACjB,mBAAmB;IACnB,2BAA2B;CACnB,CAAC;AAEX,uFAAuF;AACvF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,cAAc,CAAU,CAAC;AAElF,sFAAsF;AACtF,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,gBAAgB;IAChB,kBAAkB;IAClB,uBAAuB;CACf,CAAC;AAEX;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,eAAe,CAAU,CAAC;AAE1D;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,yBAAyB,EAAE,qBAAqB,CAAU,CAAC;AAEvF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,UAAU;IACV,UAAU;IACV,QAAQ;IACR,SAAS;IACT,WAAW;IACX,QAAQ;IACR,MAAM;IACN,OAAO;CACC,CAAC;AAEX;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,6BAA6B,CAAC;AAErE,wEAAwE;AACxE,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,iBAAiB;IACjB,mBAAmB;IACnB,2BAA2B;IAC3B,SAAS;IACT,cAAc;IACd,cAAc;IACd,gBAAgB;IAChB,kBAAkB;IAClB,uBAAuB;CACf,CAAC;AAEX,yBAAyB;AAEzB,+BAA+B;AAC/B,MAAM,CAAC,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;AAE3D,4BAA4B;AAC5B,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAEnD,4BAA4B;AAC5B,MAAM,CAAC,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEvD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,eAAe,CAAC;AAEtD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,yBAAyB,CAAC;AAE5D,qEAAqE;AACrE,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;AAE/C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,oBAAoB,CAAC;AAE/D,6DAA6D;AAC7D,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Per-session pixel-passthrough consent state.
3
+ *
4
+ * - `denied` (default): pixels never reach an external AI provider.
5
+ * `projectForAi` swaps `bytes_base64` for a `bytes_omitted` directive
6
+ * pointing the AI at the `/vision grant` affordance.
7
+ * - `session`: the user granted pixel passthrough for the lifetime of
8
+ * this session. External providers receive bytes when sensitivity
9
+ * permits. Reverts to `denied` on session end (no persistence).
10
+ *
11
+ * Future extensions (deferred until per-domain demand lands): a
12
+ * `{ kind: "domain"; domains: string[] }` variant for "always allow on
13
+ * example.com" — same shape as browser camera/mic permissions. Adding
14
+ * a variant is additive; existing consumers route on the string-literal
15
+ * cases they care about.
16
+ *
17
+ * Sovereign providers (`on-device` mode) bypass this gate entirely —
18
+ * the bytes never cross a network boundary.
19
+ */
20
+ export type PixelConsentState = "denied" | "session";
21
+ /** Default pixel consent for a fresh session — fail-closed. */
22
+ export declare const DEFAULT_PIXEL_CONSENT: PixelConsentState;
23
+ /**
24
+ * Structured reason a `bytes_omitted` directive carries when pixels were
25
+ * stripped. Lets the AI's perception doctrine route to the right
26
+ * remediation: a `consent_required` strip points at `/vision grant`;
27
+ * a `sensitivity_blocked` strip points at `/sensitivity none`; a
28
+ * `no_capability` strip points at "switch provider." The AI doesn't
29
+ * have to parse human text — it routes on the typed reason.
30
+ */
31
+ export type PixelOmittedReason = "consent_required" | "sensitivity_blocked" | "no_capability";
32
+ //# sourceMappingURL=pixel-consent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pixel-consent.d.ts","sourceRoot":"","sources":["../src/pixel-consent.ts"],"names":[],"mappings":"AAoCA;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,SAAS,CAAC;AAErD,+DAA+D;AAC/D,eAAO,MAAM,qBAAqB,EAAE,iBAA4B,CAAC;AAEjE;;;;;;;GAOG;AACH,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,GAAG,qBAAqB,GAAG,eAAe,CAAC"}
@@ -0,0 +1,38 @@
1
+ // === Pixel Consent (Visual-Perception Boundary) ===
2
+ //
3
+ // Pixels — screenshots, navigate-frame captures, future image embedding
4
+ // payloads — cross a different sovereignty boundary than text. Text from
5
+ // a tool result is the kind of content the AI is built to reason about;
6
+ // pixels are raw bytes whose content the user may not have consented to
7
+ // share with the active provider (banking screens, medical records,
8
+ // anything caught incidentally on the slab).
9
+ //
10
+ // The architecture composes three gates around pixel passthrough:
11
+ //
12
+ // 1. Provider sovereignty — `on-device` providers always receive
13
+ // pixels. The bytes never leave the device, so there is no
14
+ // external party to consent to.
15
+ // 2. Session sensitivity — medical / financial / secret sessions
16
+ // with an external provider always strip pixels. Same fail-closed
17
+ // shape as `assertSensitivityPermitsAiCall` for outbound text.
18
+ // 3. Pixel consent — for external providers at unelevated sensitivity,
19
+ // the user must explicitly grant pixel passthrough. This file
20
+ // defines that grant's shape.
21
+ //
22
+ // Doctrine — composes existing primitives rather than introducing a new
23
+ // tool:
24
+ //
25
+ // - `motebit-computer.md` §"Mode contract" — pixel-tier perception
26
+ // is a function of (provider, sensitivity, consent), not a separate
27
+ // tool. One pixel-tier tool (`computer({kind:"screenshot"})`),
28
+ // multiple gates threaded through `projectForAi`.
29
+ // - `surface-determinism.md` (Principle 90) — consent is granted via
30
+ // a typed affordance (slash command, slab band) NEVER through an
31
+ // AI prompt asking "may I see?". The AI's only role is to surface
32
+ // `bytes_omitted: { reason: "consent_required" }` and let the
33
+ // surface route the user to the affordance.
34
+ // - `proactive-interior.md` — fail-closed by default. New sessions
35
+ // start at `denied`; pixel pass-through is opt-in.
36
+ /** Default pixel consent for a fresh session — fail-closed. */
37
+ export const DEFAULT_PIXEL_CONSENT = "denied";
38
+ //# sourceMappingURL=pixel-consent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pixel-consent.js","sourceRoot":"","sources":["../src/pixel-consent.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,EAAE;AACF,wEAAwE;AACxE,yEAAyE;AACzE,wEAAwE;AACxE,wEAAwE;AACxE,oEAAoE;AACpE,6CAA6C;AAC7C,EAAE;AACF,kEAAkE;AAClE,EAAE;AACF,mEAAmE;AACnE,gEAAgE;AAChE,qCAAqC;AACrC,mEAAmE;AACnE,uEAAuE;AACvE,oEAAoE;AACpE,yEAAyE;AACzE,mEAAmE;AACnE,mCAAmC;AACnC,EAAE;AACF,wEAAwE;AACxE,QAAQ;AACR,EAAE;AACF,qEAAqE;AACrE,wEAAwE;AACxE,mEAAmE;AACnE,sDAAsD;AACtD,uEAAuE;AACvE,qEAAqE;AACrE,sEAAsE;AACtE,kEAAkE;AAClE,gDAAgD;AAChD,qEAAqE;AACrE,uDAAuD;AAuBvD,+DAA+D;AAC/D,MAAM,CAAC,MAAM,qBAAqB,GAAsB,QAAQ,CAAC"}
@@ -16,8 +16,28 @@ export type ProviderMode = "on-device" | "motebit-cloud" | "byok";
16
16
  * (Ollama, LM Studio, llama.cpp, Jan, vLLM, …). Vendor-agnostic.
17
17
  */
18
18
  export type OnDeviceBackend = "apple-fm" | "mlx" | "webllm" | "local-server";
19
- /** BYOK vendors — the only ones where the user holds the API key directly. */
20
- export type ByokVendor = "anthropic" | "openai" | "google";
19
+ /**
20
+ * BYOK vendors the only ones where the user holds the API key directly.
21
+ *
22
+ * Closed-set additive registry; fourth instance of the agility-as-role
23
+ * pattern (`docs/doctrine/agility-as-role.md` — alongside `SuiteId` for
24
+ * cryptosuites, "permissive floor" for licenses, `GuestRail`/`SovereignRail`
25
+ * for settlement). The role is "foundation-model vendor accessible via
26
+ * OpenAI-compatible wire protocol (or Anthropic's, for Anthropic itself)."
27
+ * Adding a vendor is a registry append + dispatch arm + default-model
28
+ * entry; the closure is enforced by exhaustive-switch typechecks in
29
+ * `provider-resolver.ts` and the api-extractor baseline gate.
30
+ *
31
+ * `deepseek` lands as the fourth instance — DeepSeek V3 is roughly
32
+ * Claude-Sonnet-class on tool-use benchmarks at ~10× cheaper pricing,
33
+ * served via DeepSeek's OpenAI-compatible API. Closes the doctrinal
34
+ * asymmetry where motebit's "intelligence is pluggable" founding claim
35
+ * (`CLAUDE.md` opening) was contradicted by a 3-vendor registry of
36
+ * exclusively-expensive Big Tech providers. The role stays closed at
37
+ * the wire-vocab boundary; affordability lands now for capital-
38
+ * constrained users via the additive registry shape.
39
+ */
40
+ export type ByokVendor = "anthropic" | "openai" | "google" | "groq" | "deepseek";
21
41
  /** On-device mode config. */
22
42
  export interface OnDeviceProviderConfig {
23
43
  mode: "on-device";
@@ -30,6 +50,32 @@ export interface OnDeviceProviderConfig {
30
50
  temperature?: number;
31
51
  /** Optional max_tokens override. */
32
52
  maxTokens?: number;
53
+ /**
54
+ * Opt into auto-routing across the on-device backend's available
55
+ * models per turn. When `true` AND `backend` supports multi-model
56
+ * routing (`local-server` today; `apple-fm` / `mlx` / `webllm` are
57
+ * single-model surfaces where per-turn routing has no models to
58
+ * choose between), surface runtimes consume the third-consumer
59
+ * half of the auto-routing primitive
60
+ * (`@motebit/policy::dispatchOnDeviceRouting`) to pick the best
61
+ * model for each turn's `TaskShape` from the backend's catalog.
62
+ * When `false` or omitted, the surface uses the single configured
63
+ * `model` (backward-compat default).
64
+ *
65
+ * Doctrine: `docs/doctrine/auto-routing-as-protocol-primitive.md`
66
+ * § "PR 3 — on-device consumer". The primitive lives in
67
+ * `@motebit/policy/on-device-router.ts`; surface wiring is the
68
+ * consumer site registered in the drift gate
69
+ * `check-routing-decision-coverage` (#95). No balance filter —
70
+ * on-device runs on the user's hardware with zero marginal
71
+ * $/token cost.
72
+ *
73
+ * Per `feedback_sovereignty_orthogonal`: orthogonal to tier —
74
+ * on-device auto-routing is never subscription-gated. The user
75
+ * owns the hardware; the surface's job is to compose the
76
+ * canonical dispatcher over it.
77
+ */
78
+ autoRoute?: boolean;
33
79
  }
34
80
  /** Motebit Cloud mode config — the subscription-backed product. */
35
81
  export interface MotebitCloudProviderConfig {
@@ -56,6 +102,27 @@ export interface ByokProviderConfig {
56
102
  baseUrl?: string;
57
103
  temperature?: number;
58
104
  maxTokens?: number;
105
+ /**
106
+ * Opt into auto-routing across the vendor's available models per turn.
107
+ * When `true`, surface runtimes consume the second-consumer half of the
108
+ * auto-routing primitive (`@motebit/policy::dispatchByokRouting`) to
109
+ * pick the best model for each turn's `TaskShape` from the vendor's
110
+ * catalog. When `false` or omitted, the surface uses the single
111
+ * configured `model` (backward-compat default).
112
+ *
113
+ * Doctrine: `docs/doctrine/auto-routing-as-protocol-primitive.md`
114
+ * § "PR 2 — BYOK consumer". The primitive lives in `@motebit/policy`;
115
+ * the per-surface wiring (web today; desktop/mobile mirror following)
116
+ * is the consumer site registered in the drift gate
117
+ * `check-routing-decision-coverage` (#95). No balance filter — BYOK
118
+ * users pay providers directly; balance is motebit-cloud-specific.
119
+ *
120
+ * Per `feedback_sovereignty_orthogonal`: this flag is orthogonal to
121
+ * tier — BYOK auto-routing is never subscription-gated. The user
122
+ * already has the vendor's key; the surface's job is to compose the
123
+ * canonical dispatcher over it.
124
+ */
125
+ autoRoute?: boolean;
59
126
  }
60
127
  /** Union of all three modes. Surfaces persist this shape. */
61
128
  export type UnifiedProviderConfig = OnDeviceProviderConfig | MotebitCloudProviderConfig | ByokProviderConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"provider-mode.d.ts","sourceRoot":"","sources":["../src/provider-mode.ts"],"names":[],"mappings":"AAYA;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,eAAe,GAAG,MAAM,CAAC;AAElE;;;;;;;;GAQG;AACH,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,KAAK,GAAG,QAAQ,GAAG,cAAc,CAAC;AAE7E,8EAA8E;AAC9E,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3D,6BAA6B;AAC7B,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,eAAe,CAAC;IACzB,yFAAyF;IACzF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gGAAgG;IAChG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,mEAAmE;AACnE,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,eAAe,CAAC;IACtB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,oDAAoD;AACpD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,6DAA6D;AAC7D,MAAM,MAAM,qBAAqB,GAC7B,sBAAsB,GACtB,0BAA0B,GAC1B,kBAAkB,CAAC;AAuBvB;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAkBxE;AAID,+DAA+D;AAC/D,wBAAgB,qBAAqB,IAAI,0BAA0B,CAElE"}
1
+ {"version":3,"file":"provider-mode.d.ts","sourceRoot":"","sources":["../src/provider-mode.ts"],"names":[],"mappings":"AAYA;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,eAAe,GAAG,MAAM,CAAC;AAElE;;;;;;;;GAQG;AACH,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,KAAK,GAAG,QAAQ,GAAG,cAAc,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;AAEjF,6BAA6B;AAC7B,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,eAAe,CAAC;IACzB,yFAAyF;IACzF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gGAAgG;IAChG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,mEAAmE;AACnE,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,eAAe,CAAC;IACtB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,oDAAoD;AACpD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,6DAA6D;AAC7D,MAAM,MAAM,qBAAqB,GAC7B,sBAAsB,GACtB,0BAA0B,GAC1B,kBAAkB,CAAC;AAuBvB;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAkBxE;AAID,+DAA+D;AAC/D,wBAAgB,qBAAqB,IAAI,0BAA0B,CAElE"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider-mode.js","sourceRoot":"","sources":["../src/provider-mode.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,EAAE;AACF,+EAA+E;AAC/E,4EAA4E;AAC5E,EAAE;AACF,mFAAmF;AACnF,qFAAqF;AACrF,qDAAqD;AACrD,EAAE;AACF,4EAA4E;AAC5E,+EAA+E;AAyE/E,oBAAoB;AACpB,EAAE;AACF,oDAAoD;AACpD,EAAE;AACF,mCAAmC;AACnC,sEAAsE;AACtE,0EAA0E;AAC1E,EAAE;AACF,4CAA4C;AAC5C,oFAAoF;AACpF,2CAA2C;AAC3C,uDAAuD;AACvD,EAAE;AACF,yCAAyC;AACzC,0EAA0E;AAC1E,sCAAsC;AACtC,EAAE;AACF,kCAAkC;AAClC,8DAA8D;AAC9D,gDAAgD;AAEhD;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAA8B;IAC7D,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IACvB,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QACtC,OAAO,CACL,IAAI,KAAK,WAAW;YACpB,IAAI,KAAK,WAAW;YACpB,IAAI,KAAK,KAAK;YACd,IAAI,KAAK,SAAS;YAClB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAClB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;YACxB,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CACxC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,mBAAmB;AAEnB,+DAA+D;AAC/D,MAAM,UAAU,qBAAqB;IACnC,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"provider-mode.js","sourceRoot":"","sources":["../src/provider-mode.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,EAAE;AACF,+EAA+E;AAC/E,4EAA4E;AAC5E,EAAE;AACF,mFAAmF;AACnF,qFAAqF;AACrF,qDAAqD;AACrD,EAAE;AACF,4EAA4E;AAC5E,+EAA+E;AA4I/E,oBAAoB;AACpB,EAAE;AACF,oDAAoD;AACpD,EAAE;AACF,mCAAmC;AACnC,sEAAsE;AACtE,0EAA0E;AAC1E,EAAE;AACF,4CAA4C;AAC5C,oFAAoF;AACpF,2CAA2C;AAC3C,uDAAuD;AACvD,EAAE;AACF,yCAAyC;AACzC,0EAA0E;AAC1E,sCAAsC;AACtC,EAAE;AACF,kCAAkC;AAClC,8DAA8D;AAC9D,gDAAgD;AAEhD;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAA8B;IAC7D,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IACvB,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QACtC,OAAO,CACL,IAAI,KAAK,WAAW;YACpB,IAAI,KAAK,WAAW;YACpB,IAAI,KAAK,KAAK;YACd,IAAI,KAAK,SAAS;YAClB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAClB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;YACxB,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CACxC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,mBAAmB;AAEnB,+DAA+D;AAC/D,MAAM,UAAU,qBAAqB;IACnC,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AACnC,CAAC"}
@@ -10,6 +10,24 @@ export declare const GOOGLE_OPENAI_COMPAT_URL = "https://generativelanguage.goog
10
10
  export declare const ANTHROPIC_CANONICAL_URL = "https://api.anthropic.com";
11
11
  /** Canonical OpenAI API base URL. */
12
12
  export declare const OPENAI_CANONICAL_URL = "https://api.openai.com/v1";
13
+ /**
14
+ * Canonical DeepSeek API base URL. DeepSeek exposes an OpenAI-compatible
15
+ * chat-completions endpoint at `{base}/chat/completions`; the BYOK arm
16
+ * routes through `OpenAIProvider` the same way Google does. Single
17
+ * source of truth — surfaces that need a CORS proxy or dev rewrite
18
+ * substitute via `env.cloudBaseUrl`.
19
+ */
20
+ export declare const DEEPSEEK_CANONICAL_URL = "https://api.deepseek.com";
21
+ /**
22
+ * Canonical Groq API base URL. Groq exposes an OpenAI-compatible
23
+ * chat-completions endpoint at `{base}/chat/completions` (the
24
+ * `/openai/v1` path segment is part of Groq's URL — they namespace
25
+ * the OpenAI-shape API explicitly). The BYOK arm routes through
26
+ * `OpenAIProvider`, same path as Google / DeepSeek. Single source of
27
+ * truth — surfaces that need a CORS proxy or dev rewrite substitute
28
+ * via `env.cloudBaseUrl`.
29
+ */
30
+ export declare const GROQ_CANONICAL_URL = "https://api.groq.com/openai/v1";
13
31
  /** Default Motebit Cloud relay URL. Surfaces may override via env. */
14
32
  export declare const DEFAULT_MOTEBIT_CLOUD_URL = "https://api.motebit.com";
15
33
  /** Default WebLLM model when none specified — small enough to fit on most devices. */
@@ -1 +1 @@
1
- {"version":3,"file":"provider-resolver.d.ts","sourceRoot":"","sources":["../src/provider-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider-resolver.d.ts","sourceRoot":"","sources":["../src/provider-resolver.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@
33
33
  // - The Google "uses OpenAI-compat" fact
34
34
  // - Default model fallback per vendor
35
35
  // - The supported-backends gate
36
- import { DEFAULT_ANTHROPIC_MODEL, DEFAULT_OPENAI_MODEL, DEFAULT_GOOGLE_MODEL, DEFAULT_OLLAMA_MODEL, DEFAULT_PROXY_MODEL, } from "./models.js";
36
+ import { DEFAULT_ANTHROPIC_MODEL, DEFAULT_OPENAI_MODEL, DEFAULT_GOOGLE_MODEL, DEFAULT_DEEPSEEK_MODEL, DEFAULT_GROQ_MODEL, DEFAULT_OLLAMA_MODEL, DEFAULT_PROXY_MODEL, } from "./models.js";
37
37
  // === Constants ===
38
38
  /**
39
39
  * Google's OpenAI-compatible chat completions endpoint. Used when the user
@@ -46,6 +46,24 @@ export const GOOGLE_OPENAI_COMPAT_URL = "https://generativelanguage.googleapis.c
46
46
  export const ANTHROPIC_CANONICAL_URL = "https://api.anthropic.com";
47
47
  /** Canonical OpenAI API base URL. */
48
48
  export const OPENAI_CANONICAL_URL = "https://api.openai.com/v1";
49
+ /**
50
+ * Canonical DeepSeek API base URL. DeepSeek exposes an OpenAI-compatible
51
+ * chat-completions endpoint at `{base}/chat/completions`; the BYOK arm
52
+ * routes through `OpenAIProvider` the same way Google does. Single
53
+ * source of truth — surfaces that need a CORS proxy or dev rewrite
54
+ * substitute via `env.cloudBaseUrl`.
55
+ */
56
+ export const DEEPSEEK_CANONICAL_URL = "https://api.deepseek.com";
57
+ /**
58
+ * Canonical Groq API base URL. Groq exposes an OpenAI-compatible
59
+ * chat-completions endpoint at `{base}/chat/completions` (the
60
+ * `/openai/v1` path segment is part of Groq's URL — they namespace
61
+ * the OpenAI-shape API explicitly). The BYOK arm routes through
62
+ * `OpenAIProvider`, same path as Google / DeepSeek. Single source of
63
+ * truth — surfaces that need a CORS proxy or dev rewrite substitute
64
+ * via `env.cloudBaseUrl`.
65
+ */
66
+ export const GROQ_CANONICAL_URL = "https://api.groq.com/openai/v1";
49
67
  /** Default Motebit Cloud relay URL. Surfaces may override via env. */
50
68
  export const DEFAULT_MOTEBIT_CLOUD_URL = "https://api.motebit.com";
51
69
  /** Default WebLLM model when none specified — small enough to fit on most devices. */
@@ -85,6 +103,10 @@ export function defaultModelForVendor(vendor) {
85
103
  return DEFAULT_OPENAI_MODEL;
86
104
  case "google":
87
105
  return DEFAULT_GOOGLE_MODEL;
106
+ case "groq":
107
+ return DEFAULT_GROQ_MODEL;
108
+ case "deepseek":
109
+ return DEFAULT_DEEPSEEK_MODEL;
88
110
  }
89
111
  }
90
112
  /**
@@ -100,6 +122,10 @@ export function canonicalVendorBaseUrl(vendor) {
100
122
  return OPENAI_CANONICAL_URL;
101
123
  case "google":
102
124
  return GOOGLE_OPENAI_COMPAT_URL;
125
+ case "groq":
126
+ return GROQ_CANONICAL_URL;
127
+ case "deepseek":
128
+ return DEEPSEEK_CANONICAL_URL;
103
129
  }
104
130
  }
105
131
  // === Errors ===
@@ -150,9 +176,11 @@ export function resolveProviderSpec(config, env) {
150
176
  };
151
177
  }
152
178
  case "byok": {
153
- // Google is dispatched as OpenAI-compat its public API is OpenAI-
154
- // compatible at the canonical Google URL. Anthropic and OpenAI use
155
- // their own canonical wire protocols.
179
+ // OpenAI-compat vendors (google, deepseek) dispatch through the
180
+ // OpenAI wire protocol their hosted APIs expose
181
+ // `/chat/completions` with the same schema. Anthropic uses its
182
+ // own canonical wire protocol. The arm picks `anthropic` when the
183
+ // vendor is `"anthropic"`, otherwise `openai`.
156
184
  const wireProtocol = config.vendor === "anthropic" ? "anthropic" : "openai";
157
185
  const canonical = config.baseUrl ?? canonicalVendorBaseUrl(config.vendor);
158
186
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"provider-resolver.js","sourceRoot":"","sources":["../src/provider-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider-resolver.js","sourceRoot":"","sources":["../src/provider-resolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ import type { ControlState } from "./index.js";
2
+ import type { SensitivityLevel } from "./index.js";
3
+ import type { PixelConsentState } from "./pixel-consent.js";
4
+ /**
5
+ * Cloud-browser session info — populated by the surface that owns
6
+ * the session lifecycle (web's `registerWebComputerTool`).
7
+ * Surfaces without a virtual_browser embodiment (desktop_drive,
8
+ * sandboxed) report `status: "closed"` always — those surfaces
9
+ * don't expose `computer({navigate})` at all, so the AI shouldn't
10
+ * be reasoning about a browser session there.
11
+ */
12
+ export interface BrowserSessionInfo {
13
+ /**
14
+ * Whether motebit currently has an active virtual_browser
15
+ * session. `closed` means no live screencast, no Chromium
16
+ * process; the AI must call a tool to open one before
17
+ * navigating / reading / screenshotting.
18
+ */
19
+ readonly status: "closed" | "open";
20
+ /**
21
+ * URL of the page motebit is currently looking at. Present
22
+ * only when `status === "open"` AND the surface is tracking
23
+ * navigation events. May be omitted (`undefined`) if the
24
+ * surface hasn't wired URL tracking yet — absent means
25
+ * "we don't know," not "no URL."
26
+ */
27
+ readonly url?: string;
28
+ /**
29
+ * Co-browse control state — who's driving. Present when
30
+ * `status === "open"` AND the session has a co-browse machine
31
+ * (web). Absent on surfaces without co-browse (desktop_drive
32
+ * v1).
33
+ */
34
+ readonly control?: ControlState;
35
+ }
36
+ /**
37
+ * Full runtime session-state snapshot — composed by the runtime
38
+ * from per-surface browser info plus its own sensitivity and
39
+ * consent fields. Threaded through `MotebitLoopOptions` →
40
+ * `ContextPack.sessionState` → the system prompt's dynamic
41
+ * suffix as a `[Session]` block.
42
+ *
43
+ * v1 surface scope: web (cloud-browser embodiment). Desktop and
44
+ * mobile surfaces will populate the same shape with their own
45
+ * embodiment's state when the prompt-1 pattern lands there.
46
+ */
47
+ export interface SessionStateSnapshot {
48
+ /** Cloud-browser session info from the surface. */
49
+ readonly browser: BrowserSessionInfo;
50
+ /** Effective session sensitivity tier — runtime-owned, applies to all AI calls. */
51
+ readonly sensitivity: SensitivityLevel;
52
+ /** Per-session pixel-passthrough consent — runtime-owned. */
53
+ readonly pixelConsent: PixelConsentState;
54
+ /**
55
+ * Stale-omission signal — set when a prior tool result in this
56
+ * conversation emitted `bytes_omitted_reason: <r>` but the gate
57
+ * that fired `<r>` is no longer firing under the current state.
58
+ * Carries the prior reason so the prompt can teach the AI to
59
+ * recover correctly (re-take, don't re-recommend an already-
60
+ * granted affordance).
61
+ *
62
+ * The classic case: AI screenshot returns `bytes_omitted_reason:
63
+ * "consent_required"`; user types `/vision grant`; AI's next turn
64
+ * still references the historical omission and recommends
65
+ * `/vision grant` to a user who already granted it. This signal is
66
+ * the runtime telling the AI: "your prior omission is stale; the
67
+ * gate has flipped."
68
+ *
69
+ * Absent (undefined) means either no omission has fired this
70
+ * conversation OR the gate that fired is still firing (the
71
+ * omission isn't stale). The PERCEPTION_DOCTRINE clause in
72
+ * `@motebit/ai-core::prompt` teaches: if this field is present in
73
+ * the [Now] block, re-take before answering and DO NOT re-recommend
74
+ * the affordance for the stale reason.
75
+ *
76
+ * Doctrine: `motebit-computer.md` §"Typed truth on results" — same
77
+ * shape as `frame_stale` and `not_in_control`. Typed wire field +
78
+ * prompt clause + dispatch enforcement (the runtime computes the
79
+ * staleness, the AI doesn't have to cross-reference history).
80
+ */
81
+ readonly staleBytesOmissionReason?: import("./pixel-consent.js").PixelOmittedReason;
82
+ }
83
+ //# sourceMappingURL=session-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-state.d.ts","sourceRoot":"","sources":["../src/session-state.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC;IACnC;;;;;;OAMG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;CACjC;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,oBAAoB;IACnC,mDAAmD;IACnD,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACrC,mFAAmF;IACnF,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;IACvC,6DAA6D;IAC7D,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACzC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,QAAQ,CAAC,wBAAwB,CAAC,EAAE,OAAO,oBAAoB,EAAE,kBAAkB,CAAC;CACrF"}
@@ -0,0 +1,23 @@
1
+ // === Runtime Session State (Prompt-1) ===
2
+ //
3
+ // Snapshot of the runtime state that the AI's reasoning needs to
4
+ // know about THIS turn — injected into the system prompt's dynamic
5
+ // suffix as a `[Session]` block. The shape exists because of a
6
+ // recurring hallucination pattern witnessed across the co-browse
7
+ // arc: the AI claims runtime state ("browser is already open",
8
+ // "there's a sensitivity hold", "I haven't seen the pixels") from
9
+ // memory rather than from a typed signal. The fix is to surface
10
+ // the truth in the prompt so the AI can read it instead of
11
+ // inferring.
12
+ //
13
+ // Same shape as the existing `[Body]` and `[State]` blocks — they
14
+ // expose creature mood and body cues. `[Session]` exposes the
15
+ // runtime's session-level state: cloud-browser status, control
16
+ // holder, effective sensitivity tier, pixel-passthrough consent.
17
+ //
18
+ // Doctrine: `motebit-computer.md` §"Mode contract" + the
19
+ // PERCEPTION_DOCTRINE block in `packages/ai-core/src/prompt.ts`
20
+ // (perception integrity — runtime state arrives as typed signal,
21
+ // never as inference).
22
+ export {};
23
+ //# sourceMappingURL=session-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-state.js","sourceRoot":"","sources":["../src/session-state.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,EAAE;AACF,iEAAiE;AACjE,mEAAmE;AACnE,+DAA+D;AAC/D,iEAAiE;AACjE,+DAA+D;AAC/D,kEAAkE;AAClE,gEAAgE;AAChE,2DAA2D;AAC3D,aAAa;AACb,EAAE;AACF,kEAAkE;AAClE,8DAA8D;AAC9D,+DAA+D;AAC/D,iEAAiE;AACjE,EAAE;AACF,yDAAyD;AACzD,gEAAgE;AAChE,iEAAiE;AACjE,uBAAuB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@motebit/sdk",
3
- "version": "1.1.0",
3
+ "version": "2.0.0",
4
4
  "description": "Developer contract for building Motebit-powered agents, services, and integrations — stable types, adapter interfaces, governance config. Re-exports @motebit/protocol.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -47,7 +47,7 @@
47
47
  "access": "public"
48
48
  },
49
49
  "dependencies": {
50
- "@motebit/protocol": "1.2.0"
50
+ "@motebit/protocol": "2.0.0"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@types/node": "^22.0.0",