@amodalai/runtime 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (209) hide show
  1. package/dist/src/__fixtures__/README.md +4 -0
  2. package/dist/src/__fixtures__/e2e.test.d.ts +6 -0
  3. package/dist/src/__fixtures__/e2e.test.js +211 -0
  4. package/dist/src/__fixtures__/e2e.test.js.map +1 -0
  5. package/dist/src/__fixtures__/smoke-agent/automations/delivery-callback-test.json +9 -0
  6. package/dist/src/__fixtures__/smoke-agent/connections/mock-mcp/spec.json +1 -1
  7. package/dist/src/__fixtures__/smoke.test.js +715 -29
  8. package/dist/src/__fixtures__/smoke.test.js.map +1 -1
  9. package/dist/src/__fixtures__/test-env.d.ts +27 -0
  10. package/dist/src/__fixtures__/test-env.js +64 -0
  11. package/dist/src/__fixtures__/test-env.js.map +1 -0
  12. package/dist/src/__fixtures__/test-helpers.d.ts +30 -0
  13. package/dist/src/__fixtures__/test-helpers.js +120 -0
  14. package/dist/src/__fixtures__/test-helpers.js.map +1 -0
  15. package/dist/src/agent/agent-types.d.ts +22 -0
  16. package/dist/src/agent/agent-types.js.map +1 -1
  17. package/dist/src/agent/automation-bridge.d.ts +9 -0
  18. package/dist/src/agent/automation-bridge.js +26 -0
  19. package/dist/src/agent/automation-bridge.js.map +1 -1
  20. package/dist/src/agent/automation-bridge.test.js +63 -0
  21. package/dist/src/agent/automation-bridge.test.js.map +1 -1
  22. package/dist/src/agent/local-server.d.ts +0 -7
  23. package/dist/src/agent/local-server.js +230 -86
  24. package/dist/src/agent/local-server.js.map +1 -1
  25. package/dist/src/agent/local-server.test.js +14 -8
  26. package/dist/src/agent/local-server.test.js.map +1 -1
  27. package/dist/src/agent/loop-types.d.ts +81 -2
  28. package/dist/src/agent/loop-types.js +4 -0
  29. package/dist/src/agent/loop-types.js.map +1 -1
  30. package/dist/src/agent/loop.js +16 -3
  31. package/dist/src/agent/loop.js.map +1 -1
  32. package/dist/src/agent/loop.test.js +572 -8
  33. package/dist/src/agent/loop.test.js.map +1 -1
  34. package/dist/src/agent/proactive/delivery-router.d.ts +68 -0
  35. package/dist/src/agent/proactive/delivery-router.js +337 -0
  36. package/dist/src/agent/proactive/delivery-router.js.map +1 -0
  37. package/dist/src/agent/proactive/delivery-router.test.d.ts +6 -0
  38. package/dist/src/agent/proactive/delivery-router.test.js +455 -0
  39. package/dist/src/agent/proactive/delivery-router.test.js.map +1 -0
  40. package/dist/src/agent/proactive/proactive-runner.d.ts +23 -1
  41. package/dist/src/agent/proactive/proactive-runner.js +42 -10
  42. package/dist/src/agent/proactive/proactive-runner.js.map +1 -1
  43. package/dist/src/agent/proactive/proactive-runner.test.js +0 -2
  44. package/dist/src/agent/proactive/proactive-runner.test.js.map +1 -1
  45. package/dist/src/agent/routes/admin-chat-abort.test.d.ts +6 -0
  46. package/dist/src/agent/routes/admin-chat-abort.test.js +206 -0
  47. package/dist/src/agent/routes/admin-chat-abort.test.js.map +1 -0
  48. package/dist/src/agent/routes/admin-chat.js +0 -2
  49. package/dist/src/agent/routes/admin-chat.js.map +1 -1
  50. package/dist/src/agent/routes/task.test.js +0 -2
  51. package/dist/src/agent/routes/task.test.js.map +1 -1
  52. package/dist/src/agent/snapshot-server.js +0 -2
  53. package/dist/src/agent/snapshot-server.js.map +1 -1
  54. package/dist/src/agent/states/compacting.js +5 -3
  55. package/dist/src/agent/states/compacting.js.map +1 -1
  56. package/dist/src/agent/states/confirming.js +3 -0
  57. package/dist/src/agent/states/confirming.js.map +1 -1
  58. package/dist/src/agent/states/dispatching.js +45 -1
  59. package/dist/src/agent/states/dispatching.js.map +1 -1
  60. package/dist/src/agent/states/executing.js +225 -81
  61. package/dist/src/agent/states/executing.js.map +1 -1
  62. package/dist/src/agent/states/streaming.js +14 -0
  63. package/dist/src/agent/states/streaming.js.map +1 -1
  64. package/dist/src/agent/states/thinking.d.ts +1 -1
  65. package/dist/src/agent/states/thinking.js +246 -29
  66. package/dist/src/agent/states/thinking.js.map +1 -1
  67. package/dist/src/agent/token-estimate.d.ts +20 -6
  68. package/dist/src/agent/token-estimate.js +24 -3
  69. package/dist/src/agent/token-estimate.js.map +1 -1
  70. package/dist/src/agent/token-estimate.test.d.ts +6 -0
  71. package/dist/src/agent/token-estimate.test.js +44 -0
  72. package/dist/src/agent/token-estimate.test.js.map +1 -0
  73. package/dist/src/api/create-agent.js +0 -3
  74. package/dist/src/api/create-agent.js.map +1 -1
  75. package/dist/src/api/types.d.ts +0 -2
  76. package/dist/src/env-ref.d.ts +13 -0
  77. package/dist/src/env-ref.js +31 -0
  78. package/dist/src/env-ref.js.map +1 -0
  79. package/dist/src/env-ref.test.d.ts +6 -0
  80. package/dist/src/env-ref.test.js +34 -0
  81. package/dist/src/env-ref.test.js.map +1 -0
  82. package/dist/src/errors.d.ts +15 -0
  83. package/dist/src/errors.js +22 -0
  84. package/dist/src/errors.js.map +1 -1
  85. package/dist/src/errors.test.js +2 -2
  86. package/dist/src/errors.test.js.map +1 -1
  87. package/dist/src/events/event-bus.d.ts +54 -0
  88. package/dist/src/events/event-bus.js +84 -0
  89. package/dist/src/events/event-bus.js.map +1 -0
  90. package/dist/src/events/event-bus.test.d.ts +6 -0
  91. package/dist/src/events/event-bus.test.js +112 -0
  92. package/dist/src/events/event-bus.test.js.map +1 -0
  93. package/dist/src/events/events-route.d.ts +36 -0
  94. package/dist/src/events/events-route.js +80 -0
  95. package/dist/src/events/events-route.js.map +1 -0
  96. package/dist/src/events/events-route.test.d.ts +6 -0
  97. package/dist/src/events/events-route.test.js +134 -0
  98. package/dist/src/events/events-route.test.js.map +1 -0
  99. package/dist/src/events/store-event-wrapper.d.ts +19 -0
  100. package/dist/src/events/store-event-wrapper.js +57 -0
  101. package/dist/src/events/store-event-wrapper.js.map +1 -0
  102. package/dist/src/events/store-event-wrapper.test.d.ts +6 -0
  103. package/dist/src/events/store-event-wrapper.test.js +91 -0
  104. package/dist/src/events/store-event-wrapper.test.js.map +1 -0
  105. package/dist/src/middleware/auth.d.ts +0 -2
  106. package/dist/src/middleware/auth.js.map +1 -1
  107. package/dist/src/providers/search-provider.d.ts +64 -0
  108. package/dist/src/providers/search-provider.js +174 -0
  109. package/dist/src/providers/search-provider.js.map +1 -0
  110. package/dist/src/providers/types.d.ts +8 -0
  111. package/dist/src/routes/ai-stream.d.ts +15 -0
  112. package/dist/src/routes/ai-stream.js +9 -0
  113. package/dist/src/routes/ai-stream.js.map +1 -1
  114. package/dist/src/routes/chat-stream.d.ts +6 -0
  115. package/dist/src/routes/chat-stream.js +2 -0
  116. package/dist/src/routes/chat-stream.js.map +1 -1
  117. package/dist/src/routes/chat.d.ts +6 -0
  118. package/dist/src/routes/chat.js +2 -0
  119. package/dist/src/routes/chat.js.map +1 -1
  120. package/dist/src/routes/session-resolver.d.ts +5 -0
  121. package/dist/src/routes/session-resolver.js +1 -15
  122. package/dist/src/routes/session-resolver.js.map +1 -1
  123. package/dist/src/routes/session-resolver.test.js +7 -6
  124. package/dist/src/routes/session-resolver.test.js.map +1 -1
  125. package/dist/src/server.d.ts +6 -0
  126. package/dist/src/server.js +2 -0
  127. package/dist/src/server.js.map +1 -1
  128. package/dist/src/session/drizzle-session-store.d.ts +56 -0
  129. package/dist/src/session/drizzle-session-store.js +203 -0
  130. package/dist/src/session/drizzle-session-store.js.map +1 -0
  131. package/dist/src/session/manager.d.ts +6 -3
  132. package/dist/src/session/manager.js +46 -16
  133. package/dist/src/session/manager.js.map +1 -1
  134. package/dist/src/session/manager.test.js +12 -18
  135. package/dist/src/session/manager.test.js.map +1 -1
  136. package/dist/src/session/pglite-session-store.d.ts +23 -0
  137. package/dist/src/session/pglite-session-store.js +70 -0
  138. package/dist/src/session/pglite-session-store.js.map +1 -0
  139. package/dist/src/session/postgres-session-store.d.ts +44 -0
  140. package/dist/src/session/postgres-session-store.js +138 -0
  141. package/dist/src/session/postgres-session-store.js.map +1 -0
  142. package/dist/src/session/session-builder.d.ts +0 -2
  143. package/dist/src/session/session-builder.js +22 -2
  144. package/dist/src/session/session-builder.js.map +1 -1
  145. package/dist/src/session/session-builder.test.js +0 -2
  146. package/dist/src/session/session-builder.test.js.map +1 -1
  147. package/dist/src/session/session-store-selector.d.ts +49 -0
  148. package/dist/src/session/session-store-selector.js +60 -0
  149. package/dist/src/session/session-store-selector.js.map +1 -0
  150. package/dist/src/session/session-store-selector.test.d.ts +6 -0
  151. package/dist/src/session/session-store-selector.test.js +79 -0
  152. package/dist/src/session/session-store-selector.test.js.map +1 -0
  153. package/dist/src/session/store.d.ts +146 -32
  154. package/dist/src/session/store.js +126 -138
  155. package/dist/src/session/store.js.map +1 -1
  156. package/dist/src/session/store.test.js +385 -107
  157. package/dist/src/session/store.test.js.map +1 -1
  158. package/dist/src/session/tool-context-factory.d.ts +3 -2
  159. package/dist/src/session/tool-context-factory.js +1 -2
  160. package/dist/src/session/tool-context-factory.js.map +1 -1
  161. package/dist/src/session/tool-context-factory.test.js +1 -4
  162. package/dist/src/session/tool-context-factory.test.js.map +1 -1
  163. package/dist/src/session/types.d.ts +13 -6
  164. package/dist/src/stores/schema.d.ts +0 -34
  165. package/dist/src/stores/schema.js +6 -4
  166. package/dist/src/stores/schema.js.map +1 -1
  167. package/dist/src/tools/admin-file-tools.d.ts +29 -0
  168. package/dist/src/tools/admin-file-tools.js +525 -11
  169. package/dist/src/tools/admin-file-tools.js.map +1 -1
  170. package/dist/src/tools/admin-file-tools.test.js +373 -4
  171. package/dist/src/tools/admin-file-tools.test.js.map +1 -1
  172. package/dist/src/tools/custom-tool-adapter.test.js +0 -1
  173. package/dist/src/tools/custom-tool-adapter.test.js.map +1 -1
  174. package/dist/src/tools/dispatch-tool.d.ts +4 -4
  175. package/dist/src/tools/fetch-url-tool.d.ts +23 -0
  176. package/dist/src/tools/fetch-url-tool.js +333 -0
  177. package/dist/src/tools/fetch-url-tool.js.map +1 -0
  178. package/dist/src/tools/fetch-url-tool.test.d.ts +6 -0
  179. package/dist/src/tools/fetch-url-tool.test.js +228 -0
  180. package/dist/src/tools/fetch-url-tool.test.js.map +1 -0
  181. package/dist/src/tools/mcp-tool-adapter.test.js +0 -1
  182. package/dist/src/tools/mcp-tool-adapter.test.js.map +1 -1
  183. package/dist/src/tools/registry.test.js +0 -1
  184. package/dist/src/tools/registry.test.js.map +1 -1
  185. package/dist/src/tools/request-tool.test.js +0 -1
  186. package/dist/src/tools/request-tool.test.js.map +1 -1
  187. package/dist/src/tools/store-tools.test.js +0 -1
  188. package/dist/src/tools/store-tools.test.js.map +1 -1
  189. package/dist/src/tools/types.d.ts +20 -2
  190. package/dist/src/tools/web-search-tool.d.ts +31 -0
  191. package/dist/src/tools/web-search-tool.js +170 -0
  192. package/dist/src/tools/web-search-tool.js.map +1 -0
  193. package/dist/src/tools/web-search-tool.test.d.ts +6 -0
  194. package/dist/src/tools/web-search-tool.test.js +153 -0
  195. package/dist/src/tools/web-search-tool.test.js.map +1 -0
  196. package/dist/src/tools/web-tools-shared.d.ts +21 -0
  197. package/dist/src/tools/web-tools-shared.js +32 -0
  198. package/dist/src/tools/web-tools-shared.js.map +1 -0
  199. package/dist/src/types.d.ts +20 -0
  200. package/dist/src/types.js +13 -0
  201. package/dist/src/types.js.map +1 -1
  202. package/dist/tsconfig.tsbuildinfo +1 -1
  203. package/package.json +17 -3
  204. package/dist/src/agent/session-store.d.ts +0 -71
  205. package/dist/src/agent/session-store.js +0 -151
  206. package/dist/src/agent/session-store.js.map +0 -1
  207. package/dist/src/session/admin-file-tools.d.ts +0 -136
  208. package/dist/src/session/admin-file-tools.js +0 -240
  209. package/dist/src/session/admin-file-tools.js.map +0 -1
