@rudderjs/ai 1.4.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (179) hide show
  1. package/README.md +484 -7
  2. package/boost/guidelines.md +62 -2
  3. package/boost/skills/ai-tools/SKILL.md +14 -5
  4. package/dist/agent.d.ts +66 -15
  5. package/dist/agent.d.ts.map +1 -1
  6. package/dist/agent.js +529 -58
  7. package/dist/agent.js.map +1 -1
  8. package/dist/budget/pricing.d.ts +124 -0
  9. package/dist/budget/pricing.d.ts.map +1 -0
  10. package/dist/budget/pricing.js +175 -0
  11. package/dist/budget/pricing.js.map +1 -0
  12. package/dist/budget/storage.d.ts +104 -0
  13. package/dist/budget/storage.d.ts.map +1 -0
  14. package/dist/budget/storage.js +0 -0
  15. package/dist/budget/storage.js.map +1 -0
  16. package/dist/budget/with-budget.d.ts +119 -0
  17. package/dist/budget/with-budget.d.ts.map +1 -0
  18. package/dist/budget/with-budget.js +175 -0
  19. package/dist/budget/with-budget.js.map +1 -0
  20. package/dist/budget-orm/index.d.ts +96 -0
  21. package/dist/budget-orm/index.d.ts.map +1 -0
  22. package/dist/budget-orm/index.js +177 -0
  23. package/dist/budget-orm/index.js.map +1 -0
  24. package/dist/commands/ai-eval.d.ts +93 -0
  25. package/dist/commands/ai-eval.d.ts.map +1 -0
  26. package/dist/commands/ai-eval.js +378 -0
  27. package/dist/commands/ai-eval.js.map +1 -0
  28. package/dist/computer-use/actions.d.ts +214 -0
  29. package/dist/computer-use/actions.d.ts.map +1 -0
  30. package/dist/computer-use/actions.js +48 -0
  31. package/dist/computer-use/actions.js.map +1 -0
  32. package/dist/computer-use/errors.d.ts +57 -0
  33. package/dist/computer-use/errors.d.ts.map +1 -0
  34. package/dist/computer-use/errors.js +76 -0
  35. package/dist/computer-use/errors.js.map +1 -0
  36. package/dist/computer-use/index.d.ts +53 -0
  37. package/dist/computer-use/index.d.ts.map +1 -0
  38. package/dist/computer-use/index.js +51 -0
  39. package/dist/computer-use/index.js.map +1 -0
  40. package/dist/computer-use/playwright.d.ts +76 -0
  41. package/dist/computer-use/playwright.d.ts.map +1 -0
  42. package/dist/computer-use/playwright.js +270 -0
  43. package/dist/computer-use/playwright.js.map +1 -0
  44. package/dist/computer-use/tool.d.ts +154 -0
  45. package/dist/computer-use/tool.d.ts.map +1 -0
  46. package/dist/computer-use/tool.js +210 -0
  47. package/dist/computer-use/tool.js.map +1 -0
  48. package/dist/eval/fixtures.d.ts +65 -0
  49. package/dist/eval/fixtures.d.ts.map +1 -0
  50. package/dist/eval/fixtures.js +110 -0
  51. package/dist/eval/fixtures.js.map +1 -0
  52. package/dist/eval/html-reporter.d.ts +25 -0
  53. package/dist/eval/html-reporter.d.ts.map +1 -0
  54. package/dist/eval/html-reporter.js +209 -0
  55. package/dist/eval/html-reporter.js.map +1 -0
  56. package/dist/eval/index.d.ts +271 -0
  57. package/dist/eval/index.d.ts.map +1 -0
  58. package/dist/eval/index.js +510 -0
  59. package/dist/eval/index.js.map +1 -0
  60. package/dist/eval/json-reporter.d.ts +43 -0
  61. package/dist/eval/json-reporter.d.ts.map +1 -0
  62. package/dist/eval/json-reporter.js +40 -0
  63. package/dist/eval/json-reporter.js.map +1 -0
  64. package/dist/fake.d.ts +36 -1
  65. package/dist/fake.d.ts.map +1 -1
  66. package/dist/fake.js +49 -2
  67. package/dist/fake.js.map +1 -1
  68. package/dist/file-search.d.ts +168 -0
  69. package/dist/file-search.d.ts.map +1 -0
  70. package/dist/file-search.js +158 -0
  71. package/dist/file-search.js.map +1 -0
  72. package/dist/handoff.d.ts +95 -0
  73. package/dist/handoff.d.ts.map +1 -0
  74. package/dist/handoff.js +78 -0
  75. package/dist/handoff.js.map +1 -0
  76. package/dist/index.d.ts +29 -5
  77. package/dist/index.d.ts.map +1 -1
  78. package/dist/index.js +22 -2
  79. package/dist/index.js.map +1 -1
  80. package/dist/mcp/client-tools.d.ts +39 -0
  81. package/dist/mcp/client-tools.d.ts.map +1 -0
  82. package/dist/mcp/client-tools.js +147 -0
  83. package/dist/mcp/client-tools.js.map +1 -0
  84. package/dist/mcp/index.d.ts +16 -0
  85. package/dist/mcp/index.d.ts.map +1 -0
  86. package/dist/mcp/index.js +15 -0
  87. package/dist/mcp/index.js.map +1 -0
  88. package/dist/mcp/server-from-agent.d.ts +24 -0
  89. package/dist/mcp/server-from-agent.d.ts.map +1 -0
  90. package/dist/mcp/server-from-agent.js +113 -0
  91. package/dist/mcp/server-from-agent.js.map +1 -0
  92. package/dist/mcp/types.d.ts +64 -0
  93. package/dist/mcp/types.d.ts.map +1 -0
  94. package/dist/mcp/types.js +6 -0
  95. package/dist/mcp/types.js.map +1 -0
  96. package/dist/memory-embedding/index.d.ts +121 -0
  97. package/dist/memory-embedding/index.d.ts.map +1 -0
  98. package/dist/memory-embedding/index.js +229 -0
  99. package/dist/memory-embedding/index.js.map +1 -0
  100. package/dist/memory-extract.d.ts +60 -0
  101. package/dist/memory-extract.d.ts.map +1 -0
  102. package/dist/memory-extract.js +163 -0
  103. package/dist/memory-extract.js.map +1 -0
  104. package/dist/memory-inject.d.ts +39 -0
  105. package/dist/memory-inject.d.ts.map +1 -0
  106. package/dist/memory-inject.js +135 -0
  107. package/dist/memory-inject.js.map +1 -0
  108. package/dist/memory-orm/index.d.ts +118 -0
  109. package/dist/memory-orm/index.d.ts.map +1 -0
  110. package/dist/memory-orm/index.js +187 -0
  111. package/dist/memory-orm/index.js.map +1 -0
  112. package/dist/memory.d.ts +55 -0
  113. package/dist/memory.d.ts.map +1 -0
  114. package/dist/memory.js +132 -0
  115. package/dist/memory.js.map +1 -0
  116. package/dist/observers.d.ts +22 -0
  117. package/dist/observers.d.ts.map +1 -1
  118. package/dist/observers.js.map +1 -1
  119. package/dist/provider-tools.d.ts +15 -1
  120. package/dist/provider-tools.d.ts.map +1 -1
  121. package/dist/provider-tools.js +21 -1
  122. package/dist/provider-tools.js.map +1 -1
  123. package/dist/providers/anthropic.d.ts +9 -1
  124. package/dist/providers/anthropic.d.ts.map +1 -1
  125. package/dist/providers/anthropic.js +66 -11
  126. package/dist/providers/anthropic.js.map +1 -1
  127. package/dist/providers/bedrock.d.ts +60 -0
  128. package/dist/providers/bedrock.d.ts.map +1 -0
  129. package/dist/providers/bedrock.js +167 -0
  130. package/dist/providers/bedrock.js.map +1 -0
  131. package/dist/providers/elevenlabs.d.ts +98 -0
  132. package/dist/providers/elevenlabs.d.ts.map +1 -0
  133. package/dist/providers/elevenlabs.js +229 -0
  134. package/dist/providers/elevenlabs.js.map +1 -0
  135. package/dist/providers/google.d.ts +83 -1
  136. package/dist/providers/google.d.ts.map +1 -1
  137. package/dist/providers/google.js +491 -8
  138. package/dist/providers/google.js.map +1 -1
  139. package/dist/providers/openai.d.ts +8 -1
  140. package/dist/providers/openai.d.ts.map +1 -1
  141. package/dist/providers/openai.js +215 -5
  142. package/dist/providers/openai.js.map +1 -1
  143. package/dist/providers/openrouter.d.ts +43 -0
  144. package/dist/providers/openrouter.d.ts.map +1 -0
  145. package/dist/providers/openrouter.js +21 -0
  146. package/dist/providers/openrouter.js.map +1 -0
  147. package/dist/providers/voyage.d.ts +91 -0
  148. package/dist/providers/voyage.d.ts.map +1 -0
  149. package/dist/providers/voyage.js +166 -0
  150. package/dist/providers/voyage.js.map +1 -0
  151. package/dist/queue-job.d.ts +69 -4
  152. package/dist/queue-job.d.ts.map +1 -1
  153. package/dist/queue-job.js +114 -11
  154. package/dist/queue-job.js.map +1 -1
  155. package/dist/registry.d.ts +3 -1
  156. package/dist/registry.d.ts.map +1 -1
  157. package/dist/registry.js +10 -0
  158. package/dist/registry.js.map +1 -1
  159. package/dist/server/provider.d.ts.map +1 -1
  160. package/dist/server/provider.js +38 -1
  161. package/dist/server/provider.js.map +1 -1
  162. package/dist/similarity-search.d.ts +163 -0
  163. package/dist/similarity-search.d.ts.map +1 -0
  164. package/dist/similarity-search.js +147 -0
  165. package/dist/similarity-search.js.map +1 -0
  166. package/dist/sub-agent-run-store.d.ts +40 -3
  167. package/dist/sub-agent-run-store.d.ts.map +1 -1
  168. package/dist/sub-agent-run-store.js.map +1 -1
  169. package/dist/tool.d.ts +59 -0
  170. package/dist/tool.d.ts.map +1 -1
  171. package/dist/tool.js +45 -4
  172. package/dist/tool.js.map +1 -1
  173. package/dist/types.d.ts +285 -1
  174. package/dist/types.d.ts.map +1 -1
  175. package/dist/vector-stores/index.d.ts +96 -0
  176. package/dist/vector-stores/index.d.ts.map +1 -0
  177. package/dist/vector-stores/index.js +153 -0
  178. package/dist/vector-stores/index.js.map +1 -0
  179. package/package.json +43 -4
