@easynet/agent-tool-buildin 0.0.6 → 0.0.8

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 (74) hide show
  1. package/dist/core-tools-manifest.json +2152 -5
  2. package/dist/src/exec/runCommand.d.ts +13 -2
  3. package/dist/src/exec/runCommand.d.ts.map +1 -1
  4. package/dist/src/exec/runCommand.js +2 -2
  5. package/dist/src/exec/runCommand.js.map +1 -1
  6. package/dist/src/fs/deletePath.d.ts +19 -2
  7. package/dist/src/fs/deletePath.d.ts.map +1 -1
  8. package/dist/src/fs/deletePath.js +2 -2
  9. package/dist/src/fs/deletePath.js.map +1 -1
  10. package/dist/src/fs/listDir.d.ts +31 -2
  11. package/dist/src/fs/listDir.d.ts.map +1 -1
  12. package/dist/src/fs/listDir.js +2 -2
  13. package/dist/src/fs/listDir.js.map +1 -1
  14. package/dist/src/fs/readText.d.ts +18 -2
  15. package/dist/src/fs/readText.d.ts.map +1 -1
  16. package/dist/src/fs/readText.js +2 -2
  17. package/dist/src/fs/readText.js.map +1 -1
  18. package/dist/src/fs/searchText.d.ts +34 -2
  19. package/dist/src/fs/searchText.d.ts.map +1 -1
  20. package/dist/src/fs/searchText.js +2 -2
  21. package/dist/src/fs/searchText.js.map +1 -1
  22. package/dist/src/fs/sha256.d.ts +17 -2
  23. package/dist/src/fs/sha256.d.ts.map +1 -1
  24. package/dist/src/fs/sha256.js +2 -2
  25. package/dist/src/fs/sha256.js.map +1 -1
  26. package/dist/src/fs/writeText.d.ts +22 -2
  27. package/dist/src/fs/writeText.d.ts.map +1 -1
  28. package/dist/src/fs/writeText.js +2 -2
  29. package/dist/src/fs/writeText.js.map +1 -1
  30. package/dist/src/http/downloadFile.d.ts +27 -2
  31. package/dist/src/http/downloadFile.d.ts.map +1 -1
  32. package/dist/src/http/downloadFile.js +2 -2
  33. package/dist/src/http/downloadFile.js.map +1 -1
  34. package/dist/src/http/duckduckgoSearch.d.ts +31 -2
  35. package/dist/src/http/duckduckgoSearch.d.ts.map +1 -1
  36. package/dist/src/http/duckduckgoSearch.js +2 -2
  37. package/dist/src/http/duckduckgoSearch.js.map +1 -1
  38. package/dist/src/http/fetchJson.d.ts +23 -2
  39. package/dist/src/http/fetchJson.d.ts.map +1 -1
  40. package/dist/src/http/fetchJson.js +2 -2
  41. package/dist/src/http/fetchJson.js.map +1 -1
  42. package/dist/src/http/fetchPageMainContent.d.ts +22 -2
  43. package/dist/src/http/fetchPageMainContent.d.ts.map +1 -1
  44. package/dist/src/http/fetchPageMainContent.js +2 -2
  45. package/dist/src/http/fetchPageMainContent.js.map +1 -1
  46. package/dist/src/http/fetchText.d.ts +24 -2
  47. package/dist/src/http/fetchText.d.ts.map +1 -1
  48. package/dist/src/http/fetchText.js +2 -2
  49. package/dist/src/http/fetchText.js.map +1 -1
  50. package/dist/src/http/head.d.ts +19 -2
  51. package/dist/src/http/head.d.ts.map +1 -1
  52. package/dist/src/http/head.js +2 -2
  53. package/dist/src/http/head.js.map +1 -1
  54. package/dist/src/http/yahooFinance.d.ts +20 -2
  55. package/dist/src/http/yahooFinance.d.ts.map +1 -1
  56. package/dist/src/http/yahooFinance.js +2 -2
  57. package/dist/src/http/yahooFinance.js.map +1 -1
  58. package/dist/src/util/hashText.d.ts +13 -2
  59. package/dist/src/util/hashText.d.ts.map +1 -1
  60. package/dist/src/util/hashText.js +2 -2
  61. package/dist/src/util/hashText.js.map +1 -1
  62. package/dist/src/util/jsonSelect.d.ts +16 -2
  63. package/dist/src/util/jsonSelect.d.ts.map +1 -1
  64. package/dist/src/util/jsonSelect.js +2 -2
  65. package/dist/src/util/jsonSelect.js.map +1 -1
  66. package/dist/src/util/templateRender.d.ts +14 -2
  67. package/dist/src/util/templateRender.d.ts.map +1 -1
  68. package/dist/src/util/templateRender.js +2 -2
  69. package/dist/src/util/templateRender.js.map +1 -1
  70. package/dist/src/util/truncate.d.ts +17 -2
  71. package/dist/src/util/truncate.d.ts.map +1 -1
  72. package/dist/src/util/truncate.js +2 -2
  73. package/dist/src/util/truncate.js.map +1 -1
  74. package/package.json +1 -1
@@ -2,24 +2,2023 @@
2
2
  "kind": "core",
