@ratio-mcp/dev-server 1.1.2 → 1.3.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 (51) hide show
  1. package/dist/data/scope-webhook-map.d.ts +26 -0
  2. package/dist/data/scope-webhook-map.d.ts.map +1 -0
  3. package/dist/data/scope-webhook-map.js +117 -0
  4. package/dist/data/scope-webhook-map.js.map +1 -0
  5. package/dist/index.d.ts +5 -4
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +11 -13
  8. package/dist/index.js.map +1 -1
  9. package/dist/orchestrated-index.d.ts +4 -9
  10. package/dist/orchestrated-index.d.ts.map +1 -1
  11. package/dist/orchestrated-index.js +6 -14
  12. package/dist/orchestrated-index.js.map +1 -1
  13. package/dist/orchestrated-server.d.ts +14 -9
  14. package/dist/orchestrated-server.d.ts.map +1 -1
  15. package/dist/orchestrated-server.js +86 -48
  16. package/dist/orchestrated-server.js.map +1 -1
  17. package/dist/services/orchestrator.d.ts.map +1 -1
  18. package/dist/services/orchestrator.js +83 -7
  19. package/dist/services/orchestrator.js.map +1 -1
  20. package/dist/services/session-state.d.ts +36 -14
  21. package/dist/services/session-state.d.ts.map +1 -1
  22. package/dist/services/session-state.js +184 -134
  23. package/dist/services/session-state.js.map +1 -1
  24. package/dist/services/tool-guard.d.ts +29 -9
  25. package/dist/services/tool-guard.d.ts.map +1 -1
  26. package/dist/services/tool-guard.js +76 -50
  27. package/dist/services/tool-guard.js.map +1 -1
  28. package/dist/tools/agent-chat.d.ts.map +1 -1
  29. package/dist/tools/agent-chat.js +88 -2
  30. package/dist/tools/agent-chat.js.map +1 -1
  31. package/dist/tools/codegen.d.ts.map +1 -1
  32. package/dist/tools/codegen.js +206 -10
  33. package/dist/tools/codegen.js.map +1 -1
  34. package/dist/tools/get-status.d.ts +3 -0
  35. package/dist/tools/get-status.d.ts.map +1 -0
  36. package/dist/tools/get-status.js +127 -0
  37. package/dist/tools/get-status.js.map +1 -0
  38. package/dist/tools/index.d.ts.map +1 -1
  39. package/dist/tools/index.js +3 -1
  40. package/dist/tools/index.js.map +1 -1
  41. package/dist/tools/requirements.d.ts.map +1 -1
  42. package/dist/tools/requirements.js +41 -4
  43. package/dist/tools/requirements.js.map +1 -1
  44. package/dist/tools/scaffold.d.ts.map +1 -1
  45. package/dist/tools/scaffold.js +10 -5
  46. package/dist/tools/scaffold.js.map +1 -1
  47. package/dist/tools/webhooks.d.ts +25 -0
  48. package/dist/tools/webhooks.d.ts.map +1 -1
  49. package/dist/tools/webhooks.js +115 -89
  50. package/dist/tools/webhooks.js.map +1 -1
  51. package/package.json +16 -15
@@ -2,126 +2,127 @@ import { getSession, hasCompleted, hasCompletedAny } from './session-state.js';
2
2
  import { logger } from '../utils/logger.js';
3
3
  // ── Prerequisite rules ──────────────────────────────────────────────────
