@symbolica/agentica 0.3.0 → 0.3.2

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 (64) hide show
  1. package/README.md +9 -1
  2. package/THIRD_PARTY_NOTICES.md +27 -0
  3. package/dist/bin/agentica-setup.js +0 -0
  4. package/dist/src/agentica/agent.d.ts +2 -2
  5. package/dist/src/agentica/agent.d.ts.map +1 -1
  6. package/dist/src/agentica/agent.js +2 -5
  7. package/dist/src/agentica/agent.js.map +1 -1
  8. package/dist/src/agentica/agentic.d.ts +1 -2
  9. package/dist/src/agentica/agentic.d.ts.map +1 -1
  10. package/dist/src/agentica/agentic.js +1 -5
  11. package/dist/src/agentica/agentic.js.map +1 -1
  12. package/dist/src/agentica/common.d.ts +2 -0
  13. package/dist/src/agentica/common.d.ts.map +1 -1
  14. package/dist/src/agentica/common.js +1 -0
  15. package/dist/src/agentica/common.js.map +1 -1
  16. package/dist/src/agentica/model-notices.d.ts +3 -0
  17. package/dist/src/agentica/model-notices.d.ts.map +1 -0
  18. package/dist/src/agentica/model-notices.js +19 -0
  19. package/dist/src/agentica/model-notices.js.map +1 -0
  20. package/dist/src/agentica/std/web.d.ts +60 -0
  21. package/dist/src/agentica/std/web.d.ts.map +1 -0
  22. package/dist/src/agentica/std/web.js +259 -0
  23. package/dist/src/agentica/std/web.js.map +1 -0
  24. package/dist/src/client-session-manager/client-session-manager.d.ts +1 -1
  25. package/dist/src/client-session-manager/client-session-manager.d.ts.map +1 -1
  26. package/dist/src/client-session-manager/client-session-manager.js +4 -0
  27. package/dist/src/client-session-manager/client-session-manager.js.map +1 -1
  28. package/dist/src/errors/base.d.ts.map +1 -1
  29. package/dist/src/errors/base.js +4 -1
  30. package/dist/src/errors/base.js.map +1 -1
  31. package/dist/src/transformer/codegen/context-gen.d.ts +5 -0
  32. package/dist/src/transformer/codegen/context-gen.d.ts.map +1 -1
  33. package/dist/src/transformer/codegen/context-gen.js +71 -3
  34. package/dist/src/transformer/codegen/context-gen.js.map +1 -1
  35. package/dist/src/transformer/transformer-utils.d.ts.map +1 -1
  36. package/dist/src/transformer/transformer-utils.js +8 -4
  37. package/dist/src/transformer/transformer-utils.js.map +1 -1
  38. package/dist/src/version.d.ts +1 -1
  39. package/dist/src/version.js +1 -1
  40. package/dist-transformer/agentica/agent.d.ts +2 -2
  41. package/dist-transformer/agentica/agent.d.ts.map +1 -1
  42. package/dist-transformer/agentica/agent.js +2 -5
  43. package/dist-transformer/agentica/agentic.d.ts +1 -2
  44. package/dist-transformer/agentica/agentic.d.ts.map +1 -1
  45. package/dist-transformer/agentica/agentic.js +1 -5
  46. package/dist-transformer/agentica/common.d.ts +2 -0
  47. package/dist-transformer/agentica/common.d.ts.map +1 -1
  48. package/dist-transformer/agentica/common.js +1 -0
  49. package/dist-transformer/agentica/model-notices.d.ts +3 -0
  50. package/dist-transformer/agentica/model-notices.d.ts.map +1 -0
  51. package/dist-transformer/agentica/model-notices.js +18 -0
  52. package/dist-transformer/client-session-manager/client-session-manager.d.ts +1 -1
  53. package/dist-transformer/client-session-manager/client-session-manager.d.ts.map +1 -1
  54. package/dist-transformer/client-session-manager/client-session-manager.js +4 -0
  55. package/dist-transformer/errors/base.d.ts.map +1 -1
  56. package/dist-transformer/errors/base.js +4 -1
  57. package/dist-transformer/transformer/codegen/context-gen.d.ts +21 -0
  58. package/dist-transformer/transformer/codegen/context-gen.d.ts.map +1 -1
  59. package/dist-transformer/transformer/codegen/context-gen.js +99 -5
  60. package/dist-transformer/transformer/transformer-utils.d.ts.map +1 -1
  61. package/dist-transformer/transformer/transformer-utils.js +8 -4
  62. package/dist-transformer/version.d.ts +1 -1
  63. package/dist-transformer/version.js +1 -1
  64. package/package.json +141 -137
