benchkit-cli 0.1.0__py3-none-any.whl

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 (149) hide show
  1. benchkit/__init__.py +1 -0
  2. benchkit/_pi_proxy.py +219 -0
  3. benchkit/answer_key_guard.ts +49 -0
  4. benchkit/artifacts.py +87 -0
  5. benchkit/benchmarks/__init__.py +105 -0
  6. benchkit/benchmarks/aider_polyglot.py +405 -0
  7. benchkit/benchmarks/arc.py +52 -0
  8. benchkit/benchmarks/banking77.py +149 -0
  9. benchkit/benchmarks/base.py +19 -0
  10. benchkit/benchmarks/boolq.py +49 -0
  11. benchkit/benchmarks/chartqa.py +133 -0
  12. benchkit/benchmarks/code_verifier.py +77 -0
  13. benchkit/benchmarks/downloads.py +166 -0
  14. benchkit/benchmarks/evalplus.py +288 -0
  15. benchkit/benchmarks/git_surgery.py +485 -0
  16. benchkit/benchmarks/gpqa.py +56 -0
  17. benchkit/benchmarks/gsm8k.py +97 -0
  18. benchkit/benchmarks/hellaswag.py +49 -0
  19. benchkit/benchmarks/humaneval.py +103 -0
  20. benchkit/benchmarks/ifeval.py +56 -0
  21. benchkit/benchmarks/ifeval_instructions.py +477 -0
  22. benchkit/benchmarks/mbpp.py +60 -0
  23. benchkit/benchmarks/mc_arena.py +479 -0
  24. benchkit/benchmarks/mcq.py +94 -0
  25. benchkit/benchmarks/medfailbench.py +537 -0
  26. benchkit/benchmarks/mmlu.py +54 -0
  27. benchkit/benchmarks/mmlu_pro.py +62 -0
  28. benchkit/benchmarks/mmvp.py +115 -0
  29. benchkit/benchmarks/ocrbench.py +96 -0
  30. benchkit/benchmarks/openbookqa.py +52 -0
  31. benchkit/benchmarks/patcheval.py +929 -0
  32. benchkit/benchmarks/piqa.py +52 -0
  33. benchkit/benchmarks/ruler.py +172 -0
  34. benchkit/benchmarks/ruler_generator.py +535 -0
  35. benchkit/benchmarks/sanity.py +174 -0
  36. benchkit/benchmarks/treejs_arena.py +268 -0
  37. benchkit/benchmarks/truthfulqa.py +52 -0
  38. benchkit/benchmarks/utils.py +25 -0
  39. benchkit/benchmarks/vision.py +230 -0
  40. benchkit/benchmarks/vstar.py +108 -0
  41. benchkit/benchmarks/winogrande.py +52 -0
  42. benchkit/benchmarks/xstest.py +116 -0
  43. benchkit/browser.py +429 -0
  44. benchkit/catalog.py +121 -0
  45. benchkit/cli.py +1000 -0
  46. benchkit/client.py +1413 -0
  47. benchkit/controls.py +87 -0
  48. benchkit/datasets/MMLU_LICENSE.txt +21 -0
  49. benchkit/datasets/README.md +142 -0
  50. benchkit/datasets/arc_challenge.jsonl +1172 -0
  51. benchkit/datasets/banking77.jsonl +3080 -0
  52. benchkit/datasets/banking77_intents.json +79 -0
  53. benchkit/datasets/boolq.jsonl +3270 -0
  54. benchkit/datasets/code_verifier.jsonl +500 -0
  55. benchkit/datasets/gpqa_diamond.jsonl +198 -0
  56. benchkit/datasets/gsm8k.jsonl +1319 -0
  57. benchkit/datasets/hellaswag.jsonl +1000 -0
  58. benchkit/datasets/humaneval.jsonl +164 -0
  59. benchkit/datasets/ifeval.jsonl +541 -0
  60. benchkit/datasets/mbpp.jsonl +500 -0
  61. benchkit/datasets/mc_blocks_1_20_1.jsonl +1003 -0
  62. benchkit/datasets/medfailbench_hard30.jsonl +30 -0
  63. benchkit/datasets/medfailbench_hard30.md +13 -0
  64. benchkit/datasets/openbookqa.jsonl +500 -0
  65. benchkit/datasets/piqa.jsonl +1838 -0
  66. benchkit/datasets/sanity_code.jsonl +6 -0
  67. benchkit/datasets/truthfulqa.jsonl +817 -0
  68. benchkit/datasets/winogrande.jsonl +1267 -0
  69. benchkit/datasets/xstest.csv +451 -0
  70. benchkit/decision.py +194 -0
  71. benchkit/demo.py +451 -0
  72. benchkit/dockerfiles.py +247 -0
  73. benchkit/engine.py +1270 -0
  74. benchkit/evaluation.py +195 -0
  75. benchkit/events.py +141 -0
  76. benchkit/executor.py +96 -0
  77. benchkit/git_surgery/backport-release-stack/setup.sh +328 -0
  78. benchkit/git_surgery/backport-release-stack/verify.sh +119 -0
  79. benchkit/git_surgery/bisect-the-regression/setup.sh +49 -0
  80. benchkit/git_surgery/bisect-the-regression/verify.sh +34 -0
  81. benchkit/git_surgery/rebase-conflict-chain/setup.sh +65 -0
  82. benchkit/git_surgery/rebase-conflict-chain/verify.sh +43 -0
  83. benchkit/git_surgery/recover-complex-stash/setup.sh +152 -0
  84. benchkit/git_surgery/recover-complex-stash/verify.sh +95 -0
  85. benchkit/git_surgery/recover-lost-work/setup.sh +40 -0
  86. benchkit/git_surgery/recover-lost-work/verify.sh +36 -0
  87. benchkit/git_surgery/repair-force-pushed-remote/setup.sh +171 -0
  88. benchkit/git_surgery/repair-force-pushed-remote/verify.sh +83 -0
  89. benchkit/git_surgery/revert-merge-with-followups/setup.sh +198 -0
  90. benchkit/git_surgery/revert-merge-with-followups/verify.sh +98 -0
  91. benchkit/git_surgery/secret-in-history/README.md +27 -0
  92. benchkit/git_surgery/secret-in-history/setup.sh +107 -0
  93. benchkit/git_surgery/secret-in-history/verify.sh +106 -0
  94. benchkit/git_surgery/split-the-mega-commit/setup.sh +50 -0
  95. benchkit/git_surgery/split-the-mega-commit/verify.sh +48 -0
  96. benchkit/git_surgery/untangle-nested-submodules/setup.sh +193 -0
  97. benchkit/git_surgery/untangle-nested-submodules/verify.sh +90 -0
  98. benchkit/history.py +474 -0
  99. benchkit/jobs.py +332 -0
  100. benchkit/leakage.py +51 -0
  101. benchkit/looping.py +873 -0
  102. benchkit/mc_render.py +274 -0
  103. benchkit/mc_viewer/dist/atlas.png +0 -0
  104. benchkit/mc_viewer/dist/blockStates.json.gz +0 -0
  105. benchkit/mc_viewer/dist/version.json +4 -0
  106. benchkit/mc_viewer/dist/viewer.html +23 -0
  107. benchkit/mc_viewer/dist/viewer.js +2 -0
  108. benchkit/mc_viewer/dist/viewer.js.LICENSE.txt +25 -0
  109. benchkit/mc_viewer/dist/worker.js +2 -0
  110. benchkit/mc_viewer/dist/worker.js.LICENSE.txt +19 -0
  111. benchkit/metrics.py +100 -0
  112. benchkit/ollama.py +60 -0
  113. benchkit/perf.py +353 -0
  114. benchkit/perf_report.py +207 -0
  115. benchkit/perturbations.py +208 -0
  116. benchkit/pi_agent.py +476 -0
  117. benchkit/pi_package/package-lock.json +1827 -0
  118. benchkit/pi_package/package.json +8 -0
  119. benchkit/report.py +142 -0
  120. benchkit/report_markdown.py +645 -0
  121. benchkit/results.py +688 -0
  122. benchkit/retry.py +163 -0
  123. benchkit/runner.py +769 -0
  124. benchkit/sandbox.py +1167 -0
  125. benchkit/template_check.py +291 -0
  126. benchkit/templates/arena.html +504 -0
  127. benchkit/templates/history.html +58 -0
  128. benchkit/templates/perf.html +509 -0
  129. benchkit/templates/report.html +769 -0
  130. benchkit/tui/__init__.py +5 -0
  131. benchkit/tui/app.py +87 -0
  132. benchkit/tui/app.tcss +512 -0
  133. benchkit/tui/formatting.py +84 -0
  134. benchkit/tui/screens/__init__.py +1 -0
  135. benchkit/tui/screens/connect.py +191 -0
  136. benchkit/tui/screens/detail.py +288 -0
  137. benchkit/tui/screens/help.py +84 -0
  138. benchkit/tui/screens/modals.py +544 -0
  139. benchkit/tui/screens/results.py +361 -0
  140. benchkit/tui/screens/run.py +988 -0
  141. benchkit/tui/screens/setup.py +733 -0
  142. benchkit/tui/theme.py +135 -0
  143. benchkit/tui/widgets.py +120 -0
  144. benchkit_cli-0.1.0.dist-info/METADATA +294 -0
  145. benchkit_cli-0.1.0.dist-info/RECORD +149 -0
  146. benchkit_cli-0.1.0.dist-info/WHEEL +5 -0
  147. benchkit_cli-0.1.0.dist-info/entry_points.txt +3 -0
  148. benchkit_cli-0.1.0.dist-info/licenses/LICENSE +201 -0
  149. benchkit_cli-0.1.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,1827 @@