package/dist/memory.js ADDED
@@ -0,0 +1,132 @@
1
+ function generateId() {
2
+ if (typeof globalThis.crypto?.randomUUID === 'function')
3
+ return globalThis.crypto.randomUUID();
4
+ return `${Date.now().toString(36)}_${Math.random().toString(36).slice(2, 10)}`;
5
+ }
6
+ /**
7
+ * In-process, Map-backed {@link UserMemory}. Ships in the runtime-agnostic
8
+ * main entry — same pattern as {@link MemoryConversationStore}. Suitable
9
+ * for tests and dev; production apps configure an ORM- or
10
+ * embedding-backed store via `AiConfig.memory`.
11
+ *
12
+ * `recall()` uses case-insensitive **token-overlap** matching against
13
+ * `fact + tags`: the query is tokenized on non-alphanumeric boundaries
14
+ * and any fact sharing at least one token (≥3 chars) is returned. This
15
+ * lets natural-language queries like "what is my project?" pull facts
16
+ * containing "project" without forcing the caller to extract keywords.
17
+ * Matches return in insertion order with no scoring (binary yes/no).
18
+ * Tag filters apply before the token check — they intersect with the
19
+ * entry's own tags.
20
+ */
21
+ export class MemoryUserMemory {
22
+ entries = new Map();
23
+ async remember(userId, fact, opts) {
24
+ const entry = {
25
+ id: generateId(),
26
+ userId,
27
+ fact,
28
+ createdAt: new Date(),
29
+ ...(opts?.tags !== undefined ? { tags: opts.tags } : {}),
30
+ ...(opts?.score !== undefined ? { score: opts.score } : {}),
31
+ };
32
+ this.entries.set(entry.id, entry);
33
+ return entry;
34
+ }
35
+ async recall(userId, query, opts) {
36
+ const queryTokens = tokenize(query);
37
+ const wanted = opts?.tags;
38
+ const matches = this.allForUser(userId)
39
+ .filter(e => matchesTags(e, wanted))
40
+ .filter(e => {
41
+ if (queryTokens.size === 0)
42
+ return true;
43
+ const factTokens = tokenize(`${e.fact} ${(e.tags ?? []).join(' ')}`);
44
+ for (const t of factTokens)
45
+ if (queryTokens.has(t))
46
+ return true;
47
+ return false;
48
+ });
49
+ return capLimit(matches, opts?.limit);
50
+ }
51
+ async forget(userId, factId) {
52
+ const entry = this.entries.get(factId);
53
+ if (entry && entry.userId === userId)
54
+ this.entries.delete(factId);
55
+ }
56
+ async list(userId, opts) {
57
+ const wanted = opts?.tags;
58
+ const matches = this.allForUser(userId).filter(e => matchesTags(e, wanted));
59
+ return capLimit(matches, opts?.limit);
60
+ }
61
+ async forgetAll(userId) {
62
+ for (const [id, entry] of this.entries) {
63
+ if (entry.userId === userId)
64
+ this.entries.delete(id);
65
+ }
66
+ }
67
+ allForUser(userId) {
68
+ const out = [];
69
+ for (const entry of this.entries.values()) {
70
+ if (entry.userId === userId)
71
+ out.push(entry);
72
+ }
73
+ return out;
74
+ }
75
+ }
76
+ /**
77
+ * Lowercase + split on non-alphanumeric, drop tokens shorter than 3
78
+ * characters. Returns a Set so callers can do O(1) lookups when
79
+ * intersecting query tokens against fact tokens.
80
+ *
81
+ * Stopword filtering deliberately omitted — the 3-char floor already
82
+ * removes "is", "a", "to", "the", "we", etc. and a real stopword list
83
+ * is locale-dependent. The token-overlap recall is meant as a
84
+ * "smarter than substring" baseline, not a search engine.
85
+ */
86
+ function tokenize(s) {
87
+ const out = new Set();
88
+ for (const tok of s.toLowerCase().split(/[^a-z0-9]+/)) {
89
+ if (tok.length >= 3)
90
+ out.add(tok);
91
+ }
92
+ return out;
93
+ }
94
+ function matchesTags(entry, wanted) {
95
+ if (!wanted || wanted.length === 0)
96
+ return true;
97
+ if (!entry.tags || entry.tags.length === 0)
98
+ return false;
99
+ return wanted.every(t => entry.tags.includes(t));
100
+ }
101
+ function capLimit(items, limit) {
102
+ return limit !== undefined && limit > 0 ? items.slice(0, limit) : items;
103
+ }
104
+ /**
105
+ * Resolves the effective {@link RemembersSpec} for a single
106
+ * `prompt()` / `stream()` call. Returns `null` when memory should be
107
+ * skipped for this call.
108
+ *
109
+ * Precedence (high → low):
110
+ * 1. Per-call `options.memory` — `false` opts out, a spec replaces the
111
+ * agent's declaration.
112
+ * 2. Agent's `remembers()` — supports sync OR async returns.
113
+ *
114
+ * Mirrors {@link resolveAutoPersistSpec} so Phase 2's auto-inject
115
+ * middleware can drop in alongside the conversation-persistence flow.
116
+ */
117
+ export async function resolveRemembersSpec(agentDecl, perCall) {
118
+ if (perCall === false)
119
+ return null;
120
+ if (perCall && typeof perCall === 'object') {
121
+ if (!perCall.user)
122
+ return null;
123
+ return perCall;
124
+ }
125
+ const declared = await agentDecl();
126
+ if (declared === false || !declared)
127
+ return null;
128
+ if (!declared.user)
129
+ return null;
130
+ return declared;
131
+ }
132
+ //# sourceMappingURL=memory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"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"}
@@ -89,6 +89,28 @@ export type AiEvent = {
89
89
  duration: number;
90
90
  streaming: boolean;
91
91
  conversationId: string | null;
92
+ } | {
93
+ /**
94
+ * Emitted by the eval framework runner (`@rudderjs/ai/eval`) after
95
+ * each case completes — passing, failing, or skipped. Telescope's
96
+ * AI collector aggregates pass-rate over time per `(suite, case)`
97
+ * pair (#A5 Phase 4).
98
+ *
99
+ * Skipped cases still emit so the dashboard shows coverage gaps.
100
+ * `score` is present for graded metrics (semanticMatch, llmJudge);
101
+ * absent for binary metrics (exactMatch, regex). `reason` is the
102
+ * failure / skip explanation when present.
103
+ */
104
+ kind: 'agent.eval.completed';
105
+ suite: string;
106
+ case: string;
107
+ status: 'passed' | 'failed' | 'skipped';
108
+ pass: boolean;
109
+ score?: number;
110
+ reason?: string;
111
+ tokens: number;
112
+ cost: number;
113
+ duration: number;
92
114
  };