4
4
  const TOOL_PREREQUISITES = {
5
- // ── Phase 1: App Creation (auth categories create_app) ──────────
6
- get_categories: () => {
7
- if (!isAuthenticated()) {
8
- return blocked('You must authenticate first. Call developer_login.', ['developer_login']);
5
+ // ── Auth (entry points no prerequisites) ────────────────────────────
6
+ // developer_login, developer_signup: no entry needed (always allowed)
7
+ developer_verify_otp: () => {
8
+ if (!hasCompleted('developer_signup')) {
9
+ return blocked('You must sign up first before verifying OTP.', ['developer_signup'], ['developer_signup', 'developer_verify_otp']);
9
10
  }
10
11
  return allowed();
11
12
  },
13
+ // ── Read-only tools (no auth needed) ──────────────────────────────────
14
+ // get_categories: no entry needed (always allowed — read-only, anyone can browse)
15
+ // get_status: no entry needed (always allowed)
16
+ // get_app_lifecycle: no entry needed (always allowed)
17
+ // ── App Setup (needs auth) ────────────────────────────────────────────
12
18
  create_app: () => {
13
19
  if (!isAuthenticated()) {
14
- return blocked('You must authenticate first. Call developer_login.', ['developer_login']);
15
- }
16
- if (!hasCompleted('get_categories')) {
17
- return blocked('You must call get_categories first so the developer can choose app categories.', ['get_categories']);
20
+ return blocked('You must authenticate first. Call developer_login.', ['developer_login'], ['developer_login', 'create_app']);
18
21
  }
19
22
  return allowed();
20
23
  },
21
- // ── Phase 2: Scope Selection (gather requirements → define scopes) ──
24
+ // ── Requirements (needs app) ──────────────────────────────────────────
22
25
  gather_requirements: () => {
23
26
  if (!getSession().context.appId) {
24
- return blocked('You must create an app first (create_app) before gathering requirements.', ['get_categories', 'create_app']);
27
+ return blocked('You must create an app first before gathering requirements.', ['create_app'], ['developer_login', 'create_app', 'gather_requirements']);
25
28
  }
26
29
  return allowed();
27
30
  },
28
31
  define_app_requirements: () => {
29
- if (!getSession().context.appId) {
30
- return blocked('You must create an app first (create_app) before defining scopes.', ['get_categories', 'create_app']);
31
- }
32
32
  if (!hasCompleted('gather_requirements')) {
33
33
  return blocked('You must call gather_requirements first to analyze what the developer wants to build, ' +
34
- 'then use the recommended scopes with define_app_requirements.', ['gather_requirements']);
34
+ 'then use the recommended scopes with define_app_requirements.', ['gather_requirements'], ['gather_requirements', 'define_app_requirements']);
35
35
  }
36
36
  return allowed();
37
37
  },
38
- // ── Phase 3: Webhooks (needs scopes confirmed) ─────────────────────
38
+ // ── Webhooks (needs scopes confirmed) ─────────────────────────────────
39
39
  get_webhook_topics: () => {
40
- if (!isAuthenticated()) {
41
- return blocked('You must authenticate first.', ['developer_login']);
42
- }
43
- if (!getSession().context.scopesConfirmed) {
44
- return blocked('You must confirm scopes first (define_app_requirements) before configuring webhooks. ' +
45
- 'Webhook events are suggested based on the selected scopes.', ['define_app_requirements']);
46
- }
40
+ // Read-only browsing of webhook topics — no prerequisites
47
41
  return allowed();
48
42
  },
49
43
  create_webhooks: () => {
50
44
  if (!getSession().context.appId) {
51
- return blocked('You must create an app first before configuring webhooks.', ['create_app']);
45
+ return blocked('You must create an app first before configuring webhooks.', ['create_app'], ['developer_login', 'create_app', 'create_webhooks']);
52
46
  }
53
47
  if (!getSession().context.scopesConfirmed) {
54
- return blocked('You must confirm scopes first. Webhook events are based on selected scopes.', ['define_app_requirements']);
48
+ return blocked('You must confirm scopes first (define_app_requirements) before configuring webhooks. ' +
49
+ 'Webhook events should be based on the selected scopes.', ['define_app_requirements'], ['gather_requirements', 'define_app_requirements', 'create_webhooks']);
55
50
  }
56
51
  return allowed();
57
52
  },
58
- // ── Phase 4: Scaffold & Build ───────────────────────────────────────
53
+ // ── Frontend Build Pipeline (needs scopes confirmed) ──────────────────
59
54
  scaffold_frontend: () => {
60
- if (!getSession().context.appId) {
61
- return blocked('You must create an app first before scaffolding.', ['create_app']);
62
- }
63
55
  if (!getSession().context.scopesConfirmed) {
64
- return blocked('You must define and confirm app scopes before scaffolding.', ['define_app_requirements']);
56
+ return blocked('You must define and confirm app scopes (define_app_requirements) before scaffolding the frontend.', ['define_app_requirements'], ['gather_requirements', 'define_app_requirements', 'scaffold_frontend']);
65
57
  }
66
58
  return allowed();
67
59
  },
68
60
  build_frontend: () => {
69
61
  if (!hasCompleted('scaffold_frontend')) {
70
- return blocked('You must scaffold the frontend first before building.', ['scaffold_frontend']);
62
+ return blocked('You must scaffold the frontend first before building.', ['scaffold_frontend'], ['scaffold_frontend', 'build_frontend']);
71
63
  }
72
64
  return allowed();
73
65
  },
74
- create_submission_zip: () => {
66
+ validate_build: () => {
75
67
  if (!hasCompleted('build_frontend')) {
76
- return blocked('You must build the frontend first before creating a submission zip.', ['build_frontend']);
68
+ return blocked('You must build the frontend first before validating.', ['build_frontend'], ['scaffold_frontend', 'build_frontend', 'validate_build']);
69
+ }
70
+ return allowed();
71
+ },
72
+ create_submission_zip: () => {
73
+ if (!hasCompleted('validate_build')) {
74
+ return blocked('You must validate the build first before creating a submission zip.', ['validate_build'], ['scaffold_frontend', 'build_frontend', 'validate_build', 'create_submission_zip']);
77
75
  }
78
76
  return allowed();
79
77
  },
80
78
  upload_build: () => {
81
- if (!hasCompleted('build_frontend')) {
82
- return blocked('You must build the frontend first before uploading.', ['build_frontend']);
79
+ if (!hasCompleted('create_submission_zip')) {
80
+ return blocked('You must create a submission zip first before uploading.', ['create_submission_zip'], ['scaffold_frontend', 'build_frontend', 'validate_build', 'create_submission_zip', 'upload_build']);
83
81
  }
84
82
  return allowed();
85
83
  },
86
84
  submit_for_review: () => {
87
- if (!getSession().context.buildUploaded && !hasCompleted('upload_build')) {
88
- return blocked('You must upload the build first before submitting for review.', ['upload_build']);
85
+ if (!hasCompleted('upload_build')) {
86
+ return blocked('You must upload the build first before submitting for review.', ['upload_build'], ['upload_build', 'submit_for_review']);
89
87
  }
90
88
  return allowed();
91
89
  },
92
- // ── Phase 5: Publish & OAuth ────────────────────────────────────────
90
+ // ── Review & Publish ──────────────────────────────────────────────────
91
+ get_app_status: () => requireAuth(),
93
92
  publish_app: () => {
94
93
  if (!getSession().context.appApproved) {
95
- return blocked('The app must be approved by admin before publishing. Call get_app_status to check.', ['get_app_status']);
94
+ return blocked('The app must be approved by admin before publishing. Call get_app_status to check review status.', ['get_app_status'], ['submit_for_review', 'get_app_status', 'publish_app']);
96
95
  }
97
96
  return allowed();
98
97
  },
98
+ // ── OAuth Flow (needs published app) ──────────────────────────────────
99
99
  request_auth_code: () => {
100
100
  if (!getSession().context.appPublished && !hasCompleted('publish_app')) {
101
- return blocked('You must publish the app first before starting the OAuth flow.', ['publish_app']);
101
+ return blocked('You must publish the app first before starting the OAuth flow.', ['publish_app'], ['publish_app', 'request_auth_code']);
102
102
  }
103
103
  return allowed();
104
104
  },
105
105
  get_access_token: () => {
106
106
  if (!hasCompleted('request_auth_code')) {
107
- return blocked('You must request an authorization code first.', ['request_auth_code']);
107
+ return blocked('You must request an authorization code first.', ['request_auth_code'], ['request_auth_code', 'get_access_token']);
108
108
  }
109
109
  return allowed();
110
110
  },
111
- // ── Phase 6: Backend Codegen ────────────────────────────────────────
111
+ // ── Backend Codegen (needs OAuth completed) ───────────────────────────
112
112
  scaffold_backend: () => {
113
113
  if (!getSession().context.oauthCompleted) {
114
- return blocked('You must complete the OAuth flow (get_access_token) before scaffolding the backend.', ['get_access_token']);
114
+ return blocked('You must complete the OAuth flow (get_access_token) before scaffolding the backend. ' +
115
+ 'The backend needs OAuth tokens to call merchant APIs.', ['get_access_token'], ['publish_app', 'request_auth_code', 'get_access_token', 'scaffold_backend']);
115
116
  }
116
117
  return allowed();
117
118
  },
118
119
  generate_api_routes: () => {
119
120
  if (!hasCompleted('scaffold_backend')) {
120
- return blocked('You must scaffold the backend first before generating API routes.', ['scaffold_backend']);
121
+ return blocked('You must scaffold the backend first before generating API routes.', ['scaffold_backend'], ['scaffold_backend', 'generate_api_routes']);
121
122
  }
122
123
  return allowed();
123
124
  },
124
- // ── Management tools (auth only) ───────────────────────────────────
125
+ // ── Management tools (auth only) ──────────────────────────────────────
125
126
  update_app: () => requireAuth(),
126
127
  delete_app: () => requireAuth(),
127
128
  list_apps: () => requireAuth(),
@@ -129,36 +130,61 @@ const TOOL_PREREQUISITES = {
129
130
  list_webhooks: () => requireAuth(),
130
131
  toggle_webhook: () => requireAuth(),
131
132
  delete_webhook: () => requireAuth(),
132
- get_app_status: () => requireAuth(),
133
133
  refresh_access_token: () => requireAuth(),
134
134
  check_token_status: () => requireAuth(),
135
- validate_build: () => requireAuth(),
136
135
  };
137
136
  // ── Helpers ─────────────────────────────────────────────────────────────
138
137
  function allowed() {
139
138
  return { allowed: true };
140
139
  }
141
- function blocked(message, requiredTools) {
142
- return { allowed: false, message, requiredTools };
140
+ function blocked(message, requiredTools, chain) {
141
+ return {
142
+ allowed: false,
143
+ message,
144
+ requiredTools,
145
+ chain,
146
+ hint: `Please call ${requiredTools.join(' → ')} first, then retry.`,
147
+ };
143
148
  }
144
149
  function isAuthenticated() {
145
150
  return hasCompletedAny(['developer_login', 'developer_verify_otp']);
146
151
  }
147
152
  function requireAuth() {
148
153
  if (!isAuthenticated()) {
149
- return blocked('You must authenticate first. Call developer_login or developer_signup.', ['developer_login']);
154
+ return blocked('You must authenticate first. Call developer_login or developer_signup + developer_verify_otp.', ['developer_login'], ['developer_login']);
150
155
  }
151
156
  return allowed();
152
157
  }
153
158
  // ── Public API ──────────────────────────────────────────────────────────
159
+ /**
160
+ * Check whether a tool's prerequisites are met.
161
+ * Returns structured result with error details if blocked.
162
+ */
154
163
  export function checkToolPrerequisites(toolName) {
155
164
  const check = TOOL_PREREQUISITES[toolName];
156
165
  if (!check)
157
- return allowed();
166
+ return allowed(); // No prerequisites defined → always allowed
158
167
  const result = check();
159
168
  if (!result.allowed) {
160
169
  logger.info(`GUARD BLOCKED: ${toolName} — ${result.message} (need: [${result.requiredTools?.join(', ')}])`);
161
170
  }
162
171
  return result;
163
172
  }
173
+ /**
174
+ * Get the full prerequisite chain for a tool (for status display).
175
+ * Returns tool names that must be completed before this tool can run.
176
+ */
177
+ export function getToolPrerequisiteNames(toolName) {
178
+ const check = TOOL_PREREQUISITES[toolName];
179
+ if (!check)
180
+ return [];
181
+ const result = check();
182
+ return result.chain || result.requiredTools || [];
183
+ }
184
+ /**
185
+ * Get all tool names that have prerequisites defined.
186
+ */
187
+ export function getGuardedToolNames() {
188
+ return Object.keys(TOOL_PREREQUISITES);
189
+ }
164
190
  //# sourceMappingURL=tool-guard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-guard.js","sourceRoot":"","sources":["../../src/services/tool-guard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-guard.js","sourceRoot":"","sources":["../../src/services/tool-guard.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent-chat.d.ts","sourceRoot":"","sources":["../../src/tools/agent-chat.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAoWzC;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,cA+G3B,CAAC;AAGF,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"agent-chat.d.ts","sourceRoot":"","sources":["../../src/tools/agent-chat.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA6bzC;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,cAgI3B,CAAC;AAGF,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -89,6 +89,16 @@ async function handleAgentChat(input) {
89
89
  session.context.appDescription = String(inputData.description);
90
90
  }
91
91
  // ─────────────────────────────────────────────────────────────────────
92
+ // Capture auth_mode from input_data (login or signup)
93
+ // ─────────────────────────────────────────────────────────────────────
94
+ if (inputData?.auth_mode && !session.context.authMode) {
95
+ const mode = String(inputData.auth_mode).toLowerCase();
96
+ if (mode === 'login' || mode === 'signup') {
97
+ session.context.authMode = mode;
98
+ logger.info(`Captured auth_mode: ${mode}`);
99
+ }
100
+ }
101
+ // ─────────────────────────────────────────────────────────────────────
92
102
  // Action: reset
93
103
  // ─────────────────────────────────────────────────────────────────────
94
104
  if (actionType === 'reset') {
@@ -215,6 +225,14 @@ async function handleAgentChat(input) {
215
225
  if (error instanceof Error && error.stack) {
216
226
  logger.error(`[agent-chat] Stack: ${error.stack}`);
217
227
  }
228
+ // If get_access_token fails, clear the stale auth code and allow re-request
229
+ if (toolName === 'get_access_token') {
230
+ const session = getSession();
231
+ session.context.authCode = undefined;
232
+ session.context.authCodeRedirectUri = undefined;
233
+ session.completedTools.delete('request_auth_code');
234
+ logger.info(`[agent-chat] Cleared stale authCode after ${toolName} failure — will re-request on next attempt`);
235
+ }
218
236
  return formatError(orchestratorResult, error instanceof Error ? error : new Error(String(error)), toolName);
219
237
  }
220
238
  // Step 5: Check if the tool returned a soft error (error: true in result)
@@ -228,7 +246,58 @@ async function handleAgentChat(input) {
228
246
  recordToolSuccess(toolName, toolResult);
229
247
  const nextOrchestrationResult = getNextStep();
230
248
  logger.info(`[agent-chat] Next step after ${toolName}: phase=${nextOrchestrationResult.phase}, tool=${nextOrchestrationResult.toolToCall}`);
231
- // Step 6: Check if we're now complete
249
+ // Step 6a: Auto-chain request_auth_code get_access_token
250
+ // Auth codes expire very quickly, so we must exchange immediately
251
+ // without returning to the LLM (which adds minutes of delay).
252
+ if (toolName === 'request_auth_code' &&
253
+ nextOrchestrationResult.toolToCall === 'get_access_token' &&
254
+ !nextOrchestrationResult.needsInput) {
255
+ logger.info(`[agent-chat] ── AUTO-CHAINING: request_auth_code → get_access_token ──`);
256
+ const chainToolName = 'get_access_token';
257
+ const chainTool = allDevTools.find((t) => t.name === chainToolName);
258
+ if (chainTool) {
259
+ let chainArgs = { ...nextOrchestrationResult.toolArgs };
260
+ chainArgs = normalizeToolInput(chainToolName, chainArgs);
261
+ logger.info(`[agent-chat] Chain tool args: ${JSON.stringify(chainArgs)}`);
262
+ try {
263
+ const chainValidatedArgs = chainTool.inputSchema.parse(chainArgs);
264
+ logger.info(`[agent-chat] Zod validation passed for chained ${chainToolName}`);
265
+ const chainStartTime = Date.now();
266
+ const chainResult = await chainTool.handler(chainValidatedArgs);
267
+ const chainDuration = Date.now() - chainStartTime;
268
+ logger.info(`[agent-chat] Chained tool ${chainToolName} succeeded in ${chainDuration}ms`);
269
+ // Check for soft error
270
+ const chainResultObj = chainResult;
271
+ if (chainResultObj && chainResultObj.error === true) {
272
+ logger.error(`[agent-chat] Chained ${chainToolName} returned soft error, clearing stale auth code`);
273
+ const session = getSession();
274
+ session.context.authCode = undefined;
275
+ session.context.authCodeRedirectUri = undefined;
276
+ return formatError(nextOrchestrationResult, new Error(String(chainResultObj.message || 'Token exchange failed')), chainToolName);
277
+ }
278
+ // Record success and continue
279
+ recordToolSuccess(chainToolName, chainResult);
280
+ const afterChainResult = getNextStep();
281
+ logger.info(`[agent-chat] Next step after auto-chain: phase=${afterChainResult.phase}, tool=${afterChainResult.toolToCall}`);
282
+ if (afterChainResult.phase === 'complete') {
283
+ return formatComplete();
284
+ }
285
+ return formatSuccess(afterChainResult, chainResult, chainToolName);
286
+ }
287
+ catch (chainError) {
288
+ logger.error(`[agent-chat] Chained ${chainToolName} FAILED: ${chainError instanceof Error ? chainError.message : String(chainError)}`);
289
+ // Clear the stale auth code so the orchestrator requests a fresh one on retry
290
+ const session = getSession();
291
+ session.context.authCode = undefined;
292
+ session.context.authCodeRedirectUri = undefined;
293
+ // Also remove request_auth_code from completed tools so it re-runs
294
+ session.completedTools.delete('request_auth_code');
295
+ logger.info(`[agent-chat] Cleared stale authCode and removed request_auth_code from completed tools`);
296
+ return formatError(nextOrchestrationResult, chainError instanceof Error ? chainError : new Error(String(chainError)), chainToolName);
297
+ }
298
+ }
299
+ }
300
+ // Step 6b: Check if we're now complete
232
301
  if (nextOrchestrationResult.phase === 'complete') {
233
302
  logger.info('Application development complete after tool execution');
234
303
  return formatComplete();
@@ -269,7 +338,7 @@ export const agentChatTool = {
269
338
  This is the SINGLE tool for building Ratio apps from start to finish. Instead of juggling 24+ individual tools, use this one conversational interface.
270
339
 
271
340
  ## The Workflow (9 Phases)
272
- 1. **Authentication** - Log in with your Ratio developer account
341
+ 1. **Authentication** - Log in or sign up for your Ratio developer account
273
342
  2. **App Setup** - Create your application and select categories
274
343
  3. **Requirements** - Define your app's OAuth scopes and API access
275
344
  4. **Webhooks** (optional) - Configure webhook subscriptions for real-time events
@@ -319,6 +388,23 @@ I'll ask for specific information. Provide it like this:
319
388
  }
320
389
  \`\`\`
321
390
 
391
+ ### Choose login or signup
392
+ \`\`\`
393
+ {
394
+ "message": "I have an account",
395
+ "input_data": { "auth_mode": "login" },
396
+ "action": "next"
397
+ }
398
+ \`\`\`
399
+ or for new accounts:
400
+ \`\`\`
401
+ {
402
+ "message": "I need to create an account",
403
+ "input_data": { "auth_mode": "signup" },
404
+ "action": "next"
405
+ }
406
+ \`\`\`
407
+
322
408
  ### Provide credentials when asked
323
409
  \`\`\`
324
410
  {
@@ -1 +1 @@
1
- {"version":3,"file":"agent-chat.js","sourceRoot":"","sources":["../../src/tools/agent-chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-chat.js","sourceRoot":"","sources":["../../src/tools/agent-chat.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../../src/tools/codegen.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA8PjD,eAAO,MAAM,YAAY,EAAE,cAAc,EA6IxC,CAAC"}
1
+ {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../../src/tools/codegen.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAkbjD,eAAO,MAAM,YAAY,EAAE,cAAc,EAkKxC,CAAC"}