1
+ {
2
+ "name": "benchkit-pi-runtime",
3
+ "version": "0.0.0",
4
+ "lockfileVersion": 3,
5
+ "requires": true,
6
+ "packages": {
7
+ "": {
8
+ "name": "benchkit-pi-runtime",
9
+ "version": "0.0.0",
10
+ "dependencies": {
11
+ "@earendil-works/pi-coding-agent": "0.84.2"
12
+ }
13
+ },
14
+ "node_modules/@earendil-works/pi-coding-agent": {
15
+ "version": "0.84.2",
16
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-coding-agent/-/pi-coding-agent-0.84.2.tgz",
17
+ "integrity": "sha512-l4E+B7hgXKWddRo8bC/eSue2aWZjEgJ9xIpf5p0Og+lq8a2TArCwJ0HCoCPCgaBP/tN4zbYH/wOwvx9pJpeLCA==",
18
+ "hasShrinkwrap": true,
19
+ "license": "MIT",
20
+ "dependencies": {
21
+ "@earendil-works/pi-agent-core": "^0.84.2",
22
+ "@earendil-works/pi-ai": "^0.84.2",
23
+ "@earendil-works/pi-client": "^0.84.2",
24
+ "@earendil-works/pi-protocol": "^0.84.2",
25
+ "@earendil-works/pi-tui": "^0.84.2",
26
+ "@silvia-odwyer/photon-node": "0.3.4",
27
+ "chalk": "5.6.2",
28
+ "cross-spawn": "7.0.6",
29
+ "diff": "8.0.4",
30
+ "glob": "13.0.6",
31
+ "grok-mermaid": "0.2.2",
32
+ "highlight.js": "10.7.3",
33
+ "hosted-git-info": "9.0.3",
34
+ "ignore": "7.0.5",
35
+ "jiti": "2.7.0",
36
+ "minimatch": "10.2.5",
37
+ "proper-lockfile": "4.1.2",
38
+ "semver": "7.8.0",
39
+ "typebox": "1.3.7",
40
+ "undici": "8.9.0",
41
+ "yaml": "2.9.0"
42
+ },
43
+ "bin": {
44
+ "pi": "dist/cli.js"
45
+ },
46
+ "engines": {
47
+ "node": ">=22.19.0"
48
+ },
49
+ "optionalDependencies": {
50
+ "@mariozechner/clipboard": "0.3.9"
51
+ }
52
+ },
53
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@anthropic-ai/sdk": {
54
+ "version": "0.91.1",
55
+ "resolved": "https://registry.npmjs.org/@anthropic-ai/sdk/-/sdk-0.91.1.tgz",
56
+ "integrity": "sha512-LAmu761tSN9r66ixvmciswUj/ZC+1Q4iAfpedTfSVLeswRwnY3n2Nb6Tsk+cLPP28aLOPWeMgIuTuCcMC6W/iw==",
57
+ "license": "MIT",
58
+ "dependencies": {
59
+ "json-schema-to-ts": "^3.1.1"
60
+ },
61
+ "bin": {
62
+ "anthropic-ai-sdk": "bin/cli"
63
+ },
64
+ "peerDependencies": {
65
+ "zod": "^3.25.0 || ^4.0.0"
66
+ },
67
+ "peerDependenciesMeta": {
68
+ "zod": {
69
+ "optional": true
70
+ }
71
+ }
72
+ },
73
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-crypto/crc32": {
74
+ "version": "5.2.0",
75
+ "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-5.2.0.tgz",
76
+ "integrity": "sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg==",
77
+ "license": "Apache-2.0",
78
+ "dependencies": {
79
+ "@aws-crypto/util": "^5.2.0",
80
+ "@aws-sdk/types": "^3.222.0",
81
+ "tslib": "^2.6.2"
82
+ },
83
+ "engines": {
84
+ "node": ">=16.0.0"
85
+ }
86
+ },
87
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-crypto/sha256-browser": {
88
+ "version": "5.2.0",
89
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz",
90
+ "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==",
91
+ "license": "Apache-2.0",
92
+ "dependencies": {
93
+ "@aws-crypto/sha256-js": "^5.2.0",
94
+ "@aws-crypto/supports-web-crypto": "^5.2.0",
95
+ "@aws-crypto/util": "^5.2.0",
96
+ "@aws-sdk/types": "^3.222.0",
97
+ "@aws-sdk/util-locate-window": "^3.0.0",
98
+ "@smithy/util-utf8": "^2.0.0",
99
+ "tslib": "^2.6.2"
100
+ }
101
+ },
102
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-crypto/sha256-js": {
103
+ "version": "5.2.0",
104
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz",
105
+ "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==",
106
+ "license": "Apache-2.0",
107
+ "dependencies": {
108
+ "@aws-crypto/util": "^5.2.0",
109
+ "@aws-sdk/types": "^3.222.0",
110
+ "tslib": "^2.6.2"
111
+ },
112
+ "engines": {
113
+ "node": ">=16.0.0"
114
+ }
115
+ },
116
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-crypto/supports-web-crypto": {
117
+ "version": "5.2.0",
118
+ "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz",
119
+ "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==",
120
+ "license": "Apache-2.0",
121
+ "dependencies": {
122
+ "tslib": "^2.6.2"
123
+ }
124
+ },
125
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-crypto/util": {
126
+ "version": "5.2.0",
127
+ "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz",
128
+ "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==",
129
+ "license": "Apache-2.0",
130
+ "dependencies": {
131
+ "@aws-sdk/types": "^3.222.0",
132
+ "@smithy/util-utf8": "^2.0.0",
133
+ "tslib": "^2.6.2"
134
+ }
135
+ },
136
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/client-bedrock-runtime": {
137
+ "version": "3.1048.0",
138
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-bedrock-runtime/-/client-bedrock-runtime-3.1048.0.tgz",
139
+ "integrity": "sha512-u+NT61JZEkRFtpL0CAw1N1dwxnaLgwVXQl/zjJxTGgLyS/jTIdg2SdoEoCTHxgDyCnqa1HEi9QOoE9/pYRNpOQ==",
140
+ "license": "Apache-2.0",
141
+ "dependencies": {
142
+ "@aws-crypto/sha256-browser": "5.2.0",
143
+ "@aws-crypto/sha256-js": "5.2.0",
144
+ "@aws-sdk/core": "^3.974.11",
145
+ "@aws-sdk/credential-provider-node": "^3.972.42",
146
+ "@aws-sdk/eventstream-handler-node": "^3.972.16",
147
+ "@aws-sdk/middleware-eventstream": "^3.972.12",
148
+ "@aws-sdk/middleware-websocket": "^3.972.19",
149
+ "@aws-sdk/token-providers": "3.1048.0",
150
+ "@aws-sdk/types": "^3.973.8",
151
+ "@smithy/core": "^3.24.2",
152
+ "@smithy/fetch-http-handler": "^5.4.2",
153
+ "@smithy/node-http-handler": "^4.7.2",
154
+ "@smithy/types": "^4.14.1",
155
+ "tslib": "^2.6.2"
156
+ },
157
+ "engines": {
158
+ "node": ">=20.0.0"
159
+ }
160
+ },
161
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/core": {
162
+ "version": "3.974.11",
163
+ "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.974.11.tgz",
164
+ "integrity": "sha512-QpnINq5FZH6EOaDEkmHdT7eUunbvD27pDNQypaWjFyYz7Zl1q3UCMQErBZxpmfGfI7MvI2TlK8KTkgNpv8b1ug==",
165
+ "license": "Apache-2.0",
166
+ "dependencies": {
167
+ "@aws-sdk/types": "^3.973.8",
168
+ "@aws-sdk/xml-builder": "^3.972.24",
169
+ "@aws/lambda-invoke-store": "^0.2.2",
170
+ "@smithy/core": "^3.24.2",
171
+ "@smithy/signature-v4": "^5.4.2",
172
+ "@smithy/types": "^4.14.1",
173
+ "bowser": "^2.11.0",
174
+ "tslib": "^2.6.2"
175
+ },
176
+ "engines": {
177
+ "node": ">=20.0.0"
178
+ }
179
+ },
180
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-env": {
181
+ "version": "3.972.37",
182
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.37.tgz",
183
+ "integrity": "sha512-/jpPvEh6f7ntmIzf7dNxoNX6Q8vt8UpesCjbW6mFfk4V1NW6bIy9qxcQ6WbA8As5yQhsZOe+xeNd4xHX8kdY2Q==",
184
+ "license": "Apache-2.0",
185
+ "dependencies": {
186
+ "@aws-sdk/core": "^3.974.11",
187
+ "@aws-sdk/types": "^3.973.8",
188
+ "@smithy/core": "^3.24.2",
189
+ "@smithy/types": "^4.14.1",
190
+ "tslib": "^2.6.2"
191
+ },
192
+ "engines": {
193
+ "node": ">=20.0.0"
194
+ }
195
+ },
196
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-http": {
197
+ "version": "3.972.39",
198
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.972.39.tgz",
199
+ "integrity": "sha512-pIgTpisWyWg7X1bUbzSjuUYosYTD0Ghz2M0hkSTmb3a6i3qV3uU+NYJPI/E2XSC0HcsZh5rsLPzeXrkb2DS0Cg==",
200
+ "license": "Apache-2.0",
201
+ "dependencies": {
202
+ "@aws-sdk/core": "^3.974.11",
203
+ "@aws-sdk/types": "^3.973.8",
204
+ "@smithy/core": "^3.24.2",
205
+ "@smithy/fetch-http-handler": "^5.4.2",
206
+ "@smithy/node-http-handler": "^4.7.2",
207
+ "@smithy/types": "^4.14.1",
208
+ "tslib": "^2.6.2"
209
+ },
210
+ "engines": {
211
+ "node": ">=20.0.0"
212
+ }
213
+ },
214
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-ini": {
215
+ "version": "3.972.41",
216
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.972.41.tgz",
217
+ "integrity": "sha512-u2tyjaxJJzW8UtW4SM1ZcPMDwO6y+kV+llvou+Adts0FAKyzes5jG4izQN+KX3yE8ZROpS5y1LJ//xL2iSf76w==",
218
+ "license": "Apache-2.0",
219
+ "dependencies": {
220
+ "@aws-sdk/core": "^3.974.11",
221
+ "@aws-sdk/credential-provider-env": "^3.972.37",
222
+ "@aws-sdk/credential-provider-http": "^3.972.39",
223
+ "@aws-sdk/credential-provider-login": "^3.972.41",
224
+ "@aws-sdk/credential-provider-process": "^3.972.37",
225
+ "@aws-sdk/credential-provider-sso": "^3.972.41",
226
+ "@aws-sdk/credential-provider-web-identity": "^3.972.41",
227
+ "@aws-sdk/nested-clients": "^3.997.9",
228
+ "@aws-sdk/types": "^3.973.8",
229
+ "@smithy/core": "^3.24.2",
230
+ "@smithy/credential-provider-imds": "^4.3.2",
231
+ "@smithy/types": "^4.14.1",
232
+ "tslib": "^2.6.2"
233
+ },
234
+ "engines": {
235
+ "node": ">=20.0.0"
236
+ }
237
+ },
238
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-login": {
239
+ "version": "3.972.41",
240
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-login/-/credential-provider-login-3.972.41.tgz",
241
+ "integrity": "sha512-0LBitxXiAiaE5nlFPfpNIww/8FRY/I7WIndWsc9GmNFOM7cE1wNpVNQEGEk9Outg5l8xl+3vybxFyUy4l9q/LQ==",
242
+ "license": "Apache-2.0",
243
+ "dependencies": {
244
+ "@aws-sdk/core": "^3.974.11",
245
+ "@aws-sdk/nested-clients": "^3.997.9",
246
+ "@aws-sdk/types": "^3.973.8",
247
+ "@smithy/core": "^3.24.2",
248
+ "@smithy/types": "^4.14.1",
249
+ "tslib": "^2.6.2"
250
+ },
251
+ "engines": {
252
+ "node": ">=20.0.0"
253
+ }
254
+ },
255
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-node": {
256
+ "version": "3.972.42",
257
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.972.42.tgz",
258
+ "integrity": "sha512-D4oon2zbqqsWOJUM99Gm3/ZyJ0IJvTXVN3PyloGb3kQEyI36fjCZheZj422lAgTWWd6TSHgiImLt3RIaLdv3dQ==",
259
+ "license": "Apache-2.0",
260
+ "dependencies": {
261
+ "@aws-sdk/credential-provider-env": "^3.972.37",
262
+ "@aws-sdk/credential-provider-http": "^3.972.39",
263
+ "@aws-sdk/credential-provider-ini": "^3.972.41",
264
+ "@aws-sdk/credential-provider-process": "^3.972.37",
265
+ "@aws-sdk/credential-provider-sso": "^3.972.41",
266
+ "@aws-sdk/credential-provider-web-identity": "^3.972.41",
267
+ "@aws-sdk/types": "^3.973.8",
268
+ "@smithy/core": "^3.24.2",
269
+ "@smithy/credential-provider-imds": "^4.3.2",
270
+ "@smithy/types": "^4.14.1",
271
+ "tslib": "^2.6.2"
272
+ },
273
+ "engines": {
274
+ "node": ">=20.0.0"
275
+ }
276
+ },
277
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-process": {
278
+ "version": "3.972.37",
279
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.972.37.tgz",
280
+ "integrity": "sha512-7nVaHBUaWIddASYfVaA9O4D5ZVjewU3sCol9WqZPGfW0nR+0WqE0xHZnD/U2L33PlOB8KNXGKZ6wOES/QijKzg==",
281
+ "license": "Apache-2.0",
282
+ "dependencies": {
283
+ "@aws-sdk/core": "^3.974.11",
284
+ "@aws-sdk/types": "^3.973.8",
285
+ "@smithy/core": "^3.24.2",
286
+ "@smithy/types": "^4.14.1",
287
+ "tslib": "^2.6.2"
288
+ },
289
+ "engines": {
290
+ "node": ">=20.0.0"
291
+ }
292
+ },
293
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-sso": {
294
+ "version": "3.972.41",
295
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.972.41.tgz",
296
+ "integrity": "sha512-IOWAWEHe5LkjSKkkUUX9ciV6Y1scHTsnfEkdt5yyC4Slrc7AGbkLPrpntjqh18ksJAMOaVhoBsO8p2WyTcY2wQ==",
297
+ "license": "Apache-2.0",
298
+ "dependencies": {
299
+ "@aws-sdk/core": "^3.974.11",
300
+ "@aws-sdk/nested-clients": "^3.997.9",
301
+ "@aws-sdk/token-providers": "3.1048.0",
302
+ "@aws-sdk/types": "^3.973.8",
303
+ "@smithy/core": "^3.24.2",
304
+ "@smithy/types": "^4.14.1",
305
+ "tslib": "^2.6.2"
306
+ },
307
+ "engines": {
308
+ "node": ">=20.0.0"
309
+ }
310
+ },
311
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-web-identity": {
312
+ "version": "3.972.41",
313
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.972.41.tgz",
314
+ "integrity": "sha512-mbACk9Yypa8nm4iGZLs0PofOXEcTDOUw6wDnsPXNDNSd2WNXs1tSo+6nc/fh0jLYdfVZThhBL98PHW4aXFsG5A==",
315
+ "license": "Apache-2.0",
316
+ "dependencies": {
317
+ "@aws-sdk/core": "^3.974.11",
318
+ "@aws-sdk/nested-clients": "^3.997.9",
319
+ "@aws-sdk/types": "^3.973.8",
320
+ "@smithy/core": "^3.24.2",
321
+ "@smithy/types": "^4.14.1",
322
+ "tslib": "^2.6.2"
323
+ },
324
+ "engines": {
325
+ "node": ">=20.0.0"
326
+ }
327
+ },
328
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/eventstream-handler-node": {
329
+ "version": "3.972.16",
330
+ "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-handler-node/-/eventstream-handler-node-3.972.16.tgz",
331
+ "integrity": "sha512-yedpPgKftqjU5SlPFHfqWpOw6xSCRieWRG1euWOlXn4WJxt2VX92VprCa2PpSOXjVCAeK6dTjW9eJRXVig9yGA==",
332
+ "license": "Apache-2.0",
333
+ "dependencies": {
334
+ "@aws-sdk/types": "^3.973.8",
335
+ "@smithy/core": "^3.24.2",
336
+ "@smithy/types": "^4.14.1",
337
+ "tslib": "^2.6.2"
338
+ },
339
+ "engines": {
340
+ "node": ">=20.0.0"
341
+ }
342
+ },
343
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/middleware-eventstream": {
344
+ "version": "3.972.12",
345
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-eventstream/-/middleware-eventstream-3.972.12.tgz",
346
+ "integrity": "sha512-tHTHHCHNrq6XklQvlzHBDJG4Iuhh7NVPRdtmvP+nHFA+5sxPlIDzlAHHgfoYHGvT3NXP1yVP/L5c3opUn6T3Qg==",
347
+ "license": "Apache-2.0",
348
+ "dependencies": {
349
+ "@aws-sdk/types": "^3.973.8",
350
+ "@smithy/core": "^3.24.2",
351
+ "@smithy/types": "^4.14.1",
352
+ "tslib": "^2.6.2"
353
+ },
354
+ "engines": {
355
+ "node": ">=20.0.0"
356
+ }
357
+ },
358
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/middleware-websocket": {
359
+ "version": "3.972.19",
360
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-websocket/-/middleware-websocket-3.972.19.tgz",
361
+ "integrity": "sha512-mkEhOGYozqKQkbFaVrjwr0faiwwZza1v5/jSY6Tucm3bD+uKTazIUH/4Yo6aMnQD2ua2W9cMP6s8mvwTcjtqHw==",
362
+ "license": "Apache-2.0",
363
+ "dependencies": {
364
+ "@aws-sdk/core": "^3.974.11",
365
+ "@aws-sdk/types": "^3.973.8",
366
+ "@smithy/core": "^3.24.2",
367
+ "@smithy/fetch-http-handler": "^5.4.2",
368
+ "@smithy/signature-v4": "^5.4.2",
369
+ "@smithy/types": "^4.14.1",
370
+ "tslib": "^2.6.2"
371
+ },
372
+ "engines": {
373
+ "node": ">= 14.0.0"
374
+ }
375
+ },
376
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/nested-clients": {
377
+ "version": "3.997.9",
378
+ "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.997.9.tgz",
379
+ "integrity": "sha512-jPR3rnmRI4hWYyzfmTGBr7NblMp8QYYeflHXba1H6+7CGrWVqWKQzaXFQ4qbExqPRsXN3T3L3JxFhr6aouXUGQ==",
380
+ "license": "Apache-2.0",
381
+ "dependencies": {
382
+ "@aws-crypto/sha256-browser": "5.2.0",
383
+ "@aws-crypto/sha256-js": "5.2.0",
384
+ "@aws-sdk/core": "^3.974.11",
385
+ "@aws-sdk/signature-v4-multi-region": "^3.996.27",
386
+ "@aws-sdk/types": "^3.973.8",
387
+ "@smithy/core": "^3.24.2",
388
+ "@smithy/fetch-http-handler": "^5.4.2",
389
+ "@smithy/node-http-handler": "^4.7.2",
390
+ "@smithy/types": "^4.14.1",
391
+ "tslib": "^2.6.2"
392
+ },
393
+ "engines": {
394
+ "node": ">=20.0.0"
395
+ }
396
+ },
397
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/signature-v4-multi-region": {
398
+ "version": "3.996.27",
399
+ "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.996.27.tgz",
400
+ "integrity": "sha512-0Phbz4t6HI3D3skxvG2uI+VWU034/nSIw1T8d+FPzzQG9EQTrw94o9mOKO2Gv3n3Oc8P7JD7RAUxkoneLWv5Eg==",
401
+ "license": "Apache-2.0",
402
+ "dependencies": {
403
+ "@aws-sdk/types": "^3.973.8",
404
+ "@smithy/core": "^3.24.2",
405
+ "@smithy/signature-v4": "^5.4.2",
406
+ "@smithy/types": "^4.14.1",
407
+ "tslib": "^2.6.2"
408
+ },
409
+ "engines": {
410
+ "node": ">=20.0.0"
411
+ }
412
+ },
413
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/token-providers": {
414
+ "version": "3.1048.0",
415
+ "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.1048.0.tgz",
416
+ "integrity": "sha512-k0y/GcuesuSfWyUM0WamrGyeZmltRYaPbHO82UDA6mZ/doB+FOHKutikPAtSXMn/hDz970cF+iRuuiYO9VEbAA==",
417
+ "license": "Apache-2.0",
418
+ "dependencies": {
419
+ "@aws-sdk/core": "^3.974.11",
420
+ "@aws-sdk/nested-clients": "^3.997.9",
421
+ "@aws-sdk/types": "^3.973.8",
422
+ "@smithy/core": "^3.24.2",
423
+ "@smithy/types": "^4.14.1",
424
+ "tslib": "^2.6.2"
425
+ },
426
+ "engines": {
427
+ "node": ">=20.0.0"
428
+ }
429
+ },
430
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/types": {
431
+ "version": "3.973.8",
432
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.973.8.tgz",
433
+ "integrity": "sha512-gjlAdtHMbtR9X5iIhVUvbVcy55KnznpC6bkDUWW9z915bi0ckdUr5cjf16Kp6xq0bP5HBD2xzgbL9F9Quv5vUw==",
434
+ "license": "Apache-2.0",
435
+ "dependencies": {
436
+ "@smithy/types": "^4.14.1",
437
+ "tslib": "^2.6.2"
438
+ },
439
+ "engines": {
440
+ "node": ">=20.0.0"
441
+ }
442
+ },
443
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/util-locate-window": {
444
+ "version": "3.965.5",
445
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.965.5.tgz",
446
+ "integrity": "sha512-WhlJNNINQB+9qtLtZJcpQdgZw3SCDCpXdUJP7cToGwHbCWCnRckGlc6Bx/OhWwIYFNAn+FIydY8SZ0QmVu3xTQ==",
447
+ "license": "Apache-2.0",
448
+ "dependencies": {
449
+ "tslib": "^2.6.2"
450
+ },
451
+ "engines": {
452
+ "node": ">=20.0.0"
453
+ }
454
+ },
455
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/xml-builder": {
456
+ "version": "3.972.24",
457
+ "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.972.24.tgz",
458
+ "integrity": "sha512-V8z5YcDPfsvzrBlj0xR1vhRtocblhYbqdreCJB/voGd4Sr5zjNAeWxexbnqVtskTJe0vFb5KMqbSL++ePl+zRw==",
459
+ "license": "Apache-2.0",
460
+ "dependencies": {
461
+ "@nodable/entities": "2.1.0",
462
+ "@smithy/types": "^4.14.1",
463
+ "fast-xml-parser": "5.7.3",
464
+ "tslib": "^2.6.2"
465
+ },
466
+ "engines": {
467
+ "node": ">=20.0.0"
468
+ }
469
+ },
470
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws/lambda-invoke-store": {
471
+ "version": "0.2.4",
472
+ "resolved": "https://registry.npmjs.org/@aws/lambda-invoke-store/-/lambda-invoke-store-0.2.4.tgz",
473
+ "integrity": "sha512-iY8yvjE0y651BixKNPgmv1WrQc+GZ142sb0z4gYnChDDY2YqI4P/jsSopBWrKfAt7LOJAkOXt7rC/hms+WclQQ==",
474
+ "license": "Apache-2.0",
475
+ "engines": {
476
+ "node": ">=18.0.0"
477
+ }
478
+ },
479
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@babel/runtime": {
480
+ "version": "7.29.2",
481
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz",
482
+ "integrity": "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==",
483
+ "license": "MIT",
484
+ "engines": {
485
+ "node": ">=6.9.0"
486
+ }
487
+ },
488
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-agent-core": {
489
+ "version": "0.84.2",
490
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-agent-core/-/pi-agent-core-0.84.2.tgz",
491
+ "license": "MIT",
492
+ "dependencies": {
493
+ "@earendil-works/pi-ai": "^0.84.2",
494
+ "@earendil-works/pi-telemetry": "^0.84.2",
495
+ "diff": "8.0.4",
496
+ "ignore": "7.0.5",
497
+ "typebox": "1.3.7",
498
+ "yaml": "2.9.0"
499
+ },
500
+ "engines": {
501
+ "node": ">=22.19.0"
502
+ }
503
+ },
504
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-ai": {
505
+ "version": "0.84.2",
506
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.84.2.tgz",
507
+ "license": "MIT",
508
+ "dependencies": {
509
+ "@anthropic-ai/sdk": "0.91.1",
510
+ "@aws-sdk/client-bedrock-runtime": "3.1048.0",
511
+ "@earendil-works/pi-telemetry": "^0.84.2",
512
+ "@google/genai": "1.52.0",
513
+ "@opentelemetry/api": "1.9.0",
514
+ "@smithy/node-http-handler": "4.7.3",
515
+ "http-proxy-agent": "7.0.2",
516
+ "https-proxy-agent": "7.0.6",
517
+ "openai": "6.40.0",
518
+ "partial-json": "0.1.7",
519
+ "typebox": "1.3.7"
520
+ },
521
+ "bin": {
522
+ "pi-ai": "dist/cli.js"
523
+ },
524
+ "engines": {
525
+ "node": ">=22.19.0"
526
+ }
527
+ },
528
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-client": {
529
+ "version": "0.84.2",
530
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-client/-/pi-client-0.84.2.tgz",
531
+ "license": "MIT",
532
+ "dependencies": {
533
+ "@earendil-works/pi-protocol": "^0.84.2"
534
+ },
535
+ "engines": {
536
+ "node": ">=22.19.0"
537
+ }
538
+ },
539
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-protocol": {
540
+ "version": "0.84.2",
541
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-protocol/-/pi-protocol-0.84.2.tgz",
542
+ "license": "MIT",
543
+ "dependencies": {
544
+ "typebox": "1.3.7"
545
+ },
546
+ "engines": {
547
+ "node": ">=22.19.0"
548
+ }
549
+ },
550
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-telemetry": {
551
+ "version": "0.84.2",
552
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-telemetry/-/pi-telemetry-0.84.2.tgz",
553
+ "license": "MIT",
554
+ "engines": {
555
+ "node": ">=22.19.0"
556
+ }
557
+ },
558
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-tui": {
559
+ "version": "0.84.2",
560
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-tui/-/pi-tui-0.84.2.tgz",
561
+ "license": "MIT",
562
+ "dependencies": {
563
+ "get-east-asian-width": "1.6.0",
564
+ "marked": "18.0.5"
565
+ },
566
+ "engines": {
567
+ "node": ">=22.19.0"
568
+ }
569
+ },
570
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@google/genai": {
571
+ "version": "1.52.0",
572
+ "resolved": "https://registry.npmjs.org/@google/genai/-/genai-1.52.0.tgz",
573
+ "integrity": "sha512-gwSvbpiN/17O9TbsqSsE/OzZcpv5Fo4RQjdngGgogtuB9RsyJ8ZHhX5KjHj1bp5N9snN2eK8LDGXSaWW2hof8Q==",
574
+ "hasInstallScript": true,
575
+ "license": "Apache-2.0",
576
+ "dependencies": {
577
+ "google-auth-library": "^10.3.0",
578
+ "p-retry": "^4.6.2",
579
+ "protobufjs": "^7.5.4",
580
+ "ws": "^8.18.0"
581
+ },
582
+ "engines": {
583
+ "node": ">=20.0.0"
584
+ },
585
+ "peerDependencies": {
586
+ "@modelcontextprotocol/sdk": "^1.25.2"
587
+ },
588
+ "peerDependenciesMeta": {
589
+ "@modelcontextprotocol/sdk": {
590
+ "optional": true
591
+ }
592
+ }
593
+ },
594
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard": {
595
+ "version": "0.3.9",
596
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard/-/clipboard-0.3.9.tgz",
597
+ "integrity": "sha512-ABnA53mdfkGZwOFUdZNv2S0CWGO/EIuPj8Vv9xmBFmSYg/qFc7ihO6q5FcQjvoE67kZpWkEc4AhD6B/os04yuA==",
598
+ "license": "MIT",
599
+ "optional": true,
600
+ "engines": {
601
+ "node": ">= 10"
602
+ },
603
+ "optionalDependencies": {
604
+ "@mariozechner/clipboard-darwin-arm64": "0.3.9",
605
+ "@mariozechner/clipboard-darwin-universal": "0.3.9",
606
+ "@mariozechner/clipboard-darwin-x64": "0.3.9",
607
+ "@mariozechner/clipboard-linux-arm64-gnu": "0.3.9",
608
+ "@mariozechner/clipboard-linux-arm64-musl": "0.3.9",
609
+ "@mariozechner/clipboard-linux-riscv64-gnu": "0.3.9",
610
+ "@mariozechner/clipboard-linux-x64-gnu": "0.3.9",
611
+ "@mariozechner/clipboard-linux-x64-musl": "0.3.9",
612
+ "@mariozechner/clipboard-win32-arm64-msvc": "0.3.9",
613
+ "@mariozechner/clipboard-win32-x64-msvc": "0.3.9"
614
+ }
615
+ },
616
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-darwin-arm64": {
617
+ "version": "0.3.9",
618
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-darwin-arm64/-/clipboard-darwin-arm64-0.3.9.tgz",
619
+ "integrity": "sha512-BfgV7vCEWZwJwZJw03r6bP5+tf0iI/ANuQYCxi9RNn7FrWB3yzGuMKCrNLRl6V761vXRdL8+OqZ0wd4TqlsNOQ==",
620
+ "cpu": [
621
+ "arm64"
622
+ ],
623
+ "license": "MIT",
624
+ "optional": true,
625
+ "os": [
626
+ "darwin"
627
+ ],
628
+ "engines": {
629
+ "node": ">= 10"
630
+ }
631
+ },
632
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-darwin-universal": {
633
+ "version": "0.3.9",
634
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-darwin-universal/-/clipboard-darwin-universal-0.3.9.tgz",
635
+ "integrity": "sha512-BGGR4iA9Z2shAjI65eI5xtyb3LYNlDW9X3gxKxDbqtbnREohsrqznov6zpKoIrsRWpzlYVEdKphS7ksJ0/ndSQ==",
636
+ "license": "MIT",
637
+ "optional": true,
638
+ "os": [
639
+ "darwin"
640
+ ],
641
+ "engines": {
642
+ "node": ">= 10"
643
+ }
644
+ },
645
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-darwin-x64": {
646
+ "version": "0.3.9",
647
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-darwin-x64/-/clipboard-darwin-x64-0.3.9.tgz",
648
+ "integrity": "sha512-4kURmCbS6nt8uYhtmWpUcJWyPHfmAr5dTpXD1nO3pIfa+TSQ9DbrGOYCKH+aEFW47XhQ4Vp8ZTszie+wfFvDKg==",
649
+ "cpu": [
650
+ "x64"
651
+ ],
652
+ "license": "MIT",
653
+ "optional": true,
654
+ "os": [
655
+ "darwin"
656
+ ],
657
+ "engines": {
658
+ "node": ">= 10"
659
+ }
660
+ },
661
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-arm64-gnu": {
662
+ "version": "0.3.9",
663
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-arm64-gnu/-/clipboard-linux-arm64-gnu-0.3.9.tgz",
664
+ "integrity": "sha512-g59OkUGP2DDfCOIKypHeYgv2M55u/cKvXa5dSxFbEJ34XvIQMdcVmpKCkGUro3ZgefXiGVdwguvTMQGpHWzIXw==",
665
+ "cpu": [
666
+ "arm64"
667
+ ],
668
+ "license": "MIT",
669
+ "optional": true,
670
+ "os": [
671
+ "linux"
672
+ ],
673
+ "engines": {
674
+ "node": ">= 10"
675
+ }
676
+ },
677
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-arm64-musl": {
678
+ "version": "0.3.9",
679
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-arm64-musl/-/clipboard-linux-arm64-musl-0.3.9.tgz",
680
+ "integrity": "sha512-AGuJdgKsmJdm4Pych7kv3sqe591ERRaAHW3xjLooiFzn8J+PxUyof++7YZrB5Y5tpnTO+K18Og3taj2NpluCRQ==",
681
+ "cpu": [
682
+ "arm64"
683
+ ],
684
+ "license": "MIT",
685
+ "optional": true,
686
+ "os": [
687
+ "linux"
688
+ ],
689
+ "engines": {
690
+ "node": ">= 10"
691
+ }
692
+ },
693
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-riscv64-gnu": {
694
+ "version": "0.3.9",
695
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-riscv64-gnu/-/clipboard-linux-riscv64-gnu-0.3.9.tgz",
696
+ "integrity": "sha512-DXBEAiuMpk7dhS1a9NzNxVAFi1vaKoPu7rQNgY8LIDLGrK3lnIp3nT10DUum+PKVJoJppIP+NAA8IZe4DMNDPw==",
697
+ "cpu": [
698
+ "riscv64"
699
+ ],
700
+ "license": "MIT",
701
+ "optional": true,
702
+ "os": [
703
+ "linux"
704
+ ],
705
+ "engines": {
706
+ "node": ">= 10"
707
+ }
708
+ },
709
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-x64-gnu": {
710
+ "version": "0.3.9",
711
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-x64-gnu/-/clipboard-linux-x64-gnu-0.3.9.tgz",
712
+ "integrity": "sha512-WORrMLd6EpElEME7JRKfSaY34nW1P5LbdgK5YNCS1ncG2LqmITsSMEJ8nh2mpvxb3TxqbOOKgY7k9eMJYlW9Mw==",
713
+ "cpu": [
714
+ "x64"
715
+ ],
716
+ "license": "MIT",
717
+ "optional": true,
718
+ "os": [
719
+ "linux"
720
+ ],
721
+ "engines": {
722
+ "node": ">= 10"
723
+ }
724
+ },
725
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-x64-musl": {
726
+ "version": "0.3.9",
727
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-x64-musl/-/clipboard-linux-x64-musl-0.3.9.tgz",
728
+ "integrity": "sha512-/DHn+1DrfL6oRaPPWXaOKvonFFrni666fxd+zFqiQEfvBH0tsHVWjq9iqBk0oDp0qaPA72lIMy5BptxISBEhZQ==",
729
+ "cpu": [
730
+ "x64"
731
+ ],
732
+ "license": "MIT",
733
+ "optional": true,
734
+ "os": [
735
+ "linux"
736
+ ],
737
+ "engines": {
738
+ "node": ">= 10"
739
+ }
740
+ },
741
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-win32-arm64-msvc": {
742
+ "version": "0.3.9",
743
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-win32-arm64-msvc/-/clipboard-win32-arm64-msvc-0.3.9.tgz",
744
+ "integrity": "sha512-O5FHD3ErkMwMhNzAfu3ggy0ug4z7btZuoQgwwxlzPrwV2bxlD6WDpqBY4NCgICAgZdDKdp+loUEKVAVt8aYnhQ==",
745
+ "cpu": [
746
+ "arm64"
747
+ ],
748
+ "license": "MIT",
749
+ "optional": true,
750
+ "os": [
751
+ "win32"
752
+ ],
753
+ "engines": {
754
+ "node": ">= 10"
755
+ }
756
+ },
757
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-win32-x64-msvc": {
758
+ "version": "0.3.9",
759
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-win32-x64-msvc/-/clipboard-win32-x64-msvc-0.3.9.tgz",
760
+ "integrity": "sha512-ihQC3EufqEY81vhXBgVBtK4prL+wc62zJsSvxrgz7K1hsdt6OObz6v9p3Rn1OG3GJksTTKMJF0u/guMISHPhSA==",
761
+ "cpu": [
762
+ "x64"
763
+ ],
764
+ "license": "MIT",
765
+ "optional": true,
766
+ "os": [
767
+ "win32"
768
+ ],
769
+ "engines": {
770
+ "node": ">= 10"
771
+ }
772
+ },
773
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@nodable/entities": {
774
+ "version": "2.1.0",
775
+ "resolved": "https://registry.npmjs.org/@nodable/entities/-/entities-2.1.0.tgz",
776
+ "integrity": "sha512-nyT7T3nbMyBI/lvr6L5TyWbFJAI9FTgVRakNoBqCD+PmID8DzFrrNdLLtHMwMszOtqZa8PAOV24ZqDnQrhQINA==",
777
+ "funding": [
778
+ {
779
+ "type": "github",
780
+ "url": "https://github.com/sponsors/nodable"
781
+ }
782
+ ],
783
+ "license": "MIT"
784
+ },
785
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@opentelemetry/api": {
786
+ "version": "1.9.0",
787
+ "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz",
788
+ "integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==",
789
+ "license": "Apache-2.0",
790
+ "engines": {
791
+ "node": ">=8.0.0"
792
+ }
793
+ },
794
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/aspromise": {
795
+ "version": "1.1.2",
796
+ "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
797
+ "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==",
798
+ "license": "BSD-3-Clause"
799
+ },
800
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/base64": {
801
+ "version": "1.1.2",
802
+ "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz",
803
+ "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==",
804
+ "license": "BSD-3-Clause"
805
+ },
806
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/codegen": {
807
+ "version": "2.0.5",
808
+ "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.5.tgz",
809
+ "integrity": "sha512-zgXFLzW3Ap33e6d0Wlj4MGIm6Ce8O89n/apUaGNB/jx+hw+ruWEp7EwGUshdLKVRCxZW12fp9r40E1mQrf/34g==",
810
+ "license": "BSD-3-Clause"
811
+ },
812
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/eventemitter": {
813
+ "version": "1.1.1",
814
+ "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.1.tgz",
815
+ "integrity": "sha512-vW1GmwMZNnL+gMRaovlh9yZX74kc+TTU3FObkkurpMaRtBfLP3ldjS9KQWlwZgraRE0+dheEEoAxdzcJQ8eXZg==",
816
+ "license": "BSD-3-Clause"
817
+ },
818
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/fetch": {
819
+ "version": "1.1.1",
820
+ "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.1.tgz",
821
+ "integrity": "sha512-GpptLrs57adMSuHi3VNj0mAF8dwh36LMaYF6XyJ6JMWlVsc+t42tm1HSEDmOs3A8fC9yyeisgLhsTVQokOZ0zw==",
822
+ "license": "BSD-3-Clause",
823
+ "dependencies": {
824
+ "@protobufjs/aspromise": "^1.1.1"
825
+ }
826
+ },
827
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/float": {
828
+ "version": "1.0.2",
829
+ "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz",
830
+ "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==",
831
+ "license": "BSD-3-Clause"
832
+ },
833
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/path": {
834
+ "version": "1.1.2",
835
+ "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz",
836
+ "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==",
837
+ "license": "BSD-3-Clause"
838
+ },
839
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/pool": {
840
+ "version": "1.1.0",
841
+ "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz",
842
+ "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==",
843
+ "license": "BSD-3-Clause"
844
+ },
845
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/utf8": {
846
+ "version": "1.1.1",
847
+ "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.1.tgz",
848
+ "integrity": "sha512-oOAWABowe8EAbMyWKM0tYDKi8Yaox52D+HWZhAIJqQXbqe0xI/GV7FhLWqlEKreMkfDjshR5FKgi3mnle0h6Eg==",
849
+ "license": "BSD-3-Clause"
850
+ },
851
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@silvia-odwyer/photon-node": {
852
+ "version": "0.3.4",
853
+ "resolved": "https://registry.npmjs.org/@silvia-odwyer/photon-node/-/photon-node-0.3.4.tgz",
854
+ "integrity": "sha512-bnly4BKB3KDTFxrUIcgCLbaeVVS8lrAkri1pEzskpmxu9MdfGQTy8b8EgcD83ywD3RPMsIulY8xJH5Awa+t9fA==",
855
+ "license": "Apache-2.0"
856
+ },
857
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/core": {
858
+ "version": "3.24.3",
859
+ "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.24.3.tgz",
860
+ "integrity": "sha512-Ep/7tPamGY8mgESE3LyLKtxJyy6U52WWAqr/3wial47Sj4u3PiIF73AOGI27UyLy9duTkhZbgzodOfLV4TduZg==",
861
+ "license": "Apache-2.0",
862
+ "dependencies": {
863
+ "@aws-crypto/crc32": "5.2.0",
864
+ "@smithy/types": "^4.14.2",
865
+ "tslib": "^2.6.2"
866
+ },
867
+ "engines": {
868
+ "node": ">=18.0.0"
869
+ }
870
+ },
871
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/credential-provider-imds": {
872
+ "version": "4.3.3",
873
+ "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.3.3.tgz",
874
+ "integrity": "sha512-I2Bti0DKFo2IJyN28ijCsx51BAumEYR4/1yZ1FXyBygy9MqbnMqCev4JPth/MbpRfBSRAX35hITSnAdJRo1u5w==",
875
+ "license": "Apache-2.0",
876
+ "dependencies": {
877
+ "@smithy/core": "^3.24.3",
878
+ "@smithy/types": "^4.14.2",
879
+ "tslib": "^2.6.2"
880
+ },
881
+ "engines": {
882
+ "node": ">=18.0.0"
883
+ }
884
+ },
885
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/fetch-http-handler": {
886
+ "version": "5.4.3",
887
+ "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.4.3.tgz",
888
+ "integrity": "sha512-F+DRf8IJazRJgYog2A/yJK7eYVc0rqTlRzO+5ZxjJd4WkZoKz0IJRncf7G6t1pdVT3kryJcwuTFhN1c5m6N47A==",
889
+ "license": "Apache-2.0",
890
+ "dependencies": {
891
+ "@smithy/core": "^3.24.3",
892
+ "@smithy/types": "^4.14.2",
893
+ "tslib": "^2.6.2"
894
+ },
895
+ "engines": {
896
+ "node": ">=18.0.0"
897
+ }
898
+ },
899
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/is-array-buffer": {
900
+ "version": "2.2.0",
901
+ "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
902
+ "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
903
+ "license": "Apache-2.0",
904
+ "dependencies": {
905
+ "tslib": "^2.6.2"
906
+ },
907
+ "engines": {
908
+ "node": ">=14.0.0"
909
+ }
910
+ },
911
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/node-http-handler": {
912
+ "version": "4.7.3",
913
+ "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.7.3.tgz",
914
+ "integrity": "sha512-/jPhevcTFPMVl6KNjbaI47iOg1zxC7IsnX4PQDGVZKMFceOXtB8IEYaB7a9VvkP/3oC60WzTeKocvSI7vLT0vA==",
915
+ "license": "Apache-2.0",
916
+ "dependencies": {
917
+ "@smithy/core": "^3.24.3",
918
+ "@smithy/types": "^4.14.2",
919
+ "tslib": "^2.6.2"
920
+ },
921
+ "engines": {
922
+ "node": ">=18.0.0"
923
+ }
924
+ },
925
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/signature-v4": {
926
+ "version": "5.4.3",
927
+ "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.4.3.tgz",
928
+ "integrity": "sha512-53+75QuPl6DL+ct6vVEB51FDO5oulXr20TPV46VvJZg76lIlXNWfxi8j+G2V/t0I2qxCBOa3vX/8bmjrpFVo9g==",
929
+ "license": "Apache-2.0",
930
+ "dependencies": {
931
+ "@smithy/core": "^3.24.3",
932
+ "@smithy/types": "^4.14.2",
933
+ "tslib": "^2.6.2"
934
+ },
935
+ "engines": {
936
+ "node": ">=18.0.0"
937
+ }
938
+ },
939
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/types": {
940
+ "version": "4.14.2",
941
+ "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.14.2.tgz",
942
+ "integrity": "sha512-P+otAxbV4CqBybp7EkcJCrig63yE2E7PuNVOmilVMRcx/O+QDzGULTrKsq4DV13gSfak9ObPrWaHl/9bL5YcWw==",
943
+ "license": "Apache-2.0",
944
+ "dependencies": {
945
+ "tslib": "^2.6.2"
946
+ },
947
+ "engines": {
948
+ "node": ">=18.0.0"
949
+ }
950
+ },
951
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/util-buffer-from": {
952
+ "version": "2.2.0",
953
+ "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
954
+ "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
955
+ "license": "Apache-2.0",
956
+ "dependencies": {
957
+ "@smithy/is-array-buffer": "^2.2.0",
958
+ "tslib": "^2.6.2"
959
+ },
960
+ "engines": {
961
+ "node": ">=14.0.0"
962
+ }
963
+ },
964
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/util-utf8": {
965
+ "version": "2.3.0",
966
+ "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
967
+ "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
968
+ "license": "Apache-2.0",
969
+ "dependencies": {
970
+ "@smithy/util-buffer-from": "^2.2.0",
971
+ "tslib": "^2.6.2"
972
+ },
973
+ "engines": {
974
+ "node": ">=14.0.0"
975
+ }
976
+ },
977
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@types/node": {
978
+ "version": "22.19.19",
979
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.19.tgz",
980
+ "integrity": "sha512-dyh/xO2Fh5bYrfWaaqGrRQQGkNdmYw6AmaAUvYeUMNTWQtvb796ikLdmTchRmOlOiIJ1TDXfWgVx1QkUlQ6Hew==",
981
+ "license": "MIT",
982
+ "dependencies": {
983
+ "undici-types": "~6.21.0"
984
+ }
985
+ },
986
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/agent-base": {
987
+ "version": "7.1.4",
988
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz",
989
+ "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==",
990
+ "license": "MIT",
991
+ "engines": {
992
+ "node": ">= 14"
993
+ }
994
+ },
995
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/balanced-match": {
996
+ "version": "4.0.4",
997
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
998
+ "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
999
+ "license": "MIT",
1000
+ "engines": {
1001
+ "node": "18 || 20 || >=22"
1002
+ }
1003
+ },
1004
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/base64-js": {
1005
+ "version": "1.5.1",
1006
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
1007
+ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
1008
+ "funding": [
1009
+ {
1010
+ "type": "github",
1011
+ "url": "https://github.com/sponsors/feross"
1012
+ },
1013
+ {
1014
+ "type": "patreon",
1015
+ "url": "https://www.patreon.com/feross"
1016
+ },
1017
+ {
1018
+ "type": "consulting",
1019
+ "url": "https://feross.org/support"
1020
+ }
1021
+ ],
1022
+ "license": "MIT"
1023
+ },
1024
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/bignumber.js": {
1025
+ "version": "9.3.1",
1026
+ "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.3.1.tgz",
1027
+ "integrity": "sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ==",
1028
+ "license": "MIT",
1029
+ "engines": {
1030
+ "node": "*"
1031
+ }
1032
+ },
1033
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/bowser": {
1034
+ "version": "2.14.1",
1035
+ "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.14.1.tgz",
1036
+ "integrity": "sha512-tzPjzCxygAKWFOJP011oxFHs57HzIhOEracIgAePE4pqB3LikALKnSzUyU4MGs9/iCEUuHlAJTjTc5M+u7YEGg==",
1037
+ "license": "MIT"
1038
+ },
1039
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/brace-expansion": {
1040
+ "version": "5.0.9",
1041
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz",
1042
+ "integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==",
1043
+ "license": "MIT",
1044
+ "dependencies": {
1045
+ "balanced-match": "^4.0.2"
1046
+ },
1047
+ "engines": {
1048
+ "node": "20 || >=22"
1049
+ }
1050
+ },
1051
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/buffer-equal-constant-time": {
1052
+ "version": "1.0.1",
1053
+ "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",
1054
+ "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==",
1055
+ "license": "BSD-3-Clause"
1056
+ },
1057
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/chalk": {
1058
+ "version": "5.6.2",
1059
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz",
1060
+ "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==",
1061
+ "license": "MIT",
1062
+ "engines": {
1063
+ "node": "^12.17.0 || ^14.13 || >=16.0.0"
1064
+ },
1065
+ "funding": {
1066
+ "url": "https://github.com/chalk/chalk?sponsor=1"
1067
+ }
1068
+ },
1069
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/cross-spawn": {
1070
+ "version": "7.0.6",
1071
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
1072
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
1073
+ "license": "MIT",
1074
+ "dependencies": {
1075
+ "path-key": "^3.1.0",
1076
+ "shebang-command": "^2.0.0",
1077
+ "which": "^2.0.1"
1078
+ },
1079
+ "engines": {
1080
+ "node": ">= 8"
1081
+ }
1082
+ },
1083
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/data-uri-to-buffer": {
1084
+ "version": "4.0.1",
1085
+ "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz",
1086
+ "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==",
1087
+ "license": "MIT",
1088
+ "engines": {
1089
+ "node": ">= 12"
1090
+ }
1091
+ },
1092
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/debug": {
1093
+ "version": "4.4.3",
1094
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
1095
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
1096
+ "license": "MIT",
1097
+ "dependencies": {
1098
+ "ms": "^2.1.3"
1099
+ },
1100
+ "engines": {
1101
+ "node": ">=6.0"
1102
+ },
1103
+ "peerDependenciesMeta": {
1104
+ "supports-color": {
1105
+ "optional": true
1106
+ }
1107
+ }
1108
+ },
1109
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/diff": {
1110
+ "version": "8.0.4",
1111
+ "resolved": "https://registry.npmjs.org/diff/-/diff-8.0.4.tgz",
1112
+ "integrity": "sha512-DPi0FmjiSU5EvQV0++GFDOJ9ASQUVFh5kD+OzOnYdi7n3Wpm9hWWGfB/O2blfHcMVTL5WkQXSnRiK9makhrcnw==",
1113
+ "license": "BSD-3-Clause",
1114
+ "engines": {
1115
+ "node": ">=0.3.1"
1116
+ }
1117
+ },
1118
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/ecdsa-sig-formatter": {
1119
+ "version": "1.0.11",
1120
+ "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
1121
+ "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==",
1122
+ "license": "Apache-2.0",
1123
+ "dependencies": {
1124
+ "safe-buffer": "^5.0.1"
1125
+ }
1126
+ },
1127
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/extend": {
1128
+ "version": "3.0.2",
1129
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
1130
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
1131
+ "license": "MIT"
1132
+ },
1133
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/fast-xml-builder": {
1134
+ "version": "1.2.0",
1135
+ "resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.2.0.tgz",
1136
+ "integrity": "sha512-00aAWieqff+ZJhsXA4g1g7M8k+7AYoMUUHF+/zFb5U6Uv/P0Vl4QZo84/IcufzYalLuEj9928bXN9PbbFzMF0Q==",
1137
+ "funding": [
1138
+ {
1139
+ "type": "github",
1140
+ "url": "https://github.com/sponsors/NaturalIntelligence"
1141
+ }
1142
+ ],
1143
+ "license": "MIT",
1144
+ "dependencies": {
1145
+ "path-expression-matcher": "^1.5.0",
1146
+ "xml-naming": "^0.1.0"
1147
+ }
1148
+ },
1149
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/fast-xml-parser": {
1150
+ "version": "5.7.3",
1151
+ "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.7.3.tgz",
1152
+ "integrity": "sha512-C0AaNuC+mscy6vrAQKAc/rMq+zAPHodfHGZu4sGVehvAQt/JLG1O5zEcYcXSY5zSqr4YVgxsB+pHXTq0i7eDlg==",
1153
+ "funding": [
1154
+ {
1155
+ "type": "github",
1156
+ "url": "https://github.com/sponsors/NaturalIntelligence"
1157
+ }
1158
+ ],
1159
+ "license": "MIT",
1160
+ "dependencies": {
1161
+ "@nodable/entities": "^2.1.0",
1162
+ "fast-xml-builder": "^1.1.7",
1163
+ "path-expression-matcher": "^1.5.0",
1164
+ "strnum": "^2.2.3"
1165
+ },
1166
+ "bin": {
1167
+ "fxparser": "src/cli/cli.js"
1168
+ }
1169
+ },
1170
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/fetch-blob": {
1171
+ "version": "3.2.0",
1172
+ "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz",
1173
+ "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==",
1174
+ "funding": [
1175
+ {
1176
+ "type": "github",
1177
+ "url": "https://github.com/sponsors/jimmywarting"
1178
+ },
1179
+ {
1180
+ "type": "paypal",
1181
+ "url": "https://paypal.me/jimmywarting"
1182
+ }
1183
+ ],
1184
+ "license": "MIT",
1185
+ "dependencies": {
1186
+ "node-domexception": "^1.0.0",
1187
+ "web-streams-polyfill": "^3.0.3"
1188
+ },
1189
+ "engines": {
1190
+ "node": "^12.20 || >= 14.13"
1191
+ }
1192
+ },
1193
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/formdata-polyfill": {
1194
+ "version": "4.0.10",
1195
+ "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz",
1196
+ "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==",
1197
+ "license": "MIT",
1198
+ "dependencies": {
1199
+ "fetch-blob": "^3.1.2"
1200
+ },
1201
+ "engines": {
1202
+ "node": ">=12.20.0"
1203
+ }
1204
+ },
1205
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/gaxios": {
1206
+ "version": "7.1.4",
1207
+ "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-7.1.4.tgz",
1208
+ "integrity": "sha512-bTIgTsM2bWn3XklZISBTQX7ZSddGW+IO3bMdGaemHZ3tbqExMENHLx6kKZ/KlejgrMtj8q7wBItt51yegqalrA==",
1209
+ "license": "Apache-2.0",
1210
+ "dependencies": {
1211
+ "extend": "^3.0.2",
1212
+ "https-proxy-agent": "^7.0.1",
1213
+ "node-fetch": "^3.3.2"
1214
+ },
1215
+ "engines": {
1216
+ "node": ">=18"
1217
+ }
1218
+ },
1219
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/gcp-metadata": {
1220
+ "version": "8.1.2",
1221
+ "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-8.1.2.tgz",
1222
+ "integrity": "sha512-zV/5HKTfCeKWnxG0Dmrw51hEWFGfcF2xiXqcA3+J90WDuP0SvoiSO5ORvcBsifmx/FoIjgQN3oNOGaQ5PhLFkg==",
1223
+ "license": "Apache-2.0",
1224
+ "dependencies": {
1225
+ "gaxios": "^7.0.0",
1226
+ "google-logging-utils": "^1.0.0",
1227
+ "json-bigint": "^1.0.0"
1228
+ },
1229
+ "engines": {
1230
+ "node": ">=18"
1231
+ }
1232
+ },
1233
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/get-east-asian-width": {
1234
+ "version": "1.6.0",
1235
+ "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.6.0.tgz",
1236
+ "integrity": "sha512-QRbvDIbx6YklUe6RxeTeleMR0yv3cYH6PsPZHcnVn7xv7zO1BHN8r0XETu8n6Ye3Q+ahtSarc3WgtNWmehIBfA==",
1237
+ "license": "MIT",
1238
+ "engines": {
1239
+ "node": ">=18"
1240
+ },
1241
+ "funding": {
1242
+ "url": "https://github.com/sponsors/sindresorhus"
1243
+ }
1244
+ },
1245
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/glob": {
1246
+ "version": "13.0.6",
1247
+ "resolved": "https://registry.npmjs.org/glob/-/glob-13.0.6.tgz",
1248
+ "integrity": "sha512-Wjlyrolmm8uDpm/ogGyXZXb1Z+Ca2B8NbJwqBVg0axK9GbBeoS7yGV6vjXnYdGm6X53iehEuxxbyiKp8QmN4Vw==",
1249
+ "license": "BlueOak-1.0.0",
1250
+ "dependencies": {
1251
+ "minimatch": "^10.2.2",
1252
+ "minipass": "^7.1.3",
1253
+ "path-scurry": "^2.0.2"
1254
+ },
1255
+ "engines": {
1256
+ "node": "18 || 20 || >=22"
1257
+ },
1258
+ "funding": {
1259
+ "url": "https://github.com/sponsors/isaacs"
1260
+ }
1261
+ },
1262
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/google-auth-library": {
1263
+ "version": "10.6.2",
1264
+ "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-10.6.2.tgz",
1265
+ "integrity": "sha512-e27Z6EThmVNNvtYASwQxose/G57rkRuaRbQyxM2bvYLLX/GqWZ5chWq2EBoUchJbCc57eC9ArzO5wMsEmWftCw==",
1266
+ "license": "Apache-2.0",
1267
+ "dependencies": {
1268
+ "base64-js": "^1.3.0",
1269
+ "ecdsa-sig-formatter": "^1.0.11",
1270
+ "gaxios": "^7.1.4",
1271
+ "gcp-metadata": "8.1.2",
1272
+ "google-logging-utils": "1.1.3",
1273
+ "jws": "^4.0.0"
1274
+ },
1275
+ "engines": {
1276
+ "node": ">=18"
1277
+ }
1278
+ },
1279
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/google-logging-utils": {
1280
+ "version": "1.1.3",
1281
+ "resolved": "https://registry.npmjs.org/google-logging-utils/-/google-logging-utils-1.1.3.tgz",
1282
+ "integrity": "sha512-eAmLkjDjAFCVXg7A1unxHsLf961m6y17QFqXqAXGj/gVkKFrEICfStRfwUlGNfeCEjNRa32JEWOUTlYXPyyKvA==",
1283
+ "license": "Apache-2.0",
1284
+ "engines": {
1285
+ "node": ">=14"
1286
+ }
1287
+ },
1288
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/graceful-fs": {
1289
+ "version": "4.2.11",
1290
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
1291
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
1292
+ "license": "ISC"
1293
+ },
1294
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/grok-mermaid": {
1295
+ "version": "0.2.2",
1296
+ "resolved": "https://registry.npmjs.org/grok-mermaid/-/grok-mermaid-0.2.2.tgz",
1297
+ "integrity": "sha512-XcJEP5dDC8liHBh52mlLjU18fNvu1ckFsu0QpIG3+APZ270fsj9wxpiA6cOURmbUEuoMVgjbC2+UYgTdCqqgzA==",
1298
+ "license": "Apache-2.0",
1299
+ "engines": {
1300
+ "node": ">=18"
1301
+ }
1302
+ },
1303
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/highlight.js": {
1304
+ "version": "10.7.3",
1305
+ "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz",
1306
+ "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==",
1307
+ "license": "BSD-3-Clause",
1308
+ "engines": {
1309
+ "node": "*"
1310
+ }
1311
+ },
1312
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/hosted-git-info": {
1313
+ "version": "9.0.3",
1314
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-9.0.3.tgz",
1315
+ "integrity": "sha512-Hc+ghLoSt6QaYZUv0WBiIvmMDZuZZ7oaDvdH8MbfOO4lOsxdXLEvuC6ePoGs9H1X9oCLyq6+NVN0MKqD+ydxyg==",
1316
+ "license": "ISC",
1317
+ "dependencies": {
1318
+ "lru-cache": "^11.1.0"
1319
+ },
1320
+ "engines": {
1321
+ "node": "^20.17.0 || >=22.9.0"
1322
+ }
1323
+ },
1324
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/http-proxy-agent": {
1325
+ "version": "7.0.2",
1326
+ "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz",
1327
+ "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==",
1328
+ "license": "MIT",
1329
+ "dependencies": {
1330
+ "agent-base": "^7.1.0",
1331
+ "debug": "^4.3.4"
1332
+ },
1333
+ "engines": {
1334
+ "node": ">= 14"
1335
+ }
1336
+ },
1337
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/https-proxy-agent": {
1338
+ "version": "7.0.6",
1339
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz",
1340
+ "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
1341
+ "license": "MIT",
1342
+ "dependencies": {
1343
+ "agent-base": "^7.1.2",
1344
+ "debug": "4"
1345
+ },
1346
+ "engines": {
1347
+ "node": ">= 14"
1348
+ }
1349
+ },
1350
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/ignore": {
1351
+ "version": "7.0.5",
1352
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz",
1353
+ "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==",
1354
+ "license": "MIT",
1355
+ "engines": {
1356
+ "node": ">= 4"
1357
+ }
1358
+ },
1359
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/isexe": {
1360
+ "version": "2.0.0",
1361
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
1362
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
1363
+ "license": "ISC"
1364
+ },
1365
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/jiti": {
1366
+ "version": "2.7.0",
1367
+ "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.7.0.tgz",
1368
+ "integrity": "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==",
1369
+ "license": "MIT",
1370
+ "bin": {
1371
+ "jiti": "lib/jiti-cli.mjs"
1372
+ }
1373
+ },
1374
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/json-bigint": {
1375
+ "version": "1.0.0",
1376
+ "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz",
1377
+ "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==",
1378
+ "license": "MIT",
1379
+ "dependencies": {
1380
+ "bignumber.js": "^9.0.0"
1381
+ }
1382
+ },
1383
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/json-schema-to-ts": {
1384
+ "version": "3.1.1",
1385
+ "resolved": "https://registry.npmjs.org/json-schema-to-ts/-/json-schema-to-ts-3.1.1.tgz",
1386
+ "integrity": "sha512-+DWg8jCJG2TEnpy7kOm/7/AxaYoaRbjVB4LFZLySZlWn8exGs3A4OLJR966cVvU26N7X9TWxl+Jsw7dzAqKT6g==",
1387
+ "license": "MIT",
1388
+ "dependencies": {
1389
+ "@babel/runtime": "^7.18.3",
1390
+ "ts-algebra": "^2.0.0"
1391
+ },
1392
+ "engines": {
1393
+ "node": ">=16"
1394
+ }
1395
+ },
1396
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/jwa": {
1397
+ "version": "2.0.1",
1398
+ "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.1.tgz",
1399
+ "integrity": "sha512-hRF04fqJIP8Abbkq5NKGN0Bbr3JxlQ+qhZufXVr0DvujKy93ZCbXZMHDL4EOtodSbCWxOqR8MS1tXA5hwqCXDg==",
1400
+ "license": "MIT",
1401
+ "dependencies": {
1402
+ "buffer-equal-constant-time": "^1.0.1",
1403
+ "ecdsa-sig-formatter": "1.0.11",
1404
+ "safe-buffer": "^5.0.1"
1405
+ }
1406
+ },
1407
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/jws": {
1408
+ "version": "4.0.1",
1409
+ "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.1.tgz",
1410
+ "integrity": "sha512-EKI/M/yqPncGUUh44xz0PxSidXFr/+r0pA70+gIYhjv+et7yxM+s29Y+VGDkovRofQem0fs7Uvf4+YmAdyRduA==",
1411
+ "license": "MIT",
1412
+ "dependencies": {
1413
+ "jwa": "^2.0.1",
1414
+ "safe-buffer": "^5.0.1"
1415
+ }
1416
+ },
1417
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/long": {
1418
+ "version": "5.3.2",
1419
+ "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz",
1420
+ "integrity": "sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==",
1421
+ "license": "Apache-2.0"
1422
+ },
1423
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/lru-cache": {
1424
+ "version": "11.4.0",
1425
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.4.0.tgz",
1426
+ "integrity": "sha512-W+R+kFL4HgVxONq2bhXPi3bGpzGe/yEhVOp233qw9wCRtgncJ15P3bC+e4zZMu4Cq7d+WAJjXGW0uUkifhcatA==",
1427
+ "license": "BlueOak-1.0.0",
1428
+ "engines": {
1429
+ "node": "20 || >=22"
1430
+ }
1431
+ },
1432
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/marked": {
1433
+ "version": "18.0.5",
1434
+ "resolved": "https://registry.npmjs.org/marked/-/marked-18.0.5.tgz",
1435
+ "integrity": "sha512-S6GcvALHg6K4ohtu4E7x0a1AqhAjp6cV8KhLSyN9qVapnzJkusVBxZRcIU9AeYsbe6P1hKDusSbEOzGyyuce6w==",
1436
+ "license": "MIT",
1437
+ "bin": {
1438
+ "marked": "bin/marked.js"
1439
+ },
1440
+ "engines": {
1441
+ "node": ">= 20"
1442
+ }
1443
+ },
1444
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/minimatch": {
1445
+ "version": "10.2.5",
1446
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz",
1447
+ "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==",
1448
+ "license": "BlueOak-1.0.0",
1449
+ "dependencies": {
1450
+ "brace-expansion": "^5.0.5"
1451
+ },
1452
+ "engines": {
1453
+ "node": "18 || 20 || >=22"
1454
+ },
1455
+ "funding": {
1456
+ "url": "https://github.com/sponsors/isaacs"
1457
+ }
1458
+ },
1459
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/minipass": {
1460
+ "version": "7.1.3",
1461
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz",
1462
+ "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==",
1463
+ "license": "BlueOak-1.0.0",
1464
+ "engines": {
1465
+ "node": ">=16 || 14 >=14.17"
1466
+ }
1467
+ },
1468
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/ms": {
1469
+ "version": "2.1.3",
1470
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
1471
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
1472
+ "license": "MIT"
1473
+ },
1474
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/node-domexception": {
1475
+ "version": "1.0.0",
1476
+ "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz",
1477
+ "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==",
1478
+ "deprecated": "Use your platform's native DOMException instead",
1479
+ "funding": [
1480
+ {
1481
+ "type": "github",
1482
+ "url": "https://github.com/sponsors/jimmywarting"
1483
+ },
1484
+ {
1485
+ "type": "github",
1486
+ "url": "https://paypal.me/jimmywarting"
1487
+ }
1488
+ ],
1489
+ "license": "MIT",
1490
+ "engines": {
1491
+ "node": ">=10.5.0"
1492
+ }
1493
+ },
1494
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/node-fetch": {
1495
+ "version": "3.3.2",
1496
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz",
1497
+ "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==",
1498
+ "license": "MIT",
1499
+ "dependencies": {
1500
+ "data-uri-to-buffer": "^4.0.0",
1501
+ "fetch-blob": "^3.1.4",
1502
+ "formdata-polyfill": "^4.0.10"
1503
+ },
1504
+ "engines": {
1505
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
1506
+ },
1507
+ "funding": {
1508
+ "type": "opencollective",
1509
+ "url": "https://opencollective.com/node-fetch"
1510
+ }
1511
+ },
1512
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/openai": {
1513
+ "version": "6.40.0",
1514
+ "resolved": "https://registry.npmjs.org/openai/-/openai-6.40.0.tgz",
1515
+ "integrity": "sha512-MWtTjd/gQt4jpbji61NTgFWJLoY/PdRJ6wG9/ZDRMYNMlBKrCrSlkLI+KgHP1vR1qT6LKSAyAqIxno6lcK9JiA==",
1516
+ "license": "Apache-2.0",
1517
+ "peerDependencies": {
1518
+ "ws": "^8.18.0",
1519
+ "zod": "^3.25 || ^4.0"
1520
+ },
1521
+ "peerDependenciesMeta": {
1522
+ "ws": {
1523
+ "optional": true
1524
+ },
1525
+ "zod": {
1526
+ "optional": true
1527
+ }
1528
+ }
1529
+ },
1530
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/p-retry": {
1531
+ "version": "4.6.2",
1532
+ "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz",
1533
+ "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==",
1534
+ "license": "MIT",
1535
+ "dependencies": {
1536
+ "@types/retry": "0.12.0",
1537
+ "retry": "^0.13.1"
1538
+ },
1539
+ "engines": {
1540
+ "node": ">=8"
1541
+ }
1542
+ },
1543
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/p-retry/node_modules/@types/retry": {
1544
+ "version": "0.12.0",
1545
+ "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz",
1546
+ "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==",
1547
+ "license": "MIT"
1548
+ },
1549
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/partial-json": {
1550
+ "version": "0.1.7",
1551
+ "resolved": "https://registry.npmjs.org/partial-json/-/partial-json-0.1.7.tgz",
1552
+ "integrity": "sha512-Njv/59hHaokb/hRUjce3Hdv12wd60MtM9Z5Olmn+nehe0QDAsRtRbJPvJ0Z91TusF0SuZRIvnM+S4l6EIP8leA==",
1553
+ "license": "MIT"
1554
+ },
1555
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/path-expression-matcher": {
1556
+ "version": "1.5.0",
1557
+ "resolved": "https://registry.npmjs.org/path-expression-matcher/-/path-expression-matcher-1.5.0.tgz",
1558
+ "integrity": "sha512-cbrerZV+6rvdQrrD+iGMcZFEiiSrbv9Tfdkvnusy6y0x0GKBXREFg/Y65GhIfm0tnLntThhzCnfKwp1WRjeCyQ==",
1559
+ "funding": [
1560
+ {
1561
+ "type": "github",
1562
+ "url": "https://github.com/sponsors/NaturalIntelligence"
1563
+ }
1564
+ ],
1565
+ "license": "MIT",
1566
+ "engines": {
1567
+ "node": ">=14.0.0"
1568
+ }
1569
+ },
1570
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/path-key": {
1571
+ "version": "3.1.1",
1572
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
1573
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
1574
+ "license": "MIT",
1575
+ "engines": {
1576
+ "node": ">=8"
1577
+ }
1578
+ },
1579
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/path-scurry": {
1580
+ "version": "2.0.2",
1581
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.2.tgz",
1582
+ "integrity": "sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==",
1583
+ "license": "BlueOak-1.0.0",
1584
+ "dependencies": {
1585
+ "lru-cache": "^11.0.0",
1586
+ "minipass": "^7.1.2"
1587
+ },
1588
+ "engines": {
1589
+ "node": "18 || 20 || >=22"
1590
+ },
1591
+ "funding": {
1592
+ "url": "https://github.com/sponsors/isaacs"
1593
+ }
1594
+ },
1595
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/proper-lockfile": {
1596
+ "version": "4.1.2",
1597
+ "resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-4.1.2.tgz",
1598
+ "integrity": "sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==",
1599
+ "license": "MIT",
1600
+ "dependencies": {
1601
+ "graceful-fs": "^4.2.4",
1602
+ "retry": "^0.12.0",
1603
+ "signal-exit": "^3.0.2"
1604
+ }
1605
+ },
1606
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/proper-lockfile/node_modules/retry": {
1607
+ "version": "0.12.0",
1608
+ "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz",
1609
+ "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==",
1610
+ "license": "MIT",
1611
+ "engines": {
1612
+ "node": ">= 4"
1613
+ }
1614
+ },
1615
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/protobufjs": {
1616
+ "version": "7.6.5",
1617
+ "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.6.5.tgz",
1618
+ "integrity": "sha512-/FPD0nUc9jH6rfFjji9IBqOz4pcSE3CsT1m7Ep6Mdb0LxSUMj8hgl6GomOvZzpNpAqqGaXA0P3VSrZLFzIhQrw==",
1619
+ "hasInstallScript": true,
1620
+ "license": "BSD-3-Clause",
1621
+ "dependencies": {
1622
+ "@protobufjs/aspromise": "^1.1.2",
1623
+ "@protobufjs/base64": "^1.1.2",
1624
+ "@protobufjs/codegen": "^2.0.5",
1625
+ "@protobufjs/eventemitter": "^1.1.1",
1626
+ "@protobufjs/fetch": "^1.1.1",
1627
+ "@protobufjs/float": "^1.0.2",
1628
+ "@protobufjs/path": "^1.1.2",
1629
+ "@protobufjs/pool": "^1.1.0",
1630
+ "@protobufjs/utf8": "^1.1.1",
1631
+ "@types/node": ">=13.7.0",
1632
+ "long": "^5.3.2"
1633
+ },
1634
+ "engines": {
1635
+ "node": ">=12.0.0"
1636
+ }
1637
+ },
1638
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/retry": {
1639
+ "version": "0.13.1",
1640
+ "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz",
1641
+ "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==",
1642
+ "license": "MIT",
1643
+ "engines": {
1644
+ "node": ">= 4"
1645
+ }
1646
+ },
1647
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/safe-buffer": {
1648
+ "version": "5.2.1",
1649
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
1650
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
1651
+ "funding": [
1652
+ {
1653
+ "type": "github",
1654
+ "url": "https://github.com/sponsors/feross"
1655
+ },
1656
+ {
1657
+ "type": "patreon",
1658
+ "url": "https://www.patreon.com/feross"
1659
+ },
1660
+ {
1661
+ "type": "consulting",
1662
+ "url": "https://feross.org/support"
1663
+ }
1664
+ ],
1665
+ "license": "MIT"
1666
+ },
1667
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/semver": {
1668
+ "version": "7.8.0",
1669
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.0.tgz",
1670
+ "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==",
1671
+ "license": "ISC",
1672
+ "bin": {
1673
+ "semver": "bin/semver.js"
1674
+ },
1675
+ "engines": {
1676
+ "node": ">=10"
1677
+ }
1678
+ },
1679
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/shebang-command": {
1680
+ "version": "2.0.0",
1681
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
1682
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
1683
+ "license": "MIT",
1684
+ "dependencies": {
1685
+ "shebang-regex": "^3.0.0"
1686
+ },
1687
+ "engines": {
1688
+ "node": ">=8"
1689
+ }
1690
+ },
1691
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/shebang-regex": {
1692
+ "version": "3.0.0",
1693
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
1694
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
1695
+ "license": "MIT",
1696
+ "engines": {
1697
+ "node": ">=8"
1698
+ }
1699
+ },
1700
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/signal-exit": {
1701
+ "version": "3.0.7",
1702
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
1703
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
1704
+ "license": "ISC"
1705
+ },
1706
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/strnum": {
1707
+ "version": "2.3.0",
1708
+ "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.3.0.tgz",
1709
+ "integrity": "sha512-ums3KNd42PGyx5xaoVTO1mjU1bH3NpY4vsrVlnv9PNGqQj8wd7rJ6nEypLrJ7z5vxK5RP0yMLo6J/Gsm62DI5Q==",
1710
+ "funding": [
1711
+ {
1712
+ "type": "github",
1713
+ "url": "https://github.com/sponsors/NaturalIntelligence"
1714
+ }
1715
+ ],
1716
+ "license": "MIT"
1717
+ },
1718
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/ts-algebra": {
1719
+ "version": "2.0.0",
1720
+ "resolved": "https://registry.npmjs.org/ts-algebra/-/ts-algebra-2.0.0.tgz",
1721
+ "integrity": "sha512-FPAhNPFMrkwz76P7cdjdmiShwMynZYN6SgOujD1urY4oNm80Ou9oMdmbR45LotcKOXoy7wSmHkRFE6Mxbrhefw==",
1722
+ "license": "MIT"
1723
+ },
1724
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/tslib": {
1725
+ "version": "2.8.1",
1726
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
1727
+ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
1728
+ "license": "0BSD"
1729
+ },
1730
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/typebox": {
1731
+ "version": "1.3.7",
1732
+ "resolved": "https://registry.npmjs.org/typebox/-/typebox-1.3.7.tgz",
1733
+ "integrity": "sha512-meKuifc33Pccx0O6PdIzYMq3Og8zvP4TIi/a+Bw3AEMZMxOD0+RHGQvpglEe6Zdy3wZ8nqn/j95h8LUZLk/6Hg==",
1734
+ "license": "MIT"
1735
+ },
1736
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/undici": {
1737
+ "version": "8.9.0",
1738
+ "resolved": "https://registry.npmjs.org/undici/-/undici-8.9.0.tgz",
1739
+ "integrity": "sha512-aWZpUj7XoGonMClx4gdDRfgBjqeA+F473aDmROQQbM9n6PRfK/u1q/a0X4wMTgcHfT8H6fpbt98PFuDUwFg2YA==",
1740
+ "license": "MIT",
1741
+ "engines": {
1742
+ "node": ">=22.19.0"
1743
+ }
1744
+ },
1745
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/undici-types": {
1746
+ "version": "6.21.0",
1747
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
1748
+ "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
1749
+ "license": "MIT"
1750
+ },
1751
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/web-streams-polyfill": {
1752
+ "version": "3.3.3",
1753
+ "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz",
1754
+ "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==",
1755
+ "license": "MIT",
1756
+ "engines": {
1757
+ "node": ">= 8"
1758
+ }
1759
+ },
1760
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/which": {
1761
+ "version": "2.0.2",
1762
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
1763
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
1764
+ "license": "ISC",
1765
+ "dependencies": {
1766
+ "isexe": "^2.0.0"
1767
+ },
1768
+ "bin": {
1769
+ "node-which": "bin/node-which"
1770
+ },
1771
+ "engines": {
1772
+ "node": ">= 8"
1773
+ }
1774
+ },
1775
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/ws": {
1776
+ "version": "8.21.0",
1777
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.0.tgz",
1778
+ "integrity": "sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g==",
1779
+ "license": "MIT",
1780
+ "engines": {
1781
+ "node": ">=10.0.0"
1782
+ },
1783
+ "peerDependencies": {
1784
+ "bufferutil": "^4.0.1",
1785
+ "utf-8-validate": ">=5.0.2"
1786
+ },
1787
+ "peerDependenciesMeta": {
1788
+ "bufferutil": {
1789
+ "optional": true
1790
+ },
1791
+ "utf-8-validate": {
1792
+ "optional": true
1793
+ }
1794
+ }
1795
+ },
1796
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/xml-naming": {
1797
+ "version": "0.1.0",
1798
+ "resolved": "https://registry.npmjs.org/xml-naming/-/xml-naming-0.1.0.tgz",
1799
+ "integrity": "sha512-k8KO9hrMyNk6tUWqUfkTEZbezRRpONVOzUTnc97VnCvyj6Tf9lyUR9EDAIeiVLv56jsMcoXEwjW8Kv5yPY52lw==",
1800
+ "funding": [
1801
+ {
1802
+ "type": "github",
1803
+ "url": "https://github.com/sponsors/NaturalIntelligence"
1804
+ }
1805
+ ],
1806
+ "license": "MIT",
1807
+ "engines": {
1808
+ "node": ">=16.0.0"
1809
+ }
1810
+ },
1811
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/yaml": {
1812
+ "version": "2.9.0",
1813
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.9.0.tgz",
1814
+ "integrity": "sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==",
1815
+ "license": "ISC",
1816
+ "bin": {
1817
+ "yaml": "bin.mjs"
1818
+ },
1819
+ "engines": {
1820
+ "node": ">= 14.6"
1821
+ },
1822
+ "funding": {
1823
+ "url": "https://github.com/sponsors/eemeli"
1824
+ }
1825
+ }
1826
+ }
1827
+ }