@@ -0,0 +1,259 @@
1
+ import Exa from 'exa-js';
2
+ export class ExaRateLimitError extends Error {
3
+ retryAfter;
4
+ constructor(retryAfter) {
5
+ const message = retryAfter
6
+ ? `Rate limit exceeded (retry after ${retryAfter.toFixed(1)}s)`
7
+ : 'Rate limit exceeded';
8
+ super(message);
9
+ this.name = 'ExaRateLimitError';
10
+ this.retryAfter = retryAfter;
11
+ }
12
+ }
13
+ export class SearchResult {
14
+ title;
15
+ url;
16
+ score;
17
+ contentLines;
18
+ constructor(data) {
19
+ this.title = data.title;
20
+ this.url = data.url;
21
+ this.contentLines = data.contentLines;
22
+ this.score = data.score;
23
+ }
24
+ get numLines() {
25
+ return this.contentLines.length;
26
+ }
27
+ contentWithLineNumbers(start = 1, end) {
28
+ const startIdx = Math.max(start, 1);
29
+ const lines = this.contentLines.slice(startIdx - 1, end);
30
+ return lines.map((line, idx) => `${startIdx + idx}: ${line}`).join('\n');
31
+ }
32
+ toDict() {
33
+ return {
34
+ title: this.title,
35
+ url: this.url,
36
+ contentLines: this.contentLines,
37
+ score: this.score,
38
+ };
39
+ }
40
+ toJSON() {
41
+ return this.toDict();
42
+ }
43
+ toJSONString() {
44
+ return JSON.stringify(this.toJSON());
45
+ }
46
+ static fromJSON(json) {
47
+ const data = JSON.parse(json);
48
+ return new SearchResult(data);
49
+ }
50
+ toString() {
51
+ return `SearchResult(title=${JSON.stringify(this.title)}, url=${JSON.stringify(this.url)}, score=${this.score}, numLines=${this.numLines})`;
52
+ }
53
+ }
54
+ function fromExa(r) {
55
+ return new SearchResult({
56
+ title: r.title ?? '<no title>',
57
+ url: r.url,
58
+ contentLines: (r.text ?? '').split('\n'),
59
+ score: r.score ?? undefined,
60
+ });
61
+ }
62
+ class RateLimiter {
63
+ maxRequests;
64
+ window;
65
+ count = 0;
66
+ windowStart = 0;
67
+ pending = [];
68
+ processing = false;
69
+ constructor(maxRequests = 5, window = 1000) {
70
+ this.maxRequests = maxRequests;
71
+ this.window = window;
72
+ }
73
+ async acquire() {
74
+ return new Promise((resolve) => {
75
+ this.pending.push(resolve);
76
+ this.processQueue();
77
+ });
78
+ }
79
+ async processQueue() {
80
+ if (this.processing)
81
+ return;
82
+ this.processing = true;
83
+ while (this.pending.length > 0) {
84
+ const now = Date.now();
85
+ if (now - this.windowStart >= this.window) {
86
+ this.windowStart = now;
87
+ this.count = 0;
88
+ }
89
+ if (this.count >= this.maxRequests) {
90
+ const sleepTime = this.window - (now - this.windowStart);
91
+ if (sleepTime > 0) {
92
+ await this.sleep(sleepTime);
93
+ }
94
+ this.windowStart = Date.now();
95
+ this.count = 0;
96
+ }
97
+ const next = this.pending.shift();
98
+ if (next) {
99
+ this.count++;
100
+ next();
101
+ }
102
+ }
103
+ this.processing = false;
104
+ }
105
+ sleep(ms) {
106
+ return new Promise((resolve) => setTimeout(resolve, ms));
107
+ }
108
+ }
109
+ const API_KEY_PREFIX = 'agentica_web';
110
+ export class ExaClient {
111
+ apiKey;
112
+ exa;
113
+ maxRetries;
114
+ rateLimiter;
115
+ constructor(options = {}) {
116
+ const key = options.apiKey ?? process.env.EXA_API_KEY;
117
+ if (!key) {
118
+ throw new Error('No API key. Set EXA_API_KEY or pass apiKey option');
119
+ }
120
+ this.apiKey = key;
121
+ this.exa = new Exa(key);
122
+ this.maxRetries = options.maxRetries ?? 3;
123
+ this.rateLimiter = new RateLimiter(options.rateLimit ?? 5, 1000);
124
+ }
125
+ async search(query, options = {}) {
126
+ const { numResults = 5, includeText = true } = options;
127
+ for (let attempt = 0; attempt <= this.maxRetries; attempt++) {
128
+ try {
129
+ await this.rateLimiter.acquire();
130
+ if (includeText) {
131
+ const response = await this.exa.searchAndContents(query, {
132
+ numResults,
133
+ text: true,
134
+ });
135
+ return response.results.map((r) => fromExa(r));
136
+ }
137
+ else {
138
+ const response = await this.exa.search(query, { numResults });
139
+ return response.results.map((r) => new SearchResult({
140
+ title: r.title ?? '<no title>',
141
+ url: r.url,
142
+ contentLines: [],
143
+ score: undefined,
144
+ }));
145
+ }
146
+ }
147
+ catch (e) {
148
+ const err = String(e).toLowerCase();
149
+ if (err.includes('rate') || err.includes('429') || err.includes('limit')) {
150
+ if (attempt < this.maxRetries) {
151
+ await this.sleep(1000 * (attempt + 1));
152
+ continue;
153
+ }
154
+ throw new ExaRateLimitError();
155
+ }
156
+ throw e;
157
+ }
158
+ }
159
+ throw new ExaRateLimitError();
160
+ }
161
+ async fetch(url) {
162
+ await this.rateLimiter.acquire();
163
+ const response = await this.exa.getContents([url], { text: true });
164
+ if (!response.results || response.results.length === 0) {
165
+ throw new Error(`No content for URL: ${url}`);
166
+ }
167
+ return fromExa(response.results[0]);
168
+ }
169
+ sleep(ms) {
170
+ return new Promise((resolve) => setTimeout(resolve, ms));
171
+ }
172
+ }
173
+ export class ExaAdmin {
174
+ static BASE_URL = 'https://admin-api.exa.ai/team-management/api-keys';
175
+ serviceKey;
176
+ constructor(serviceKey) {
177
+ const key = serviceKey ?? process.env.EXA_SERVICE_API_KEY;
178
+ if (!key) {
179
+ throw new Error('No service key. Set EXA_SERVICE_API_KEY or pass serviceKey');
180
+ }
181
+ this.serviceKey = key;
182
+ }
183
+ async request(method, path = '', body) {
184
+ const url = `${ExaAdmin.BASE_URL}${path}`;
185
+ const options = {
186
+ method,
187
+ headers: {
188
+ 'x-api-key': this.serviceKey,
189
+ 'Content-Type': 'application/json',
190
+ },
191
+ };
192
+ if (body) {
193
+ options.body = JSON.stringify(body);
194
+ }
195
+ const response = await fetch(url, options);
196
+ if (!response.ok) {
197
+ const text = await response.text();
198
+ throw new Error(`Admin API error: ${response.status} ${text}`);
199
+ }
200
+ return response.json();
201
+ }
202
+ async createKey(name) {
203
+ const keyName = name ?? `${API_KEY_PREFIX}_${formatTimestamp(new Date())}`;
204
+ const result = await this.request('POST', '', { name: keyName });
205
+ const apiKey = result.apiKey?.id;
206
+ if (!apiKey) {
207
+ throw new Error(`No key in response: ${JSON.stringify(result)}`);
208
+ }
209
+ return apiKey;
210
+ }
211
+ async listKeys() {
212
+ const result = await this.request('GET');
213
+ return result.apiKeys ?? [];
214
+ }
215
+ async deleteKey(keyId) {
216
+ try {
217
+ await this.request('DELETE', `/${keyId}`);
218
+ return true;
219
+ }
220
+ catch {
221
+ return false;
222
+ }
223
+ }
224
+ async pruneKeys(prefix = API_KEY_PREFIX) {
225
+ const keys = await this.listKeys();
226
+ let deleted = 0;
227
+ for (const key of keys) {
228
+ if (key.name?.startsWith(prefix) && key.id) {
229
+ if (await this.deleteKey(key.id)) {
230
+ deleted++;
231
+ }
232
+ }
233
+ }
234
+ return deleted;
235
+ }
236
+ }
237
+ let defaultClient = null;
238
+ function getDefaultClient() {
239
+ if (!defaultClient) {
240
+ defaultClient = new ExaClient();
241
+ }
242
+ return defaultClient;
243
+ }
244
+ export async function webSearch(query, numResults = 5) {
245
+ return getDefaultClient().search(query, { numResults });
246
+ }
247
+ export async function webFetch(url) {
248
+ return getDefaultClient().fetch(url);
249
+ }
250
+ function formatTimestamp(date) {
251
+ const pad = (n) => n.toString().padStart(2, '0');
252
+ return (`${date.getFullYear()}` +
253
+ `${pad(date.getMonth() + 1)}` +
254
+ `${pad(date.getDate())}` +
255
+ `${pad(date.getHours())}` +
256
+ `${pad(date.getMinutes())}` +
257
+ `${pad(date.getSeconds())}`);
258
+ }
259
+ //# sourceMappingURL=web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web.js","sourceRoot":"","sources":["../../../../src/agentica/std/web.ts"],"names":[],"mappings":"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"}
@@ -69,5 +69,5 @@ declare global {
69
69
  var __AGENTICA_AGENTIC_MANAGER: ClientSessionManager | undefined;
70
70
  }