93
115
  export type AiObserver = (event: AiEvent) => void;
94
116
  export declare class AiObserverRegistry {
@@ -1 +1 @@
1
- {"version":3,"file":"observers.d.ts","sourceRoot":"","sources":["../src/observers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observers.d.ts","sourceRoot":"","sources":["../src/observers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"observers.js","sourceRoot":"","sources":["../src/observers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AA8EH,MAAM,OAAO,kBAAkB;IACrB,SAAS,GAAiB,EAAE,CAAA;IAEpC,kDAAkD;IAClD,SAAS,CAAC,EAAc;QACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACvB,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA,CAAC,CAAC,CAAA;IACxE,CAAC;IAED;;;;OAIG;IACH,IAAI,CAAC,KAAc;QACjB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC;gBAAC,CAAC,CAAC,KAAK,CAAC,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,2CAA2C,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,KAAK,KAAW,IAAI,CAAC,SAAS,GAAG,EAAE,CAAA,CAAC,CAAC;CACtC;AAED,oEAAoE;AACpE,MAAM,EAAE,GAAG,UAAqC,CAAA;AAChD,IAAI,CAAC,EAAE,CAAC,2BAA2B,CAAC,EAAE,CAAC;IACrC,EAAE,CAAC,2BAA2B,CAAC,GAAG,IAAI,kBAAkB,EAAE,CAAA;AAC5D,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,CAAC,2BAA2B,CAAuB,CAAA"}
1
+ {"version":3,"file":"observers.js","sourceRoot":"","sources":["../src/observers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAqGH,MAAM,OAAO,kBAAkB;IACrB,SAAS,GAAiB,EAAE,CAAA;IAEpC,kDAAkD;IAClD,SAAS,CAAC,EAAc;QACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACvB,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA,CAAC,CAAC,CAAA;IACxE,CAAC;IAED;;;;OAIG;IACH,IAAI,CAAC,KAAc;QACjB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC;gBAAC,CAAC,CAAC,KAAK,CAAC,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,2CAA2C,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,KAAK,KAAW,IAAI,CAAC,SAAS,GAAG,EAAE,CAAA,CAAC,CAAC;CACtC;AAED,oEAAoE;AACpE,MAAM,EAAE,GAAG,UAAqC,CAAA;AAChD,IAAI,CAAC,EAAE,CAAC,2BAA2B,CAAC,EAAE,CAAC;IACrC,EAAE,CAAC,2BAA2B,CAAC,GAAG,IAAI,kBAAkB,EAAE,CAAA;AAC5D,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,CAAC,2BAA2B,CAAuB,CAAA"}
@@ -1,6 +1,20 @@
1
1
  /**
2
2
  * Web search tool — uses provider-native web search when available.
3
- * Falls back to a server-side DuckDuckGo fetch for providers without native support.
3
+ *
4
+ * Native emission via `providerHint: { type: 'web-search', ... }`:
5
+ * - Anthropic adapter emits `{ type: 'web_search_20250305', name: 'web_search',
6
+ * max_uses?, allowed_domains? }`.
7
+ * - Google adapter emits a separate top-level tools entry `{ google_search: {} }`.
8
+ * - OpenAI's chat-completions surface has no equivalent (web_search is
9
+ * Responses-API-only) — falls through to the DuckDuckGo `server` execute
10
+ * below. Same fallback applies to any provider without a native hint match.
11
+ *
12
+ * Mirrors the Phase 2 file-search providerHint cascade — same plumbing,
13
+ * different tool. `domains([...])` lowers to `allowed_domains` on Anthropic;
14
+ * Gemini's `google_search` block doesn't accept domain restriction so the
15
+ * `domains` opt is ignored there (the model still respects domain hints in
16
+ * the prompt). `maxResults(n)` lowers to Anthropic's `max_uses`; ignored on
17
+ * Gemini for the same reason.
4
18
  */
5
19
  export declare class WebSearch {
6
20
  private _domains;
@@ -1 +1 @@
1
- {"version":3,"file":"provider-tools.d.ts","sourceRoot":"","sources":["../src/provider-tools.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,WAAW,CAAoB;IAEvC,OAAO;IAEP,MAAM,CAAC,IAAI,IAAI,SAAS;IAIxB,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAKhC,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAK3B,+EAA+E;IAC/E,MAAM;;;;;;;;;CA+BP;AAED;;GAEG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,UAAU,CAAoB;IAEtC,OAAO;IAEP,MAAM,CAAC,IAAI,IAAI,QAAQ;IAIvB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAK1B,MAAM;;;;;;;;;;;;;CAkCP;AAED;;;;GAIG;AACH,qBAAa,aAAa;IACxB,OAAO;IAEP,MAAM,CAAC,IAAI,IAAI,aAAa;IAI5B,MAAM;;;;;;CAmBP"}
1
+ {"version":3,"file":"provider-tools.d.ts","sourceRoot":"","sources":["../src/provider-tools.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,WAAW,CAAoB;IAEvC,OAAO;IAEP,MAAM,CAAC,IAAI,IAAI,SAAS;IAIxB,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAKhC,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAK3B,+EAA+E;IAC/E,MAAM;;;;;;;;;CAoCP;AAED;;GAEG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,UAAU,CAAoB;IAEtC,OAAO;IAEP,MAAM,CAAC,IAAI,IAAI,QAAQ;IAIvB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAK1B,MAAM;;;;;;;;;;;;;CAkCP;AAED;;;;GAIG;AACH,qBAAa,aAAa;IACxB,OAAO;IAEP,MAAM,CAAC,IAAI,IAAI,aAAa;IAI5B,MAAM;;;;;;CAmBP"}
@@ -2,7 +2,21 @@ import { z } from 'zod';
2
2
  import { toolDefinition } from './tool.js';
3
3
  /**
4
4
  * Web search tool — uses provider-native web search when available.
5
- * Falls back to a server-side DuckDuckGo fetch for providers without native support.
5
+ *
6
+ * Native emission via `providerHint: { type: 'web-search', ... }`:
7
+ * - Anthropic adapter emits `{ type: 'web_search_20250305', name: 'web_search',
8
+ * max_uses?, allowed_domains? }`.
9
+ * - Google adapter emits a separate top-level tools entry `{ google_search: {} }`.
10
+ * - OpenAI's chat-completions surface has no equivalent (web_search is
11
+ * Responses-API-only) — falls through to the DuckDuckGo `server` execute
12
+ * below. Same fallback applies to any provider without a native hint match.
13
+ *
14
+ * Mirrors the Phase 2 file-search providerHint cascade — same plumbing,
15
+ * different tool. `domains([...])` lowers to `allowed_domains` on Anthropic;
16
+ * Gemini's `google_search` block doesn't accept domain restriction so the
17
+ * `domains` opt is ignored there (the model still respects domain hints in
18
+ * the prompt). `maxResults(n)` lowers to Anthropic's `max_uses`; ignored on
19
+ * Gemini for the same reason.
6
20
  */
7
21
  export class WebSearch {
8
22
  _domains;
@@ -23,12 +37,18 @@ export class WebSearch {
23
37
  toTool() {
24
38
  const domains = this._domains;
25
39
  const maxResults = this._maxResults;
40
+ const providerHint = { type: 'web-search' };
41
+ if (domains)
42
+ providerHint['allowed_domains'] = domains;
43
+ if (maxResults !== undefined)
44
+ providerHint['max_uses'] = maxResults;
26
45
  return toolDefinition({
27
46
  name: 'web_search',
28
47
  description: 'Search the web for current information.',
29
48
  inputSchema: z.object({
30
49
  query: z.string().describe('The search query'),
31
50
  }),
51
+ providerHint,
32
52
  meta: {
33
53
  providerNative: true,
34
54
  type: 'web_search',
@@ -1 +1 @@
1
- {"version":3,"file":"provider-tools.js","sourceRoot":"","sources":["../src/provider-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider-tools.js","sourceRoot":"","sources":["../src/provider-tools.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ProviderFactory, ProviderAdapter, FileAdapter } from '../types.js';
1
+ import type { ProviderFactory, ProviderAdapter, FileAdapter, ProviderResponse, ToolDefinitionSchema, AiMessage, ToolChoice } from '../types.js';
2
2
  export interface AnthropicConfig {
3
3
  apiKey: string;
4
4
  baseUrl?: string | undefined;
@@ -10,7 +10,15 @@ export declare class AnthropicProvider implements ProviderFactory {
10
10
  create(model: string): ProviderAdapter;
11
11
  createFiles(): FileAdapter;
12
12
  }
13
+ export declare function splitSystemMessages(messages: AiMessage[]): {
14
+ system: string | undefined;
15
+ messages: AiMessage[];
16
+ };
17
+ export declare function toAnthropicMessages(messages: AiMessage[]): unknown[];
18
+ export declare function toAnthropicTools(tools: ToolDefinitionSchema[]): unknown[];
13
19
  export declare function applyCacheToSystem(system: string | undefined, enabled: boolean): unknown;
14
20
  export declare function applyCacheToTools(tools: unknown[], enabled: boolean): unknown[];
15
21
  export declare function applyCacheToMessages(messages: unknown[], cacheCount: number | undefined): unknown[];
22
+ export declare function toAnthropicToolChoice(choice: ToolChoice): unknown;
23
+ export declare function fromAnthropicResponse(response: any): ProviderResponse;
16
24
  //# sourceMappingURL=anthropic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,WAAW,EAYZ,MAAM,aAAa,CAAA;AAEpB,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC7B;AAED,qBAAa,iBAAkB,YAAW,eAAe;IACvD,QAAQ,CAAC,IAAI,eAAc;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;gBAE5B,MAAM,EAAE,eAAe;IAInC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe;IAItC,WAAW,IAAI,WAAW;CAG3B;AA+LD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAKxF;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,EAAE,CAK/E;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,EAAE,CAqBnG"}
1
+ {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,WAAW,EAMX,gBAAgB,EAEhB,oBAAoB,EACpB,SAAS,EAET,UAAU,EACX,MAAM,aAAa,CAAA;AAEpB,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC7B;AAED,qBAAa,iBAAkB,YAAW,eAAe;IACvD,QAAQ,CAAC,IAAI,eAAc;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;gBAE5B,MAAM,EAAE,eAAe;IAInC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe;IAItC,WAAW,IAAI,WAAW;CAG3B;AA4GD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG;IAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,QAAQ,EAAE,SAAS,EAAE,CAAA;CAAE,CAOhH;AAqBD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,EAAE,CA+CpE;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,oBAAoB,EAAE,GAAG,OAAO,EAAE,CAyCzE;AAcD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAKxF;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,EAAE,CAK/E;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,EAAE,CAqBnG;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAMjE;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,GAAG,GAAG,gBAAgB,CAwBrE"}
@@ -122,7 +122,7 @@ class AnthropicAdapter {
122
122
  }
123
123
  }
124
124
  // ─── Conversion Helpers ──────────────────────────────────
125
- function splitSystemMessages(messages) {
125
+ export function splitSystemMessages(messages) {
126
126
  const systemMsgs = messages.filter(m => m.role === 'system');
127
127
  const rest = messages.filter(m => m.role !== 'system');
128
128
  const system = systemMsgs.length > 0
@@ -151,7 +151,7 @@ function contentToAnthropicParts(content) {
151
151
  return { type: 'text', text: Buffer.from(p.data, 'base64').toString('utf-8') };
152
152
  });
153
153
  }
154
- function toAnthropicMessages(messages) {
154
+ export function toAnthropicMessages(messages) {
155
155
  return messages.map(m => {
156
156
  if (m.role === 'assistant' && m.toolCalls?.length) {
157
157
  const text = contentToString(m.content);
@@ -169,12 +169,28 @@ function toAnthropicMessages(messages) {
169
169
  };
170
170
  }
171
171
  if (m.role === 'tool') {
172
+ // Tool results come in three shapes today:
173
+ // - string — standard scalar return (most tools)
174
+ // - ContentPart[] — rich content (e.g. computer-use's screenshot
175
+ // returns an image block; the adapter emits it
176
+ // as Anthropic's `content: [{ type: 'image', source: {...} }]`)
177
+ // - any other value — JSON-stringify fallback (legacy)
178
+ let content;
179
+ if (typeof m.content === 'string') {
180
+ content = m.content;
181
+ }
182
+ else if (Array.isArray(m.content)) {
183
+ content = contentToAnthropicParts(m.content);
184
+ }
185
+ else {
186
+ content = JSON.stringify(m.content);
187
+ }
172
188
  return {
173
189
  role: 'user',
174
190
  content: [{
175
191
  type: 'tool_result',
176
192
  tool_use_id: m.toolCallId,
177
- content: typeof m.content === 'string' ? m.content : JSON.stringify(m.content),
193
+ content,
178
194
  }],
179
195
  };
180
196
  }
@@ -185,12 +201,51 @@ function toAnthropicMessages(messages) {
185
201
  return { role: m.role, content: m.content };
186
202
  });
187
203
  }
188
- function toAnthropicTools(tools) {
189
- return tools.map(t => ({
190
- name: t.name,
191
- description: t.description,
192
- input_schema: t.parameters,
193
- }));
204
+ export function toAnthropicTools(tools) {
205
+ return tools.map(t => {
206
+ // Provider-native tool blocks: when a tool carries a recognized
207
+ // `providerHint`, emit Anthropic's native shape instead of the
208
+ // standard function-call schema. Currently:
209
+ // - 'computer-use' → computer_20250124 (or whatever `tool` field
210
+ // declares; defaults to computer_20250124).
211
+ // The model is fine-tuned on the native block;
212
+ // quality is dramatically better than wrapping
213
+ // it as a function-call.
214
+ if (t.providerHint?.type === 'computer-use') {
215
+ const variant = t.providerHint['tool'] ?? 'computer_20250124';
216
+ const width = t.providerHint['display_width_px'] ?? 1280;
217
+ const height = t.providerHint['display_height_px'] ?? 800;
218
+ return {
219
+ type: variant,
220
+ name: t.name,
221
+ display_width_px: width,
222
+ display_height_px: height,
223
+ };
224
+ }
225
+ // - 'web-search' → web_search_20250305 (or whatever `tool` field
226
+ // declares; defaults to web_search_20250305).
227
+ // Server-side; the model emits a `tool_use` block,
228
+ // Anthropic runs the search, results stream back as
229
+ // a `tool_result` block — no agent-loop round-trip.
230
+ if (t.providerHint?.type === 'web-search') {
231
+ const variant = t.providerHint['tool'] ?? 'web_search_20250305';
232
+ const block = { type: variant, name: t.name };
233
+ if (t.providerHint['max_uses'] !== undefined)
234
+ block['max_uses'] = t.providerHint['max_uses'];
235
+ if (t.providerHint['allowed_domains'] !== undefined)
236
+ block['allowed_domains'] = t.providerHint['allowed_domains'];
237
+ if (t.providerHint['blocked_domains'] !== undefined)
238
+ block['blocked_domains'] = t.providerHint['blocked_domains'];
239
+ if (t.providerHint['user_location'] !== undefined)
240
+ block['user_location'] = t.providerHint['user_location'];
241
+ return block;
242
+ }
243
+ return {
244
+ name: t.name,
245
+ description: t.description,
246
+ input_schema: t.parameters,
247
+ };
248
+ });
194
249
  }
195
250
  // ─── Prompt-cache markers ────────────────────────────────
196
251
  //
@@ -237,7 +292,7 @@ export function applyCacheToMessages(messages, cacheCount) {
237
292
  return m;
238
293
  });
239
294
  }
240
- function toAnthropicToolChoice(choice) {
295
+ export function toAnthropicToolChoice(choice) {
241
296
  if (choice === 'auto')
242
297
  return { type: 'auto' };
243
298
  if (choice === 'required')
@@ -248,7 +303,7 @@ function toAnthropicToolChoice(choice) {
248
303
  return { type: 'tool', name: choice.name };
249
304
  return { type: 'auto' };
250
305
  }
251
- function fromAnthropicResponse(response) {
306
+ export function fromAnthropicResponse(response) {
252
307
  const toolCalls = [];
253
308
  let text = '';
254
309
  for (const block of response.content ?? []) {
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ import type { ProviderFactory, ProviderAdapter, StreamChunk } from '../types.js';
2
+ /**
3
+ * AWS Bedrock — managed access to foundation models on AWS infrastructure.
4
+ *
5
+ * v1 supports **Anthropic Claude models on Bedrock** (the dominant case for
6
+ * RudderJS users on AWS). Other model families on Bedrock (Llama, Nova, etc.)
7
+ * surface a clear error pointing at the supported set — they can be added in
8
+ * follow-up PRs as demand justifies.
9
+ *
10
+ * Auth uses the standard AWS credential chain: env vars (`AWS_ACCESS_KEY_ID`,
11
+ * `AWS_SECRET_ACCESS_KEY`, `AWS_SESSION_TOKEN`), IAM roles on EC2/ECS/Lambda,
12
+ * `~/.aws/credentials`, etc. We don't accept credentials in `BedrockConfig` —
13
+ * use environment-aware credentials so the same code works in dev and prod.
14
+ *
15
+ * Model strings:
16
+ * `bedrock/anthropic.claude-3-5-sonnet-20241022-v2:0`
17
+ * `bedrock/anthropic.claude-3-5-haiku-20241022-v1:0`
18
+ *
19
+ * @example
20
+ * ```ts
21
+ * // config/ai.ts
22
+ * providers: {
23
+ * bedrock: {
24
+ * region: env('AWS_REGION', 'us-east-1'),
25
+ * },
26
+ * }
27
+ * ```
28
+ */
29
+ export interface BedrockConfig {
30
+ region: string;
31
+ /**
32
+ * Optional explicit credentials. Prefer the AWS credential chain (env vars,
33
+ * IAM roles); only set this for niche cases (multi-account explicit creds).
34
+ */
35
+ credentials?: {
36
+ accessKeyId: string;
37
+ secretAccessKey: string;
38
+ sessionToken?: string;
39
+ };
40
+ }
41
+ export declare class BedrockProvider implements ProviderFactory {
42
+ readonly name = "bedrock";
43
+ private readonly config;
44
+ constructor(config: BedrockConfig);
45
+ create(model: string): ProviderAdapter;
46
+ }
47
+ /**
48
+ * Bedrock model ids for Anthropic look like `anthropic.claude-3-5-sonnet-20241022-v2:0`.
49
+ * Any other prefix (`meta.`, `amazon.`, `cohere.`, `mistral.`, `ai21.`) is a
50
+ * different model family that needs its own conversion path.
51
+ */
52
+ export declare function isAnthropicOnBedrock(model: string): boolean;
53
+ /**
54
+ * Map a single decoded Bedrock-Anthropic stream event to zero-or-more
55
+ * `StreamChunk`s. Bedrock wraps Anthropic's native streaming events 1:1 in
56
+ * `chunk.bytes`, so the body shape matches `anthropic.ts`'s loop — but we
57
+ * keep the mapping here so a future model family can be added cleanly.
58
+ */
59
+ export declare function mapBedrockAnthropicEvent(event: Record<string, any>): Generator<StreamChunk>;
60
+ //# sourceMappingURL=bedrock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bedrock.d.ts","sourceRoot":"","sources":["../../src/providers/bedrock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EAGf,WAAW,EACZ,MAAM,aAAa,CAAA;AAYpB;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd;;;OAGG;IACH,WAAW,CAAC,EAAE;QACZ,WAAW,EAAE,MAAM,CAAA;QACnB,eAAe,EAAE,MAAM,CAAA;QACvB,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,CAAA;CACF;AAED,qBAAa,eAAgB,YAAW,eAAe;IACrD,QAAQ,CAAC,IAAI,aAAY;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;gBAE1B,MAAM,EAAE,aAAa;IAIjC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe;CAGvC;AAgHD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED;;;;;GAKG;AACH,wBAAiB,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC,CAiC5F"}