@amodalai/runtime 0.2.3 → 0.2.5
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/src/__fixtures__/smoke.test.js +69 -0
- package/dist/src/__fixtures__/smoke.test.js.map +1 -1
- package/dist/src/agent/local-server.js +30 -19
- package/dist/src/agent/local-server.js.map +1 -1
- package/dist/src/agent/loop-types.d.ts +20 -1
- package/dist/src/agent/loop-types.js +17 -0
- package/dist/src/agent/loop-types.js.map +1 -1
- package/dist/src/agent/page-builder.js +1 -1
- package/dist/src/agent/page-builder.js.map +1 -1
- package/dist/src/agent/snapshot-server.js +25 -17
- package/dist/src/agent/snapshot-server.js.map +1 -1
- package/dist/src/agent/states/dispatching.js +3 -3
- package/dist/src/agent/states/dispatching.js.map +1 -1
- package/dist/src/agent/states/executing.js +121 -4
- package/dist/src/agent/states/executing.js.map +1 -1
- package/dist/src/channels/bootstrap.d.ts +2 -1
- package/dist/src/channels/bootstrap.js +12 -5
- package/dist/src/channels/bootstrap.js.map +1 -1
- package/dist/src/channels/channel-session-mapper.d.ts +2 -5
- package/dist/src/channels/channel-session-mapper.js +2 -1
- package/dist/src/channels/channel-session-mapper.js.map +1 -1
- package/dist/src/channels/errors.d.ts +11 -0
- package/dist/src/channels/errors.js +14 -0
- package/dist/src/channels/errors.js.map +1 -1
- package/dist/src/channels/in-memory-session-mapper.d.ts +2 -5
- package/dist/src/channels/in-memory-session-mapper.js +2 -1
- package/dist/src/channels/in-memory-session-mapper.js.map +1 -1
- package/dist/src/channels/routes.js +20 -5
- package/dist/src/channels/routes.js.map +1 -1
- package/dist/src/config.d.ts +5 -0
- package/dist/src/config.js +17 -2
- package/dist/src/config.js.map +1 -1
- package/dist/src/providers/types.d.ts +1 -0
- package/dist/src/providers/types.js +7 -1
- package/dist/src/providers/types.js.map +1 -1
- package/dist/src/routes/ai-stream.js +7 -0
- package/dist/src/routes/ai-stream.js.map +1 -1
- package/dist/src/routes/chat-stream.js +1 -0
- package/dist/src/routes/chat-stream.js.map +1 -1
- package/dist/src/session/drizzle-session-store.js +1 -0
- package/dist/src/session/drizzle-session-store.js.map +1 -1
- package/dist/src/session/manager.d.ts +4 -0
- package/dist/src/session/manager.js +30 -3
- package/dist/src/session/manager.js.map +1 -1
- package/dist/src/session/manager.test.js +56 -0
- package/dist/src/session/manager.test.js.map +1 -1
- package/dist/src/session/pglite-session-store.js +7 -1
- package/dist/src/session/pglite-session-store.js.map +1 -1
- package/dist/src/session/postgres-session-store.js +7 -0
- package/dist/src/session/postgres-session-store.js.map +1 -1
- package/dist/src/session/session-builder.js +3 -3
- package/dist/src/session/session-builder.js.map +1 -1
- package/dist/src/session/store.d.ts +4 -4
- package/dist/src/session/store.js +81 -3
- package/dist/src/session/store.js.map +1 -1
- package/dist/src/session/store.test.js +127 -0
- package/dist/src/session/store.test.js.map +1 -1
- package/dist/src/session/types.d.ts +7 -0
- package/dist/src/stores/schema.d.ts +25 -0
- package/dist/src/stores/schema.js +1 -0
- package/dist/src/stores/schema.js.map +1 -1
- package/dist/src/tools/mcp-tool-adapter.js +22 -3
- package/dist/src/tools/mcp-tool-adapter.js.map +1 -1
- package/dist/src/tools/mcp-tool-adapter.test.js +69 -0
- package/dist/src/tools/mcp-tool-adapter.test.js.map +1 -1
- package/dist/src/types.d.ts +33 -1
- package/dist/src/types.js +9 -0
- package/dist/src/types.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
|
@@ -90,12 +90,19 @@ export interface AutomationResult {
|
|
|
90
90
|
* Shape of a persisted session record in the database.
|
|
91
91
|
* Versioned from day one so we can migrate the format later.
|
|
92
92
|
*/
|
|
93
|
+
/** Map of image ref IDs to their base64 data, stored alongside messages. */
|
|
94
|
+
export type ImageDataMap = Record<string, {
|
|
95
|
+
mimeType: string;
|
|
96
|
+
data: string;
|
|
97
|
+
}>;
|
|
93
98
|
export interface PersistedSession {
|
|
94
99
|
version: 1;
|
|
95
100
|
id: string;
|
|
96
101
|
messages: ModelMessage[];
|
|
97
102
|
tokenUsage: TokenUsage;
|
|
98
103
|
metadata: SessionMetadata;
|
|
104
|
+
/** Image blobs extracted from messages to avoid JSONB bloat on the messages column. */
|
|
105
|
+
imageData: ImageDataMap;
|
|
99
106
|
createdAt: Date;
|
|
100
107
|
updatedAt: Date;
|
|
101
108
|
}
|
|
@@ -90,6 +90,31 @@ export declare const agentSessions: import("drizzle-orm/pg-core").PgTableWithCol
|
|
|
90
90
|
}, {}, {
|
|
91
91
|
$type: Record<string, unknown>;
|
|
92
92
|
}>;
|
|
93
|
+
imageData: import("drizzle-orm/pg-core").PgColumn<{
|
|
94
|
+
name: "image_data";
|
|
95
|
+
tableName: "agent_sessions";
|
|
96
|
+
dataType: "json";
|
|
97
|
+
columnType: "PgJsonb";
|
|
98
|
+
data: Record<string, {
|
|
99
|
+
mimeType: string;
|
|
100
|
+
data: string;
|
|
101
|
+
}>;
|
|
102
|
+
driverParam: unknown;
|
|
103
|
+
notNull: false;
|
|
104
|
+
hasDefault: true;
|
|
105
|
+
isPrimaryKey: false;
|
|
106
|
+
isAutoincrement: false;
|
|
107
|
+
hasRuntimeDefault: false;
|
|
108
|
+
enumValues: undefined;
|
|
109
|
+
baseColumn: never;
|
|
110
|
+
identity: undefined;
|
|
111
|
+
generated: undefined;
|
|
112
|
+
}, {}, {
|
|
113
|
+
$type: Record<string, {
|
|
114
|
+
mimeType: string;
|
|
115
|
+
data: string;
|
|
116
|
+
}>;
|
|
117
|
+
}>;
|
|
93
118
|
version: import("drizzle-orm/pg-core").PgColumn<{
|
|
94
119
|
name: "version";
|
|
95
120
|
tableName: "agent_sessions";
|
|
@@ -18,6 +18,7 @@ export const agentSessions = pgTable('agent_sessions', {
|
|
|
18
18
|
messages: jsonb('messages').notNull().$type(),
|
|
19
19
|
tokenUsage: jsonb('token_usage').notNull().$type(),
|
|
20
20
|
metadata: jsonb('metadata').default({}).$type(),
|
|
21
|
+
imageData: jsonb('image_data').default({}).$type(),
|
|
21
22
|
version: integer('version').notNull().default(1),
|
|
22
23
|
// TIMESTAMPTZ matches the DDL in pglite-session-store.ts and
|
|
23
24
|
// postgres-session-store.ts — without `withTimezone: true` the Drizzle
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/stores/schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/stores/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,8 @@ import { jsonSchema } from 'ai';
|
|
|
19
19
|
import { ConnectionError } from '../errors.js';
|
|
20
20
|
/** Default timeout for MCP tool calls (60 seconds). */
|
|
21
21
|
const MCP_TOOL_TIMEOUT_MS = 60_000;
|
|
22
|
+
/** Default MIME type when an MCP image response doesn't specify one. */
|
|
23
|
+
const DEFAULT_IMAGE_MIME_TYPE = 'image/png';
|
|
22
24
|
// ---------------------------------------------------------------------------
|
|
23
25
|
// MCP tool → ToolDefinition
|
|
24
26
|
// ---------------------------------------------------------------------------
|
|
@@ -78,13 +80,30 @@ export function createMcpToolDefinition(tool, mcpManager, logger) {
|
|
|
78
80
|
.join('\n');
|
|
79
81
|
return { error: errorText || 'MCP tool returned an error' };
|
|
80
82
|
}
|
|
81
|
-
// Format the response content
|
|
83
|
+
// Format the response content — preserve image blocks as structured
|
|
84
|
+
// content so they can be rendered in the UI instead of being discarded.
|
|
85
|
+
// Size enforcement is handled by snipIfOversized in executing.ts.
|
|
86
|
+
const hasImages = result.content.some((c) => c.type === 'image' && c.data);
|
|
87
|
+
if (hasImages) {
|
|
88
|
+
const blocks = [];
|
|
89
|
+
for (const c of result.content) {
|
|
90
|
+
if (c.type === 'text' && c.text) {
|
|
91
|
+
blocks.push({ type: 'text', text: c.text });
|
|
92
|
+
}
|
|
93
|
+
else if (c.type === 'image' && c.data) {
|
|
94
|
+
// Some MCP tools return data as a full data URI; extract the raw base64.
|
|
95
|
+
const dataUriMatch = /^data:([^;]+);base64,(.+)$/.exec(c.data);
|
|
96
|
+
const mimeType = dataUriMatch ? dataUriMatch[1] : (c.mimeType ?? DEFAULT_IMAGE_MIME_TYPE);
|
|
97
|
+
const rawData = dataUriMatch ? dataUriMatch[2] : c.data;
|
|
98
|
+
blocks.push({ type: 'image', mimeType, data: rawData });
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return { output: blocks };
|
|
102
|
+
}
|
|
82
103
|
const output = result.content
|
|
83
104
|
.map((c) => {
|
|
84
105
|
if (c.type === 'text' && c.text)
|
|
85
106
|
return c.text;
|
|
86
|
-
if (c.type === 'image' && c.data)
|
|
87
|
-
return `[image: ${c.mimeType ?? 'unknown'}]`;
|
|
88
107
|
return `[${c.type}]`;
|
|
89
108
|
})
|
|
90
109
|
.join('\n');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-tool-adapter.js","sourceRoot":"","sources":["../../../src/tools/mcp-tool-adapter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mcp-tool-adapter.js","sourceRoot":"","sources":["../../../src/tools/mcp-tool-adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;;GAWG;AAEH,OAAO,EAAC,UAAU,EAAC,MAAM,IAAI,CAAC;AAG9B,OAAO,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAG7C,uDAAuD;AACvD,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAEnC,wEAAwE;AACxE,MAAM,uBAAuB,GAAG,WAAW,CAAC;AAE5C,8EAA8E;AAC9E,4BAA4B;AAC5B,8EAA8E;AAE9E;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,IAAuB,EACvB,UAAsB,EACtB,MAAc;IAEd,4DAA4D;IAC5D,mEAAmE;IACnE,sDAAsD;IACtD,MAAM,gBAAgB,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAErD,OAAO;QACL,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,UAAU,EAAE,gBAAgB;QAC5B,QAAQ,EAAE,KAAK,EAAE,yDAAyD;QAC1E,QAAQ,EAAE;YACR,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC;QAED,KAAK,CAAC,OAAO,CAAC,MAAe,EAAE,GAAgB;YAC7C,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE;gBAClC,OAAO,EAAE,GAAG,CAAC,SAAS;gBACtB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,CAAC,UAAU;aACxB,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAE7B,IAAI,CAAC;gBACH,uJAAuJ;gBACvJ,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE,CAA4B,CAAC,CAAC;gBAE9F,wEAAwE;gBACxE,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,IAAI,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;gBAC7E,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;oBAChC,WAAW;oBACX,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;wBACtC,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;4BAC1B,MAAM,CAAC,IAAI,eAAe,CACxB,kBAAkB,IAAI,CAAC,IAAI,aAAa,EACxC,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,IAAI,CAAC,YAAY,GAAG,EAAC,CACxE,CAAC,CAAC;4BACH,OAAO;wBACT,CAAC;wBACD,aAAa,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;4BAC3C,MAAM,CAAC,IAAI,eAAe,CACxB,kBAAkB,IAAI,CAAC,IAAI,aAAa,EACxC,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,IAAI,CAAC,YAAY,GAAG,EAAC,CACxE,CAAC,CAAC;wBACL,CAAC,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC;oBACnB,CAAC,CAAC;iBACH,CAAC,CAAC;gBAEH,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAC1C,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE;oBACpC,OAAO,EAAE,GAAG,CAAC,SAAS;oBACtB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,MAAM,EAAE,IAAI,CAAC,UAAU;oBACvB,UAAU;oBACV,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,KAAK;iBACjC,CAAC,CAAC;gBAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO;yBAC7B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC;yBAC1C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;yBAClB,IAAI,CAAC,IAAI,CAAC,CAAC;oBACd,OAAO,EAAC,KAAK,EAAE,SAAS,IAAI,4BAA4B,EAAC,CAAC;gBAC5D,CAAC;gBAED,oEAAoE;gBACpE,wEAAwE;gBACxE,kEAAkE;gBAClE,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;gBAE3E,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,MAAM,GAA0F,EAAE,CAAC;oBACzG,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBAC/B,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;4BAChC,MAAM,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAC,CAAC,CAAC;wBAC5C,CAAC;6BAAM,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;4BACxC,yEAAyE;4BACzE,MAAM,YAAY,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;4BAC/D,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,uBAAuB,CAAC,CAAC;4BAC1F,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;4BACxD,MAAM,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAC,CAAC,CAAC;wBACxD,CAAC;oBACH,CAAC;oBACD,OAAO,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC;gBAC1B,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO;qBAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBACT,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI;wBAAE,OAAO,CAAC,CAAC,IAAI,CAAC;oBAC/C,OAAO,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC;gBACvB,CAAC,CAAC;qBACD,IAAI,CAAC,IAAI,CAAC,CAAC;gBAEd,OAAO,EAAC,MAAM,EAAC,CAAC;YAClB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAC1C,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAEjE,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE;oBACnC,OAAO,EAAE,GAAG,CAAC,SAAS;oBACtB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,MAAM,EAAE,IAAI,CAAC,UAAU;oBACvB,UAAU;oBACV,KAAK,EAAE,OAAO;iBACf,CAAC,CAAC;gBAEH,2CAA2C;gBAC3C,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oBACzG,MAAM,IAAI,eAAe,CACvB,mBAAmB,IAAI,CAAC,IAAI,qBAAqB,OAAO,4DAA4D,EACpH,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,IAAI,CAAC,YAAY,GAAG,EAAE,KAAK,EAAE,GAAG,EAAC,CACpF,CAAC;gBACJ,CAAC;gBAED,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;oBACjI,MAAM,IAAI,eAAe,CACvB,kCAAkC,IAAI,CAAC,IAAI,MAAM,OAAO,sCAAsC,EAC9F,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,IAAI,CAAC,YAAY,GAAG,EAAE,KAAK,EAAE,GAAG,EAAC,CACpF,CAAC;gBACJ,CAAC;gBAED,MAAM,IAAI,eAAe,CACvB,6BAA6B,IAAI,CAAC,IAAI,MAAM,OAAO,EAAE,EACrD,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,IAAI,CAAC,YAAY,GAAG,EAAE,KAAK,EAAE,GAAG,EAAC,CACpF,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,yBAAyB;AACzB,8EAA8E;AAE9E;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAC9B,QAAsB,EACtB,UAAsB,EACtB,MAAc;IAEd,MAAM,KAAK,GAAG,UAAU,CAAC,kBAAkB,EAAE,CAAC;IAC9C,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,uBAAuB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;QAChF,UAAU,EAAE,CAAC;IACf,CAAC;IAED,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAC,CAAC,CAAC;IAC5F,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -181,6 +181,75 @@ describe('createMcpToolDefinition', () => {
|
|
|
181
181
|
await expect(def.execute({}, ctx)).rejects.toThrow(ConnectionError);
|
|
182
182
|
await expect(def.execute({}, ctx)).rejects.toThrow(/timed out/);
|
|
183
183
|
});
|
|
184
|
+
it('preserves image content blocks as structured output', async () => {
|
|
185
|
+
const callTool = vi.fn().mockResolvedValue({
|
|
186
|
+
content: [
|
|
187
|
+
{ type: 'text', text: 'Here is the screenshot' },
|
|
188
|
+
{ type: 'image', mimeType: 'image/png', data: 'iVBORw0KGgoAAAANSUhEUg==' },
|
|
189
|
+
],
|
|
190
|
+
});
|
|
191
|
+
const mcpManager = makeMockMcpManager({ callTool });
|
|
192
|
+
const tool = {
|
|
193
|
+
name: 'browser__screenshot',
|
|
194
|
+
originalName: 'screenshot',
|
|
195
|
+
serverName: 'browser',
|
|
196
|
+
description: 'Take screenshot',
|
|
197
|
+
parameters: { type: 'object' },
|
|
198
|
+
};
|
|
199
|
+
const def = createMcpToolDefinition(tool, mcpManager, logger);
|
|
200
|
+
const result = await def.execute({}, makeMockContext());
|
|
201
|
+
// Should return structured content blocks, not a placeholder string
|
|
202
|
+
expect(result).toEqual({
|
|
203
|
+
output: [
|
|
204
|
+
{ type: 'text', text: 'Here is the screenshot' },
|
|
205
|
+
{ type: 'image', mimeType: 'image/png', data: 'iVBORw0KGgoAAAANSUhEUg==' },
|
|
206
|
+
],
|
|
207
|
+
});
|
|
208
|
+
});
|
|
209
|
+
it('passes through large images (size enforcement deferred to snipIfOversized)', async () => {
|
|
210
|
+
const largeData = 'x'.repeat(2 * 1024 * 1024); // 2MB
|
|
211
|
+
const callTool = vi.fn().mockResolvedValue({
|
|
212
|
+
content: [
|
|
213
|
+
{ type: 'text', text: 'result' },
|
|
214
|
+
{ type: 'image', mimeType: 'image/png', data: largeData },
|
|
215
|
+
],
|
|
216
|
+
});
|
|
217
|
+
const mcpManager = makeMockMcpManager({ callTool });
|
|
218
|
+
const tool = {
|
|
219
|
+
name: 'browser__screenshot',
|
|
220
|
+
originalName: 'screenshot',
|
|
221
|
+
serverName: 'browser',
|
|
222
|
+
description: 'Take screenshot',
|
|
223
|
+
parameters: { type: 'object' },
|
|
224
|
+
};
|
|
225
|
+
const def = createMcpToolDefinition(tool, mcpManager, logger);
|
|
226
|
+
const result = await def.execute({}, makeMockContext());
|
|
227
|
+
const blocks = result.output;
|
|
228
|
+
expect(blocks).toHaveLength(2);
|
|
229
|
+
expect(blocks[0]).toEqual({ type: 'text', text: 'result' });
|
|
230
|
+
expect(blocks[1].type).toBe('image');
|
|
231
|
+
expect(blocks[1].data).toBe(largeData);
|
|
232
|
+
});
|
|
233
|
+
it('returns plain string output when no images are present', async () => {
|
|
234
|
+
const callTool = vi.fn().mockResolvedValue({
|
|
235
|
+
content: [
|
|
236
|
+
{ type: 'text', text: 'just text' },
|
|
237
|
+
{ type: 'text', text: 'more text' },
|
|
238
|
+
],
|
|
239
|
+
});
|
|
240
|
+
const mcpManager = makeMockMcpManager({ callTool });
|
|
241
|
+
const tool = {
|
|
242
|
+
name: 'server__tool',
|
|
243
|
+
originalName: 'tool',
|
|
244
|
+
serverName: 'server',
|
|
245
|
+
description: 'Do thing',
|
|
246
|
+
parameters: { type: 'object' },
|
|
247
|
+
};
|
|
248
|
+
const def = createMcpToolDefinition(tool, mcpManager, logger);
|
|
249
|
+
const result = await def.execute({}, makeMockContext());
|
|
250
|
+
// No images — should return plain string, not blocks
|
|
251
|
+
expect(result).toEqual({ output: 'just text\nmore text' });
|
|
252
|
+
});
|
|
184
253
|
});
|
|
185
254
|
// ---------------------------------------------------------------------------
|
|
186
255
|
// 3. Registration on ToolRegistry
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-tool-adapter.test.js","sourceRoot":"","sources":["../../../src/tools/mcp-tool-adapter.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-tool-adapter.test.js","sourceRoot":"","sources":["../../../src/tools/mcp-tool-adapter.test.ts"],"names":[],"mappings":"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"}
|
package/dist/src/types.d.ts
CHANGED
|
@@ -5,9 +5,24 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { z } from 'zod';
|
|
7
7
|
import type { AutomationDefinition } from '@amodalai/core';
|
|
8
|
+
import type { SSEToolResultContentBlock } from '@amodalai/types';
|
|
9
|
+
export type { SSEToolResultTextBlock, SSEToolResultImageBlock, SSEToolResultContentBlock } from '@amodalai/types';
|
|
8
10
|
export declare const ChatRequestSchema: z.ZodObject<{
|
|
9
11
|
/** The user message to send to the agent */
|
|
10
12
|
message: z.ZodString;
|
|
13
|
+
/** Optional image attachments */
|
|
14
|
+
images: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
15
|
+
/** IANA media type */
|
|
16
|
+
mimeType: z.ZodEnum<["image/png", "image/jpeg", "image/gif", "image/webp"]>;
|
|
17
|
+
/** Base64-encoded image data (no data URI prefix). Max ~5MB decoded. */
|
|
18
|
+
data: z.ZodString;
|
|
19
|
+
}, "strip", z.ZodTypeAny, {
|
|
20
|
+
mimeType: "image/png" | "image/jpeg" | "image/gif" | "image/webp";
|
|
21
|
+
data: string;
|
|
22
|
+
}, {
|
|
23
|
+
mimeType: "image/png" | "image/jpeg" | "image/gif" | "image/webp";
|
|
24
|
+
data: string;
|
|
25
|
+
}>, "many">>;
|
|
11
26
|
/** Optional session ID to continue a conversation */
|
|
12
27
|
session_id: z.ZodOptional<z.ZodString>;
|
|
13
28
|
/** Optional session type — controls which skills, tools, KB docs load */
|
|
@@ -29,12 +44,20 @@ export declare const ChatRequestSchema: z.ZodObject<{
|
|
|
29
44
|
max_session_tokens: z.ZodOptional<z.ZodNumber>;
|
|
30
45
|
}, "strip", z.ZodTypeAny, {
|
|
31
46
|
message: string;
|
|
47
|
+
images?: {
|
|
48
|
+
mimeType: "image/png" | "image/jpeg" | "image/gif" | "image/webp";
|
|
49
|
+
data: string;
|
|
50
|
+
}[] | undefined;
|
|
32
51
|
session_id?: string | undefined;
|
|
33
52
|
session_type?: "chat" | "admin" | "automation" | undefined;
|
|
34
53
|
deploy_id?: string | undefined;
|
|
35
54
|
max_session_tokens?: number | undefined;
|
|
36
55
|
}, {
|
|
37
56
|
message: string;
|
|
57
|
+
images?: {
|
|
58
|
+
mimeType: "image/png" | "image/jpeg" | "image/gif" | "image/webp";
|
|
59
|
+
data: string;
|
|
60
|
+
}[] | undefined;
|
|
38
61
|
session_id?: string | undefined;
|
|
39
62
|
session_type?: "chat" | "admin" | "automation" | undefined;
|
|
40
63
|
deploy_id?: string | undefined;
|
|
@@ -94,6 +117,7 @@ export declare enum SSEEventType {
|
|
|
94
117
|
CompactionStart = "compaction_start",
|
|
95
118
|
CompactionEnd = "compaction_end",
|
|
96
119
|
ToolLog = "tool_log",
|
|
120
|
+
Warning = "warning",
|
|
97
121
|
Error = "error",
|
|
98
122
|
Done = "done"
|
|
99
123
|
}
|
|
@@ -118,7 +142,10 @@ export interface SSEToolCallResultEvent {
|
|
|
118
142
|
type: SSEEventType.ToolCallResult;
|
|
119
143
|
tool_id: string;
|
|
120
144
|
status: 'success' | 'error';
|
|
145
|
+
/** Plain text result (Phase 1 — string tool results). */
|
|
121
146
|
result?: string;
|
|
147
|
+
/** Structured content blocks with images (Phase 2). When present, supersedes `result`. */
|
|
148
|
+
content?: SSEToolResultContentBlock[];
|
|
122
149
|
parameters?: Record<string, unknown>;
|
|
123
150
|
duration_ms?: number;
|
|
124
151
|
error?: string;
|
|
@@ -136,6 +163,11 @@ export interface SSESubagentEvent {
|
|
|
136
163
|
error?: string;
|
|
137
164
|
timestamp: string;
|
|
138
165
|
}
|
|
166
|
+
export interface SSEWarningEvent {
|
|
167
|
+
type: SSEEventType.Warning;
|
|
168
|
+
message: string;
|
|
169
|
+
timestamp: string;
|
|
170
|
+
}
|
|
139
171
|
export interface SSEErrorEvent {
|
|
140
172
|
type: SSEEventType.Error;
|
|
141
173
|
message: string;
|
|
@@ -233,7 +265,7 @@ export interface SSECompactionEndEvent {
|
|
|
233
265
|
compaction_tokens: number;
|
|
234
266
|
timestamp: string;
|
|
235
267
|
}
|
|
236
|
-
export type SSEEvent = SSEInitEvent | SSETextDeltaEvent | SSEToolCallStartEvent | SSEToolCallResultEvent | SSESubagentEvent | SSESkillActivatedEvent | SSEWidgetEvent | SSEKBProposalEvent | SSECredentialSavedEvent | SSEApprovedEvent | SSEExploreStartEvent | SSEExploreEndEvent | SSEPlanModeEvent | SSEFieldScrubEvent | SSEConfirmationRequiredEvent | SSECompactionStartEvent | SSECompactionEndEvent | SSEToolLogEvent | SSEErrorEvent | SSEDoneEvent;
|
|
268
|
+
export type SSEEvent = SSEInitEvent | SSETextDeltaEvent | SSEToolCallStartEvent | SSEToolCallResultEvent | SSESubagentEvent | SSESkillActivatedEvent | SSEWidgetEvent | SSEKBProposalEvent | SSECredentialSavedEvent | SSEApprovedEvent | SSEExploreStartEvent | SSEExploreEndEvent | SSEPlanModeEvent | SSEFieldScrubEvent | SSEConfirmationRequiredEvent | SSECompactionStartEvent | SSECompactionEndEvent | SSEToolLogEvent | SSEWarningEvent | SSEErrorEvent | SSEDoneEvent;
|
|
237
269
|
export interface SSEToolLogEvent {
|
|
238
270
|
type: SSEEventType.ToolLog;
|
|
239
271
|
tool_name: string;
|
package/dist/src/types.js
CHANGED
|
@@ -7,9 +7,17 @@ import { z } from 'zod';
|
|
|
7
7
|
// ---------------------------------------------------------------------------
|
|
8
8
|
// Request schemas
|
|
9
9
|
// ---------------------------------------------------------------------------
|
|
10
|
+
const ImageAttachmentSchema = z.object({
|
|
11
|
+
/** IANA media type */
|
|
12
|
+
mimeType: z.enum(['image/png', 'image/jpeg', 'image/gif', 'image/webp']),
|
|
13
|
+
/** Base64-encoded image data (no data URI prefix). Max ~5MB decoded. */
|
|
14
|
+
data: z.string().min(1).max(7_000_000),
|
|
15
|
+
});
|
|
10
16
|
export const ChatRequestSchema = z.object({
|
|
11
17
|
/** The user message to send to the agent */
|
|
12
18
|
message: z.string().min(1),
|
|
19
|
+
/** Optional image attachments */
|
|
20
|
+
images: z.array(ImageAttachmentSchema).max(5).optional(),
|
|
13
21
|
/** Optional session ID to continue a conversation */
|
|
14
22
|
session_id: z.string().optional(),
|
|
15
23
|
/** Optional session type — controls which skills, tools, KB docs load */
|
|
@@ -57,6 +65,7 @@ export var SSEEventType;
|
|
|
57
65
|
SSEEventType["CompactionStart"] = "compaction_start";
|
|
58
66
|
SSEEventType["CompactionEnd"] = "compaction_end";
|
|
59
67
|
SSEEventType["ToolLog"] = "tool_log";
|
|
68
|
+
SSEEventType["Warning"] = "warning";
|
|
60
69
|
SSEEventType["Error"] = "error";
|
|
61
70
|
SSEEventType["Done"] = "done";
|
|
62
71
|
})(SSEEventType || (SSEEventType = {}));
|
package/dist/src/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,sBAAsB;IACtB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IACxE,wEAAwE;IACxE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,4CAA4C;IAC5C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,iCAAiC;IACjC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACxD,qDAAqD;IACrD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,yEAAyE;IACzE,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE;IAChE,kFAAkF;IAClF,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC;;;;;;;;;;;OAWG;IACH,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC3D,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,0DAA0D;IAC1D,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAoCH,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,MAAM,CAAN,IAAY,YAsBX;AAtBD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,wCAAwB,CAAA;IACxB,iDAAiC,CAAA;IACjC,mDAAmC,CAAA;IACnC,gDAAgC,CAAA;IAChC,kDAAkC,CAAA;IAClC,iCAAiB,CAAA;IACjB,0CAA0B,CAAA;IAC1B,oDAAoC,CAAA;IACpC,qCAAqB,CAAA;IACrB,8CAA8B,CAAA;IAC9B,0CAA0B,CAAA;IAC1B,sCAAsB,CAAA;IACtB,0CAA0B,CAAA;IAC1B,8DAA8C,CAAA;IAC9C,oDAAoC,CAAA;IACpC,gDAAgC,CAAA;IAChC,oCAAoB,CAAA;IACpB,mCAAmB,CAAA;IACnB,+BAAe,CAAA;IACf,6BAAa,CAAA;AACf,CAAC,EAtBW,YAAY,KAAZ,YAAY,QAsBvB"}
|