@statelyai/agent 1.1.5 → 2.0.0-alpha.10

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 (88) hide show
  1. package/LICENSE +21 -0
  2. package/dist/ai-sdk.cjs +342 -0
  3. package/dist/ai-sdk.d.cts +206 -0
  4. package/dist/ai-sdk.d.mts +206 -0
  5. package/dist/ai-sdk.mjs +331 -0
  6. package/dist/cli.cjs +64 -0
  7. package/dist/cli.d.cts +1 -0
  8. package/dist/cli.d.mts +1 -0
  9. package/dist/cli.mjs +65 -0
  10. package/dist/decision-CQdrKc8k.mjs +978 -0
  11. package/dist/decision-b-lkcs4L.cjs +1295 -0
  12. package/dist/index.cjs +59 -0
  13. package/dist/index.d.cts +212 -0
  14. package/dist/index.d.mts +201 -417
  15. package/dist/index.mjs +4 -583
  16. package/dist/openai-compat.cjs +319 -0
  17. package/dist/openai-compat.d.cts +98 -0
  18. package/dist/openai-compat.d.mts +98 -0
  19. package/dist/openai-compat.mjs +312 -0
  20. package/dist/run-agent-BFMkuI1F.cjs +1599 -0
  21. package/dist/run-agent-BVMd--1l.d.cts +1103 -0
  22. package/dist/run-agent-BoAOq_0Z.mjs +1540 -0
  23. package/dist/run-agent-DzYJb3CK.d.mts +1103 -0
  24. package/dist/src-D-77Ha5p.cjs +1087 -0
  25. package/dist/src-DUeIFjv-.mjs +1016 -0
  26. package/dist/text-logic-C7WJpCIc.d.mts +710 -0
  27. package/dist/text-logic-CZjyACzQ.d.cts +710 -0
  28. package/dist/types-C9QiMjre.d.cts +219 -0
  29. package/dist/types-qm00QF91.d.mts +219 -0
  30. package/dist/utils-Dri7aeEG.d.cts +108 -0
  31. package/dist/utils-Y6GDRGGE.d.mts +108 -0
  32. package/dist/zod.cjs +31 -0
  33. package/dist/zod.d.cts +30 -0
  34. package/dist/zod.d.mts +30 -0
  35. package/dist/zod.mjs +30 -0
  36. package/package.json +110 -29
  37. package/readme.md +143 -6
  38. package/schemas/agent-workflow.json +527 -0
  39. package/.changeset/README.md +0 -8
  40. package/.changeset/config.json +0 -11
  41. package/.env.template +0 -3
  42. package/.github/actions/ci-setup/action.yml +0 -24
  43. package/.github/workflows/release.yml +0 -46
  44. package/.vscode/launch.json +0 -28
  45. package/CHANGELOG.md +0 -215
  46. package/dist/index.d.ts +0 -428
  47. package/dist/index.js +0 -616
  48. package/examples/chatbot.ts +0 -71
  49. package/examples/cot.ts +0 -89
  50. package/examples/email.ts +0 -118
  51. package/examples/example.ts +0 -81
  52. package/examples/goal.ts +0 -94
  53. package/examples/helpers/helpers.ts +0 -17
  54. package/examples/helpers/loader.ts +0 -32
  55. package/examples/helpers/runner.ts +0 -27
  56. package/examples/joke.ts +0 -225
  57. package/examples/multi.ts +0 -103
  58. package/examples/newspaper.ts +0 -324
  59. package/examples/number.ts +0 -102
  60. package/examples/raffle.ts +0 -105
  61. package/examples/sandbox.ts +0 -28
  62. package/examples/simple.ts +0 -39
  63. package/examples/support.ts +0 -147
  64. package/examples/ticTacToe.ts +0 -224
  65. package/examples/todo.ts +0 -137
  66. package/examples/tutor.ts +0 -100
  67. package/examples/verify.ts +0 -120
  68. package/examples/weather.ts +0 -178
  69. package/examples/wiki.ts +0 -30
  70. package/examples/word.ts +0 -171
  71. package/src/adapters/vercel.ts +0 -7
  72. package/src/agent-experimental.ts +0 -221
  73. package/src/agent.test.ts +0 -506
  74. package/src/agent.ts +0 -300
  75. package/src/decision.test.ts +0 -179
  76. package/src/decision.ts +0 -84
  77. package/src/index.ts +0 -4
  78. package/src/memory.ts +0 -25
  79. package/src/planners/shortestPathPlanner.ts +0 -22
  80. package/src/planners/simplePlanner.ts +0 -139
  81. package/src/schemas.ts +0 -11
  82. package/src/strategies/chain-of-note.ts +0 -155
  83. package/src/templates/defaultText.ts +0 -18
  84. package/src/text.ts +0 -236
  85. package/src/types.ts +0 -499
  86. package/src/utils.ts +0 -72
  87. package/tsconfig.json +0 -109
  88. package/vitest.config.ts +0 -9