@@ -0,0 +1,70 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Amodal Labs, Inc.
4
+ * SPDX-License-Identifier: MIT
5
+ */
6
+ /**
7
+ * PGLite factory for the session store.
8
+ *
9
+ * Opens an in-process WASM Postgres (PGLite), runs idempotent DDL,
10
+ * and returns a `DrizzleSessionStore` wired to it. Thin factory —
11
+ * all query logic lives in DrizzleSessionStore.
12
+ *
13
+ * Default choice for `amodal dev`: zero config, no Docker, no DB to
14
+ * manage. Pair with `createPostgresSessionStore` for hosted runtime
15
+ * or ISV production deployments.
16
+ */
17
+ import { drizzle } from 'drizzle-orm/pglite';
18
+ import { agentSessions } from '../stores/schema.js';
19
+ import { log as defaultLogger } from '../logger.js';
20
+ import { DrizzleSessionStore } from './drizzle-session-store.js';
21
+ const BACKEND_NAME = 'pglite';
22
+ // Must match the Drizzle schema in ../stores/schema.ts exactly.
23
+ const CREATE_TABLE_DDL = `
24
+ CREATE TABLE IF NOT EXISTS agent_sessions (
25
+ id TEXT PRIMARY KEY,
26
+ messages JSONB NOT NULL,
27
+ token_usage JSONB NOT NULL,
28
+ metadata JSONB DEFAULT '{}',
29
+ version INTEGER NOT NULL DEFAULT 1,
30
+ created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
31
+ updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
32
+ );
33
+
34
+ CREATE INDEX IF NOT EXISTS idx_agent_sessions_updated
35
+ ON agent_sessions (updated_at DESC);
36
+ `;
37
+ /**
38
+ * Create and initialize a PGLite-backed session store.
39
+ *
40
+ * Returns a `DrizzleSessionStore` whose `close()` will close the
41
+ * underlying PGLite instance.
42
+ */
43
+ export async function createPGLiteSessionStore(opts = {}) {
44
+ const logger = opts.logger ?? defaultLogger;
45
+ if (opts.dataDir) {
46
+ const { mkdirSync } = await import('node:fs');
47
+ mkdirSync(opts.dataDir, { recursive: true });
48
+ }
49
+ // Dynamic import keeps PGLite lazy — Postgres-only deployments don't
50
+ // need to pay the WASM parsing cost.
51
+ const { PGlite } = await import('@electric-sql/pglite');
52
+ const pglite = new PGlite(opts.dataDir ?? undefined);
53
+ await pglite.exec(CREATE_TABLE_DDL);
54
+ const db = drizzle(pglite);
55
+ logger.info('session_store_initialized', {
56
+ backend: BACKEND_NAME,
57
+ dataDir: opts.dataDir ?? 'in-memory',
58
+ });
59
+ return new DrizzleSessionStore({
60
+ db,
61
+ table: agentSessions,
62
+ backendName: BACKEND_NAME,
63
+ logger,
64
+ hooks: opts.hooks,
65
+ onClose: async () => {
66
+ await pglite.close();
67
+ },
68
+ });
69
+ }
70
+ //# sourceMappingURL=pglite-session-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pglite-session-store.js","sourceRoot":"","sources":["../../../src/session/pglite-session-store.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,EAAC,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAE3C,OAAO,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAC,GAAG,IAAI,aAAa,EAAC,MAAM,cAAc,CAAC;AAElD,OAAO,EAAC,mBAAmB,EAAC,MAAM,4BAA4B,CAAC;AAG/D,MAAM,YAAY,GAAG,QAAQ,CAAC;AAE9B,gEAAgE;AAChE,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;CAaxB,CAAC;AAWF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,OAAkC,EAAE;IAEpC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,aAAa,CAAC;IAE5C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,EAAC,SAAS,EAAC,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5C,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;IAC7C,CAAC;IAED,qEAAqE;IACrE,qCAAqC;IACrC,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC;IACrD,MAAM,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAEpC,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE3B,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;QACvC,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,WAAW;KACrC,CAAC,CAAC;IAEH,OAAO,IAAI,mBAAmB,CAAC;QAC7B,EAAE;QACF,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,YAAY;QACzB,MAAM;QACN,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Amodal Labs, Inc.
4
+ * SPDX-License-Identifier: MIT
5
+ */
6
+ import type { Pool } from 'pg';
7
+ import type { Logger } from '../logger.js';
8
+ import { DrizzleSessionStore } from './drizzle-session-store.js';
9
+ import type { SessionStoreHooks } from './store.js';
10
+ export interface PostgresSessionStoreOptions {
11
+ /** Postgres connection string. Required if `pool` is not provided. */
12
+ connectionString?: string;
13
+ /** Existing pg.Pool to reuse instead of opening a new one. */
14
+ pool?: Pool;
15
+ /** Pool size when opening a new pool (default 10). Ignored if `pool` is passed. */
16
+ max?: number;
17
+ /** Per-statement timeout in ms (default 30_000). Ignored if `pool` is passed. */
18
+ statementTimeoutMs?: number;
19
+ /**
20
+ * Custom table name (default `agent_sessions`). Lets consumers run
21
+ * this store in a DB that already uses that name for something else.
22
+ */
23
+ tableName?: string;
24
+ /** Logger. Defaults to the runtime's global logger. */
25
+ logger?: Logger;
26
+ /** Optional hooks for dual-write / observability. */
27
+ hooks?: SessionStoreHooks;
28
+ /**
29
+ * When true, `close()` will not `pool.end()` — use when the caller
30
+ * owns the pool lifecycle. Defaults to true iff `pool` was passed
31
+ * (caller-owned), false otherwise (store-owned).
32
+ */
33
+ ownsPool?: boolean;
34
+ }
35
+ /**
36
+ * Create and initialize a Postgres-backed session store.
37
+ *
38
+ * Accepts either a connection string (shorthand) or full options
39
+ * object. Validates `tableName` at construct time, opens (or adopts)
40
+ * a `pg.Pool`, runs idempotent DDL, and returns a DrizzleSessionStore.
41
+ * The returned store's `close()` will `pool.end()` unless
42
+ * `ownsPool: false` (set automatically when a pool is passed in).
43
+ */
44
+ export declare function createPostgresSessionStore(optsOrUrl: PostgresSessionStoreOptions | string): Promise<DrizzleSessionStore>;
@@ -0,0 +1,138 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Amodal Labs, Inc.
4
+ * SPDX-License-Identifier: MIT
5
+ */
6
+ /**
7
+ * Postgres factory for the session store.
8
+ *
9
+ * Opens a `pg.Pool` (or reuses one passed in), runs idempotent DDL,
10
+ * and returns a `DrizzleSessionStore` wired to it. Thin factory —
11
+ * all query logic lives in DrizzleSessionStore.
12
+ *
13
+ * For hosted runtime and ISV production deployments. Pair with
14
+ * `createPGLiteSessionStore` for `amodal dev`.
15
+ */
16
+ import { drizzle } from 'drizzle-orm/node-postgres';
17
+ import { pgTable, text, integer, jsonb, timestamp } from 'drizzle-orm/pg-core';
18
+ import { log as defaultLogger } from '../logger.js';
19
+ import { SessionStoreError } from '../errors.js';
20
+ import { DrizzleSessionStore } from './drizzle-session-store.js';
21
+ const BACKEND_NAME = 'postgres';
22
+ const DEFAULT_STATEMENT_TIMEOUT_MS = 30_000;
23
+ const DEFAULT_POOL_MAX = 10;
24
+ const DEFAULT_TABLE_NAME = 'agent_sessions';
25
+ // Reject table names that could be used for SQL injection. The name
26
+ // is interpolated into DDL so strict validation is mandatory.
27
+ const SAFE_TABLE_NAME_RE = /^[a-zA-Z_][a-zA-Z0-9_]{0,62}$/;
28
+ function validateTableName(name) {
29
+ if (!SAFE_TABLE_NAME_RE.test(name)) {
30
+ throw new SessionStoreError(`Invalid table name: ${JSON.stringify(name)}`, {
31
+ backend: BACKEND_NAME,
32
+ operation: 'construct',
33
+ context: { tableName: name, expected: 'identifier: letters, digits, underscore' },
34
+ });
35
+ }
36
+ }
37
+ /**
38
+ * Build a Drizzle table binding for a given table name. Columns match
39
+ * the static `agentSessions` schema exactly; only the SQL table name
40
+ * differs. The return is cast to `AgentSessionsTable` (the type alias
41
+ * for `typeof agentSessions`) because the column shape is identical —
42
+ * Drizzle's inferred generic differs only in the `name` literal.
43
+ */
44
+ function makeAgentSessionsTable(name) {
45
+ const t = pgTable(name, {
46
+ id: text('id').primaryKey(),
47
+ messages: jsonb('messages').notNull().$type(),
48
+ tokenUsage: jsonb('token_usage').notNull().$type(),
49
+ metadata: jsonb('metadata').default({}).$type(),
50
+ version: integer('version').notNull().default(1),
51
+ createdAt: timestamp('created_at', { withTimezone: true }).defaultNow().notNull(),
52
+ updatedAt: timestamp('updated_at', { withTimezone: true }).defaultNow().notNull(),
53
+ });
54
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- dynamic-name table has identical column shape as the static `agentSessions`; only the `name` generic parameter differs
55
+ return t;
56
+ }
57
+ function buildDdl(tableName) {
58
+ return `
59
+ CREATE TABLE IF NOT EXISTS ${tableName} (
60
+ id TEXT PRIMARY KEY,
61
+ messages JSONB NOT NULL,
62
+ token_usage JSONB NOT NULL,
63
+ metadata JSONB DEFAULT '{}',
64
+ version INTEGER NOT NULL DEFAULT 1,
65
+ created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
66
+ updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
67
+ );
68
+
69
+ CREATE INDEX IF NOT EXISTS idx_${tableName}_updated
70
+ ON ${tableName} (updated_at DESC);
71
+ `;
72
+ }
73
+ /**
74
+ * Create and initialize a Postgres-backed session store.
75
+ *
76
+ * Accepts either a connection string (shorthand) or full options
77
+ * object. Validates `tableName` at construct time, opens (or adopts)
78
+ * a `pg.Pool`, runs idempotent DDL, and returns a DrizzleSessionStore.
79
+ * The returned store's `close()` will `pool.end()` unless
80
+ * `ownsPool: false` (set automatically when a pool is passed in).
81
+ */
82
+ export async function createPostgresSessionStore(optsOrUrl) {
83
+ const opts = typeof optsOrUrl === 'string' ? { connectionString: optsOrUrl } : optsOrUrl;
84
+ if (!opts.connectionString && !opts.pool) {
85
+ throw new SessionStoreError('createPostgresSessionStore requires either connectionString or pool', { backend: BACKEND_NAME, operation: 'construct' });
86
+ }
87
+ const logger = opts.logger ?? defaultLogger;
88
+ const tableName = opts.tableName ?? DEFAULT_TABLE_NAME;
89
+ validateTableName(tableName);
90
+ const table = makeAgentSessionsTable(tableName);
91
+ const ownsPool = opts.ownsPool ?? !opts.pool;
92
+ let pool;
93
+ if (opts.pool) {
94
+ pool = opts.pool;
95
+ }
96
+ else {
97
+ // Dynamic import so `pg` stays an optional peer at the package
98
+ // level — PGLite users don't need it installed.
99
+ const pg = await import('pg');
100
+ const { Pool: PgPool } = pg.default ?? pg;
101
+ pool = new PgPool({
102
+ connectionString: opts.connectionString,
103
+ max: opts.max ?? DEFAULT_POOL_MAX,
104
+ statement_timeout: opts.statementTimeoutMs ?? DEFAULT_STATEMENT_TIMEOUT_MS,
105
+ });
106
+ }
107
+ try {
108
+ await pool.query(buildDdl(tableName));
109
+ }
110
+ catch (cause) {
111
+ throw new SessionStoreError('Failed to create session table', {
112
+ backend: BACKEND_NAME,
113
+ operation: 'initialize',
114
+ cause,
115
+ context: { tableName },
116
+ });
117
+ }
118
+ const db = drizzle(pool);
119
+ logger.info('session_store_initialized', {
120
+ backend: BACKEND_NAME,
121
+ tableName,
122
+ poolMax: opts.max ?? DEFAULT_POOL_MAX,
123
+ statementTimeoutMs: opts.statementTimeoutMs ?? DEFAULT_STATEMENT_TIMEOUT_MS,
124
+ ownsPool,
125
+ });
126
+ return new DrizzleSessionStore({
127
+ db,
128
+ table,
129
+ backendName: BACKEND_NAME,
130
+ logger,
131
+ hooks: opts.hooks,
132
+ onClose: async () => {
133
+ if (ownsPool)
134
+ await pool.end();
135
+ },
136
+ });
137
+ }
138
+ //# sourceMappingURL=postgres-session-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgres-session-store.js","sourceRoot":"","sources":["../../../src/session/postgres-session-store.ts"],"names":[],"mappings":"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"}
@@ -52,8 +52,6 @@ export interface BuildSessionComponentsOptions {
52
52
  getPort?: () => number | null;
53
53
  /** Session ID for correlation in tool context (default: generated). */
54
54
  sessionId?: string;
55
- /** Tenant ID for multi-tenant isolation. */
56
- tenantId?: string;
57
55
  /** Optional field scrubber for response sanitization on ctx.request() */
58
56
  fieldScrubber?: FieldScrubber;
59
57
  }
