@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.
- package/README.md +9 -1
- package/THIRD_PARTY_NOTICES.md +27 -0
- package/dist/bin/agentica-setup.js +0 -0
- package/dist/src/agentica/agent.d.ts +2 -2
- package/dist/src/agentica/agent.d.ts.map +1 -1
- package/dist/src/agentica/agent.js +2 -5
- package/dist/src/agentica/agent.js.map +1 -1
- package/dist/src/agentica/agentic.d.ts +1 -2
- package/dist/src/agentica/agentic.d.ts.map +1 -1
- package/dist/src/agentica/agentic.js +1 -5
- package/dist/src/agentica/agentic.js.map +1 -1
- package/dist/src/agentica/common.d.ts +2 -0
- package/dist/src/agentica/common.d.ts.map +1 -1
- package/dist/src/agentica/common.js +1 -0
- package/dist/src/agentica/common.js.map +1 -1
- package/dist/src/agentica/model-notices.d.ts +3 -0
- package/dist/src/agentica/model-notices.d.ts.map +1 -0
- package/dist/src/agentica/model-notices.js +19 -0
- package/dist/src/agentica/model-notices.js.map +1 -0
- package/dist/src/agentica/std/web.d.ts +60 -0
- package/dist/src/agentica/std/web.d.ts.map +1 -0
- package/dist/src/agentica/std/web.js +259 -0
- package/dist/src/agentica/std/web.js.map +1 -0
- package/dist/src/client-session-manager/client-session-manager.d.ts +1 -1
- package/dist/src/client-session-manager/client-session-manager.d.ts.map +1 -1
- package/dist/src/client-session-manager/client-session-manager.js +4 -0
- package/dist/src/client-session-manager/client-session-manager.js.map +1 -1
- package/dist/src/errors/base.d.ts.map +1 -1
- package/dist/src/errors/base.js +4 -1
- package/dist/src/errors/base.js.map +1 -1
- package/dist/src/transformer/codegen/context-gen.d.ts +5 -0
- package/dist/src/transformer/codegen/context-gen.d.ts.map +1 -1
- package/dist/src/transformer/codegen/context-gen.js +71 -3
- package/dist/src/transformer/codegen/context-gen.js.map +1 -1
- package/dist/src/transformer/transformer-utils.d.ts.map +1 -1
- package/dist/src/transformer/transformer-utils.js +8 -4
- package/dist/src/transformer/transformer-utils.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/dist-transformer/agentica/agent.d.ts +2 -2
- package/dist-transformer/agentica/agent.d.ts.map +1 -1
- package/dist-transformer/agentica/agent.js +2 -5
- package/dist-transformer/agentica/agentic.d.ts +1 -2
- package/dist-transformer/agentica/agentic.d.ts.map +1 -1
- package/dist-transformer/agentica/agentic.js +1 -5
- package/dist-transformer/agentica/common.d.ts +2 -0
- package/dist-transformer/agentica/common.d.ts.map +1 -1
- package/dist-transformer/agentica/common.js +1 -0
- package/dist-transformer/agentica/model-notices.d.ts +3 -0
- package/dist-transformer/agentica/model-notices.d.ts.map +1 -0
- package/dist-transformer/agentica/model-notices.js +18 -0
- package/dist-transformer/client-session-manager/client-session-manager.d.ts +1 -1
- package/dist-transformer/client-session-manager/client-session-manager.d.ts.map +1 -1
- package/dist-transformer/client-session-manager/client-session-manager.js +4 -0
- package/dist-transformer/errors/base.d.ts.map +1 -1
- package/dist-transformer/errors/base.js +4 -1
- package/dist-transformer/transformer/codegen/context-gen.d.ts +21 -0
- package/dist-transformer/transformer/codegen/context-gen.d.ts.map +1 -1
- package/dist-transformer/transformer/codegen/context-gen.js +99 -5
- package/dist-transformer/transformer/transformer-utils.d.ts.map +1 -1
- package/dist-transformer/transformer/transformer-utils.js +8 -4
- package/dist-transformer/version.d.ts +1 -1
- package/dist-transformer/version.js +1 -1
- 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.
|
|
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":"AAAA,OAAO,KAAK,EACR,kBAAkB,EAKlB,cAAc,EACjB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAY,MAAM,kBAAkB,CAAC;
|
|
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;
|
|
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"}
|
package/dist/src/errors/base.js
CHANGED
|
@@ -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 +=
|
|
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,
|
|
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":"
|
|
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
|
|
180
|
-
|
|
181
|
-
|
|
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) {
|