@@ -0,0 +1,527 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://stately.ai/schemas/agent-workflow.json",
4
+ "title": "Stately Agent Workflow Definition",
5
+ "description": "Static, declarative agent workflow definition that can be lowered to a setupAgent(...) XState machine.",
6
+ "type": "object",
7
+ "required": ["initial", "states"],
8
+ "properties": {
9
+ "key": {
10
+ "description": "Stable workflow key used by tools, storage, and visual editors.",
11
+ "type": "string",
12
+ "minLength": 1
13
+ },
14
+ "id": {
15
+ "description": "Optional XState machine id.",
16
+ "type": "string",
17
+ "minLength": 1
18
+ },
19
+ "version": {
20
+ "description": "Definition version chosen by the author.",
21
+ "type": "string"
22
+ },
23
+ "description": {
24
+ "type": "string"
25
+ },
26
+ "queryLanguage": {
27
+ "description": "Expression language used inside {{ }} expressions. The built-in setupAgent.fromConfig lowering currently supports simple dot-path expressions over input, context, and event.",
28
+ "type": "string",
29
+ "default": "path"
30
+ },
31
+ "schemas": {
32
+ "$ref": "#/$defs/AgentSchemas"
33
+ },
34
+ "context": {
35
+ "description": "Initial XState context. Values may be JSON literals or whole-string {{ }} expressions evaluated with machine input.",
36
+ "$ref": "#/$defs/ExpressionObject"
37
+ },
38
+ "requests": {
39
+ "description": "Named model requests that become typed invoke sources.",
40
+ "type": "object",
41
+ "propertyNames": {
42
+ "$ref": "#/$defs/Identifier"
43
+ },
44
+ "additionalProperties": {
45
+ "$ref": "#/$defs/Request"
46
+ },
47
+ "default": {}
48
+ },
49
+ "initial": {
50
+ "description": "Initial child state key.",
51
+ "type": "string"
52
+ },
53
+ "states": {
54
+ "description": "Root state nodes.",
55
+ "type": "object",
56
+ "minProperties": 1,
57
+ "propertyNames": {
58
+ "$ref": "#/$defs/Identifier"
59
+ },
60
+ "additionalProperties": {
61
+ "$ref": "#/$defs/State"
62
+ }
63
+ },
64
+ "meta": {
65
+ "$ref": "#/$defs/JsonObject"
66
+ }
67
+ },
68
+ "additionalProperties": false,
69
+ "$defs": {
70
+ "Identifier": {
71
+ "type": "string",
72
+ "minLength": 1,
73
+ "pattern": "^[A-Za-z_$][A-Za-z0-9_$.-]*$"
74
+ },
75
+ "ExpressionString": {
76
+ "description": "Whole-string expression delimited by {{ }}.",
77
+ "type": "string",
78
+ "pattern": "^\\{\\{[\\s\\S]*\\}\\}$"
79
+ },
80
+ "TemplateString": {
81
+ "description": "String that may contain {{ }} template expressions. Escape literal delimiters according to the selected expression/template evaluator.",
82
+ "type": "string"
83
+ },
84
+ "JsonValue": {
85
+ "anyOf": [
86
+ { "type": "null" },
87
+ { "type": "boolean" },
88
+ { "type": "number" },
89
+ { "type": "string" },
90
+ {
91
+ "type": "array",
92
+ "items": {
93
+ "$ref": "#/$defs/JsonValue"
94
+ }
95
+ },
96
+ {
97
+ "$ref": "#/$defs/JsonObject"
98
+ }
99
+ ]
100
+ },
101
+ "JsonObject": {
102
+ "type": "object",
103
+ "propertyNames": {
104
+ "type": "string"
105
+ },
106
+ "additionalProperties": {
107
+ "$ref": "#/$defs/JsonValue"
108
+ }
109
+ },
110
+ "ExpressionValue": {
111
+ "description": "JSON value or whole-string {{ }} expression. Use this for typed values, not prompt templating.",
112
+ "anyOf": [
113
+ { "$ref": "#/$defs/ExpressionString" },
114
+ { "type": "null" },
115
+ { "type": "boolean" },
116
+ { "type": "number" },
117
+ { "type": "string" },
118
+ {
119
+ "type": "array",
120
+ "items": {
121
+ "$ref": "#/$defs/ExpressionValue"
122
+ }
123
+ },
124
+ {
125
+ "type": "object",
126
+ "propertyNames": {
127
+ "type": "string"
128
+ },
129
+ "additionalProperties": {
130
+ "$ref": "#/$defs/ExpressionValue"
131
+ }
132
+ }
133
+ ]
134
+ },
135
+ "ExpressionObject": {
136
+ "type": "object",
137
+ "propertyNames": {
138
+ "type": "string"
139
+ },
140
+ "additionalProperties": {
141
+ "$ref": "#/$defs/ExpressionValue"
142
+ }
143
+ },
144
+ "JsonSchema": {
145
+ "description": "JSON Schema object.",
146
+ "type": "object",
147
+ "propertyNames": {
148
+ "type": "string"
149
+ },
150
+ "additionalProperties": true
151
+ },
152
+ "AgentSchemas": {
153
+ "type": "object",
154
+ "properties": {
155
+ "input": {
156
+ "$ref": "#/$defs/JsonSchema"
157
+ },
158
+ "context": {
159
+ "$ref": "#/$defs/JsonSchema"
160
+ },
161
+ "events": {
162
+ "type": "object",
163
+ "propertyNames": {
164
+ "$ref": "#/$defs/Identifier"
165
+ },
166
+ "additionalProperties": {
167
+ "$ref": "#/$defs/JsonSchema"
168
+ }
169
+ },
170
+ "emitted": {
171
+ "type": "object",
172
+ "description": "Schemas for events emitted outward by emit actions, keyed by emitted event type.",
173
+ "propertyNames": {
174
+ "$ref": "#/$defs/Identifier"
175
+ },
176
+ "additionalProperties": {
177
+ "$ref": "#/$defs/JsonSchema"
178
+ }
179
+ },
180
+ "output": {
181
+ "$ref": "#/$defs/JsonSchema"
182
+ },
183
+ "meta": {
184
+ "$ref": "#/$defs/JsonSchema"
185
+ }
186
+ },
187
+ "additionalProperties": false
188
+ },
189
+ "Request": {
190
+ "type": "object",
191
+ "required": ["model", "input", "output"],
192
+ "properties": {
193
+ "mode": {
194
+ "type": "string",
195
+ "enum": ["generate", "stream"],
196
+ "default": "generate"
197
+ },
198
+ "description": {
199
+ "type": "string"
200
+ },
201
+ "model": {
202
+ "$ref": "#/$defs/TemplateString"
203
+ },
204
+ "system": {
205
+ "$ref": "#/$defs/TemplateString"
206
+ },
207
+ "prompt": {
208
+ "$ref": "#/$defs/TemplateString"
209
+ },
210
+ "messages": {
211
+ "anyOf": [
212
+ { "$ref": "#/$defs/ExpressionString" },
213
+ {
214
+ "type": "array",
215
+ "items": {
216
+ "$ref": "#/$defs/Message"
217
+ }
218
+ }
219
+ ]
220
+ },
221
+ "input": {
222
+ "$ref": "#/$defs/JsonSchema"
223
+ },
224
+ "output": {
225
+ "$ref": "#/$defs/JsonSchema"
226
+ },
227
+ "tools": {
228
+ "type": "object",
229
+ "propertyNames": {
230
+ "$ref": "#/$defs/Identifier"
231
+ },
232
+ "additionalProperties": {
233
+ "$ref": "#/$defs/Tool"
234
+ }
235
+ },
236
+ "toolChoice": {
237
+ "anyOf": [
238
+ {
239
+ "type": "string",
240
+ "enum": ["auto", "none", "required"]
241
+ },
242
+ {
243
+ "type": "object",
244
+ "required": ["type", "name"],
245
+ "properties": {
246
+ "type": {
247
+ "const": "tool"
248
+ },
249
+ "name": {
250
+ "$ref": "#/$defs/Identifier"
251
+ }
252
+ },
253
+ "additionalProperties": false
254
+ },
255
+ { "$ref": "#/$defs/ExpressionString" }
256
+ ]
257
+ },
258
+ "temperature": {
259
+ "$ref": "#/$defs/ExpressionValue"
260
+ },
261
+ "maxOutputTokens": {
262
+ "$ref": "#/$defs/ExpressionValue"
263
+ },
264
+ "topP": {
265
+ "$ref": "#/$defs/ExpressionValue"
266
+ },
267
+ "topK": {
268
+ "$ref": "#/$defs/ExpressionValue"
269
+ },
270
+ "seed": {
271
+ "$ref": "#/$defs/ExpressionValue"
272
+ },
273
+ "stopSequences": {
274
+ "anyOf": [
275
+ { "$ref": "#/$defs/ExpressionString" },
276
+ {
277
+ "type": "array",
278
+ "items": {
279
+ "type": "string"
280
+ }
281
+ }
282
+ ]
283
+ },
284
+ "metadata": {
285
+ "$ref": "#/$defs/ExpressionValue"
286
+ }
287
+ },
288
+ "additionalProperties": false
289
+ },
290
+ "Message": {
291
+ "type": "object",
292
+ "required": ["role", "content"],
293
+ "properties": {
294
+ "role": {
295
+ "$ref": "#/$defs/TemplateString"
296
+ },
297
+ "content": {
298
+ "$ref": "#/$defs/TemplateString"
299
+ }
300
+ },
301
+ "additionalProperties": {
302
+ "$ref": "#/$defs/ExpressionValue"
303
+ }
304
+ },
305
+ "Tool": {
306
+ "type": "object",
307
+ "properties": {
308
+ "description": {
309
+ "type": "string"
310
+ },
311
+ "input": {
312
+ "$ref": "#/$defs/JsonSchema"
313
+ },
314
+ "output": {
315
+ "$ref": "#/$defs/JsonSchema"
316
+ }
317
+ },
318
+ "additionalProperties": {
319
+ "$ref": "#/$defs/JsonValue"
320
+ }
321
+ },
322
+ "State": {
323
+ "type": "object",
324
+ "properties": {
325
+ "description": {
326
+ "type": "string"
327
+ },
328
+ "type": {
329
+ "type": "string",
330
+ "enum": ["parallel", "history", "final", "choice"]
331
+ },
332
+ "initial": {
333
+ "type": "string"
334
+ },
335
+ "states": {
336
+ "type": "object",
337
+ "propertyNames": {
338
+ "$ref": "#/$defs/Identifier"
339
+ },
340
+ "additionalProperties": {
341
+ "$ref": "#/$defs/State"
342
+ }
343
+ },
344
+ "invoke": {
345
+ "anyOf": [
346
+ { "$ref": "#/$defs/Invoke" },
347
+ {
348
+ "type": "array",
349
+ "items": {
350
+ "$ref": "#/$defs/Invoke"
351
+ }
352
+ }
353
+ ]
354
+ },
355
+ "choice": {
356
+ "description": "Choice-state routing, equivalent to XState's type: 'choice' + choice transition function.",
357
+ "$ref": "#/$defs/TransitionOrArray"
358
+ },
359
+ "on": {
360
+ "type": "object",
361
+ "propertyNames": {
362
+ "type": "string"
363
+ },
364
+ "additionalProperties": {
365
+ "$ref": "#/$defs/TransitionOrArray"
366
+ }
367
+ },
368
+ "always": {
369
+ "$ref": "#/$defs/TransitionOrArray"
370
+ },
371
+ "onDone": {
372
+ "$ref": "#/$defs/TransitionOrArray"
373
+ },
374
+ "after": {
375
+ "type": "object",
376
+ "propertyNames": {
377
+ "type": "string"
378
+ },
379
+ "additionalProperties": {
380
+ "$ref": "#/$defs/TransitionOrArray"
381
+ }
382
+ },
383
+ "entry": {
384
+ "$ref": "#/$defs/ActionOrArray"
385
+ },
386
+ "exit": {
387
+ "$ref": "#/$defs/ActionOrArray"
388
+ },
389
+ "tags": {
390
+ "type": "array",
391
+ "items": {
392
+ "type": "string"
393
+ }
394
+ },
395
+ "output": {
396
+ "$ref": "#/$defs/ExpressionValue"
397
+ },
398
+ "meta": {
399
+ "$ref": "#/$defs/ExpressionObject"
400
+ }
401
+ },
402
+ "additionalProperties": false
403
+ },
404
+ "Invoke": {
405
+ "type": "object",
406
+ "required": ["src"],
407
+ "properties": {
408
+ "id": {
409
+ "type": "string"
410
+ },
411
+ "src": {
412
+ "description": "Actor source name. 'agent.decide' invokes are special: decision delivery is automatic (the chosen event is sent as soon as the model decides) and 'onDone' must be omitted — see the 'onDone' description.",
413
+ "$ref": "#/$defs/Identifier"
414
+ },
415
+ "input": {
416
+ "$ref": "#/$defs/ExpressionValue"
417
+ },
418
+ "onDone": {
419
+ "description": "Not valid on an 'agent.decide' invoke — the built-in lowering rejects it at setupAgent.fromConfig(...) time. A decision has no output value of its own (its output IS the chosen event), so delivery is automatic and not configurable from JSON. 'onError' (retries exhausted) still applies to 'agent.decide' invokes.",
420
+ "$ref": "#/$defs/TransitionOrArray"
421
+ },
422
+ "onError": {
423
+ "$ref": "#/$defs/TransitionOrArray"
424
+ },
425
+ "meta": {
426
+ "$ref": "#/$defs/ExpressionObject"
427
+ }
428
+ },
429
+ "additionalProperties": false
430
+ },
431
+ "TransitionOrArray": {
432
+ "anyOf": [
433
+ { "$ref": "#/$defs/Transition" },
434
+ {
435
+ "type": "array",
436
+ "items": {
437
+ "$ref": "#/$defs/Transition"
438
+ }
439
+ }
440
+ ]
441
+ },
442
+ "Transition": {
443
+ "type": "object",
444
+ "properties": {
445
+ "target": {
446
+ "anyOf": [
447
+ { "type": "string" },
448
+ {
449
+ "type": "array",
450
+ "items": {
451
+ "type": "string"
452
+ }
453
+ }
454
+ ]
455
+ },
456
+ "guard": {
457
+ "anyOf": [
458
+ { "$ref": "#/$defs/ExpressionString" },
459
+ {
460
+ "type": "object",
461
+ "required": ["type"],
462
+ "properties": {
463
+ "type": {
464
+ "type": "string"
465
+ },
466
+ "params": {
467
+ "$ref": "#/$defs/ExpressionValue"
468
+ }
469
+ },
470
+ "additionalProperties": false
471
+ }
472
+ ]
473
+ },
474
+ "assign": {
475
+ "description": "Context assignments applied when this transition is taken.",
476
+ "$ref": "#/$defs/ExpressionObject"
477
+ },
478
+ "actions": {
479
+ "$ref": "#/$defs/ActionOrArray"
480
+ },
481
+ "description": {
482
+ "type": "string"
483
+ },
484
+ "reenter": {
485
+ "type": "boolean"
486
+ },
487
+ "meta": {
488
+ "$ref": "#/$defs/ExpressionObject"
489
+ }
490
+ },
491
+ "additionalProperties": false
492
+ },
493
+ "ActionOrArray": {
494
+ "anyOf": [
495
+ { "$ref": "#/$defs/Action" },
496
+ {
497
+ "type": "array",
498
+ "items": {
499
+ "$ref": "#/$defs/Action"
500
+ }
501
+ }
502
+ ]
503
+ },
504
+ "Action": {
505
+ "type": "object",
506
+ "properties": {
507
+ "type": {
508
+ "type": "string"
509
+ },
510
+ "params": {
511
+ "$ref": "#/$defs/ExpressionValue"
512
+ },
513
+ "assign": {
514
+ "$ref": "#/$defs/ExpressionObject"
515
+ },
516
+ "emit": {
517
+ "description": "Event emitted outward through runAgent's on handlers.",
518
+ "$ref": "#/$defs/ExpressionValue"
519
+ }
520
+ },
521
+ "anyOf": [{ "required": ["type"] }, { "required": ["assign"] }, { "required": ["emit"] }],
522
+ "additionalProperties": {
523
+ "$ref": "#/$defs/ExpressionValue"
524
+ }
525
+ }
526
+ }
527
+ }
@@ -1,8 +0,0 @@
1
- # Changesets
2
-
3
- Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works
4
- with multi-package repos, or single-package repos to help you version and publish your code. You can
5
- find the full documentation for it [in our repository](https://github.com/changesets/changesets)
6
-
7
- We have a quick list of common questions to get you started engaging with this project in
8
- [our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md)
@@ -1,11 +0,0 @@
1
- {
2
- "$schema": "https://unpkg.com/@changesets/config@3.0.0/schema.json",
3
- "changelog": ["@changesets/changelog-github", { "repo": "statelyai/agent" }],
4
- "commit": false,
5
- "fixed": [],
6
- "linked": [],
7
- "access": "restricted",
8
- "baseBranch": "main",
9
- "updateInternalDependencies": "patch",
10
- "ignore": []
11
- }
package/.env.template DELETED
@@ -1,3 +0,0 @@
1
-
2
- # Get your OpenAI API key from: https://platform.openai.com/signup/
3
- OPENAI_API_KEY="sk-..."
@@ -1,24 +0,0 @@
1
- name: Setup Workflow
2
- description: Composite action that sets up pnpm
3
- runs:
4
- using: 'composite'
5
- steps:
6
- - uses: pnpm/action-setup@v2
7
- - uses: actions/setup-node@v4
8
- with:
9
- node-version: 20.x
10
-
11
- - name: install pnpm
12
- run: npm i pnpm@latest -g
13
- shell: bash
14
-
15
- - name: Setup npmrc
16
- run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > .npmrc
17
- shell: bash
18
-
19
- - name: setup pnpm config
20
- run: pnpm config set store-dir $PNPM_CACHE_FOLDER
21
- shell: bash
22
-
23
- - run: pnpm install
24
- shell: bash
@@ -1,46 +0,0 @@
1
- name: Release
2
-
3
- on:
4
- push:
5
- branches:
6
- - main
7
-
8
- concurrency: ${{ github.workflow }}-${{ github.ref }}
9
-
10
- permissions: {}
11
- jobs:
12
- release:
13
- permissions:
14
- contents: write # to create release (changesets/action)
15
- issues: write # to post issue comments (changesets/action)
16
- pull-requests: write # to create pull request (changesets/action)
17
-
18
- if: github.repository == 'statelyai/agent'
19
-
20
- timeout-minutes: 20
21
-
22
- runs-on: ubuntu-latest
23
-
24
- steps:
25
- - name: checkout code repository
26
- uses: actions/checkout@v3
27
- with:
28
- fetch-depth: 0
29
- - name: setup node.js
30
- uses: actions/setup-node@v3
31
- with:
32
- node-version: 20
33
- - name: install pnpm
34
- run: npm i pnpm@latest -g
35
- - name: setup pnpm config
36
- run: pnpm config set store-dir $PNPM_CACHE_FOLDER
37
- - name: install dependencies
38
- run: pnpm install
39
- - name: create and publish versions
40
- uses: changesets/action@v1
41
- with:
42
- publish: pnpm run release
43
- version: pnpm run version
44
- env:
45
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
46
- NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
@@ -1,28 +0,0 @@
1
- {
2
- // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
3
- "version": "0.2.0",
4
- "configurations": [
5
- {
6
- "type": "node",
7
- "request": "launch",
8
- "name": "Debug Current Test File",
9
- "autoAttachChildProcesses": true,
10
- "skipFiles": ["<node_internals>/**", "**/node_modules/**", "examples/**"],
11
- "program": "${workspaceRoot}/node_modules/vitest/vitest.mjs",
12
- "args": ["run", "${relativeFile}"],
13
- "smartStep": true,
14
- "console": "integratedTerminal"
15
- },
16
- {
17
- "type": "node",
18
- "request": "launch",
19
- "name": "Debug Current File",
20
- "program": "${file}",
21
- "cwd": "${workspaceFolder}",
22
- "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/ts-node",
23
- "outFiles": ["${workspaceFolder}/dist/**/*.js"],
24
- "sourceMaps": true,
25
- "console": "integratedTerminal"
26
- }
27
- ]
28
- }