@@ -17,6 +17,7 @@
17
17
  import { z } from 'zod';
18
18
  import { buildConnectionsMap, buildAccessConfigs } from '@amodalai/core';
19
19
  import { createProvider } from '../providers/create-provider.js';
20
+ import { createSearchProvider } from '../providers/search-provider.js';
20
21
  import { createToolRegistry } from '../tools/registry.js';
21
22
  import { registerStoreTools } from '../tools/store-tools.js';
22
23
  import { createRequestTool, REQUEST_TOOL_NAME } from '../tools/request-tool.js';
@@ -29,6 +30,8 @@ import { createToolContextFactory } from './tool-context-factory.js';
29
30
  import { LOCAL_APP_ID } from '../constants.js';
30
31
  import { StoreError } from '../errors.js';
31
32
  import { createDispatchTool, DISPATCH_TOOL_NAME } from '../tools/dispatch-tool.js';
33
+ import { createWebSearchTool, WEB_SEARCH_TOOL_NAME } from '../tools/web-search-tool.js';
34
+ import { createFetchUrlTool, FETCH_URL_TOOL_NAME } from '../tools/fetch-url-tool.js';
32
35
  // ---------------------------------------------------------------------------
33
36
  // Present tool (system tool)
34
37
  // ---------------------------------------------------------------------------
