@tangle-network/agent-app 0.11.1 → 0.13.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/DesignCanvas-3JEEIT6Y.js +10 -0
- package/dist/DesignCanvas-3JEEIT6Y.js.map +1 -0
- package/dist/DesignCanvasEditor-37LPJIIR.js +9 -0
- package/dist/DesignCanvasEditor-37LPJIIR.js.map +1 -0
- package/dist/TimelineEditor-OXPJZDP2.js +12 -0
- package/dist/TimelineEditor-OXPJZDP2.js.map +1 -0
- package/dist/apply-Cp8c3K9D.d.ts +249 -0
- package/dist/chunk-2Q73HGDI.js +1743 -0
- package/dist/chunk-2Q73HGDI.js.map +1 -0
- package/dist/chunk-6UOE5CTA.js +1647 -0
- package/dist/chunk-6UOE5CTA.js.map +1 -0
- package/dist/chunk-7QCIYDGC.js +1119 -0
- package/dist/chunk-7QCIYDGC.js.map +1 -0
- package/dist/chunk-A76ZHWNF.js +194 -0
- package/dist/chunk-A76ZHWNF.js.map +1 -0
- package/dist/chunk-ABGSFUJQ.js +111 -0
- package/dist/chunk-ABGSFUJQ.js.map +1 -0
- package/dist/{chunk-4YTWB5MG.js → chunk-ETX4O4BB.js} +98 -1
- package/dist/chunk-ETX4O4BB.js.map +1 -0
- package/dist/chunk-F5KTWRO7.js +2276 -0
- package/dist/chunk-F5KTWRO7.js.map +1 -0
- package/dist/chunk-IHR6K3GF.js +2367 -0
- package/dist/chunk-IHR6K3GF.js.map +1 -0
- package/dist/chunk-JZAJE3JL.js +990 -0
- package/dist/chunk-JZAJE3JL.js.map +1 -0
- package/dist/chunk-ZYBWGSAZ.js +130 -0
- package/dist/chunk-ZYBWGSAZ.js.map +1 -0
- package/dist/design-canvas/drizzle.d.ts +569 -0
- package/dist/design-canvas/drizzle.js +183 -0
- package/dist/design-canvas/drizzle.js.map +1 -0
- package/dist/design-canvas/index.d.ts +261 -0
- package/dist/design-canvas/index.js +96 -0
- package/dist/design-canvas/index.js.map +1 -0
- package/dist/design-canvas-react/index.d.ts +916 -0
- package/dist/design-canvas-react/index.js +423 -0
- package/dist/design-canvas-react/index.js.map +1 -0
- package/dist/export-presets-Dl5Aa5xj.d.ts +284 -0
- package/dist/index.d.ts +11 -2
- package/dist/index.js +224 -6
- package/dist/mcp-CIupfjxV.d.ts +112 -0
- package/dist/mcp-rpc-DLw_r9PQ.d.ts +55 -0
- package/dist/model-BHLN208Z.d.ts +183 -0
- package/dist/runtime/index.d.ts +108 -1
- package/dist/runtime/index.js +7 -1
- package/dist/sequences/drizzle.d.ts +1244 -0
- package/dist/sequences/drizzle.js +368 -0
- package/dist/sequences/drizzle.js.map +1 -0
- package/dist/sequences/index.d.ts +331 -0
- package/dist/sequences/index.js +114 -0
- package/dist/sequences/index.js.map +1 -0
- package/dist/sequences-react/index.d.ts +752 -0
- package/dist/sequences-react/index.js +241 -0
- package/dist/sequences-react/index.js.map +1 -0
- package/dist/store-CUStmtdH.d.ts +64 -0
- package/dist/store-gckrNq-g.d.ts +242 -0
- package/dist/tools/index.d.ts +25 -108
- package/dist/tools/index.js +16 -6
- package/package.json +62 -2
- package/dist/chunk-4YTWB5MG.js.map +0 -1
- package/dist/chunk-OLCVUGGI.js +0 -137
- package/dist/chunk-OLCVUGGI.js.map +0 -1
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Design-canvas scene model — the product-agnostic document behind the visual
|
|
3
|
+
* asset editor. A document is an ordered list of pages; a page is an ordered
|
|
4
|
+
* list of elements (index order IS z-order, bottom→top); every element is a
|
|
5
|
+
* typed node with a closed attribute vocabulary. The whole document
|
|
6
|
+
* serializes as one JSON value and persists atomically with a revision
|
|
7
|
+
* counter (see ./store) — every canvas action is a durable operation against
|
|
8
|
+
* this schema, which is what makes the canvas automatable: agents and
|
|
9
|
+
* external data sources mutate the same document the editor renders.
|
|
10
|
+
*
|
|
11
|
+
* Units are CSS pixels throughout; `settings.dpi` carries the print
|
|
12
|
+
* conversion factor for bleed/trim-aware exports. Angles are degrees.
|
|
13
|
+
* Nothing here touches Konva, React, or a database.
|
|
14
|
+
*/
|
|
15
|
+
declare const SCENE_SCHEMA_VERSION = 1;
|
|
16
|
+
interface SceneDocument {
|
|
17
|
+
schemaVersion: typeof SCENE_SCHEMA_VERSION;
|
|
18
|
+
title: string;
|
|
19
|
+
pages: ScenePage[];
|
|
20
|
+
settings: SceneSettings;
|
|
21
|
+
metadata: Record<string, unknown>;
|
|
22
|
+
}
|
|
23
|
+
interface SceneSettings {
|
|
24
|
+
/** Print conversion factor for mm↔px math at export; 96 = CSS default. */
|
|
25
|
+
dpi: number;
|
|
26
|
+
}
|
|
27
|
+
/** Per-side bleed extents in px, drawn OUTSIDE the page bounds. Trim = the
|
|
28
|
+
* page rect itself; exports may include or exclude the bleed area. */
|
|
29
|
+
interface PageBleed {
|
|
30
|
+
top: number;
|
|
31
|
+
right: number;
|
|
32
|
+
bottom: number;
|
|
33
|
+
left: number;
|
|
34
|
+
}
|
|
35
|
+
/** Saved ruler guides, in page coordinates. */
|
|
36
|
+
interface PageGuides {
|
|
37
|
+
vertical: number[];
|
|
38
|
+
horizontal: number[];
|
|
39
|
+
}
|
|
40
|
+
interface ScenePage {
|
|
41
|
+
id: string;
|
|
42
|
+
name: string;
|
|
43
|
+
width: number;
|
|
44
|
+
height: number;
|
|
45
|
+
/** Page background fill (color string); elements paint over it. */
|
|
46
|
+
background: string;
|
|
47
|
+
bleed: PageBleed | null;
|
|
48
|
+
guides: PageGuides;
|
|
49
|
+
elements: SceneElement[];
|
|
50
|
+
}
|
|
51
|
+
/** Attributes every element carries. `x`/`y` are the element's top-left in
|
|
52
|
+
* page coordinates (for `group`, children are relative to the group origin).
|
|
53
|
+
* `slot` names a template binding point — `apply_data` targets it. */
|
|
54
|
+
interface SceneElementBase {
|
|
55
|
+
id: string;
|
|
56
|
+
name: string;
|
|
57
|
+
x: number;
|
|
58
|
+
y: number;
|
|
59
|
+
/** Degrees, clockwise, about the element's top-left origin (Konva default). */
|
|
60
|
+
rotation: number;
|
|
61
|
+
/** 0..1 */
|
|
62
|
+
opacity: number;
|
|
63
|
+
locked: boolean;
|
|
64
|
+
visible: boolean;
|
|
65
|
+
slot?: string;
|
|
66
|
+
}
|
|
67
|
+
interface RectElement extends SceneElementBase {
|
|
68
|
+
kind: 'rect';
|
|
69
|
+
width: number;
|
|
70
|
+
height: number;
|
|
71
|
+
fill: string;
|
|
72
|
+
stroke?: string;
|
|
73
|
+
strokeWidth?: number;
|
|
74
|
+
cornerRadius?: number;
|
|
75
|
+
}
|
|
76
|
+
interface EllipseElement extends SceneElementBase {
|
|
77
|
+
kind: 'ellipse';
|
|
78
|
+
width: number;
|
|
79
|
+
height: number;
|
|
80
|
+
fill: string;
|
|
81
|
+
stroke?: string;
|
|
82
|
+
strokeWidth?: number;
|
|
83
|
+
}
|
|
84
|
+
interface LineElement extends SceneElementBase {
|
|
85
|
+
kind: 'line';
|
|
86
|
+
/** Flat [x0, y0, x1, y1, ...] relative to (x, y); ≥ 2 points. */
|
|
87
|
+
points: number[];
|
|
88
|
+
stroke: string;
|
|
89
|
+
strokeWidth: number;
|
|
90
|
+
dash?: number[];
|
|
91
|
+
}
|
|
92
|
+
interface TextElement extends SceneElementBase {
|
|
93
|
+
kind: 'text';
|
|
94
|
+
text: string;
|
|
95
|
+
/** Wrap width; height derives from content. */
|
|
96
|
+
width: number;
|
|
97
|
+
fontFamily: string;
|
|
98
|
+
fontSize: number;
|
|
99
|
+
fontStyle: 'normal' | 'bold' | 'italic' | 'bold italic';
|
|
100
|
+
fill: string;
|
|
101
|
+
align: 'left' | 'center' | 'right';
|
|
102
|
+
lineHeight: number;
|
|
103
|
+
letterSpacing: number;
|
|
104
|
+
}
|
|
105
|
+
interface ImageElement extends SceneElementBase {
|
|
106
|
+
kind: 'image';
|
|
107
|
+
width: number;
|
|
108
|
+
height: number;
|
|
109
|
+
/** http(s) or rooted /api/ path — same boundary rule as sequences media. */
|
|
110
|
+
src: string;
|
|
111
|
+
/** How the source maps into the frame; 'fill' stretches, 'cover' crops. */
|
|
112
|
+
fit: 'fill' | 'cover' | 'contain';
|
|
113
|
+
}
|
|
114
|
+
/** Video placed on a canvas renders and exports as its poster frame — motion
|
|
115
|
+
* belongs to the sequences surface; this keeps video assets placeable in
|
|
116
|
+
* static layouts (e.g. a thumbnail mock) without a playback engine. */
|
|
117
|
+
interface VideoElement extends SceneElementBase {
|
|
118
|
+
kind: 'video';
|
|
119
|
+
width: number;
|
|
120
|
+
height: number;
|
|
121
|
+
src: string;
|
|
122
|
+
posterSrc?: string;
|
|
123
|
+
}
|
|
124
|
+
interface GroupElement extends SceneElementBase {
|
|
125
|
+
kind: 'group';
|
|
126
|
+
children: SceneElement[];
|
|
127
|
+
}
|
|
128
|
+
type SceneElement = RectElement | EllipseElement | LineElement | TextElement | ImageElement | VideoElement | GroupElement;
|
|
129
|
+
type SceneElementKind = SceneElement['kind'];
|
|
130
|
+
declare const SCENE_ELEMENT_KINDS: readonly SceneElementKind[];
|
|
131
|
+
interface Bounds {
|
|
132
|
+
x: number;
|
|
133
|
+
y: number;
|
|
134
|
+
width: number;
|
|
135
|
+
height: number;
|
|
136
|
+
}
|
|
137
|
+
/** Unrotated local extent of an element (line/group derive from content). */
|
|
138
|
+
declare function elementExtent(element: SceneElement): {
|
|
139
|
+
width: number;
|
|
140
|
+
height: number;
|
|
141
|
+
};
|
|
142
|
+
declare function estimateTextHeight(element: Pick<TextElement, 'text' | 'fontSize' | 'lineHeight'>): number;
|
|
143
|
+
/** Axis-aligned bounding box in the parent's coordinate space, accounting for
|
|
144
|
+
* rotation about the element's top-left origin. */
|
|
145
|
+
declare function elementAabb(element: SceneElement): Bounds;
|
|
146
|
+
declare function boundsIntersect(a: Bounds, b: Bounds): boolean;
|
|
147
|
+
declare function requirePage(document: SceneDocument, pageId: string): ScenePage;
|
|
148
|
+
/** Depth-first search across a page including group children. Returns the
|
|
149
|
+
* element and the array that owns it (page.elements or a group's children),
|
|
150
|
+
* so callers can splice in place. */
|
|
151
|
+
declare function findElement(page: ScenePage, elementId: string): {
|
|
152
|
+
element: SceneElement;
|
|
153
|
+
owner: SceneElement[];
|
|
154
|
+
index: number;
|
|
155
|
+
} | null;
|
|
156
|
+
declare function requireElement(page: ScenePage, elementId: string): {
|
|
157
|
+
element: SceneElement;
|
|
158
|
+
owner: SceneElement[];
|
|
159
|
+
index: number;
|
|
160
|
+
};
|
|
161
|
+
/** All slot names declared across the document — the template's fillable
|
|
162
|
+
* surface. Duplicate slot names are a validation error (see ./validate). */
|
|
163
|
+
declare function collectSlots(document: SceneDocument): Map<string, {
|
|
164
|
+
pageId: string;
|
|
165
|
+
elementId: string;
|
|
166
|
+
kind: SceneElementKind;
|
|
167
|
+
}>;
|
|
168
|
+
interface NewPageOptions {
|
|
169
|
+
name?: string;
|
|
170
|
+
width?: number;
|
|
171
|
+
height?: number;
|
|
172
|
+
background?: string;
|
|
173
|
+
}
|
|
174
|
+
declare function createEmptyDocument(title: string, page?: NewPageOptions): SceneDocument;
|
|
175
|
+
declare function createPage(options: NewPageOptions, id: string): ScenePage;
|
|
176
|
+
declare function assertPositiveFinite(value: number, label: string): void;
|
|
177
|
+
declare function assertFinite(value: number, label: string): void;
|
|
178
|
+
declare function assertColor(value: string, label: string): void;
|
|
179
|
+
/** Media boundary rule shared with sequences: remote http(s) or a rooted
|
|
180
|
+
* /api/ path — never sandbox-local files or data: blobs. */
|
|
181
|
+
declare function assertSceneMediaSrc(value: string, label: string): void;
|
|
182
|
+
|
|
183
|
+
export { type Bounds as B, type EllipseElement as E, type GroupElement as G, type ImageElement as I, type LineElement as L, type NewPageOptions as N, type PageBleed as P, type RectElement as R, SCENE_ELEMENT_KINDS as S, type TextElement as T, type VideoElement as V, type PageGuides as a, SCENE_SCHEMA_VERSION as b, type SceneDocument as c, type SceneElement as d, type SceneElementBase as e, type SceneElementKind as f, type ScenePage as g, type SceneSettings as h, assertColor as i, assertFinite as j, assertPositiveFinite as k, assertSceneMediaSrc as l, boundsIntersect as m, collectSlots as n, createEmptyDocument as o, createPage as p, elementAabb as q, elementExtent as r, estimateTextHeight as s, findElement as t, requireElement as u, requirePage as v };
|
package/dist/runtime/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { C as CatalogModel, M as ModelCatalog, R as RouterModel, _ as __resetCatalogCache, b as buildCatalog, f as fetchModelCatalog, n as normalizeModelId } from '../model-catalog-BEAEVDaa.js';
|
|
2
2
|
export { C as CreateTangleRouterModelConfigOptions, D as DEFAULT_TANGLE_BILLING_ENFORCEMENT_ENV_VAR, a as DEFAULT_TANGLE_ROUTER_BASE_URL, R as ResolveModelOptions, b as ResolveUserTangleExecutionKeyForUserOptions, c as ResolveUserTangleExecutionKeyOptions, d as ResolvedTangleExecutionKey, T as TangleBillingEnforcementOptions, e as TangleExecutionEnvironment, f as TangleExecutionKeyError, g as TangleExecutionKeyErrorCode, h as TangleExecutionKeyHttpError, i as TangleExecutionKeySource, j as TangleModelConfig, k as createTangleRouterModelConfig, l as isTangleBillingEnforcementDisabled, m as isTangleExecutionKeyError, r as resolveTangleExecutionEnvironment, n as resolveTangleModelConfig, o as resolveUserTangleExecutionKey, p as resolveUserTangleExecutionKeyForUser, t as tangleExecutionKeyHttpError } from '../model-CKzniMMr.js';
|
|
3
3
|
import { b as AppToolContext, e as AppToolProducedEvent, f as AppToolTaxonomy, c as AppToolHandlers, d as AppToolOutcome } from '../types-By4B3K37.js';
|
|
4
|
+
import { a as AppToolMcpServer } from '../mcp-CIupfjxV.js';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* OpenAI-compatible stream → `LoopEvent` adapter, for NON-sandbox copilots.
|
|
@@ -170,6 +171,112 @@ interface AgentRuntime {
|
|
|
170
171
|
*/
|
|
171
172
|
declare function createAgentRuntime(opts: CreateAgentRuntimeOptions): AgentRuntime;
|
|
172
173
|
|
|
174
|
+
/**
|
|
175
|
+
* Surface-scoped profile overlay — the seam letting any product page (a
|
|
176
|
+
* sequence editor, a brief composer, a dataset view) add MCP servers, a prompt
|
|
177
|
+
* addendum, and permission tightening to the workspace agent profile for turns
|
|
178
|
+
* initiated FROM that surface, without the chat orchestrator knowing any
|
|
179
|
+
* surface's specifics. The orchestrator resolves `(kind, ctx)` through a
|
|
180
|
+
* registry the REQUEST HANDLER constructs per request (construction is a Map
|
|
181
|
+
* build — cheap) and merges the result into the base profile it was about to
|
|
182
|
+
* send to the sandbox. Per-request construction is the trust mechanism, not an
|
|
183
|
+
* optimization target: each `build()` closes over server-trusted request state
|
|
184
|
+
* (env bindings, secrets, the AUTHENTICATED user/workspace), which on Workers
|
|
185
|
+
* exists only per request — a startup-built registry would force identity
|
|
186
|
+
* through the untrusted client `ctx`.
|
|
187
|
+
*
|
|
188
|
+
* SECURITY INVARIANT: the surface `kind` and the ids inside `ctx` arrive on
|
|
189
|
+
* the client request and are pure ROUTING data — never trusted content, never
|
|
190
|
+
* identity. Identity comes from the closure (see above). The registered
|
|
191
|
+
* `build()` runs server-side only: it validates the routing ids against the
|
|
192
|
+
* product's access control, then mints its own URLs and capability tokens from
|
|
193
|
+
* server configuration (`buildHttpMcpServer` + `createCapabilityToken` in
|
|
194
|
+
* ../tools). A client can therefore never inject an arbitrary MCP url, header,
|
|
195
|
+
* or token into the agent profile: the overlay's `mcp` values are typed as
|
|
196
|
+
* {@link SurfaceMcpServer} (= the server-built `AppToolMcpServer` entry shape),
|
|
197
|
+
* and only build() constructs them.
|
|
198
|
+
*/
|
|
199
|
+
|
|
200
|
+
/** Sandbox permission posture values, ranked deny > ask > allow for merging. */
|
|
201
|
+
type SurfacePermissionValue = 'allow' | 'ask' | 'deny';
|
|
202
|
+
/** The only MCP entry shape an overlay may carry: the server-built bridge
|
|
203
|
+
* entry from ../tools/mcp (transport, url, headers, and capability token all
|
|
204
|
+
* assembled server-side). The alias exists so overlay authors reach for the
|
|
205
|
+
* builders in ../tools rather than hand-rolling `{ url: ctx.url }` shapes
|
|
206
|
+
* that would let request data become a dialable endpoint. */
|
|
207
|
+
type SurfaceMcpServer = AppToolMcpServer;
|
|
208
|
+
/** What one surface contributes to the agent profile for a single turn. */
|
|
209
|
+
interface SurfaceOverlay {
|
|
210
|
+
/** MCP servers to mount for this turn, keyed by tool-routing name. Names
|
|
211
|
+
* must not collide with the base profile's — see {@link mergeSurfaceOverlay}. */
|
|
212
|
+
mcp?: Record<string, SurfaceMcpServer>;
|
|
213
|
+
/** Appended to the base system-prompt addendum with a blank-line separator. */
|
|
214
|
+
promptAddendum?: string;
|
|
215
|
+
/** Per-key posture the surface wants for its turns. Merging is monotone
|
|
216
|
+
* fail-closed: the stricter of base/overlay wins, so a surface can tighten
|
|
217
|
+
* the workspace posture but never relax it. */
|
|
218
|
+
permissions?: Record<string, SurfacePermissionValue>;
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* One registered surface kind. `TCtx` is the shape build() expects — a CLAIM
|
|
222
|
+
* about the client payload, not a guarantee: the registry hands build() the
|
|
223
|
+
* request's `ctx` unvalidated, so build() must treat every field as an
|
|
224
|
+
* untrusted id (resolve it through access control that throws on a bad or
|
|
225
|
+
* foreign id) before minting anything from it.
|
|
226
|
+
*/
|
|
227
|
+
interface SurfaceKindDefinition<TCtx> {
|
|
228
|
+
kind: string;
|
|
229
|
+
build: (ctx: TCtx) => SurfaceOverlay | Promise<SurfaceOverlay>;
|
|
230
|
+
}
|
|
231
|
+
/** The variance-erased form a registry accepts (`build` is contravariant in
|
|
232
|
+
* `TCtx`, so every concrete definition is assignable to this). */
|
|
233
|
+
type AnySurfaceKind = SurfaceKindDefinition<never>;
|
|
234
|
+
/**
|
|
235
|
+
* Declare one surface kind. The `kind` string is the client-visible routing
|
|
236
|
+
* key (e.g. `'sequences'`); `build` is the server-side factory that turns a
|
|
237
|
+
* validated ctx into the overlay for one turn.
|
|
238
|
+
*/
|
|
239
|
+
declare function defineSurfaceKind<TCtx>(opts: {
|
|
240
|
+
kind: string;
|
|
241
|
+
build: (ctx: TCtx) => SurfaceOverlay | Promise<SurfaceOverlay>;
|
|
242
|
+
}): SurfaceKindDefinition<TCtx>;
|
|
243
|
+
interface SurfaceRegistry {
|
|
244
|
+
/** Build the overlay for one turn. Throws on an unknown kind — an unknown
|
|
245
|
+
* surface is a routing bug (client and server registries drifted), and
|
|
246
|
+
* silently returning an empty overlay would strip the surface's tools from
|
|
247
|
+
* the turn with no signal anywhere. Build errors propagate unwrapped. */
|
|
248
|
+
resolve(kind: string, ctx: unknown): Promise<SurfaceOverlay>;
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* Assemble the product's surface registry from its registered kinds. Duplicate
|
|
252
|
+
* kinds throw at construction: two builders behind one routing key would make
|
|
253
|
+
* the mounted toolset depend on registration order.
|
|
254
|
+
*/
|
|
255
|
+
declare function createSurfaceRegistry(kinds: readonly AnySurfaceKind[]): SurfaceRegistry;
|
|
256
|
+
/** Base-profile slice the merge reads/writes. Real callers pass their full
|
|
257
|
+
* profile object; every field outside this slice passes through untouched. */
|
|
258
|
+
interface SurfaceMergeBase {
|
|
259
|
+
mcp?: Record<string, unknown>;
|
|
260
|
+
systemPromptAddendum?: string;
|
|
261
|
+
permissions?: Record<string, SurfacePermissionValue>;
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Merge one surface overlay into a base profile, returning a new object
|
|
265
|
+
* (the base is never mutated; untouched nested records are shared by
|
|
266
|
+
* reference).
|
|
267
|
+
*
|
|
268
|
+
* - `mcp`: overlay servers are added under their own names. A name already
|
|
269
|
+
* present on the base THROWS — a collision is two servers claiming one
|
|
270
|
+
* routing name, and renaming either silently would corrupt tool routing for
|
|
271
|
+
* whichever caller expected the original binding.
|
|
272
|
+
* - `systemPromptAddendum`: the overlay's `promptAddendum` appends after a
|
|
273
|
+
* blank-line separator (no separator when the base has no addendum).
|
|
274
|
+
* - `permissions`: per key the STRICTER value wins (deny > ask > allow). A
|
|
275
|
+
* surface can tighten the base posture for its turns; a base 'deny' survives
|
|
276
|
+
* any overlay.
|
|
277
|
+
*/
|
|
278
|
+
declare function mergeSurfaceOverlay<TBase extends SurfaceMergeBase>(base: TBase, overlay: SurfaceOverlay): TBase & SurfaceMergeBase;
|
|
279
|
+
|
|
173
280
|
interface LoopToolCall {
|
|
174
281
|
toolCallId?: string;
|
|
175
282
|
toolName: string;
|
|
@@ -346,4 +453,4 @@ interface StreamAppToolLoopOptions<Raw> {
|
|
|
346
453
|
*/
|
|
347
454
|
declare function streamAppToolLoop<Raw>(opts: StreamAppToolLoopOptions<Raw>): AsyncGenerator<StreamLoopYield<Raw>, void, unknown>;
|
|
348
455
|
|
|
349
|
-
export { type AgentRuntime, type AgentRuntimeModelConfig, type AgentTurnOptions, type AppToolLoopOptions, type CreateAgentRuntimeOptions, type LoopAssistantToolCall, type LoopEvent, type LoopMessage, type LoopToolCall, type OpenAICompatStreamTurnOptions, type OpenAIStreamChunk, type StreamAppToolLoopOptions, type StreamLoopYield, type ToolLoopResult, type ToolLoopStopReason, createAgentRuntime, createOpenAICompatStreamTurn, runAppToolLoop, streamAppToolLoop, toLoopEvents };
|
|
456
|
+
export { type AgentRuntime, type AgentRuntimeModelConfig, type AgentTurnOptions, type AnySurfaceKind, type AppToolLoopOptions, type CreateAgentRuntimeOptions, type LoopAssistantToolCall, type LoopEvent, type LoopMessage, type LoopToolCall, type OpenAICompatStreamTurnOptions, type OpenAIStreamChunk, type StreamAppToolLoopOptions, type StreamLoopYield, type SurfaceKindDefinition, type SurfaceMcpServer, type SurfaceMergeBase, type SurfaceOverlay, type SurfacePermissionValue, type SurfaceRegistry, type ToolLoopResult, type ToolLoopStopReason, createAgentRuntime, createOpenAICompatStreamTurn, createSurfaceRegistry, defineSurfaceKind, mergeSurfaceOverlay, runAppToolLoop, streamAppToolLoop, toLoopEvents };
|
package/dist/runtime/index.js
CHANGED
|
@@ -3,12 +3,15 @@ import {
|
|
|
3
3
|
buildCatalog,
|
|
4
4
|
createAgentRuntime,
|
|
5
5
|
createOpenAICompatStreamTurn,
|
|
6
|
+
createSurfaceRegistry,
|
|
7
|
+
defineSurfaceKind,
|
|
6
8
|
fetchModelCatalog,
|
|
9
|
+
mergeSurfaceOverlay,
|
|
7
10
|
normalizeModelId,
|
|
8
11
|
runAppToolLoop,
|
|
9
12
|
streamAppToolLoop,
|
|
10
13
|
toLoopEvents
|
|
11
|
-
} from "../chunk-
|
|
14
|
+
} from "../chunk-ETX4O4BB.js";
|
|
12
15
|
import {
|
|
13
16
|
DEFAULT_TANGLE_BILLING_ENFORCEMENT_ENV_VAR,
|
|
14
17
|
DEFAULT_TANGLE_ROUTER_BASE_URL,
|
|
@@ -31,10 +34,13 @@ export {
|
|
|
31
34
|
buildCatalog,
|
|
32
35
|
createAgentRuntime,
|
|
33
36
|
createOpenAICompatStreamTurn,
|
|
37
|
+
createSurfaceRegistry,
|
|
34
38
|
createTangleRouterModelConfig,
|
|
39
|
+
defineSurfaceKind,
|
|
35
40
|
fetchModelCatalog,
|
|
36
41
|
isTangleBillingEnforcementDisabled,
|
|
37
42
|
isTangleExecutionKeyError,
|
|
43
|
+
mergeSurfaceOverlay,
|
|
38
44
|
normalizeModelId,
|
|
39
45
|
resolveTangleExecutionEnvironment,
|
|
40
46
|
resolveTangleModelConfig,
|