71
71
  export declare const __AGENTIC_MANAGER: ClientSessionManager;
72
- export declare const __AGENTIC_PROTO_VER = "typescript/0.3.0";
72
+ export declare const __AGENTIC_PROTO_VER = "typescript/0.3.2";
73
73
  //# sourceMappingURL=client-session-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client-session-manager.d.ts","sourceRoot":"","sources":["../../../src/client-session-manager/client-session-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client-session-manager.d.ts","sourceRoot":"","sources":["../../../src/client-session-manager/client-session-manager.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { Usage, makeRole } from "../agentica/common.js";
2
+ import { printModelNotice } from "../agentica/model-notices.js";
2
3
  import { createLogger, loggingConfig } from "../logging/index.js";
3
4
  import { v4 as uuidv4 } from 'uuid';
4
5
  async function createWebSocket(url, apiKey, customHeaders) {
@@ -420,6 +421,9 @@ export class ClientSessionManager {
420
421
  cmar.protocol = `typescript/${version}`;
421
422
  const uri = `${this.baseHttp}/agent/create`;
422
423
  logger.debug(`Creating agent (model=${cmar.model})`);
424
+ if (cmar.model) {
425
+ printModelNotice(cmar.model);
426
+ }
423
427
  span.setAttribute('agent.model', cmar.model || 'unknown');
424
428
  span.setAttribute('agent.streaming', cmar.streaming || false);
425
429
  const requestBody = {
@@ -1 +1 @@
1
- {"version":3,"file":"client-session-manager.js","sourceRoot":"","sources":["../../../src/client-session-manager/client-session-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client-session-manager.js","sourceRoot":"","sources":["../../../src/client-session-manager/client-session-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/errors/base.ts"],"names":[],"mappings":"AAAA,qBAAa,aAAc,SAAQ,KAAK;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;gBAEZ,OAAO,EAAE,MAAM;IAK3B,QAAQ,IAAI,MAAM;CAiBrB;AAMD,wBAAgB,WAAW,CACvB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE;IACL,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B,GACF,KAAK,CASP"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/errors/base.ts"],"names":[],"mappings":"AAAA,qBAAa,aAAc,SAAQ,KAAK;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;gBAEZ,OAAO,EAAE,MAAM;IAK3B,QAAQ,IAAI,MAAM;CAoBrB;AAMD,wBAAgB,WAAW,CACvB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE;IACL,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B,GACF,KAAK,CASP"}
@@ -23,7 +23,10 @@ export class AgenticaError extends Error {
23
23
  contextParts.push(`Time: ${this.errorTimestamp}`);
24
24
  if (contextParts.length > 0) {
25
25
  msg += `\n\nContext: ${contextParts.join(', ')}`;
26
- msg += '\n\nIf you need assistance, please contact support@symbolica.ai with the error details above.';
26
+ msg +=
27
+ '\n\nIf you require customer support, please contact hello@symbolica.ai with the error details above.';
28
+ msg +=
29
+ '\n\nIf you would like to file a bug report or feature request, please visit our GitHub repository at https://github.com/symbolica-ai/agentica-issues.';
27
30
  }
28
31
  return msg;
29
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/errors/base.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,aAAc,SAAQ,KAAK;IACpC,GAAG,CAAU;IACb,GAAG,CAAU;IACb,SAAS,CAAU;IACnB,gBAAgB,CAAU;IAC1B,cAAc,CAAU;IAExB,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACtC,CAAC;IAED,QAAQ;QACJ,IAAI,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAE3B,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,GAAG;YAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACpD,IAAI,IAAI,CAAC,GAAG;YAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACpD,IAAI,IAAI,CAAC,gBAAgB;YAAE,YAAY,CAAC,IAAI,CAAC,uBAAuB,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC7F,IAAI,IAAI,CAAC,SAAS;YAAE,YAAY,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QACpE,IAAI,IAAI,CAAC,cAAc;YAAE,YAAY,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;QAE3E,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,GAAG,IAAI,gBAAgB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACjD,GAAG,IAAI,+FAA+F,CAAC;QAC3G,CAAC;QAED,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AAMD,MAAM,UAAU,WAAW,CACvB,KAAY,EACZ,OAKC;IAED,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;QACjC,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS;YAAE,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvD,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS;YAAE,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvD,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;YAAE,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACzE,IAAI,OAAO,CAAC,gBAAgB,KAAK,SAAS;YAAE,KAAK,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QAC9F,KAAK,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/errors/base.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,aAAc,SAAQ,KAAK;IACpC,GAAG,CAAU;IACb,GAAG,CAAU;IACb,SAAS,CAAU;IACnB,gBAAgB,CAAU;IAC1B,cAAc,CAAU;IAExB,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACtC,CAAC;IAED,QAAQ;QACJ,IAAI,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAE3B,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,GAAG;YAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACpD,IAAI,IAAI,CAAC,GAAG;YAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACpD,IAAI,IAAI,CAAC,gBAAgB;YAAE,YAAY,CAAC,IAAI,CAAC,uBAAuB,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC7F,IAAI,IAAI,CAAC,SAAS;YAAE,YAAY,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QACpE,IAAI,IAAI,CAAC,cAAc;YAAE,YAAY,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;QAE3E,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,GAAG,IAAI,gBAAgB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACjD,GAAG;gBACC,sGAAsG,CAAC;YAC3G,GAAG;gBACC,uJAAuJ,CAAC;QAChK,CAAC;QAED,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AAMD,MAAM,UAAU,WAAW,CACvB,KAAY,EACZ,OAKC;IAED,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;QACjC,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS;YAAE,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvD,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS;YAAE,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvD,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;YAAE,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACzE,IAAI,OAAO,CAAC,gBAAgB,KAAK,SAAS;YAAE,KAAK,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QAC9F,KAAK,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC"}
@@ -11,6 +11,7 @@ export declare class AgenticCodeInjector {
11
11
  private logger;
12
12
  private projectRoots;
13
13
  private moduleToExportInfoCache;
14
+ private packageExportsCache;
14
15
  constructor(factory: ts.NodeFactory, program?: ts.Program | undefined);
15
16
  generatePerSiteAgenticCode(sourceFile: ts.SourceFile, varName: string, context: ConceptContext, exported: boolean | undefined, siteId: number): AgenticCode;
16
17
  private buildCrossFileImportInfo;
@@ -20,6 +21,10 @@ export declare class AgenticCodeInjector {
20
21
  private computeModuleSpecifier;
21
22
  private extractPackageName;
22
23
  private extractPackageNameWithSubpath;
24
+ private resolveExportPath;
25
+ private getPackageExports;
26
+ private parseExportsField;
27
+ private extractFilePathFromExportTarget;
23
28
  private generateDynamicImports;
24
29
  private createAgenticContext;
25
30
  private createContextEntries;
@@ -1 +1 @@
1
- {"version":3,"file":"context-gen.d.ts","sourceRoot":"","sources":["../../../../src/transformer/codegen/context-gen.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,cAAc,EAAyC,MAAM,wCAAwC,CAAC;AAEpH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,KAAK,WAAW,GAAG;IACf,WAAW,EAAE,EAAE,CAAC,iBAAiB,CAAC;IAClC,cAAc,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC;IAC/B,UAAU,EAAE,OAAO,CAAC;CACvB,CAAC;AAOF,qBAAa,mBAAmB;IAMxB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,OAAO,CAAC;IANpB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,uBAAuB,CAAmD;gBAGtE,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,YAAA;IAQhC,0BAA0B,CACtB,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,cAAc,EACvB,QAAQ,EAAE,OAAO,YAAQ,EACzB,MAAM,EAAE,MAAM,GACf,WAAW;IAed,OAAO,CAAC,wBAAwB;IAgEhC,OAAO,CAAC,iBAAiB;IA6BzB,OAAO,CAAC,iBAAiB;IAsCzB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,sBAAsB;IA+B9B,OAAO,CAAC,kBAAkB;IAsB1B,OAAO,CAAC,6BAA6B;IAqCrC,OAAO,CAAC,sBAAsB;IAkD9B,OAAO,CAAC,oBAAoB;IAqC5B,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,kBAAkB;IAwG1B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,6BAA6B;CAUxC"}
1
+ {"version":3,"file":"context-gen.d.ts","sourceRoot":"","sources":["../../../../src/transformer/codegen/context-gen.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,cAAc,EAAyC,MAAM,wCAAwC,CAAC;AAEpH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,KAAK,WAAW,GAAG;IACf,WAAW,EAAE,EAAE,CAAC,iBAAiB,CAAC;IAClC,cAAc,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC;IAC/B,UAAU,EAAE,OAAO,CAAC;CACvB,CAAC;AASF,qBAAa,mBAAmB;IAOxB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,OAAO,CAAC;IAPpB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,uBAAuB,CAAmD;IAClF,OAAO,CAAC,mBAAmB,CAAoD;gBAGnE,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,YAAA;IAQhC,0BAA0B,CACtB,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,cAAc,EACvB,QAAQ,EAAE,OAAO,YAAQ,EACzB,MAAM,EAAE,MAAM,GACf,WAAW;IAed,OAAO,CAAC,wBAAwB;IAgEhC,OAAO,CAAC,iBAAiB;IA6BzB,OAAO,CAAC,iBAAiB;IAsCzB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,sBAAsB;IA+B9B,OAAO,CAAC,kBAAkB;IAsB1B,OAAO,CAAC,6BAA6B;IAiDrC,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,iBAAiB;IA2BzB,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,+BAA+B;IAiBvC,OAAO,CAAC,sBAAsB;IAkD9B,OAAO,CAAC,oBAAoB;IAqC5B,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,kBAAkB;IAwG1B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,6BAA6B;CAUxC"}
@@ -1,3 +1,4 @@
1
+ import * as fs from 'fs';
1
2
  import * as path from 'path';
2
3
  import { createConsolaLogger } from "../../logging/index.js";
3
4
  import { findProjectRoot } from "../processor/processor-utils.js";
@@ -8,6 +9,7 @@ export class AgenticCodeInjector {
8
9
  logger;
9
10
  projectRoots = new Map();
10
11
  moduleToExportInfoCache = new Map();
12
+ packageExportsCache = new Map();
11
13
  constructor(factory, program) {
12
14
  this.factory = factory;
13
15
  this.program = program;
@@ -176,9 +178,14 @@ export class AgenticCodeInjector {
176
178
  packageName = parts[0];
177
179
  subpathStartIndex = 1;
178
180
  }
179
- const subpath = parts.slice(subpathStartIndex).join('/');
180
- if (subpath) {
181
- const cleanSubpath = subpath.replace(/\.d\.ts$/, '');
181
+ const packageDir = filePath.substring(0, index + markerPath.length) + parts.slice(0, subpathStartIndex).join(path.sep);
182
+ const fileSubpath = parts.slice(subpathStartIndex).join('/');
183
+ if (fileSubpath) {
184
+ const exportPath = this.resolveExportPath(packageDir, fileSubpath);
185
+ if (exportPath) {
186
+ return `${packageName}/${exportPath}`;
187
+ }
188
+ const cleanSubpath = fileSubpath.replace(/\.d\.ts$/, '');
182
189
  return `${packageName}/${cleanSubpath}`;
183
190
  }
184
191
  return packageName;
@@ -186,6 +193,67 @@ export class AgenticCodeInjector {
186
193
  }
187
194
  return filePath.split(path.sep).pop() || filePath;
188
195
  }
196
+ resolveExportPath(packageDir, fileSubpath) {
197
+ const exportsMap = this.getPackageExports(packageDir);
198
+ if (!exportsMap)
199
+ return undefined;
200
+ const normalizedSubpath = fileSubpath.replace(/\.d\.ts$/, '');
201
+ if (exportsMap.has(normalizedSubpath)) {
202
+ return exportsMap.get(normalizedSubpath);
203
+ }
204
+ if (exportsMap.has(`${normalizedSubpath}.js`)) {
205
+ return exportsMap.get(`${normalizedSubpath}.js`);
206
+ }
207
+ return undefined;
208
+ }
209
+ getPackageExports(packageDir) {
210
+ if (this.packageExportsCache.has(packageDir)) {
211
+ return this.packageExportsCache.get(packageDir);
212
+ }
213
+ const packageJsonPath = path.join(packageDir, 'package.json');
214
+ let exportsMap = null;
215
+ try {
216
+ if (fs.existsSync(packageJsonPath)) {
217
+ const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
218
+ if (packageJson.exports && typeof packageJson.exports === 'object') {
219
+ exportsMap = this.parseExportsField(packageJson.exports);
220
+ }
221
+ }
222
+ }
223
+ catch {
224
+ }
225
+ this.packageExportsCache.set(packageDir, exportsMap);
226
+ return exportsMap;
227
+ }
228
+ parseExportsField(exports) {
229
+ const map = new Map();
230
+ for (const [exportPath, target] of Object.entries(exports)) {
231
+ if (exportPath === '.')
232
+ continue;
233
+ const filePath = this.extractFilePathFromExportTarget(target);
234
+ if (!filePath)
235
+ continue;
236
+ const normalizedExportPath = exportPath.replace(/^\.\//, '');
237
+ const normalizedFilePath = filePath.replace(/^\.\//, '');
238
+ map.set(normalizedFilePath, normalizedExportPath);
239
+ }
240
+ return map;
241
+ }
242
+ extractFilePathFromExportTarget(target) {
243
+ if (typeof target === 'string') {
244
+ return target;
245
+ }
246
+ if (target && typeof target === 'object') {
247
+ const obj = target;
248
+ if (typeof obj['default'] === 'string')
249
+ return obj['default'];
250
+ if (typeof obj['import'] === 'string')
251
+ return obj['import'];
252
+ if (typeof obj['require'] === 'string')
253
+ return obj['require'];
254
+ }
255
+ return undefined;
256
+ }
189
257
  generateDynamicImports(importInfo) {
190
258
  const importsByModule = new Map();
191
259
  for (const [_uid, info] of importInfo) {