@@ -167,7 +170,7 @@ function collectEnvAllowlist(bundle) {
167
170
  * create a session.
168
171
  */
169
172
  export function buildSessionComponents(opts) {
170
- const { bundle, storeBackend, mcpManager, sessionType = 'chat', userRoles = [], pinnedModel, logger, appId = LOCAL_APP_ID, toolExecutor, adminContent, repoRoot, getPort, sessionId = 'pending', tenantId = 'local', fieldScrubber, } = opts;
173
+ const { bundle, storeBackend, mcpManager, sessionType = 'chat', userRoles = [], pinnedModel, logger, appId = LOCAL_APP_ID, toolExecutor, adminContent, repoRoot, getPort, sessionId = 'pending', fieldScrubber, } = opts;
171
174
  // -------------------------------------------------------------------------
172
175
  // 1. Create LLM provider
173
176
  // -------------------------------------------------------------------------
@@ -242,6 +245,23 @@ export function buildSessionComponents(opts) {
242
245
  // -------------------------------------------------------------------------
243
246
  registry.register(DISPATCH_TOOL_NAME, createDispatchTool());
244
247
  // -------------------------------------------------------------------------
248
+ // 10a. Build search provider + register web tools (if webTools configured)
249
+ // -------------------------------------------------------------------------
250
+ let searchProvider;
251
+ const webToolsConfig = bundle.config.webTools;
252
+ if (webToolsConfig) {
253
+ searchProvider = createSearchProvider(webToolsConfig);
254
+ registry.register(WEB_SEARCH_TOOL_NAME, createWebSearchTool());
255
+ registry.register(FETCH_URL_TOOL_NAME, createFetchUrlTool());
256
+ logger.info('web_tools_enabled', {
257
+ provider: webToolsConfig.provider,
258
+ model: searchProvider.model,
259
+ });
260
+ }
261
+ else {
262
+ logger.info('web_tools_not_configured', {});
263
+ }
264
+ // -------------------------------------------------------------------------
245
265
  // 11. Build permission checker (session-level)
246
266
  // -------------------------------------------------------------------------
247
267
  const sessionPermissionChecker = new AccessJsonPermissionChecker({
@@ -308,8 +328,8 @@ export function buildSessionComponents(opts) {
308
328
  logger,
309
329
  fieldScrubber,
310
330
  sessionId,
311
- tenantId,
312
331
  user: { roles: userRoles },
332
+ ...(searchProvider ? { searchProvider } : {}),
313
333
  };
314
334
  const toolContextFactory = createToolContextFactory(factoryOpts);
315
335
  // -------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"session-builder.js","sourceRoot":"","sources":["../../../src/session/session-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-builder.js","sourceRoot":"","sources":["../../../src/session/session-builder.ts"],"names":[],"mappings":"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"}
@@ -339,12 +339,10 @@ describe('buildSessionComponents', () => {
339
339
  it('factory produces ToolContext with correct session info', () => {
340
340
  const components = buildSessionComponents(makeOpts({
341
341
  sessionId: 'sess-123',
342
- tenantId: 'tenant-456',
343
342
  userRoles: ['analyst'],
344
343
  }));
345
344
  const ctx = components.toolContextFactory('call-1');
346
345
  expect(ctx.sessionId).toBe('sess-123');
347
- expect(ctx.tenantId).toBe('tenant-456');
348
346
  expect(ctx.user.roles).toEqual(['analyst']);
349
347
  });
350
348
  });
@@ -1 +1 @@
1
- {"version":3,"file":"session-builder.test.js","sourceRoot":"","sources":["../../../src/session/session-builder.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-builder.test.js","sourceRoot":"","sources":["../../../src/session/session-builder.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Amodal Labs, Inc.
4
+ * SPDX-License-Identifier: MIT
5
+ */
6
+ /**
7
+ * Picks the right session-store factory given repo config.
8
+ *
9
+ * Extracted from `local-server.ts` so the selection logic is
10
+ * unit-testable without spinning up the full server.
11
+ */
12
+ import type { Logger } from '../logger.js';
13
+ import type { SessionStore } from './store.js';
14
+ export interface SessionStoreSelectorOptions {
15
+ /** From amodal.json `stores.backend`. Defaults to `pglite` if unset. */
16
+ backend?: 'pglite' | 'postgres';
17
+ /**
18
+ * Already-resolved Postgres connection string. Callers must resolve
19
+ * any `env:VAR` reference upstream (see `resolveEnvRef` in
20
+ * `../env-ref.ts`) — this function does not read `process.env`.
21
+ */
22
+ postgresUrl?: string;
23
+ /** Logger for init and fallback events. */
24
+ logger: Logger;
25
+ /** Optional PGLite data dir (defaults to in-memory). */
26
+ dataDir?: string;
27
+ }
28
+ /**
29
+ * Select, construct, and initialize a `SessionStore`.
30
+ *
31
+ * Decision:
32
+ * 1. If `backend === 'postgres'` and `postgresUrl` is set →
33
+ * `createPostgresSessionStore`.
34
+ * 2. If `backend === 'postgres'` but the URL is missing, **or the
35
+ * Postgres connection fails to initialize** → log the failure at
36
+ * `error` level and fall back to `createPGLiteSessionStore`. The
37
+ * session store must always be available; a missing URL or dead
38
+ * DB should not crash the runtime on boot.
39
+ * 3. If the Postgres backend rejects config at construct time
40
+ * (invalid `tableName`, missing options, etc.) → **rethrow**.
41
+ * Config typos in `amodal.json` are programmer errors that must
42
+ * fail fast — if they fell through to PGLite silently, every
43
+ * session would evaporate on restart with no visible signal.
44
+ * 4. Otherwise → PGLite (default).
45
+ *
46
+ * **Fallback scope:** only connection-class failures (network, auth,
47
+ * DDL) trigger the fallback. Construct-time validation is fatal.
48
+ */
49
+ export declare function selectSessionStore(opts: SessionStoreSelectorOptions): Promise<SessionStore>;
@@ -0,0 +1,60 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Amodal Labs, Inc.
4
+ * SPDX-License-Identifier: MIT
5
+ */
6
+ import { SessionStoreError } from '../errors.js';
7
+ import { createPGLiteSessionStore } from './pglite-session-store.js';
8
+ /**
9
+ * Select, construct, and initialize a `SessionStore`.
10
+ *
11
+ * Decision:
12
+ * 1. If `backend === 'postgres'` and `postgresUrl` is set →
13
+ * `createPostgresSessionStore`.
14
+ * 2. If `backend === 'postgres'` but the URL is missing, **or the
15
+ * Postgres connection fails to initialize** → log the failure at
16
+ * `error` level and fall back to `createPGLiteSessionStore`. The
17
+ * session store must always be available; a missing URL or dead
18
+ * DB should not crash the runtime on boot.
19
+ * 3. If the Postgres backend rejects config at construct time
20
+ * (invalid `tableName`, missing options, etc.) → **rethrow**.
21
+ * Config typos in `amodal.json` are programmer errors that must
22
+ * fail fast — if they fell through to PGLite silently, every
23
+ * session would evaporate on restart with no visible signal.
24
+ * 4. Otherwise → PGLite (default).
25
+ *
26
+ * **Fallback scope:** only connection-class failures (network, auth,
27
+ * DDL) trigger the fallback. Construct-time validation is fatal.
28
+ */
29
+ export async function selectSessionStore(opts) {
30
+ const { backend = 'pglite', postgresUrl, logger, dataDir } = opts;
31
+ if (backend === 'postgres') {
32
+ if (!postgresUrl) {
33
+ logger.warn('session_store_postgres_url_missing', { fallback: 'pglite' });
34
+ }
35
+ else {
36
+ try {
37
+ // Dynamic import so `pg` stays optional for PGLite-only users.
38
+ const mod = await import('./postgres-session-store.js');
39
+ return await mod.createPostgresSessionStore({
40
+ connectionString: postgresUrl,
41
+ logger,
42
+ });
43
+ }
44
+ catch (err) {
45
+ // Construct-time validation errors are programmer errors —
46
+ // fail fast so operators notice the amodal.json typo.
47
+ if (err instanceof SessionStoreError && err.operation === 'construct') {
48
+ throw err;
49
+ }
50
+ // Connection-class failure — log and fall back to PGLite.
51
+ logger.error('session_store_postgres_init_failed', {
52
+ error: err instanceof Error ? err.message : String(err),
53
+ fallback: 'pglite',
54
+ });
55
+ }
56
+ }
57
+ }
58
+ return createPGLiteSessionStore({ logger, dataDir });
59
+ }
60
+ //# sourceMappingURL=session-store-selector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-store-selector.js","sourceRoot":"","sources":["../../../src/session/session-store-selector.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAAC,iBAAiB,EAAC,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAC,wBAAwB,EAAC,MAAM,2BAA2B,CAAC;AAiBnE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAiC;IAEjC,MAAM,EAAC,OAAO,GAAG,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC;IAEhE,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE,EAAC,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;QAC1E,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,+DAA+D;gBAC/D,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAC;gBACxD,OAAO,MAAM,GAAG,CAAC,0BAA0B,CAAC;oBAC1C,gBAAgB,EAAE,WAAW;oBAC7B,MAAM;iBACP,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,2DAA2D;gBAC3D,sDAAsD;gBACtD,IAAI,GAAG,YAAY,iBAAiB,IAAI,GAAG,CAAC,SAAS,KAAK,WAAW,EAAE,CAAC;oBACtE,MAAM,GAAG,CAAC;gBACZ,CAAC;gBACD,0DAA0D;gBAC1D,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE;oBACjD,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;oBACvD,QAAQ,EAAE,QAAQ;iBACnB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,wBAAwB,CAAC,EAAC,MAAM,EAAE,OAAO,EAAC,CAAC,CAAC;AACrD,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Amodal Labs, Inc.
4
+ * SPDX-License-Identifier: MIT
5
+ */
6
+ export {};