3
3
  "tools": [
4
4
  {
5
- "coreName": "core/src.util.now",
6
- "description": "Get the current time in various formats.",
5
+ "name": "exec.runCommand",
6
+ "description": "Run a Linux command in the sandbox with an allowlist and timeout.",
7
+ "inputSchema": {
8
+ "type": "object",
9
+ "properties": {
10
+ "command": {
11
+ "type": "string"
12
+ },
13
+ "cmd": {
14
+ "type": "string"
15
+ },
16
+ "args": {
17
+ "type": "array",
18
+ "items": {
19
+ "type": "string"
20
+ }
21
+ },
22
+ "arguments": {
23
+ "type": "array",
24
+ "items": {
25
+ "type": "string"
26
+ }
27
+ },
28
+ "cwd": {
29
+ "type": "string"
30
+ },
31
+ "timeoutMs": {
32
+ "type": "number"
33
+ }
34
+ },
35
+ "required": [
36
+ "command"
37
+ ]
38
+ },
39
+ "outputSchema": {
40
+ "type": "object",
41
+ "properties": {
42
+ "result": {},
43
+ "evidence": {
44
+ "type": "array",
45
+ "items": {}
46
+ }
47
+ },
48
+ "required": [
49
+ "result",
50
+ "evidence"
51
+ ]
52
+ },
53
+ "sourcePath": "src/exec/runCommand",
54
+ "exportName": "runCommandHandler",
55
+ "sideEffect": "local_write"
56
+ },
57
+ {
58
+ "name": "fs.deletePath",
59
+ "description": "Delete a file or directory in the sandbox (dangerous, requires explicit confirmation).",
60
+ "inputSchema": {
61
+ "type": "object",
62
+ "properties": {
63
+ "path": {
64
+ "type": "string"
65
+ },
66
+ "filePath": {
67
+ "type": "string"
68
+ },
69
+ "recursive": {
70
+ "type": "object",
71
+ "properties": {}
72
+ },
73
+ "confirm": {
74
+ "type": "boolean"
75
+ }
76
+ },
77
+ "required": [
78
+ "path",
79
+ "confirm"
80
+ ]
81
+ },
82
+ "outputSchema": {
83
+ "type": "object",
84
+ "properties": {
85
+ "result": {
86
+ "type": "object",
87
+ "properties": {
88
+ "path": {
89
+ "type": "string"
90
+ },
91
+ "deleted": {
92
+ "type": "boolean"
93
+ },
94
+ "type": {
95
+ "type": "string"
96
+ }
97
+ },
98
+ "required": [
99
+ "path",
100
+ "deleted",
101
+ "type"
102
+ ]
103
+ },
104
+ "evidence": {
105
+ "type": "array",
106
+ "items": {
107
+ "type": "object",
108
+ "properties": {
109
+ "type": {
110
+ "type": "string"
111
+ },
112
+ "ref": {
113
+ "type": "string"
114
+ },
115
+ "summary": {
116
+ "type": "string"
117
+ },
118
+ "createdAt": {
119
+ "type": "string"
120
+ }
121
+ },
122
+ "required": [
123
+ "type",
124
+ "ref",
125
+ "summary",
126
+ "createdAt"
127
+ ]
128
+ }
129
+ }
130
+ },
131
+ "required": [
132
+ "result",
133
+ "evidence"
134
+ ]
135
+ },
136
+ "sourcePath": "src/fs/deletePath",
137
+ "exportName": "deletePathHandler",
138
+ "sideEffect": "destructive"
139
+ },
140
+ {
141
+ "name": "fs.listDir",
142
+ "description": "List directory contents in the sandbox.",
143
+ "inputSchema": {
144
+ "type": "object",
145
+ "properties": {
146
+ "path": {
147
+ "type": "string"
148
+ },
149
+ "filePath": {
150
+ "type": "string"
151
+ },
152
+ "dir": {
153
+ "type": "string"
154
+ },
155
+ "directory": {
156
+ "type": "string"
157
+ },
158
+ "maxEntries": {
159
+ "type": "number"
160
+ },
161
+ "includeHidden": {
162
+ "type": "object",
163
+ "properties": {}
164
+ },
165
+ "recursive": {
166
+ "type": "object",
167
+ "properties": {}
168
+ },
169
+ "maxDepth": {
170
+ "type": "number"
171
+ }
172
+ },
173
+ "required": [
174
+ "path"
175
+ ]
176
+ },
177
+ "outputSchema": {
178
+ "type": "object",
179
+ "properties": {
180
+ "result": {
181
+ "type": "object",
182
+ "properties": {
183
+ "path": {
184
+ "type": "string"
185
+ },
186
+ "entries": {
187
+ "type": "array",
188
+ "items": {
189
+ "type": "object",
190
+ "properties": {
191
+ "name": {
192
+ "type": "string"
193
+ },
194
+ "type": {
195
+ "type": "object",
196
+ "properties": {
197
+ "toString": {
198
+ "type": "object",
199
+ "properties": {}
200
+ },
201
+ "charAt": {
202
+ "type": "object",
203
+ "properties": {}
204
+ },
205
+ "charCodeAt": {
206
+ "type": "object",
207
+ "properties": {}
208
+ },
209
+ "concat": {
210
+ "type": "object",
211
+ "properties": {}
212
+ },
213
+ "indexOf": {
214
+ "type": "object",
215
+ "properties": {}
216
+ },
217
+ "lastIndexOf": {
218
+ "type": "object",
219
+ "properties": {}
220
+ },
221
+ "localeCompare": {
222
+ "type": "object",
223
+ "properties": {}
224
+ },
225
+ "match": {
226
+ "type": "object",
227
+ "properties": {}
228
+ },
229
+ "replace": {
230
+ "type": "object",
231
+ "properties": {}
232
+ },
233
+ "search": {
234
+ "type": "object",
235
+ "properties": {}
236
+ },
237
+ "slice": {
238
+ "type": "object",
239
+ "properties": {}
240
+ },
241
+ "split": {
242
+ "type": "object",
243
+ "properties": {}
244
+ },
245
+ "substring": {
246
+ "type": "object",
247
+ "properties": {}
248
+ },
249
+ "toLowerCase": {
250
+ "type": "object",
251
+ "properties": {}
252
+ },
253
+ "toLocaleLowerCase": {
254
+ "type": "object",
255
+ "properties": {}
256
+ },
257
+ "toUpperCase": {
258
+ "type": "object",
259
+ "properties": {}
260
+ },
261
+ "toLocaleUpperCase": {
262
+ "type": "object",
263
+ "properties": {}
264
+ },
265
+ "trim": {
266
+ "type": "object",
267
+ "properties": {}
268
+ },
269
+ "length": {
270
+ "type": "number"
271
+ },
272
+ "substr": {
273
+ "type": "object",
274
+ "properties": {}
275
+ },
276
+ "valueOf": {
277
+ "type": "object",
278
+ "properties": {}
279
+ },
280
+ "codePointAt": {
281
+ "type": "object",
282
+ "properties": {}
283
+ },
284
+ "includes": {
285
+ "type": "object",
286
+ "properties": {}
287
+ },
288
+ "endsWith": {
289
+ "type": "object",
290
+ "properties": {}
291
+ },
292
+ "normalize": {
293
+ "type": "object",
294
+ "properties": {}
295
+ },
296
+ "repeat": {
297
+ "type": "object",
298
+ "properties": {}
299
+ },
300
+ "startsWith": {
301
+ "type": "object",
302
+ "properties": {}
303
+ },
304
+ "anchor": {
305
+ "type": "object",
306
+ "properties": {}
307
+ },
308
+ "big": {
309
+ "type": "object",
310
+ "properties": {}
311
+ },
312
+ "blink": {
313
+ "type": "object",
314
+ "properties": {}
315
+ },
316
+ "bold": {
317
+ "type": "object",
318
+ "properties": {}
319
+ },
320
+ "fixed": {
321
+ "type": "object",
322
+ "properties": {}
323
+ },
324
+ "fontcolor": {
325
+ "type": "object",
326
+ "properties": {}
327
+ },
328
+ "fontsize": {
329
+ "type": "object",
330
+ "properties": {}
331
+ },
332
+ "italics": {
333
+ "type": "object",
334
+ "properties": {}
335
+ },
336
+ "link": {
337
+ "type": "object",
338
+ "properties": {}
339
+ },
340
+ "small": {
341
+ "type": "object",
342
+ "properties": {}
343
+ },
344
+ "strike": {
345
+ "type": "object",
346
+ "properties": {}
347
+ },
348
+ "sub": {
349
+ "type": "object",
350
+ "properties": {}
351
+ },
352
+ "sup": {
353
+ "type": "object",
354
+ "properties": {}
355
+ },
356
+ "padStart": {
357
+ "type": "object",
358
+ "properties": {}
359
+ },
360
+ "padEnd": {
361
+ "type": "object",
362
+ "properties": {}
363
+ },
364
+ "trimEnd": {
365
+ "type": "object",
366
+ "properties": {}
367
+ },
368
+ "trimStart": {
369
+ "type": "object",
370
+ "properties": {}
371
+ },
372
+ "trimLeft": {
373
+ "type": "object",
374
+ "properties": {}
375
+ },
376
+ "trimRight": {
377
+ "type": "object",
378
+ "properties": {}
379
+ },
380
+ "matchAll": {
381
+ "type": "object",
382
+ "properties": {}
383
+ },
384
+ "replaceAll": {
385
+ "type": "object",
386
+ "properties": {}
387
+ },
388
+ "at": {
389
+ "type": "object",
390
+ "properties": {}
391
+ },
392
+ "__@iterator@157": {
393
+ "type": "object",
394
+ "properties": {}
395
+ }
396
+ },
397
+ "required": [
398
+ "toString",
399
+ "charAt",
400
+ "charCodeAt",
401
+ "concat",
402
+ "indexOf",
403
+ "lastIndexOf",
404
+ "localeCompare",
405
+ "match",
406
+ "replace",
407
+ "search",
408
+ "slice",
409
+ "split",
410
+ "substring",
411
+ "toLowerCase",
412
+ "toLocaleLowerCase",
413
+ "toUpperCase",
414
+ "toLocaleUpperCase",
415
+ "trim",
416
+ "length",
417
+ "substr",
418
+ "valueOf",
419
+ "codePointAt",
420
+ "includes",
421
+ "endsWith",
422
+ "normalize",
423
+ "repeat",
424
+ "startsWith",
425
+ "anchor",
426
+ "big",
427
+ "blink",
428
+ "bold",
429
+ "fixed",
430
+ "fontcolor",
431
+ "fontsize",
432
+ "italics",
433
+ "link",
434
+ "small",
435
+ "strike",
436
+ "sub",
437
+ "sup",
438
+ "padStart",
439
+ "padEnd",
440
+ "trimEnd",
441
+ "trimStart",
442
+ "trimLeft",
443
+ "trimRight",
444
+ "matchAll",
445
+ "replaceAll",
446
+ "at",
447
+ "__@iterator@157"
448
+ ]
449
+ },
450
+ "size": {
451
+ "type": "number"
452
+ },
453
+ "mtime": {
454
+ "type": "string"
455
+ }
456
+ },
457
+ "required": [
458
+ "name",
459
+ "type",
460
+ "size",
461
+ "mtime"
462
+ ]
463
+ }
464
+ },
465
+ "totalEntries": {
466
+ "type": "number"
467
+ },
468
+ "truncated": {
469
+ "type": "boolean"
470
+ }
471
+ },
472
+ "required": [
473
+ "path",
474
+ "entries",
475
+ "totalEntries",
476
+ "truncated"
477
+ ]
478
+ },
479
+ "evidence": {
480
+ "type": "array",
481
+ "items": {
482
+ "type": "object",
483
+ "properties": {
484
+ "type": {
485
+ "type": "string"
486
+ },
487
+ "ref": {
488
+ "type": "string"
489
+ },
490
+ "summary": {
491
+ "type": "string"
492
+ },
493
+ "createdAt": {
494
+ "type": "string"
495
+ }
496
+ },
497
+ "required": [
498
+ "type",
499
+ "ref",
500
+ "summary",
501
+ "createdAt"
502
+ ]
503
+ }
504
+ }
505
+ },
506
+ "required": [
507
+ "result",
508
+ "evidence"
509
+ ]
510
+ },
511
+ "sourcePath": "src/fs/listDir",
512
+ "exportName": "listDirHandler",
513
+ "sideEffect": "none"
514
+ },
515
+ {
516
+ "name": "fs.readText",
517
+ "description": "Read a UTF-8 text file from the sandbox.",
518
+ "inputSchema": {
519
+ "type": "object",
520
+ "properties": {
521
+ "path": {
522
+ "type": "string"
523
+ },
524
+ "filePath": {
525
+ "type": "string"
526
+ },
527
+ "maxBytes": {
528
+ "type": "number"
529
+ }
530
+ },
531
+ "required": [
532
+ "path"
533
+ ]
534
+ },
535
+ "outputSchema": {
536
+ "type": "object",
537
+ "properties": {
538
+ "result": {
539
+ "type": "object",
540
+ "properties": {
541
+ "path": {
542
+ "type": "string"
543
+ },
544
+ "text": {
545
+ "type": "string"
546
+ },
547
+ "bytes": {
548
+ "type": "number"
549
+ }
550
+ },
551
+ "required": [
552
+ "path",
553
+ "text",
554
+ "bytes"
555
+ ]
556
+ },
557
+ "evidence": {
558
+ "type": "array",
559
+ "items": {
560
+ "type": "object",
561
+ "properties": {
562
+ "type": {
563
+ "type": "string"
564
+ },
565
+ "ref": {
566
+ "type": "string"
567
+ },
568
+ "summary": {
569
+ "type": "string"
570
+ },
571
+ "createdAt": {
572
+ "type": "string"
573
+ }
574
+ },
575
+ "required": [
576
+ "type",
577
+ "ref",
578
+ "summary",
579
+ "createdAt"
580
+ ]
581
+ }
582
+ }
583
+ },
584
+ "required": [
585
+ "result",
586
+ "evidence"
587
+ ]
588
+ },
589
+ "sourcePath": "src/fs/readText",
590
+ "exportName": "readTextHandler",
591
+ "sideEffect": "none"
592
+ },
593
+ {
594
+ "name": "fs.searchText",
595
+ "description": "Search for text patterns in files within the sandbox.",
596
+ "inputSchema": {
597
+ "type": "object",
598
+ "properties": {
599
+ "root": {
600
+ "type": "string"
601
+ },
602
+ "path": {
603
+ "type": "string"
604
+ },
605
+ "dir": {
606
+ "type": "string"
607
+ },
608
+ "directory": {
609
+ "type": "string"
610
+ },
611
+ "query": {
612
+ "type": "string"
613
+ },
614
+ "q": {
615
+ "type": "string"
616
+ },
617
+ "glob": {
618
+ "type": "string"
619
+ },
620
+ "maxMatches": {
621
+ "type": "number"
622
+ },
623
+ "maxFiles": {
624
+ "type": "number"
625
+ }
626
+ },
627
+ "required": [
628
+ "root",
629
+ "query"
630
+ ]
631
+ },
632
+ "outputSchema": {
633
+ "type": "object",
634
+ "properties": {
635
+ "result": {
636
+ "type": "object",
637
+ "properties": {
638
+ "root": {
639
+ "type": "string"
640
+ },
641
+ "query": {
642
+ "type": "string"
643
+ },
644
+ "matches": {
645
+ "type": "array",
646
+ "items": {
647
+ "type": "object",
648
+ "properties": {
649
+ "file": {
650
+ "type": "string"
651
+ },
652
+ "lineNo": {
653
+ "type": "number"
654
+ },
655
+ "excerpt": {
656
+ "type": "string"
657
+ }
658
+ },
659
+ "required": [
660
+ "file",
661
+ "lineNo",
662
+ "excerpt"
663
+ ]
664
+ }
665
+ },
666
+ "totalMatches": {
667
+ "type": "number"
668
+ },
669
+ "filesScanned": {
670
+ "type": "number"
671
+ },
672
+ "truncated": {
673
+ "type": "boolean"
674
+ }
675
+ },
676
+ "required": [
677
+ "root",
678
+ "query",
679
+ "matches",
680
+ "totalMatches",
681
+ "filesScanned",
682
+ "truncated"
683
+ ]
684
+ },
685
+ "evidence": {
686
+ "type": "array",
687
+ "items": {
688
+ "type": "object",
689
+ "properties": {
690
+ "type": {
691
+ "type": "string"
692
+ },
693
+ "ref": {
694
+ "type": "string"
695
+ },
696
+ "summary": {
697
+ "type": "string"
698
+ },
699
+ "createdAt": {
700
+ "type": "string"
701
+ }
702
+ },
703
+ "required": [
704
+ "type",
705
+ "ref",
706
+ "summary",
707
+ "createdAt"
708
+ ]
709
+ }
710
+ }
711
+ },
712
+ "required": [
713
+ "result",
714
+ "evidence"
715
+ ]
716
+ },
717
+ "sourcePath": "src/fs/searchText",
718
+ "exportName": "searchTextHandler",
719
+ "sideEffect": "none"
720
+ },
721
+ {
722
+ "name": "fs.sha256",
723
+ "description": "Compute SHA-256 hash of a file in the sandbox.",
724
+ "inputSchema": {
725
+ "type": "object",
726
+ "properties": {
727
+ "path": {
728
+ "type": "string"
729
+ },
730
+ "filePath": {
731
+ "type": "string"
732
+ }
733
+ },
734
+ "required": [
735
+ "path"
736
+ ]
737
+ },
738
+ "outputSchema": {
739
+ "type": "object",
740
+ "properties": {
741
+ "result": {
742
+ "type": "object",
743
+ "properties": {
744
+ "sha256": {
745
+ "type": "string"
746
+ },
747
+ "path": {
748
+ "type": "string"
749
+ },
750
+ "bytes": {
751
+ "type": "number"
752
+ }
753
+ },
754
+ "required": [
755
+ "sha256",
756
+ "path",
757
+ "bytes"
758
+ ]
759
+ },
760
+ "evidence": {
761
+ "type": "array",
762
+ "items": {
763
+ "type": "object",
764
+ "properties": {
765
+ "type": {
766
+ "type": "string"
767
+ },
768
+ "ref": {
769
+ "type": "string"
770
+ },
771
+ "summary": {
772
+ "type": "string"
773
+ },
774
+ "createdAt": {
775
+ "type": "string"
776
+ }
777
+ },
778
+ "required": [
779
+ "type",
780
+ "ref",
781
+ "summary",
782
+ "createdAt"
783
+ ]
784
+ }
785
+ }
786
+ },
787
+ "required": [
788
+ "result",
789
+ "evidence"
790
+ ]
791
+ },
792
+ "sourcePath": "src/fs/sha256",
793
+ "exportName": "sha256Handler",
794
+ "sideEffect": "none"
795
+ },
796
+ {
797
+ "name": "fs.writeText",
798
+ "description": "Write UTF-8 text to a file in the sandbox.",
799
+ "inputSchema": {
800
+ "type": "object",
801
+ "properties": {
802
+ "path": {
803
+ "type": "string"
804
+ },
805
+ "filePath": {
806
+ "type": "string"
807
+ },
808
+ "text": {
809
+ "type": "string"
810
+ },
811
+ "content": {
812
+ "type": "string"
813
+ },
814
+ "overwrite": {
815
+ "type": "object",
816
+ "properties": {}
817
+ },
818
+ "mkdirp": {
819
+ "type": "object",
820
+ "properties": {}
821
+ }
822
+ },
823
+ "required": [
824
+ "path",
825
+ "text"
826
+ ]
827
+ },
828
+ "outputSchema": {
829
+ "type": "object",
830
+ "properties": {
831
+ "result": {
832
+ "type": "object",
833
+ "properties": {
834
+ "path": {
835
+ "type": "string"
836
+ },
837
+ "bytes": {
838
+ "type": "number"
839
+ },
840
+ "sha256": {
841
+ "type": "string"
842
+ }
843
+ },
844
+ "required": [
845
+ "path",
846
+ "bytes",
847
+ "sha256"
848
+ ]
849
+ },
850
+ "evidence": {
851
+ "type": "array",
852
+ "items": {
853
+ "type": "object",
854
+ "properties": {
855
+ "type": {
856
+ "type": "string"
857
+ },
858
+ "ref": {
859
+ "type": "string"
860
+ },
861
+ "summary": {
862
+ "type": "string"
863
+ },
864
+ "createdAt": {
865
+ "type": "string"
866
+ }
867
+ },
868
+ "required": [
869
+ "type",
870
+ "ref",
871
+ "summary",
872
+ "createdAt"
873
+ ]
874
+ }
875
+ }
876
+ },
877
+ "required": [
878
+ "result",
879
+ "evidence"
880
+ ]
881
+ },
882
+ "sourcePath": "src/fs/writeText",
883
+ "exportName": "writeTextHandler",
884
+ "sideEffect": "local_write"
885
+ },
886
+ {
887
+ "name": "http.downloadFile",
888
+ "description": "Download a file from a URL to the sandbox.",
889
+ "inputSchema": {
890
+ "type": "object",
891
+ "properties": {
892
+ "url": {
893
+ "type": "string"
894
+ },
895
+ "uri": {
896
+ "type": "string"
897
+ },
898
+ "destPath": {
899
+ "type": "string"
900
+ },
901
+ "destination": {
902
+ "type": "string"
903
+ },
904
+ "filePath": {
905
+ "type": "string"
906
+ },
907
+ "headers": {
908
+ "type": "object",
909
+ "properties": {}
910
+ },
911
+ "timeoutMs": {
912
+ "type": "number"
913
+ },
914
+ "maxBytes": {
915
+ "type": "number"
916
+ },
917
+ "overwrite": {
918
+ "type": "object",
919
+ "properties": {}
920
+ }
921
+ },
922
+ "required": [
923
+ "url",
924
+ "destPath"
925
+ ]
926
+ },
927
+ "outputSchema": {
928
+ "type": "object",
929
+ "properties": {
930
+ "result": {
931
+ "type": "object",
932
+ "properties": {
933
+ "destPath": {
934
+ "type": "string"
935
+ },
936
+ "bytes": {
937
+ "type": "number"
938
+ },
939
+ "sha256": {
940
+ "type": "string"
941
+ },
942
+ "status": {
943
+ "type": "number"
944
+ },
945
+ "url": {
946
+ "type": "string"
947
+ }
948
+ },
949
+ "required": [
950
+ "destPath",
951
+ "bytes",
952
+ "sha256",
953
+ "status",
954
+ "url"
955
+ ]
956
+ },
957
+ "evidence": {
958
+ "type": "array",
959
+ "items": {
960
+ "type": "object",
961
+ "properties": {
962
+ "type": {
963
+ "type": "string"
964
+ },
965
+ "ref": {
966
+ "type": "string"
967
+ },
968
+ "summary": {
969
+ "type": "string"
970
+ },
971
+ "createdAt": {
972
+ "type": "string"
973
+ }
974
+ },
975
+ "required": [
976
+ "type",
977
+ "ref",
978
+ "summary",
979
+ "createdAt"
980
+ ]
981
+ }
982
+ }
983
+ },
984
+ "required": [
985
+ "result",
986
+ "evidence"
987
+ ]
988
+ },
989
+ "sourcePath": "src/http/downloadFile",
990
+ "exportName": "downloadFileHandler",
991
+ "sideEffect": "local_write"
992
+ },
993
+ {
994
+ "name": "http.duckduckgoSearch",
995
+ "description": "Search DuckDuckGo via the Instant Answer API (no API key).",
996
+ "inputSchema": {
997
+ "type": "object",
998
+ "properties": {
999
+ "query": {
1000
+ "type": "string"
1001
+ },
1002
+ "q": {
1003
+ "type": "string"
1004
+ },
1005
+ "maxResults": {
1006
+ "type": "number"
1007
+ },
1008
+ "timeoutMs": {
1009
+ "type": "number"
1010
+ }
1011
+ },
1012
+ "required": [
1013
+ "query"
1014
+ ]
1015
+ },
1016
+ "outputSchema": {
1017
+ "type": "object",
1018
+ "properties": {
1019
+ "result": {
1020
+ "type": "object",
1021
+ "properties": {
1022
+ "query": {
1023
+ "type": "string"
1024
+ },
1025
+ "abstract": {
1026
+ "type": "string"
1027
+ },
1028
+ "abstractUrl": {
1029
+ "type": "string"
1030
+ },
1031
+ "abstractSource": {
1032
+ "type": "string"
1033
+ },
1034
+ "heading": {
1035
+ "type": "string"
1036
+ },
1037
+ "results": {
1038
+ "type": "array",
1039
+ "items": {
1040
+ "type": "object",
1041
+ "properties": {
1042
+ "url": {
1043
+ "type": "string"
1044
+ },
1045
+ "title": {
1046
+ "type": "string"
1047
+ },
1048
+ "snippet": {
1049
+ "type": "string"
1050
+ }
1051
+ },
1052
+ "required": [
1053
+ "url",
1054
+ "title"
1055
+ ]
1056
+ }
1057
+ },
1058
+ "relatedTopics": {
1059
+ "type": "array",
1060
+ "items": {
1061
+ "type": "object",
1062
+ "properties": {
1063
+ "text": {
1064
+ "type": "string"
1065
+ },
1066
+ "url": {
1067
+ "type": "string"
1068
+ }
1069
+ },
1070
+ "required": [
1071
+ "text"
1072
+ ]
1073
+ }
1074
+ }
1075
+ },
1076
+ "required": [
1077
+ "query",
1078
+ "abstract",
1079
+ "abstractUrl",
1080
+ "abstractSource",
1081
+ "heading",
1082
+ "results",
1083
+ "relatedTopics"
1084
+ ]
1085
+ },
1086
+ "evidence": {
1087
+ "type": "array",
1088
+ "items": {
1089
+ "type": "object",
1090
+ "properties": {
1091
+ "type": {
1092
+ "type": "string"
1093
+ },
1094
+ "ref": {
1095
+ "type": "string"
1096
+ },
1097
+ "summary": {
1098
+ "type": "string"
1099
+ },
1100
+ "createdAt": {
1101
+ "type": "string"
1102
+ }
1103
+ },
1104
+ "required": [
1105
+ "type",
1106
+ "ref",
1107
+ "summary",
1108
+ "createdAt"
1109
+ ]
1110
+ }
1111
+ }
1112
+ },
1113
+ "required": [
1114
+ "result",
1115
+ "evidence"
1116
+ ]
1117
+ },
1118
+ "sourcePath": "src/http/duckduckgoSearch",
1119
+ "exportName": "duckduckgoSearchHandler",
1120
+ "sideEffect": "none"
1121
+ },
1122
+ {
1123
+ "name": "http.fetchJson",
1124
+ "description": "Fetch a URL and return the response as parsed JSON.",
1125
+ "inputSchema": {
1126
+ "type": "object",
1127
+ "properties": {
1128
+ "url": {
1129
+ "type": "string"
1130
+ },
1131
+ "uri": {
1132
+ "type": "string"
1133
+ },
1134
+ "method": {
1135
+ "type": "object",
1136
+ "properties": {}
1137
+ },
1138
+ "headers": {
1139
+ "type": "object",
1140
+ "properties": {}
1141
+ },
1142
+ "body": {
1143
+ "type": "object",
1144
+ "properties": {}
1145
+ },
1146
+ "timeoutMs": {
1147
+ "type": "number"
1148
+ },
1149
+ "maxBytes": {
1150
+ "type": "number"
1151
+ }
1152
+ },
1153
+ "required": [
1154
+ "url"
1155
+ ]
1156
+ },
1157
+ "outputSchema": {
1158
+ "type": "object",
1159
+ "properties": {
1160
+ "result": {
1161
+ "type": "object",
1162
+ "properties": {
1163
+ "url": {
1164
+ "type": "string"
1165
+ },
1166
+ "status": {
1167
+ "type": "number"
1168
+ },
1169
+ "json": {},
1170
+ "bytes": {
1171
+ "type": "number"
1172
+ }
1173
+ },
1174
+ "required": [
1175
+ "url",
1176
+ "status",
1177
+ "json",
1178
+ "bytes"
1179
+ ]
1180
+ },
1181
+ "evidence": {
1182
+ "type": "array",
1183
+ "items": {
1184
+ "type": "object",
1185
+ "properties": {
1186
+ "type": {
1187
+ "type": "string"
1188
+ },
1189
+ "ref": {
1190
+ "type": "string"
1191
+ },
1192
+ "summary": {
1193
+ "type": "string"
1194
+ },
1195
+ "createdAt": {
1196
+ "type": "string"
1197
+ }
1198
+ },
1199
+ "required": [
1200
+ "type",
1201
+ "ref",
1202
+ "summary",
1203
+ "createdAt"
1204
+ ]
1205
+ }
1206
+ }
1207
+ },
1208
+ "required": [
1209
+ "result",
1210
+ "evidence"
1211
+ ]
1212
+ },
1213
+ "sourcePath": "src/http/fetchJson",
1214
+ "exportName": "fetchJsonHandler",
1215
+ "sideEffect": "none"
1216
+ },
1217
+ {
1218
+ "name": "http.fetchPageMainContent",
1219
+ "description": "Fetch a URL and return only the main content (main/article/body text), not full HTML.",
1220
+ "inputSchema": {
1221
+ "type": "object",
1222
+ "properties": {
1223
+ "url": {
1224
+ "type": "string"
1225
+ },
1226
+ "uri": {
1227
+ "type": "string"
1228
+ },
1229
+ "timeoutMs": {
1230
+ "type": "number"
1231
+ },
1232
+ "maxBytes": {
1233
+ "type": "number"
1234
+ }
1235
+ },
1236
+ "required": [
1237
+ "url"
1238
+ ]
1239
+ },
1240
+ "outputSchema": {
1241
+ "type": "object",
1242
+ "properties": {
1243
+ "result": {
1244
+ "type": "object",
1245
+ "properties": {
1246
+ "url": {
1247
+ "type": "string"
1248
+ },
1249
+ "status": {
1250
+ "type": "number"
1251
+ },
1252
+ "title": {
1253
+ "type": "string"
1254
+ },
1255
+ "mainContent": {
1256
+ "type": "string"
1257
+ },
1258
+ "bytes": {
1259
+ "type": "number"
1260
+ },
1261
+ "isHtml": {
1262
+ "type": "boolean"
1263
+ }
1264
+ },
1265
+ "required": [
1266
+ "url",
1267
+ "status",
1268
+ "title",
1269
+ "mainContent",
1270
+ "bytes",
1271
+ "isHtml"
1272
+ ]
1273
+ },
1274
+ "evidence": {
1275
+ "type": "array",
1276
+ "items": {
1277
+ "type": "object",
1278
+ "properties": {
1279
+ "type": {
1280
+ "type": "string"
1281
+ },
1282
+ "ref": {
1283
+ "type": "string"
1284
+ },
1285
+ "summary": {
1286
+ "type": "string"
1287
+ },
1288
+ "createdAt": {
1289
+ "type": "string"
1290
+ }
1291
+ },
1292
+ "required": [
1293
+ "type",
1294
+ "ref",
1295
+ "summary",
1296
+ "createdAt"
1297
+ ]
1298
+ }
1299
+ }
1300
+ },
1301
+ "required": [
1302
+ "result",
1303
+ "evidence"
1304
+ ]
1305
+ },
1306
+ "sourcePath": "src/http/fetchPageMainContent",
1307
+ "exportName": "fetchPageMainContentHandler",
1308
+ "sideEffect": "none"
1309
+ },
1310
+ {
1311
+ "name": "http.fetchText",
1312
+ "description": "Fetch a URL and return the response as text.",
1313
+ "inputSchema": {
1314
+ "type": "object",
1315
+ "properties": {
1316
+ "url": {
1317
+ "type": "string"
1318
+ },
1319
+ "uri": {
1320
+ "type": "string"
1321
+ },
1322
+ "method": {
1323
+ "type": "object",
1324
+ "properties": {}
1325
+ },
1326
+ "headers": {
1327
+ "type": "object",
1328
+ "properties": {}
1329
+ },
1330
+ "body": {
1331
+ "type": "object",
1332
+ "properties": {}
1333
+ },
1334
+ "timeoutMs": {
1335
+ "type": "number"
1336
+ },
1337
+ "maxBytes": {
1338
+ "type": "number"
1339
+ }
1340
+ },
1341
+ "required": [
1342
+ "url"
1343
+ ]
1344
+ },
1345
+ "outputSchema": {
1346
+ "type": "object",
1347
+ "properties": {
1348
+ "result": {
1349
+ "type": "object",
1350
+ "properties": {
1351
+ "url": {
1352
+ "type": "string"
1353
+ },
1354
+ "status": {
1355
+ "type": "number"
1356
+ },
1357
+ "headers": {
1358
+ "type": "object",
1359
+ "properties": {}
1360
+ },
1361
+ "text": {
1362
+ "type": "string"
1363
+ },
1364
+ "bytes": {
1365
+ "type": "number"
1366
+ }
1367
+ },
1368
+ "required": [
1369
+ "url",
1370
+ "status",
1371
+ "headers",
1372
+ "text",
1373
+ "bytes"
1374
+ ]
1375
+ },
1376
+ "evidence": {
1377
+ "type": "array",
1378
+ "items": {
1379
+ "type": "object",
1380
+ "properties": {
1381
+ "type": {
1382
+ "type": "string"
1383
+ },
1384
+ "ref": {
1385
+ "type": "string"
1386
+ },
1387
+ "summary": {
1388
+ "type": "string"
1389
+ },
1390
+ "createdAt": {
1391
+ "type": "string"
1392
+ }
1393
+ },
1394
+ "required": [
1395
+ "type",
1396
+ "ref",
1397
+ "summary",
1398
+ "createdAt"
1399
+ ]
1400
+ }
1401
+ }
1402
+ },
1403
+ "required": [
1404
+ "result",
1405
+ "evidence"
1406
+ ]
1407
+ },
1408
+ "sourcePath": "src/http/fetchText",
1409
+ "exportName": "fetchTextHandler",
1410
+ "sideEffect": "none"
1411
+ },
1412
+ {
1413
+ "name": "http.head",
1414
+ "description": "Send a HEAD request to get response headers without body.",
1415
+ "inputSchema": {
1416
+ "type": "object",
1417
+ "properties": {
1418
+ "url": {
1419
+ "type": "string"
1420
+ },
1421
+ "uri": {
1422
+ "type": "string"
1423
+ },
1424
+ "headers": {
1425
+ "type": "object",
1426
+ "properties": {}
1427
+ },
1428
+ "timeoutMs": {
1429
+ "type": "number"
1430
+ }
1431
+ },
1432
+ "required": [
1433
+ "url"
1434
+ ]
1435
+ },
1436
+ "outputSchema": {
1437
+ "type": "object",
1438
+ "properties": {
1439
+ "result": {
1440
+ "type": "object",
1441
+ "properties": {
1442
+ "url": {
1443
+ "type": "string"
1444
+ },
1445
+ "status": {
1446
+ "type": "number"
1447
+ },
1448
+ "headers": {
1449
+ "type": "object",
1450
+ "properties": {}
1451
+ }
1452
+ },
1453
+ "required": [
1454
+ "url",
1455
+ "status",
1456
+ "headers"
1457
+ ]
1458
+ },
1459
+ "evidence": {
1460
+ "type": "array",
1461
+ "items": {
1462
+ "type": "object",
1463
+ "properties": {
1464
+ "type": {
1465
+ "type": "string"
1466
+ },
1467
+ "ref": {
1468
+ "type": "string"
1469
+ },
1470
+ "summary": {
1471
+ "type": "string"
1472
+ },
1473
+ "createdAt": {
1474
+ "type": "string"
1475
+ }
1476
+ },
1477
+ "required": [
1478
+ "type",
1479
+ "ref",
1480
+ "summary",
1481
+ "createdAt"
1482
+ ]
1483
+ }
1484
+ }
1485
+ },
1486
+ "required": [
1487
+ "result",
1488
+ "evidence"
1489
+ ]
1490
+ },
1491
+ "sourcePath": "src/http/head",
1492
+ "exportName": "headHandler",
1493
+ "sideEffect": "none"
1494
+ },
1495
+ {
1496
+ "name": "http.yahooFinance",
1497
+ "description": "Fetch stock quote(s) from Yahoo Finance chart API (no API key).",
1498
+ "inputSchema": {
1499
+ "type": "object",
1500
+ "properties": {
1501
+ "symbols": {
1502
+ "type": "array",
1503
+ "items": {}
1504
+ },
1505
+ "symbol": {
1506
+ "type": "object",
1507
+ "properties": {}
1508
+ },
1509
+ "tickers": {
1510
+ "type": "object",
1511
+ "properties": {}
1512
+ },
1513
+ "range": {
1514
+ "type": "object",
1515
+ "properties": {}
1516
+ },
1517
+ "timeoutMs": {
1518
+ "type": "number"
1519
+ }
1520
+ },
1521
+ "required": [
1522
+ "symbols"
1523
+ ]
1524
+ },
1525
+ "outputSchema": {
1526
+ "type": "object",
1527
+ "properties": {
1528
+ "result": {
1529
+ "type": "object",
1530
+ "properties": {
1531
+ "symbols": {
1532
+ "type": "array",
1533
+ "items": {
1534
+ "type": "string"
1535
+ }
1536
+ },
1537
+ "quotes": {
1538
+ "type": "array",
1539
+ "items": {
1540
+ "type": "object",
1541
+ "properties": {
1542
+ "symbol": {
1543
+ "type": "string"
1544
+ },
1545
+ "currency": {
1546
+ "type": "string"
1547
+ },
1548
+ "price": {
1549
+ "type": "number"
1550
+ },
1551
+ "previousClose": {
1552
+ "type": "number"
1553
+ },
1554
+ "change": {
1555
+ "type": "number"
1556
+ },
1557
+ "changePercent": {
1558
+ "type": "number"
1559
+ },
1560
+ "open": {
1561
+ "type": "number"
1562
+ },
1563
+ "high": {
1564
+ "type": "number"
1565
+ },
1566
+ "low": {
1567
+ "type": "number"
1568
+ },
1569
+ "volume": {
1570
+ "type": "number"
1571
+ },
1572
+ "timestamp": {
1573
+ "type": "number"
1574
+ }
1575
+ },
1576
+ "required": [
1577
+ "symbol"
1578
+ ]
1579
+ }
1580
+ },
1581
+ "range": {
1582
+ "type": "object",
1583
+ "properties": {
1584
+ "toString": {
1585
+ "type": "object",
1586
+ "properties": {}
1587
+ },
1588
+ "charAt": {
1589
+ "type": "object",
1590
+ "properties": {}
1591
+ },
1592
+ "charCodeAt": {
1593
+ "type": "object",
1594
+ "properties": {}
1595
+ },
1596
+ "concat": {
1597
+ "type": "object",
1598
+ "properties": {}
1599
+ },
1600
+ "indexOf": {
1601
+ "type": "object",
1602
+ "properties": {}
1603
+ },
1604
+ "lastIndexOf": {
1605
+ "type": "object",
1606
+ "properties": {}
1607
+ },
1608
+ "localeCompare": {
1609
+ "type": "object",
1610
+ "properties": {}
1611
+ },
1612
+ "match": {
1613
+ "type": "object",
1614
+ "properties": {}
1615
+ },
1616
+ "replace": {
1617
+ "type": "object",
1618
+ "properties": {}
1619
+ },
1620
+ "search": {
1621
+ "type": "object",
1622
+ "properties": {}
1623
+ },
1624
+ "slice": {
1625
+ "type": "object",
1626
+ "properties": {}
1627
+ },
1628
+ "split": {
1629
+ "type": "object",
1630
+ "properties": {}
1631
+ },
1632
+ "substring": {
1633
+ "type": "object",
1634
+ "properties": {}
1635
+ },
1636
+ "toLowerCase": {
1637
+ "type": "object",
1638
+ "properties": {}
1639
+ },
1640
+ "toLocaleLowerCase": {
1641
+ "type": "object",
1642
+ "properties": {}
1643
+ },
1644
+ "toUpperCase": {
1645
+ "type": "object",
1646
+ "properties": {}
1647
+ },
1648
+ "toLocaleUpperCase": {
1649
+ "type": "object",
1650
+ "properties": {}
1651
+ },
1652
+ "trim": {
1653
+ "type": "object",
1654
+ "properties": {}
1655
+ },
1656
+ "length": {
1657
+ "type": "number"
1658
+ },
1659
+ "substr": {
1660
+ "type": "object",
1661
+ "properties": {}
1662
+ },
1663
+ "valueOf": {
1664
+ "type": "object",
1665
+ "properties": {}
1666
+ },
1667
+ "codePointAt": {
1668
+ "type": "object",
1669
+ "properties": {}
1670
+ },
1671
+ "includes": {
1672
+ "type": "object",
1673
+ "properties": {}
1674
+ },
1675
+ "endsWith": {
1676
+ "type": "object",
1677
+ "properties": {}
1678
+ },
1679
+ "normalize": {
1680
+ "type": "object",
1681
+ "properties": {}
1682
+ },
1683
+ "repeat": {
1684
+ "type": "object",
1685
+ "properties": {}
1686
+ },
1687
+ "startsWith": {
1688
+ "type": "object",
1689
+ "properties": {}
1690
+ },
1691
+ "anchor": {
1692
+ "type": "object",
1693
+ "properties": {}
1694
+ },
1695
+ "big": {
1696
+ "type": "object",
1697
+ "properties": {}
1698
+ },
1699
+ "blink": {
1700
+ "type": "object",
1701
+ "properties": {}
1702
+ },
1703
+ "bold": {
1704
+ "type": "object",
1705
+ "properties": {}
1706
+ },
1707
+ "fixed": {
1708
+ "type": "object",
1709
+ "properties": {}
1710
+ },
1711
+ "fontcolor": {
1712
+ "type": "object",
1713
+ "properties": {}
1714
+ },
1715
+ "fontsize": {
1716
+ "type": "object",
1717
+ "properties": {}
1718
+ },
1719
+ "italics": {
1720
+ "type": "object",
1721
+ "properties": {}
1722
+ },
1723
+ "link": {
1724
+ "type": "object",
1725
+ "properties": {}
1726
+ },
1727
+ "small": {
1728
+ "type": "object",
1729
+ "properties": {}
1730
+ },
1731
+ "strike": {
1732
+ "type": "object",
1733
+ "properties": {}
1734
+ },
1735
+ "sub": {
1736
+ "type": "object",
1737
+ "properties": {}
1738
+ },
1739
+ "sup": {
1740
+ "type": "object",
1741
+ "properties": {}
1742
+ },
1743
+ "padStart": {
1744
+ "type": "object",
1745
+ "properties": {}
1746
+ },
1747
+ "padEnd": {
1748
+ "type": "object",
1749
+ "properties": {}
1750
+ },
1751
+ "trimEnd": {
1752
+ "type": "object",
1753
+ "properties": {}
1754
+ },
1755
+ "trimStart": {
1756
+ "type": "object",
1757
+ "properties": {}
1758
+ },
1759
+ "trimLeft": {
1760
+ "type": "object",
1761
+ "properties": {}
1762
+ },
1763
+ "trimRight": {
1764
+ "type": "object",
1765
+ "properties": {}
1766
+ },
1767
+ "matchAll": {
1768
+ "type": "object",
1769
+ "properties": {}
1770
+ },
1771
+ "replaceAll": {
1772
+ "type": "object",
1773
+ "properties": {}
1774
+ },
1775
+ "at": {
1776
+ "type": "object",
1777
+ "properties": {}
1778
+ },
1779
+ "__@iterator@157": {
1780
+ "type": "object",
1781
+ "properties": {}
1782
+ }
1783
+ },
1784
+ "required": [
1785
+ "toString",
1786
+ "charAt",
1787
+ "charCodeAt",
1788
+ "concat",
1789
+ "indexOf",
1790
+ "lastIndexOf",
1791
+ "localeCompare",
1792
+ "match",
1793
+ "replace",
1794
+ "search",
1795
+ "slice",
1796
+ "split",
1797
+ "substring",
1798
+ "toLowerCase",
1799
+ "toLocaleLowerCase",
1800
+ "toUpperCase",
1801
+ "toLocaleUpperCase",
1802
+ "trim",
1803
+ "length",
1804
+ "substr",
1805
+ "valueOf",
1806
+ "codePointAt",
1807
+ "includes",
1808
+ "endsWith",
1809
+ "normalize",
1810
+ "repeat",
1811
+ "startsWith",
1812
+ "anchor",
1813
+ "big",
1814
+ "blink",
1815
+ "bold",
1816
+ "fixed",
1817
+ "fontcolor",
1818
+ "fontsize",
1819
+ "italics",
1820
+ "link",
1821
+ "small",
1822
+ "strike",
1823
+ "sub",
1824
+ "sup",
1825
+ "padStart",
1826
+ "padEnd",
1827
+ "trimEnd",
1828
+ "trimStart",
1829
+ "trimLeft",
1830
+ "trimRight",
1831
+ "matchAll",
1832
+ "replaceAll",
1833
+ "at",
1834
+ "__@iterator@157"
1835
+ ]
1836
+ }
1837
+ },
1838
+ "required": [
1839
+ "symbols",
1840
+ "quotes",
1841
+ "range"
1842
+ ]
1843
+ },
1844
+ "evidence": {
1845
+ "type": "array",
1846
+ "items": {
1847
+ "type": "object",
1848
+ "properties": {
1849
+ "type": {
1850
+ "type": "string"
1851
+ },
1852
+ "ref": {
1853
+ "type": "string"
1854
+ },
1855
+ "summary": {
1856
+ "type": "string"
1857
+ },
1858
+ "createdAt": {
1859
+ "type": "string"
1860
+ }
1861
+ },
1862
+ "required": [
1863
+ "type",
1864
+ "ref",
1865
+ "summary",
1866
+ "createdAt"
1867
+ ]
1868
+ }
1869
+ }
1870
+ },
1871
+ "required": [
1872
+ "result",
1873
+ "evidence"
1874
+ ]
1875
+ },
1876
+ "sourcePath": "src/http/yahooFinance",
1877
+ "exportName": "yahooFinanceQuoteHandler",
1878
+ "sideEffect": "none"
1879
+ },
1880
+ {
1881
+ "name": "util.hashText",
1882
+ "description": "Compute SHA-256 hash of a text string.",
7
1883
  "inputSchema": {
8
1884
  "type": "object",
9
1885
  "properties": {
10
- "args": {
1886
+ "text": {
1887
+ "type": "string"
1888
+ }
1889
+ },
1890
+ "required": [
1891
+ "text"
1892
+ ]
1893
+ },
1894
+ "outputSchema": {
1895
+ "type": "object",
1896
+ "properties": {
1897
+ "result": {
11
1898
  "type": "object",
12
1899
  "properties": {
13
- "timezone": {
1900
+ "sha256": {
14
1901
  "type": "string"
15
1902
  }
1903
+ },
1904
+ "required": [
1905
+ "sha256"
1906
+ ]
1907
+ },
1908
+ "evidence": {
1909
+ "type": "array",
1910
+ "items": {
1911
+ "type": "object",
1912
+ "properties": {
1913
+ "type": {
1914
+ "type": "string"
1915
+ },
1916
+ "ref": {
1917
+ "type": "string"
1918
+ },
1919
+ "summary": {
1920
+ "type": "string"
1921
+ },
1922
+ "createdAt": {
1923
+ "type": "string"
1924
+ }
1925
+ },
1926
+ "required": [
1927
+ "type",
1928
+ "ref",
1929
+ "summary",
1930
+ "createdAt"
1931
+ ]
1932
+ }
1933
+ }
1934
+ },
1935
+ "required": [
1936
+ "result",
1937
+ "evidence"
1938
+ ]
1939
+ },
1940
+ "sourcePath": "src/util/hashText",
1941
+ "exportName": "hashTextHandler",
1942
+ "sideEffect": "none"
1943
+ },
1944
+ {
1945
+ "name": "util.jsonSelect",
1946
+ "description": "Select fields from JSON data using JMESPath expressions.",
1947
+ "inputSchema": {
1948
+ "type": "object",
1949
+ "properties": {
1950
+ "json": {},
1951
+ "path": {
1952
+ "type": "string"
1953
+ },
1954
+ "expression": {
1955
+ "type": "string"
1956
+ }
1957
+ },
1958
+ "required": [
1959
+ "json",
1960
+ "path"
1961
+ ]
1962
+ },
1963
+ "outputSchema": {
1964
+ "type": "object",
1965
+ "properties": {
1966
+ "result": {
1967
+ "type": "object",
1968
+ "properties": {
1969
+ "value": {}
1970
+ },
1971
+ "required": [
1972
+ "value"
1973
+ ]
1974
+ },
1975
+ "evidence": {
1976
+ "type": "array",
1977
+ "items": {
1978
+ "type": "object",
1979
+ "properties": {
1980
+ "type": {
1981
+ "type": "string"
1982
+ },
1983
+ "ref": {
1984
+ "type": "string"
1985
+ },
1986
+ "summary": {
1987
+ "type": "string"
1988
+ },
1989
+ "createdAt": {
1990
+ "type": "string"
1991
+ }
1992
+ },
1993
+ "required": [
1994
+ "type",
1995
+ "ref",
1996
+ "summary",
1997
+ "createdAt"
1998
+ ]
16
1999
  }
17
2000
  }
18
2001
  },
19
2002
  "required": [
20
- "args"
2003
+ "result",
2004
+ "evidence"
21
2005
  ]
22
2006
  },
2007
+ "sourcePath": "src/util/jsonSelect",
2008
+ "exportName": "jsonSelectHandler",
2009
+ "sideEffect": "none"
2010
+ },
2011
+ {
2012
+ "name": "util.now",
2013
+ "description": "Get the current time in various formats.",
2014
+ "inputSchema": {
2015
+ "type": "object",
2016
+ "properties": {
2017
+ "timezone": {
2018
+ "type": "string"
2019
+ }
2020
+ }
2021
+ },
23
2022
  "outputSchema": {
24
2023
  "type": "object",
25
2024
  "properties": {
@@ -81,6 +2080,154 @@
81
2080
  "sourcePath": "src/util/now",
82
2081
  "exportName": "nowHandler",
83
2082
  "sideEffect": "none"
2083
+ },
2084
+ {
2085
+ "name": "util.templateRender",
2086
+ "description": "Render a Mustache template with data.",
2087
+ "inputSchema": {
2088
+ "type": "object",
2089
+ "properties": {
2090
+ "template": {
2091
+ "type": "string"
2092
+ },
2093
+ "data": {
2094
+ "type": "object",
2095
+ "properties": {}
2096
+ }
2097
+ },
2098
+ "required": [
2099
+ "template",
2100
+ "data"
2101
+ ]
2102
+ },
2103
+ "outputSchema": {
2104
+ "type": "object",
2105
+ "properties": {
2106
+ "result": {
2107
+ "type": "object",
2108
+ "properties": {
2109
+ "text": {
2110
+ "type": "string"
2111
+ }
2112
+ },
2113
+ "required": [
2114
+ "text"
2115
+ ]
2116
+ },
2117
+ "evidence": {
2118
+ "type": "array",
2119
+ "items": {
2120
+ "type": "object",
2121
+ "properties": {
2122
+ "type": {
2123
+ "type": "string"
2124
+ },
2125
+ "ref": {
2126
+ "type": "string"
2127
+ },
2128
+ "summary": {
2129
+ "type": "string"
2130
+ },
2131
+ "createdAt": {
2132
+ "type": "string"
2133
+ }
2134
+ },
2135
+ "required": [
2136
+ "type",
2137
+ "ref",
2138
+ "summary",
2139
+ "createdAt"
2140
+ ]
2141
+ }
2142
+ }
2143
+ },
2144
+ "required": [
2145
+ "result",
2146
+ "evidence"
2147
+ ]
2148
+ },
2149
+ "sourcePath": "src/util/templateRender",
2150
+ "exportName": "templateRenderHandler",
2151
+ "sideEffect": "none"
2152
+ },
2153
+ {
2154
+ "name": "util.truncate",
2155
+ "description": "Truncate text to a maximum character length with a suffix marker.",
2156
+ "inputSchema": {
2157
+ "type": "object",
2158
+ "properties": {
2159
+ "text": {
2160
+ "type": "string"
2161
+ },
2162
+ "maxChars": {
2163
+ "type": "number"
2164
+ },
2165
+ "suffix": {
2166
+ "type": "string"
2167
+ }
2168
+ },
2169
+ "required": [
2170
+ "text",
2171
+ "maxChars"
2172
+ ]
2173
+ },
2174
+ "outputSchema": {
2175
+ "type": "object",
2176
+ "properties": {
2177
+ "result": {
2178
+ "type": "object",
2179
+ "properties": {
2180
+ "text": {
2181
+ "type": "string"
2182
+ },
2183
+ "truncated": {
2184
+ "type": "boolean"
2185
+ },
2186
+ "originalLength": {
2187
+ "type": "number"
2188
+ }
2189
+ },
2190
+ "required": [
2191
+ "text",
2192
+ "truncated",
2193
+ "originalLength"
2194
+ ]
2195
+ },
2196
+ "evidence": {
2197
+ "type": "array",
2198
+ "items": {
2199
+ "type": "object",
2200
+ "properties": {
2201
+ "type": {
2202
+ "type": "string"
2203
+ },
2204
+ "ref": {
2205
+ "type": "string"
2206
+ },
2207
+ "summary": {
2208
+ "type": "string"
2209
+ },
2210
+ "createdAt": {
2211
+ "type": "string"
2212
+ }
2213
+ },
2214
+ "required": [
2215
+ "type",
2216
+ "ref",
2217
+ "summary",
2218
+ "createdAt"
2219
+ ]
2220
+ }
2221
+ }
2222
+ },
2223
+ "required": [
2224
+ "result",
2225
+ "evidence"
2226
+ ]
2227
+ },
2228
+ "sourcePath": "src/util/truncate",
2229
+ "exportName": "truncateHandler",
2230
+ "sideEffect": "none"
84
2231
  }
85
2232
  ]
86
2233
  }