@qearlyao/familiar 0.2.5 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/HEARTBEAT.md +1 -1
  2. package/README.md +33 -0
  3. package/config.example.toml +4 -2
  4. package/dist/{agent.js → agent/factory.js} +97 -328
  5. package/dist/agent/payload-normalizers.js +52 -0
  6. package/dist/agent/session-helpers.js +86 -0
  7. package/dist/agent/tool-descriptions.js +4 -0
  8. package/dist/agent/tools.js +30 -0
  9. package/dist/agent/transcript-log.js +93 -0
  10. package/dist/cli.js +45 -15
  11. package/dist/config/enums.js +35 -0
  12. package/dist/{config.js → config/index.js} +9 -272
  13. package/dist/config/interpolate.js +15 -0
  14. package/dist/config/model-refs.js +11 -0
  15. package/dist/{config-overrides.js → config/overrides.js} +1 -1
  16. package/dist/config/readers.js +116 -0
  17. package/dist/{config-registry.js → config/registry.js} +27 -8
  18. package/dist/config/sections.js +113 -0
  19. package/dist/{settings.js → config/settings.js} +5 -2
  20. package/dist/config/types.js +1 -0
  21. package/dist/{chat-log.js → conversation/chat-log.js} +16 -4
  22. package/dist/{contact-note.js → conversation/contact-note.js} +1 -1
  23. package/dist/conversation/ids.js +11 -0
  24. package/dist/conversation/owner-identity.js +29 -0
  25. package/dist/discord/channel.js +32 -0
  26. package/dist/discord/chunking.js +163 -0
  27. package/dist/discord/client.js +44 -0
  28. package/dist/discord/commands.js +181 -0
  29. package/dist/discord/daemon.js +379 -0
  30. package/dist/discord/inbound.js +44 -0
  31. package/dist/discord/send.js +115 -0
  32. package/dist/discord/turn.js +55 -0
  33. package/dist/index.js +12 -11
  34. package/dist/lifecycle/control.js +1 -0
  35. package/dist/{data-retention.js → lifecycle/data-retention.js} +1 -1
  36. package/dist/{hot-reload.js → lifecycle/hot-reload.js} +2 -2
  37. package/dist/{service.js → lifecycle/service.js} +1 -0
  38. package/dist/media/attachment-limits.js +3 -0
  39. package/dist/{generated-media.js → media/generated-media.js} +1 -1
  40. package/dist/{image-gen.js → media/image-gen.js} +2 -2
  41. package/dist/{inbound-attachments.js → media/inbound-attachments.js} +47 -43
  42. package/dist/media/media-understanding.js +215 -0
  43. package/dist/memory/index/store.js +21 -17
  44. package/dist/memory/index/vector-codec.js +2 -2
  45. package/dist/memory/lcm/context-transformer.js +6 -2
  46. package/dist/memory/lcm/segment-manager.js +6 -2
  47. package/dist/memory/lcm/store/index-ids.js +6 -0
  48. package/dist/memory/lcm/store/inserts.js +31 -0
  49. package/dist/memory/lcm/store/normalizers.js +91 -0
  50. package/dist/memory/lcm/store/row-mappers.js +114 -0
  51. package/dist/memory/lcm/store/row-types.js +1 -0
  52. package/dist/memory/lcm/store/serialization.js +37 -0
  53. package/dist/memory/lcm/store/snapshots.js +73 -0
  54. package/dist/memory/lcm/store.js +20 -360
  55. package/dist/memory/lcm/summarizer.js +1 -1
  56. package/dist/{added-models.js → models/added-models.js} +1 -1
  57. package/dist/{persona.js → prompting/persona.js} +1 -1
  58. package/dist/runtime/agent-core.js +82 -0
  59. package/dist/{agent-events.js → runtime/agent-events.js} +1 -1
  60. package/dist/runtime/agent-work-queue.js +55 -0
  61. package/dist/{runtime.js → runtime/conversation-runtime.js} +91 -43
  62. package/dist/runtime/runtime-manager.js +51 -0
  63. package/dist/runtime/scheduler-runner.js +243 -0
  64. package/dist/{scheduler.js → runtime/scheduler.js} +4 -4
  65. package/dist/{browser-tools.js → tools/browser-tools.js} +24 -34
  66. package/dist/util/fs.js +2 -1
  67. package/dist/web/agent-routes.js +104 -0
  68. package/dist/web/auth-routes.js +39 -0
  69. package/dist/web/auth.js +205 -0
  70. package/dist/web/config-routes.js +55 -0
  71. package/dist/web/conversation-routes.js +122 -0
  72. package/dist/web/daemon.js +108 -0
  73. package/dist/web/diary-routes.js +88 -0
  74. package/dist/web/errors.js +3 -0
  75. package/dist/web/event-hub.js +246 -0
  76. package/dist/{web-http.js → web/http.js} +19 -5
  77. package/dist/web/memes.js +25 -0
  78. package/dist/web/messages.js +348 -0
  79. package/dist/web/multipart.js +86 -0
  80. package/dist/web/payloads.js +34 -0
  81. package/dist/web/request-context.js +25 -0
  82. package/dist/web/route-helpers.js +9 -0
  83. package/dist/web/routes.js +37 -0
  84. package/dist/web/runtime-actions.js +231 -0
  85. package/dist/web/session-store.js +161 -0
  86. package/dist/{web-static.js → web/static.js} +19 -14
  87. package/dist/web/stream.js +78 -0
  88. package/dist/web-tools/cache.js +42 -0
  89. package/dist/web-tools/config.js +16 -0
  90. package/dist/web-tools/fetch-providers.js +119 -0
  91. package/dist/web-tools/format.js +88 -0
  92. package/dist/web-tools/http.js +81 -0
  93. package/dist/web-tools/index.js +152 -0
  94. package/dist/web-tools/routing.js +29 -0
  95. package/dist/web-tools/safety.js +73 -0
  96. package/dist/web-tools/search-providers.js +277 -0
  97. package/dist/web-tools/types.js +54 -0
  98. package/dist/web-tools/util.js +23 -0
  99. package/npm-shrinkwrap.json +319 -201
  100. package/package.json +6 -4
  101. package/web/dist/assets/index-C-k4O5Dz.js +6 -0
  102. package/web/dist/assets/index-Dj-L9nX4.css +2 -0
  103. package/web/dist/assets/markdown-kaIeGxdv.js +14 -0
  104. package/web/dist/assets/react-Bi_azaFt.js +9 -0
  105. package/web/dist/assets/rolldown-runtime-S-ySWqyJ.js +1 -0
  106. package/web/dist/assets/ui-C12-nN_X.js +51 -0
  107. package/web/dist/assets/vendor-D1QXMhXm.js +16 -0
  108. package/web/dist/index.html +11 -3
  109. package/dist/discord.js +0 -1299
  110. package/dist/media-understanding.js +0 -120
  111. package/dist/web-auth.js +0 -111
  112. package/dist/web-tools.js +0 -941
  113. package/dist/web.js +0 -1209
  114. package/web/dist/assets/index-B23WT77N.js +0 -63
  115. package/web/dist/assets/index-D3MotFzN.css +0 -2
  116. /package/dist/{control.js → agent/types.js} +0 -0
  117. /package/dist/{image-derivatives.js → media/image-derivatives.js} +0 -0
  118. /package/dist/{tts.js → media/tts.js} +0 -0
  119. /package/dist/{models.js → models/index.js} +0 -0
  120. /package/dist/{skills.js → prompting/skills.js} +0 -0
  121. /package/dist/{silent-marker.js → runtime/silent-marker.js} +0 -0
  122. /package/dist/{web-events.js → web/events.js} +0 -0
  123. /package/dist/{web-types.js → web/types.js} +0 -0
@@ -1,18 +1,19 @@
1
1
  {
2
2
  "name": "@qearlyao/familiar",
3
- "version": "0.2.5",
3
+ "version": "0.4.0",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@qearlyao/familiar",
9
- "version": "0.2.5",
9
+ "version": "0.4.0",
10
10
  "license": "MIT",
11
11
  "dependencies": {
12
- "@earendil-works/pi-agent-core": "0.75.5",
13
- "@earendil-works/pi-ai": "0.75.5",
14
- "@earendil-works/pi-coding-agent": "0.75.5",
12
+ "@earendil-works/pi-agent-core": "0.78.0",
13
+ "@earendil-works/pi-ai": "0.78.0",
14
+ "@earendil-works/pi-coding-agent": "0.78.0",
15
15
  "better-sqlite3": "^12.10.0",
16
+ "cross-spawn": "^7.0.6",
16
17
  "discord.js": "^14.26.3",
17
18
  "dotenv": "^16.4.5",
18
19
  "sharp": "^0.34.5",
@@ -26,6 +27,7 @@
26
27
  "devDependencies": {
27
28
  "@biomejs/biome": "2.4.15",
28
29
  "@types/better-sqlite3": "^7.6.13",
30
+ "@types/cross-spawn": "^6.0.6",
29
31
  "@types/node": "^25.8.0",
30
32
  "tsx": "^4.22.1",
31
33
  "typescript": "^5.9.2"
@@ -143,16 +145,16 @@
143
145
  }
144
146
  },
145
147
  "node_modules/@aws-sdk/core": {
146
- "version": "3.974.13",
147
- "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.974.13.tgz",
148
- "integrity": "sha512-+Y5/4tHki0uYgyx8eun146DegRVQBpdKGK5RbV0FTKJPpaKTchvqVxrrRFK6Wk0JksO4iAZKw3eqxGEIwtO98w==",
148
+ "version": "3.974.15",
149
+ "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.974.15.tgz",
150
+ "integrity": "sha512-UpA0rTGW/tHGITcCqHisbuuEPraYg9GG+mWmXjY5+RxZBMLGe6aL9oe0ix50LztwAcPIkGZLH0yWdMIkCM10hw==",
149
151
  "license": "Apache-2.0",
150
152
  "dependencies": {
151
153
  "@aws-sdk/types": "^3.973.9",
152
- "@aws-sdk/xml-builder": "^3.972.25",
154
+ "@aws-sdk/xml-builder": "^3.972.26",
153
155
  "@aws/lambda-invoke-store": "^0.2.2",
154
- "@smithy/core": "^3.24.3",
155
- "@smithy/signature-v4": "^5.4.2",
156
+ "@smithy/core": "^3.24.5",
157
+ "@smithy/signature-v4": "^5.4.5",
156
158
  "@smithy/types": "^4.14.2",
157
159
  "bowser": "^2.11.0",
158
160
  "tslib": "^2.6.2"
@@ -162,14 +164,14 @@
162
164
  }
163
165
  },
164
166
  "node_modules/@aws-sdk/credential-provider-env": {
165
- "version": "3.972.39",
166
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.39.tgz",
167
- "integrity": "sha512-29wX9zpAvEt1vcj0psha+y6ygBHy2V/S72mp6e7q0KARLWXq+pwE/lR6qGkwknQvruh52lXvlqZIga8Hdxkucw==",
167
+ "version": "3.972.41",
168
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.41.tgz",
169
+ "integrity": "sha512-n1EbJ98yvPWWdHZZv8bRBMqqDQJrtgtxyJ4xLy2Uqrh25BCOZQ7nnS1CsFXvuH8r0b0KVHDZEGEH5FxmEMP8jg==",
168
170
  "license": "Apache-2.0",
169
171
  "dependencies": {
170
- "@aws-sdk/core": "^3.974.13",
172
+ "@aws-sdk/core": "^3.974.15",
171
173
  "@aws-sdk/types": "^3.973.9",
172
- "@smithy/core": "^3.24.3",
174
+ "@smithy/core": "^3.24.5",
173
175
  "@smithy/types": "^4.14.2",
174
176
  "tslib": "^2.6.2"
175
177
  },
@@ -178,16 +180,16 @@
178
180
  }
179
181
  },
180
182
  "node_modules/@aws-sdk/credential-provider-http": {
181
- "version": "3.972.41",
182
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.972.41.tgz",
183
- "integrity": "sha512-IA3CQTjtJkb6u1H4mE4936c8OPBMa9Jggtwe8U2Mqw/vvb/tZ5Ebd0mcZcX0uKWQhOyYo/+qNIwkV5Xh+FeJJA==",
183
+ "version": "3.972.43",
184
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.972.43.tgz",
185
+ "integrity": "sha512-TT76RN1NkI9WoyZqCNxOw6/WBMF7pYOTJcXbMokNFU+euSG40Kaf/t/FhDACVZWP+43wEM6ZynIPIkzS1wR1iA==",
184
186
  "license": "Apache-2.0",
185
187
  "dependencies": {
186
- "@aws-sdk/core": "^3.974.13",
188
+ "@aws-sdk/core": "^3.974.15",
187
189
  "@aws-sdk/types": "^3.973.9",
188
- "@smithy/core": "^3.24.3",
189
- "@smithy/fetch-http-handler": "^5.4.3",
190
- "@smithy/node-http-handler": "^4.7.3",
190
+ "@smithy/core": "^3.24.5",
191
+ "@smithy/fetch-http-handler": "^5.4.5",
192
+ "@smithy/node-http-handler": "^4.7.5",
191
193
  "@smithy/types": "^4.14.2",
192
194
  "tslib": "^2.6.2"
193
195
  },
@@ -195,23 +197,37 @@
195
197
  "node": ">=20.0.0"
196
198
  }
197
199
  },
200
+ "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler": {
201
+ "version": "4.7.5",
202
+ "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.7.5.tgz",
203
+ "integrity": "sha512-3dA9TQ+ybRSZ/m0wnbZhiBy4Dezjgq1Ib/ZZrYTpJDBgpoLLU/SDzZc/g0x0MNAdOJe1wPcM+x2PBRmoOur+Sw==",
204
+ "license": "Apache-2.0",
205
+ "dependencies": {
206
+ "@smithy/core": "^3.24.5",
207
+ "@smithy/types": "^4.14.2",
208
+ "tslib": "^2.6.2"
209
+ },
210
+ "engines": {
211
+ "node": ">=18.0.0"
212
+ }
213
+ },
198
214
  "node_modules/@aws-sdk/credential-provider-ini": {
199
- "version": "3.972.43",
200
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.972.43.tgz",
201
- "integrity": "sha512-4mzII+3mZEVXXE1xzrLQrCJL7/r62A63bA6SVzZoNL5rqCJghpf+xgGltVrIBBs0n+mOZBKrQl2tRREtvZ5l6A==",
215
+ "version": "3.972.46",
216
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.972.46.tgz",
217
+ "integrity": "sha512-hvcgcwOiS0nb2XFb5Op1Pz/vYaWz5K8kKullziGpdNRuG0NwzRXseuPt2CoBqknHGaSPVesu1aOn2OcctEYdCA==",
202
218
  "license": "Apache-2.0",
203
219
  "dependencies": {
204
- "@aws-sdk/core": "^3.974.13",
205
- "@aws-sdk/credential-provider-env": "^3.972.39",
206
- "@aws-sdk/credential-provider-http": "^3.972.41",
207
- "@aws-sdk/credential-provider-login": "^3.972.43",
208
- "@aws-sdk/credential-provider-process": "^3.972.39",
209
- "@aws-sdk/credential-provider-sso": "^3.972.43",
210
- "@aws-sdk/credential-provider-web-identity": "^3.972.43",
211
- "@aws-sdk/nested-clients": "^3.997.11",
220
+ "@aws-sdk/core": "^3.974.15",
221
+ "@aws-sdk/credential-provider-env": "^3.972.41",
222
+ "@aws-sdk/credential-provider-http": "^3.972.43",
223
+ "@aws-sdk/credential-provider-login": "^3.972.45",
224
+ "@aws-sdk/credential-provider-process": "^3.972.41",
225
+ "@aws-sdk/credential-provider-sso": "^3.972.45",
226
+ "@aws-sdk/credential-provider-web-identity": "^3.972.45",
227
+ "@aws-sdk/nested-clients": "^3.997.13",
212
228
  "@aws-sdk/types": "^3.973.9",
213
- "@smithy/core": "^3.24.3",
214
- "@smithy/credential-provider-imds": "^4.3.2",
229
+ "@smithy/core": "^3.24.5",
230
+ "@smithy/credential-provider-imds": "^4.3.6",
215
231
  "@smithy/types": "^4.14.2",
216
232
  "tslib": "^2.6.2"
217
233
  },
@@ -220,15 +236,15 @@
220
236
  }
221
237
  },
222
238
  "node_modules/@aws-sdk/credential-provider-login": {
223
- "version": "3.972.43",
224
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-login/-/credential-provider-login-3.972.43.tgz",
225
- "integrity": "sha512-HG7kQCwXtbv3oBV61Ins0oNX8KKyvrMqqRkb6ZiAfQHbMuHaiNaEb2KnpKLPkNpqImSBK82UkVE/kaY6IfWikA==",
239
+ "version": "3.972.45",
240
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-login/-/credential-provider-login-3.972.45.tgz",
241
+ "integrity": "sha512-MZQv4SNjByk1iOKmrqmzcUF/uCB05wjvEHyXKxmGQTUANTIVayX6HPUF0bzkWLvtnkH7sAn9kUCfkXbSpj9sDA==",
226
242
  "license": "Apache-2.0",
227
243
  "dependencies": {
228
- "@aws-sdk/core": "^3.974.13",
229
- "@aws-sdk/nested-clients": "^3.997.11",
244
+ "@aws-sdk/core": "^3.974.15",
245
+ "@aws-sdk/nested-clients": "^3.997.13",
230
246
  "@aws-sdk/types": "^3.973.9",
231
- "@smithy/core": "^3.24.3",
247
+ "@smithy/core": "^3.24.5",
232
248
  "@smithy/types": "^4.14.2",
233
249
  "tslib": "^2.6.2"
234
250
  },
@@ -237,20 +253,20 @@
237
253
  }
238
254
  },
239
255
  "node_modules/@aws-sdk/credential-provider-node": {
240
- "version": "3.972.44",
241
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.972.44.tgz",
242
- "integrity": "sha512-sDaBIT0yrNNIPfvlsiTCmANm07zKju+ipWODjEXgZlsjMeIJR3LVp7RDyAOzUoAsTbDfYKDWp+i5WrFiQP6rmQ==",
256
+ "version": "3.972.47",
257
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.972.47.tgz",
258
+ "integrity": "sha512-HrId+C0DWA5qDIyLG64/kjUB2RNtPypxmABnIctK+TA1P1kHlOYoE/Wf5T5tKOMKgb08P7k/zNyhvfJ3lh5Oag==",
243
259
  "license": "Apache-2.0",
244
260
  "dependencies": {
245
- "@aws-sdk/credential-provider-env": "^3.972.39",
246
- "@aws-sdk/credential-provider-http": "^3.972.41",
247
- "@aws-sdk/credential-provider-ini": "^3.972.43",
248
- "@aws-sdk/credential-provider-process": "^3.972.39",
249
- "@aws-sdk/credential-provider-sso": "^3.972.43",
250
- "@aws-sdk/credential-provider-web-identity": "^3.972.43",
261
+ "@aws-sdk/credential-provider-env": "^3.972.41",
262
+ "@aws-sdk/credential-provider-http": "^3.972.43",
263
+ "@aws-sdk/credential-provider-ini": "^3.972.46",
264
+ "@aws-sdk/credential-provider-process": "^3.972.41",
265
+ "@aws-sdk/credential-provider-sso": "^3.972.45",
266
+ "@aws-sdk/credential-provider-web-identity": "^3.972.45",
251
267
  "@aws-sdk/types": "^3.973.9",
252
- "@smithy/core": "^3.24.3",
253
- "@smithy/credential-provider-imds": "^4.3.2",
268
+ "@smithy/core": "^3.24.5",
269
+ "@smithy/credential-provider-imds": "^4.3.6",
254
270
  "@smithy/types": "^4.14.2",
255
271
  "tslib": "^2.6.2"
256
272
  },
@@ -259,14 +275,14 @@
259
275
  }
260
276
  },
261
277
  "node_modules/@aws-sdk/credential-provider-process": {
262
- "version": "3.972.39",
263
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.972.39.tgz",
264
- "integrity": "sha512-2k/amBifLd75eXNwgvPw/2lKYSQ3NhvHQgkVKVjfUq13/eJ3JRtHmznuFenn74OK3sSfp4SMy1YB2w+UVXoKqA==",
278
+ "version": "3.972.41",
279
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.972.41.tgz",
280
+ "integrity": "sha512-7I/n1zkysouLOWvkEhjNEP4vMnD2v4kzzr3/3QBdrripEpn7ap1/I5DF3Hou1SUqkKWo1f3oPGMyFAA1FAMvsQ==",
265
281
  "license": "Apache-2.0",
266
282
  "dependencies": {
267
- "@aws-sdk/core": "^3.974.13",
283
+ "@aws-sdk/core": "^3.974.15",
268
284
  "@aws-sdk/types": "^3.973.9",
269
- "@smithy/core": "^3.24.3",
285
+ "@smithy/core": "^3.24.5",
270
286
  "@smithy/types": "^4.14.2",
271
287
  "tslib": "^2.6.2"
272
288
  },
@@ -275,16 +291,16 @@
275
291
  }
276
292
  },
277
293
  "node_modules/@aws-sdk/credential-provider-sso": {
278
- "version": "3.972.43",
279
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.972.43.tgz",
280
- "integrity": "sha512-LPc3+Y4vhH1T4x6CMqwCM6hk5+SRf/Lwmgm8INm95wxTtIRHcMwQUVkDzWu4Iw/RSncxYM2BC01OrYbxOPZvyg==",
294
+ "version": "3.972.45",
295
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.972.45.tgz",
296
+ "integrity": "sha512-oHgbz/eFD8IKiksqDsz9ZMU4A59BpQq4QwJedBnGD80ZqYcHPPHZBwjBnxLVkB7iRVVHWpDclR8yWdD2PkQIUA==",
281
297
  "license": "Apache-2.0",
282
298
  "dependencies": {
283
- "@aws-sdk/core": "^3.974.13",
284
- "@aws-sdk/nested-clients": "^3.997.11",
285
- "@aws-sdk/token-providers": "3.1052.0",
299
+ "@aws-sdk/core": "^3.974.15",
300
+ "@aws-sdk/nested-clients": "^3.997.13",
301
+ "@aws-sdk/token-providers": "3.1056.0",
286
302
  "@aws-sdk/types": "^3.973.9",
287
- "@smithy/core": "^3.24.3",
303
+ "@smithy/core": "^3.24.5",
288
304
  "@smithy/types": "^4.14.2",
289
305
  "tslib": "^2.6.2"
290
306
  },
@@ -293,15 +309,15 @@
293
309
  }
294
310
  },
295
311
  "node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers": {
296
- "version": "3.1052.0",
297
- "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.1052.0.tgz",
298
- "integrity": "sha512-QqZNB3so7UIDxZtroc85TQaLVxdZRFm0eWM1CSR2N+b06as9TOrilvrlTZuj3guYlxMs6yLOgGxnklJ5qMYtTw==",
312
+ "version": "3.1056.0",
313
+ "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.1056.0.tgz",
314
+ "integrity": "sha512-81duvlltQlsfn5K+o8zILcystBRdbT1G2JJYVCML5NZHBz4CL/zf+sAemCtBh/uh6RQUMyInGeZLQ7/8igZhbA==",
299
315
  "license": "Apache-2.0",
300
316
  "dependencies": {
301
- "@aws-sdk/core": "^3.974.13",
302
- "@aws-sdk/nested-clients": "^3.997.11",
317
+ "@aws-sdk/core": "^3.974.15",
318
+ "@aws-sdk/nested-clients": "^3.997.13",
303
319
  "@aws-sdk/types": "^3.973.9",
304
- "@smithy/core": "^3.24.3",
320
+ "@smithy/core": "^3.24.5",
305
321
  "@smithy/types": "^4.14.2",
306
322
  "tslib": "^2.6.2"
307
323
  },
@@ -310,15 +326,15 @@
310
326
  }
311
327
  },
312
328
  "node_modules/@aws-sdk/credential-provider-web-identity": {
313
- "version": "3.972.43",
314
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.972.43.tgz",
315
- "integrity": "sha512-wQtL34lUD/09VXjwAUo2T+I3aEXRDxMB3DKmTJL/Zj0Gi6sLDTrVhae1XVt01yzkquOWajI/sZW72JGDZ1ciTw==",
329
+ "version": "3.972.45",
330
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.972.45.tgz",
331
+ "integrity": "sha512-CDhzKdb2onv5bpnjn/acgdNmJOQthPDLsPizU7rZflsEcgMMp8Mlri+U5hdxf8ldvZJpvM3vLU6D56vfJm5AMQ==",
316
332
  "license": "Apache-2.0",
317
333
  "dependencies": {
318
- "@aws-sdk/core": "^3.974.13",
319
- "@aws-sdk/nested-clients": "^3.997.11",
334
+ "@aws-sdk/core": "^3.974.15",
335
+ "@aws-sdk/nested-clients": "^3.997.13",
320
336
  "@aws-sdk/types": "^3.973.9",
321
- "@smithy/core": "^3.24.3",
337
+ "@smithy/core": "^3.24.5",
322
338
  "@smithy/types": "^4.14.2",
323
339
  "tslib": "^2.6.2"
324
340
  },
@@ -327,13 +343,13 @@
327
343
  }
328
344
  },
329
345
  "node_modules/@aws-sdk/eventstream-handler-node": {
330
- "version": "3.972.17",
331
- "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-handler-node/-/eventstream-handler-node-3.972.17.tgz",
332
- "integrity": "sha512-WFwdNcjchKZr7jKYgGimUZO8sSKQF/le7GGqgeCzz/lHozInE6b0gFJ1YMr8NaIeAoWJwgtrF7RE4/qMgosAdQ==",
346
+ "version": "3.972.18",
347
+ "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-handler-node/-/eventstream-handler-node-3.972.18.tgz",
348
+ "integrity": "sha512-QPQhwY/fstR8fMZFWrsJRNoTP6D1RjRPHGRX7u9/VkF3opCsvD0oXPz6qzkX94SchzvuS5vyFZbJbPcMEs2Jeg==",
333
349
  "license": "Apache-2.0",
334
350
  "dependencies": {
335
351
  "@aws-sdk/types": "^3.973.9",
336
- "@smithy/core": "^3.24.3",
352
+ "@smithy/core": "^3.24.5",
337
353
  "@smithy/types": "^4.14.2",
338
354
  "tslib": "^2.6.2"
339
355
  },
@@ -342,13 +358,13 @@
342
358
  }
343
359
  },
344
360
  "node_modules/@aws-sdk/middleware-eventstream": {
345
- "version": "3.972.13",
346
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-eventstream/-/middleware-eventstream-3.972.13.tgz",
347
- "integrity": "sha512-ECfsw7mf6G/sxNbKbGE3/h1xeIArY/yRI1IjDGYkLgDIankh+aDOtDRSr40LVlIHGL9+jEH1cVuxmbJ8NLL/1A==",
361
+ "version": "3.972.14",
362
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-eventstream/-/middleware-eventstream-3.972.14.tgz",
363
+ "integrity": "sha512-DoZ4djVj/74XQ6M/IwxuKh543tTvLCL7u1Dx+VDHMgW9yGNrFSJJ1l0LrUQRaekic5CB12wUiiOoHL0VI6H0gg==",
348
364
  "license": "Apache-2.0",
349
365
  "dependencies": {
350
366
  "@aws-sdk/types": "^3.973.9",
351
- "@smithy/core": "^3.24.3",
367
+ "@smithy/core": "^3.24.5",
352
368
  "@smithy/types": "^4.14.2",
353
369
  "tslib": "^2.6.2"
354
370
  },
@@ -357,16 +373,16 @@
357
373
  }
358
374
  },
359
375
  "node_modules/@aws-sdk/middleware-websocket": {
360
- "version": "3.972.21",
361
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-websocket/-/middleware-websocket-3.972.21.tgz",
362
- "integrity": "sha512-yr+5+C7v9R55sAJ89A55Wrm7wIKPVn5cm6J3Hztnd5s/iwEUKxyJqCnIxJu4fVXgG9XBQD1Jc4rsWC1ozahJjA==",
376
+ "version": "3.972.23",
377
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-websocket/-/middleware-websocket-3.972.23.tgz",
378
+ "integrity": "sha512-F0d4A9pJFiwljyKgSwU1Z5n+CXSv8bp+V5SthbS2rftB8wBN9z1K2Yyv3xbeK0AM2T0g4q6Ptf0shFF+oQZyiA==",
363
379
  "license": "Apache-2.0",
364
380
  "dependencies": {
365
- "@aws-sdk/core": "^3.974.13",
381
+ "@aws-sdk/core": "^3.974.15",
366
382
  "@aws-sdk/types": "^3.973.9",
367
- "@smithy/core": "^3.24.3",
368
- "@smithy/fetch-http-handler": "^5.4.3",
369
- "@smithy/signature-v4": "^5.4.2",
383
+ "@smithy/core": "^3.24.5",
384
+ "@smithy/fetch-http-handler": "^5.4.5",
385
+ "@smithy/signature-v4": "^5.4.5",
370
386
  "@smithy/types": "^4.14.2",
371
387
  "tslib": "^2.6.2"
372
388
  },
@@ -375,19 +391,19 @@
375
391
  }
376
392
  },
377
393
  "node_modules/@aws-sdk/nested-clients": {
378
- "version": "3.997.11",
379
- "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.997.11.tgz",
380
- "integrity": "sha512-nWXXJ1r/r8N2Gw1pWolRgED38/A9A8DHR2ETWIv220zh4PZHcybbR4hUVWWktmNXTRHzDJwRluapHn0rZxuoqA==",
394
+ "version": "3.997.13",
395
+ "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.997.13.tgz",
396
+ "integrity": "sha512-2pA6eyb5nSo/ZD2cayhOTEMoGQYgspq0RI05GDLkzQ3ajZ6isS6waV6E92Am/hz4LIlLUTrbwPLurJ/fuiHvkg==",
381
397
  "license": "Apache-2.0",
382
398
  "dependencies": {
383
399
  "@aws-crypto/sha256-browser": "5.2.0",
384
400
  "@aws-crypto/sha256-js": "5.2.0",
385
- "@aws-sdk/core": "^3.974.13",
386
- "@aws-sdk/signature-v4-multi-region": "^3.996.28",
401
+ "@aws-sdk/core": "^3.974.15",
402
+ "@aws-sdk/signature-v4-multi-region": "^3.996.30",
387
403
  "@aws-sdk/types": "^3.973.9",
388
- "@smithy/core": "^3.24.3",
389
- "@smithy/fetch-http-handler": "^5.4.3",
390
- "@smithy/node-http-handler": "^4.7.3",
404
+ "@smithy/core": "^3.24.5",
405
+ "@smithy/fetch-http-handler": "^5.4.5",
406
+ "@smithy/node-http-handler": "^4.7.5",
391
407
  "@smithy/types": "^4.14.2",
392
408
  "tslib": "^2.6.2"
393
409
  },
@@ -395,15 +411,28 @@
395
411
  "node": ">=20.0.0"
396
412
  }
397
413
  },
414
+ "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler": {
415
+ "version": "4.7.5",
416
+ "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.7.5.tgz",
417
+ "integrity": "sha512-3dA9TQ+ybRSZ/m0wnbZhiBy4Dezjgq1Ib/ZZrYTpJDBgpoLLU/SDzZc/g0x0MNAdOJe1wPcM+x2PBRmoOur+Sw==",
418
+ "license": "Apache-2.0",
419
+ "dependencies": {
420
+ "@smithy/core": "^3.24.5",
421
+ "@smithy/types": "^4.14.2",
422
+ "tslib": "^2.6.2"
423
+ },
424
+ "engines": {
425
+ "node": ">=18.0.0"
426
+ }
427
+ },
398
428
  "node_modules/@aws-sdk/signature-v4-multi-region": {
399
- "version": "3.996.28",
400
- "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.996.28.tgz",
401
- "integrity": "sha512-qs9z5LqXO/CZC2Lg9SGKpoLU8Rhi+m2pFKZqfO9pytX1clc0katqtsDNupJxFy0xT9wsZSPzM2v1y+/H/zfp5Q==",
429
+ "version": "3.996.30",
430
+ "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.996.30.tgz",
431
+ "integrity": "sha512-HULDLMVzkmTSEv6//7kx2kRevp/VYUpm8hJNNFbmhxDn0fUiGTxVcM9yg31TukvTq8nyOBDUN2gH0o5IRbKjdw==",
402
432
  "license": "Apache-2.0",
403
433
  "dependencies": {
404
434
  "@aws-sdk/types": "^3.973.9",
405
- "@smithy/core": "^3.24.3",
406
- "@smithy/signature-v4": "^5.4.2",
435
+ "@smithy/signature-v4": "^5.4.5",
407
436
  "@smithy/types": "^4.14.2",
408
437
  "tslib": "^2.6.2"
409
438
  },
@@ -454,12 +483,11 @@
454
483
  }
455
484
  },
456
485
  "node_modules/@aws-sdk/xml-builder": {
457
- "version": "3.972.25",
458
- "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.972.25.tgz",
459
- "integrity": "sha512-GH+Kjz4nPKWKHnsiQpnhP1MJdTGIcK4rAka6tzakgjjUkVgNsmPeEbbRAf09SzS1hjGu6duGHCBsxYke0BhHjQ==",
486
+ "version": "3.972.26",
487
+ "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.972.26.tgz",
488
+ "integrity": "sha512-cDbrqvDS73whl6YAPSPq0U6whzG6UWI9PuWh0wrUuGoZexhWEqhdunbukV7iBoaWnFV1AODutM5hOD6rtn439g==",
460
489
  "license": "Apache-2.0",
461
490
  "dependencies": {
462
- "@nodable/entities": "2.1.0",
463
491
  "@smithy/types": "^4.14.2",
464
492
  "fast-xml-parser": "5.7.3",
465
493
  "tslib": "^2.6.2"
@@ -478,9 +506,9 @@
478
506
  }
479
507
  },
480
508
  "node_modules/@babel/runtime": {
481
- "version": "7.29.2",
482
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz",
483
- "integrity": "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==",
509
+ "version": "7.29.7",
510
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.7.tgz",
511
+ "integrity": "sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw==",
484
512
  "license": "MIT",
485
513
  "engines": {
486
514
  "node": ">=6.9.0"
@@ -799,12 +827,12 @@
799
827
  }
800
828
  },
801
829
  "node_modules/@earendil-works/pi-agent-core": {
802
- "version": "0.75.5",
803
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-agent-core/-/pi-agent-core-0.75.5.tgz",
804
- "integrity": "sha512-LHygOgsW2pgXKb3IkXkOAeZPovHr9VF+EixgXVsDNuB4jmhEOXgshy/zksZ7slkUAx10OQ9W1Ed/2jsnhd1NqA==",
830
+ "version": "0.78.0",
831
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-agent-core/-/pi-agent-core-0.78.0.tgz",
832
+ "integrity": "sha512-xhWd59Qzd8yO88gYQw2S4dEQstJJEiUtxRP01//YzVJ61jCtUASMfcyAmYhgGYR4Onp7GmwEAbBBGOiV6Iwk9g==",
805
833
  "license": "MIT",
806
834
  "dependencies": {
807
- "@earendil-works/pi-ai": "^0.75.5",
835
+ "@earendil-works/pi-ai": "^0.78.0",
808
836
  "ignore": "7.0.5",
809
837
  "typebox": "1.1.38",
810
838
  "yaml": "2.9.0"
@@ -814,9 +842,9 @@
814
842
  }
815
843
  },
816
844
  "node_modules/@earendil-works/pi-ai": {
817
- "version": "0.75.5",
818
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.75.5.tgz",
819
- "integrity": "sha512-zf1F5kXk1pqZeFShXOqq9ibUk8QdtRoLCDPAjO+hj44e3EUs9/GFO2qnhTC5+JA2uwVCx+WCNe1PiCjlBYWm5w==",
845
+ "version": "0.78.0",
846
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.78.0.tgz",
847
+ "integrity": "sha512-q0hUrvT6ngT6cgBX0oIbzfQfmzztgdkZobP8OTL+sCOOBlnG6+1YRt8g7zO9CC/4NdeYEqa7uGqWdQhH0fjCLA==",
820
848
  "license": "MIT",
821
849
  "dependencies": {
822
850
  "@anthropic-ai/sdk": "0.91.1",
@@ -838,15 +866,15 @@
838
866
  }
839
867
  },
840
868
  "node_modules/@earendil-works/pi-coding-agent": {
841
- "version": "0.75.5",
842
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-coding-agent/-/pi-coding-agent-0.75.5.tgz",
843
- "integrity": "sha512-O3CCQDYy28D4uwtP6zZkdEwzHN6X22v49Sb0+SZTC7x37V/YfmogrWPiaFoWeoc2hmdKhSATI7ZAK5bQbJG5NA==",
869
+ "version": "0.78.0",
870
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-coding-agent/-/pi-coding-agent-0.78.0.tgz",
871
+ "integrity": "sha512-gXt6pD3BoSG0yLwfLqb6844vz6qAO87PvNrv+YSDYKP3QliTjcwIld9v4ihmDcmBjO13QwKswubq/lYCvn4bkg==",
844
872
  "hasShrinkwrap": true,
845
873
  "license": "MIT",
846
874
  "dependencies": {
847
- "@earendil-works/pi-agent-core": "^0.75.5",
848
- "@earendil-works/pi-ai": "^0.75.5",
849
- "@earendil-works/pi-tui": "^0.75.5",
875
+ "@earendil-works/pi-agent-core": "^0.78.0",
876
+ "@earendil-works/pi-ai": "^0.78.0",
877
+ "@earendil-works/pi-tui": "^0.78.0",
850
878
  "@silvia-odwyer/photon-node": "0.3.4",
851
879
  "chalk": "5.6.2",
852
880
  "cross-spawn": "7.0.6",
@@ -869,7 +897,7 @@
869
897
  "node": ">=22.19.0"
870
898
  },
871
899
  "optionalDependencies": {
872
- "@mariozechner/clipboard": "0.3.6"
900
+ "@mariozechner/clipboard": "0.3.9"
873
901
  }
874
902
  },
875
903
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@anthropic-ai/sdk": {
@@ -1308,11 +1336,11 @@
1308
1336
  }
1309
1337
  },
1310
1338
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-agent-core": {
1311
- "version": "0.75.5",
1312
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-agent-core/-/pi-agent-core-0.75.5.tgz",
1339
+ "version": "0.78.0",
1340
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-agent-core/-/pi-agent-core-0.78.0.tgz",
1313
1341
  "license": "MIT",
1314
1342
  "dependencies": {
1315
- "@earendil-works/pi-ai": "^0.75.5",
1343
+ "@earendil-works/pi-ai": "^0.78.0",
1316
1344
  "ignore": "7.0.5",
1317
1345
  "typebox": "1.1.38",
1318
1346
  "yaml": "2.9.0"
@@ -1322,8 +1350,8 @@
1322
1350
  }
1323
1351
  },
1324
1352
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-ai": {
1325
- "version": "0.75.5",
1326
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.75.5.tgz",
1353
+ "version": "0.78.0",
1354
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.78.0.tgz",
1327
1355
  "license": "MIT",
1328
1356
  "dependencies": {
1329
1357
  "@anthropic-ai/sdk": "0.91.1",
@@ -1338,15 +1366,15 @@
1338
1366
  "typebox": "1.1.38"
1339
1367
  },
1340
1368
  "bin": {
1341
- "pi-ai": "./dist/cli.js"
1369
+ "pi-ai": "dist/cli.js"
1342
1370
  },
1343
1371
  "engines": {
1344
1372
  "node": ">=22.19.0"
1345
1373
  }
1346
1374
  },
1347
1375
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-tui": {
1348
- "version": "0.75.5",
1349
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-tui/-/pi-tui-0.75.5.tgz",
1376
+ "version": "0.78.0",
1377
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-tui/-/pi-tui-0.78.0.tgz",
1350
1378
  "license": "MIT",
1351
1379
  "dependencies": {
1352
1380
  "get-east-asian-width": "1.6.0",
@@ -1381,31 +1409,31 @@
1381
1409
  }
1382
1410
  },
1383
1411
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard": {
1384
- "version": "0.3.6",
1385
- "resolved": "https://registry.npmjs.org/@mariozechner/clipboard/-/clipboard-0.3.6.tgz",
1386
- "integrity": "sha512-MXdtr+6+ntlIVHdrZYuZNQydu6o8yZswFJ2Ln81j2O/Y9B/LDHvEaIm95xWNPkjGTWriSOeLnQJRFs6dYb60bg==",
1412
+ "version": "0.3.9",
1413
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard/-/clipboard-0.3.9.tgz",
1414
+ "integrity": "sha512-ABnA53mdfkGZwOFUdZNv2S0CWGO/EIuPj8Vv9xmBFmSYg/qFc7ihO6q5FcQjvoE67kZpWkEc4AhD6B/os04yuA==",
1387
1415
  "license": "MIT",
1388
1416
  "optional": true,
1389
1417
  "engines": {
1390
1418
  "node": ">= 10"
1391
1419
  },
1392
1420
  "optionalDependencies": {
1393
- "@mariozechner/clipboard-darwin-arm64": "0.3.6",
1394
- "@mariozechner/clipboard-darwin-universal": "0.3.6",
1395
- "@mariozechner/clipboard-darwin-x64": "0.3.6",
1396
- "@mariozechner/clipboard-linux-arm64-gnu": "0.3.6",
1397
- "@mariozechner/clipboard-linux-arm64-musl": "0.3.6",
1398
- "@mariozechner/clipboard-linux-riscv64-gnu": "0.3.6",
1399
- "@mariozechner/clipboard-linux-x64-gnu": "0.3.6",
1400
- "@mariozechner/clipboard-linux-x64-musl": "0.3.6",
1401
- "@mariozechner/clipboard-win32-arm64-msvc": "0.3.6",
1402
- "@mariozechner/clipboard-win32-x64-msvc": "0.3.6"
1421
+ "@mariozechner/clipboard-darwin-arm64": "0.3.9",
1422
+ "@mariozechner/clipboard-darwin-universal": "0.3.9",
1423
+ "@mariozechner/clipboard-darwin-x64": "0.3.9",
1424
+ "@mariozechner/clipboard-linux-arm64-gnu": "0.3.9",
1425
+ "@mariozechner/clipboard-linux-arm64-musl": "0.3.9",
1426
+ "@mariozechner/clipboard-linux-riscv64-gnu": "0.3.9",
1427
+ "@mariozechner/clipboard-linux-x64-gnu": "0.3.9",
1428
+ "@mariozechner/clipboard-linux-x64-musl": "0.3.9",
1429
+ "@mariozechner/clipboard-win32-arm64-msvc": "0.3.9",
1430
+ "@mariozechner/clipboard-win32-x64-msvc": "0.3.9"
1403
1431
  }
1404
1432
  },
1405
1433
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-darwin-arm64": {
1406
- "version": "0.3.6",
1407
- "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-darwin-arm64/-/clipboard-darwin-arm64-0.3.6.tgz",
1408
- "integrity": "sha512-HjaisYCAbHi/1+N1yDAQHc8ZXGffufIUT5NSOSVR3f3AuMDusxTtnbK8tZ7JFDkShua1oNGZoNwQHsc8MPtE0Q==",
1434
+ "version": "0.3.9",
1435
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-darwin-arm64/-/clipboard-darwin-arm64-0.3.9.tgz",
1436
+ "integrity": "sha512-BfgV7vCEWZwJwZJw03r6bP5+tf0iI/ANuQYCxi9RNn7FrWB3yzGuMKCrNLRl6V761vXRdL8+OqZ0wd4TqlsNOQ==",
1409
1437
  "cpu": [
1410
1438
  "arm64"
1411
1439
  ],
@@ -1419,9 +1447,9 @@
1419
1447
  }
1420
1448
  },
1421
1449
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-darwin-universal": {
1422
- "version": "0.3.6",
1423
- "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-darwin-universal/-/clipboard-darwin-universal-0.3.6.tgz",
1424
- "integrity": "sha512-8BWtPjOtJOJoykml3w0fx0zRrfWP31mXrJwfoA7xzNprkZw1uolCNfgmjDiVBseoKjp16EGITz7bN+61qn8dWA==",
1450
+ "version": "0.3.9",
1451
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-darwin-universal/-/clipboard-darwin-universal-0.3.9.tgz",
1452
+ "integrity": "sha512-BGGR4iA9Z2shAjI65eI5xtyb3LYNlDW9X3gxKxDbqtbnREohsrqznov6zpKoIrsRWpzlYVEdKphS7ksJ0/ndSQ==",
1425
1453
  "license": "MIT",
1426
1454
  "optional": true,
1427
1455
  "os": [
@@ -1432,9 +1460,9 @@
1432
1460
  }
1433
1461
  },
1434
1462
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-darwin-x64": {
1435
- "version": "0.3.6",
1436
- "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-darwin-x64/-/clipboard-darwin-x64-0.3.6.tgz",
1437
- "integrity": "sha512-p9syiZD1kU4I+1ya7f7g+zD1GiUvR8fdlRlNmgsZNWlyjtc8rlV2EjTLd/35x1LsdBq020GVvtzp0ZmPgBI09Q==",
1463
+ "version": "0.3.9",
1464
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-darwin-x64/-/clipboard-darwin-x64-0.3.9.tgz",
1465
+ "integrity": "sha512-4kURmCbS6nt8uYhtmWpUcJWyPHfmAr5dTpXD1nO3pIfa+TSQ9DbrGOYCKH+aEFW47XhQ4Vp8ZTszie+wfFvDKg==",
1438
1466
  "cpu": [
1439
1467
  "x64"
1440
1468
  ],
@@ -1448,12 +1476,15 @@
1448
1476
  }
1449
1477
  },
1450
1478
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-arm64-gnu": {
1451
- "version": "0.3.6",
1452
- "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-arm64-gnu/-/clipboard-linux-arm64-gnu-0.3.6.tgz",
1453
- "integrity": "sha512-5JFf5rGofrm+V29HNF+wLthXphHdQpMbKDUYJ5tML6/Z5DLlLOV/9Ak4kDPtYyZ+Dzf+kAusE0VsFg4+tfP1IA==",
1479
+ "version": "0.3.9",
1480
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-arm64-gnu/-/clipboard-linux-arm64-gnu-0.3.9.tgz",
1481
+ "integrity": "sha512-g59OkUGP2DDfCOIKypHeYgv2M55u/cKvXa5dSxFbEJ34XvIQMdcVmpKCkGUro3ZgefXiGVdwguvTMQGpHWzIXw==",
1454
1482
  "cpu": [
1455
1483
  "arm64"
1456
1484
  ],
1485
+ "libc": [
1486
+ "glibc"
1487
+ ],
1457
1488
  "license": "MIT",
1458
1489
  "optional": true,
1459
1490
  "os": [
@@ -1464,12 +1495,15 @@
1464
1495
  }
1465
1496
  },
1466
1497
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-arm64-musl": {
1467
- "version": "0.3.6",
1468
- "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-arm64-musl/-/clipboard-linux-arm64-musl-0.3.6.tgz",
1469
- "integrity": "sha512-JlVjxxw0GbGC0djXYWRIqyteO3J1KZ/QG3udlEFaOD5TLOM1FnmXXAPDQBqr+aBVr720ef9K00dirYnJ0LDCtw==",
1498
+ "version": "0.3.9",
1499
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-arm64-musl/-/clipboard-linux-arm64-musl-0.3.9.tgz",
1500
+ "integrity": "sha512-AGuJdgKsmJdm4Pych7kv3sqe591ERRaAHW3xjLooiFzn8J+PxUyof++7YZrB5Y5tpnTO+K18Og3taj2NpluCRQ==",
1470
1501
  "cpu": [
1471
1502
  "arm64"
1472
1503
  ],
1504
+ "libc": [
1505
+ "musl"
1506
+ ],
1473
1507
  "license": "MIT",
1474
1508
  "optional": true,
1475
1509
  "os": [
@@ -1480,12 +1514,15 @@
1480
1514
  }
1481
1515
  },
1482
1516
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-riscv64-gnu": {
1483
- "version": "0.3.6",
1484
- "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-riscv64-gnu/-/clipboard-linux-riscv64-gnu-0.3.6.tgz",
1485
- "integrity": "sha512-4t8BUi5zZ+L77otFQVnVSlaTyAX4TVk9EqQm4syMrEQp96trFEHEwwNHcNEBGzYv5+K7mxay50TthYkz47OWzQ==",
1517
+ "version": "0.3.9",
1518
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-riscv64-gnu/-/clipboard-linux-riscv64-gnu-0.3.9.tgz",
1519
+ "integrity": "sha512-DXBEAiuMpk7dhS1a9NzNxVAFi1vaKoPu7rQNgY8LIDLGrK3lnIp3nT10DUum+PKVJoJppIP+NAA8IZe4DMNDPw==",
1486
1520
  "cpu": [
1487
1521
  "riscv64"
1488
1522
  ],
1523
+ "libc": [
1524
+ "glibc"
1525
+ ],
1489
1526
  "license": "MIT",
1490
1527
  "optional": true,
1491
1528
  "os": [
@@ -1496,12 +1533,15 @@
1496
1533
  }
1497
1534
  },
1498
1535
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-x64-gnu": {
1499
- "version": "0.3.6",
1500
- "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-x64-gnu/-/clipboard-linux-x64-gnu-0.3.6.tgz",
1501
- "integrity": "sha512-trtPwcNLW37irwQCJLtCxLw757jjJZk3TSnY/MU9bhtWtA3K9b/eLW0e4RGhUXDoFRds9opNWWaUDuFLa8dm0w==",
1536
+ "version": "0.3.9",
1537
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-x64-gnu/-/clipboard-linux-x64-gnu-0.3.9.tgz",
1538
+ "integrity": "sha512-WORrMLd6EpElEME7JRKfSaY34nW1P5LbdgK5YNCS1ncG2LqmITsSMEJ8nh2mpvxb3TxqbOOKgY7k9eMJYlW9Mw==",
1502
1539
  "cpu": [
1503
1540
  "x64"
1504
1541
  ],
1542
+ "libc": [
1543
+ "glibc"
1544
+ ],
1505
1545
  "license": "MIT",
1506
1546
  "optional": true,
1507
1547
  "os": [
@@ -1512,12 +1552,15 @@
1512
1552
  }
1513
1553
  },
1514
1554
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-x64-musl": {
1515
- "version": "0.3.6",
1516
- "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-x64-musl/-/clipboard-linux-x64-musl-0.3.6.tgz",
1517
- "integrity": "sha512-WfnzIvOCCWQiN0MmltCEo6cLceUDbYe+I7xyFZjaps5A+2Op/M2CY7Rey+C4ucQhrvmpoHmTSFgY9ODWk7snoA==",
1555
+ "version": "0.3.9",
1556
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-x64-musl/-/clipboard-linux-x64-musl-0.3.9.tgz",
1557
+ "integrity": "sha512-/DHn+1DrfL6oRaPPWXaOKvonFFrni666fxd+zFqiQEfvBH0tsHVWjq9iqBk0oDp0qaPA72lIMy5BptxISBEhZQ==",
1518
1558
  "cpu": [
1519
1559
  "x64"
1520
1560
  ],
1561
+ "libc": [
1562
+ "musl"
1563
+ ],
1521
1564
  "license": "MIT",
1522
1565
  "optional": true,
1523
1566
  "os": [
@@ -1528,9 +1571,9 @@
1528
1571
  }
1529
1572
  },
1530
1573
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-win32-arm64-msvc": {
1531
- "version": "0.3.6",
1532
- "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-win32-arm64-msvc/-/clipboard-win32-arm64-msvc-0.3.6.tgz",
1533
- "integrity": "sha512-+8+1aHYsBPUjmW3otmWlg+Hijt0iJvoBBs5e0mxFeUd4gDaKMB8Bn6x7c6KVtscg7E5j5NFXnwQqNSIAO4p8zQ==",
1574
+ "version": "0.3.9",
1575
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-win32-arm64-msvc/-/clipboard-win32-arm64-msvc-0.3.9.tgz",
1576
+ "integrity": "sha512-O5FHD3ErkMwMhNzAfu3ggy0ug4z7btZuoQgwwxlzPrwV2bxlD6WDpqBY4NCgICAgZdDKdp+loUEKVAVt8aYnhQ==",
1534
1577
  "cpu": [
1535
1578
  "arm64"
1536
1579
  ],
@@ -1544,9 +1587,9 @@
1544
1587
  }
1545
1588
  },
1546
1589
  "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-win32-x64-msvc": {
1547
- "version": "0.3.6",
1548
- "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-win32-x64-msvc/-/clipboard-win32-x64-msvc-0.3.6.tgz",
1549
- "integrity": "sha512-S4xfPmERC8ZkiLHe3vekZCjdDwNEETCuvCgQK2kP6/TnvmUkq1y2Pk+DjM4t8uh9KMX9bH4zs5ePcKa8GTXmfg==",
1590
+ "version": "0.3.9",
1591
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-win32-x64-msvc/-/clipboard-win32-x64-msvc-0.3.9.tgz",
1592
+ "integrity": "sha512-ihQC3EufqEY81vhXBgVBtK4prL+wc62zJsSvxrgz7K1hsdt6OObz6v9p3Rn1OG3GJksTTKMJF0u/guMISHPhSA==",
1550
1593
  "cpu": [
1551
1594
  "x64"
1552
1595
  ],
@@ -3574,9 +3617,9 @@
3574
3617
  }
3575
3618
  },
3576
3619
  "node_modules/@nodable/entities": {
3577
- "version": "2.1.0",
3578
- "resolved": "https://registry.npmjs.org/@nodable/entities/-/entities-2.1.0.tgz",
3579
- "integrity": "sha512-nyT7T3nbMyBI/lvr6L5TyWbFJAI9FTgVRakNoBqCD+PmID8DzFrrNdLLtHMwMszOtqZa8PAOV24ZqDnQrhQINA==",
3620
+ "version": "2.1.1",
3621
+ "resolved": "https://registry.npmjs.org/@nodable/entities/-/entities-2.1.1.tgz",
3622
+ "integrity": "sha512-Pig3HxDIoMgjdEH8OCf/dkcTmLFjJRjWuq8jSnklu284/TKOPibSRERmOykiwmyXTtv61mP+44f3GMx0tLAyjg==",
3580
3623
  "funding": [
3581
3624
  {
3582
3625
  "type": "github",
@@ -3682,9 +3725,9 @@
3682
3725
  }
3683
3726
  },
3684
3727
  "node_modules/@smithy/core": {
3685
- "version": "3.24.4",
3686
- "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.24.4.tgz",
3687
- "integrity": "sha512-3UNRKEyQyAgVgM0LGlerCLm+ChZWZ1GPfde+jBEW6bm6bSBGU1p0EbblaUV3unbhwvidjLA5Zs3sOs7mnZwvAw==",
3728
+ "version": "3.24.5",
3729
+ "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.24.5.tgz",
3730
+ "integrity": "sha512-Kt8phUg45M15EjhYAbZ+fFikYneijLu9Liugz8ZsYz2i8j0hzGv27LWKpEHYRfvj+LyCOSijpcR/2i8RouV+cA==",
3688
3731
  "license": "Apache-2.0",
3689
3732
  "dependencies": {
3690
3733
  "@aws-crypto/crc32": "5.2.0",
@@ -3696,12 +3739,12 @@
3696
3739
  }
3697
3740
  },
3698
3741
  "node_modules/@smithy/credential-provider-imds": {
3699
- "version": "4.3.4",
3700
- "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.3.4.tgz",
3701
- "integrity": "sha512-vKW0MEFRU4Y3MkVZUkpJm+g9qyPGLCXhc0YLggUdSdBB4g7IaSSsCE75P9rBXyWHrXY1UYSQUl8/DwsTR7QciA==",
3742
+ "version": "4.3.6",
3743
+ "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.3.6.tgz",
3744
+ "integrity": "sha512-tHhdiWZfG1ZIh2YcRfPJmY2gHcBmqbAzqm3ER4TIDFYsSEqTD5tICT7cgQ/kI8LRakxp12myOYyK68XPn7MnHw==",
3702
3745
  "license": "Apache-2.0",
3703
3746
  "dependencies": {
3704
- "@smithy/core": "^3.24.4",
3747
+ "@smithy/core": "^3.24.5",
3705
3748
  "@smithy/types": "^4.14.2",
3706
3749
  "tslib": "^2.6.2"
3707
3750
  },
@@ -3710,12 +3753,12 @@
3710
3753
  }
3711
3754
  },
3712
3755
  "node_modules/@smithy/fetch-http-handler": {
3713
- "version": "5.4.4",
3714
- "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.4.4.tgz",
3715
- "integrity": "sha512-qM7AUKI4G6d7lNgaZD3lA1tWSolh5r6gcixfTZAPstVURfjIbvreVTPz+994M0yC3HbX4YYhDRgr31Xy3XwWOQ==",
3756
+ "version": "5.4.5",
3757
+ "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.4.5.tgz",
3758
+ "integrity": "sha512-SK3VMeH0fibgdTg2QeB+O4p7Yy/2E5HBOHJeC58FshkDdeuX8lOgO7PfjYfLyPLP1ch55j91cQqKBzDS0mRjSQ==",
3716
3759
  "license": "Apache-2.0",
3717
3760
  "dependencies": {
3718
- "@smithy/core": "^3.24.4",
3761
+ "@smithy/core": "^3.24.5",
3719
3762
  "@smithy/types": "^4.14.2",
3720
3763
  "tslib": "^2.6.2"
3721
3764
  },
@@ -3750,12 +3793,12 @@
3750
3793
  }
3751
3794
  },
3752
3795
  "node_modules/@smithy/signature-v4": {
3753
- "version": "5.4.4",
3754
- "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.4.4.tgz",
3755
- "integrity": "sha512-e5UtkMvsatzBfbeBZjEOt0k0Z3BEsjTFL/n6fdO5vtBLe67tdy0dX7xw2DU7uZ3acwoHyeCqpU2Fzb7pxwHb6Q==",
3796
+ "version": "5.4.5",
3797
+ "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.4.5.tgz",
3798
+ "integrity": "sha512-QBJKWGqIknH0dc9LWpfH1mkdokAx6iXYN3UcQ3eY6uIEyScuoQAhfl94ge7ozUy9WgFUdE8xsvwBjaYBbWmPNA==",
3756
3799
  "license": "Apache-2.0",
3757
3800
  "dependencies": {
3758
- "@smithy/core": "^3.24.4",
3801
+ "@smithy/core": "^3.24.5",
3759
3802
  "@smithy/types": "^4.14.2",
3760
3803
  "tslib": "^2.6.2"
3761
3804
  },
@@ -3811,6 +3854,16 @@
3811
3854
  "@types/node": "*"
3812
3855
  }
3813
3856
  },
3857
+ "node_modules/@types/cross-spawn": {
3858
+ "version": "6.0.6",
3859
+ "resolved": "https://registry.npmjs.org/@types/cross-spawn/-/cross-spawn-6.0.6.tgz",
3860
+ "integrity": "sha512-fXRhhUkG4H3TQk5dBhQ7m/JDdSNHKwR2BBia62lhwEIq9xGiQKLxd6LymNhn47SjXhsUEPmxi+PKw2OkW4LLjA==",
3861
+ "dev": true,
3862
+ "license": "MIT",
3863
+ "dependencies": {
3864
+ "@types/node": "*"
3865
+ }
3866
+ },
3814
3867
  "node_modules/@types/node": {
3815
3868
  "version": "25.8.0",
3816
3869
  "resolved": "https://registry.npmjs.org/@types/node/-/node-25.8.0.tgz",
@@ -3959,6 +4012,20 @@
3959
4012
  "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==",
3960
4013
  "license": "ISC"
3961
4014
  },
4015
+ "node_modules/cross-spawn": {
4016
+ "version": "7.0.6",
4017
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
4018
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
4019
+ "license": "MIT",
4020
+ "dependencies": {
4021
+ "path-key": "^3.1.0",
4022
+ "shebang-command": "^2.0.0",
4023
+ "which": "^2.0.1"
4024
+ },
4025
+ "engines": {
4026
+ "node": ">= 8"
4027
+ }
4028
+ },
3962
4029
  "node_modules/data-uri-to-buffer": {
3963
4030
  "version": "4.0.1",
3964
4031
  "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz",
@@ -4382,6 +4449,12 @@
4382
4449
  "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
4383
4450
  "license": "ISC"
4384
4451
  },
4452
+ "node_modules/isexe": {
4453
+ "version": "2.0.0",
4454
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
4455
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
4456
+ "license": "ISC"
4457
+ },
4385
4458
  "node_modules/json-bigint": {
4386
4459
  "version": "1.0.0",
4387
4460
  "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz",
@@ -4602,6 +4675,15 @@
4602
4675
  "node": ">=14.0.0"
4603
4676
  }
4604
4677
  },
4678
+ "node_modules/path-key": {
4679
+ "version": "3.1.1",
4680
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
4681
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
4682
+ "license": "MIT",
4683
+ "engines": {
4684
+ "node": ">=8"
4685
+ }
4686
+ },
4605
4687
  "node_modules/prebuild-install": {
4606
4688
  "version": "7.1.3",
4607
4689
  "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.3.tgz",
@@ -4630,9 +4712,9 @@
4630
4712
  }
4631
4713
  },
4632
4714
  "node_modules/protobufjs": {
4633
- "version": "7.6.1",
4634
- "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.6.1.tgz",
4635
- "integrity": "sha512-4K0myLaWL5EteuSAro91EGFgcfVgxb64Jx+7oDAY6GOkXD4M69yuSEljNcInGVCA5sOPxmZ/EqDLj2x0Q0+Ygg==",
4715
+ "version": "7.6.2",
4716
+ "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.6.2.tgz",
4717
+ "integrity": "sha512-N9EiLovGEQOJSPF26Ij7qUGvahfEnq0eeYZ02aigIedkmz1qZSwjnP9SBITHJuF/6MYbIW4HDN8zdYjsjqJKXQ==",
4636
4718
  "hasInstallScript": true,
4637
4719
  "license": "BSD-3-Clause",
4638
4720
  "dependencies": {
@@ -4777,6 +4859,27 @@
4777
4859
  "@img/sharp-win32-x64": "0.34.5"
4778
4860
  }
4779
4861
  },
4862
+ "node_modules/shebang-command": {
4863
+ "version": "2.0.0",
4864
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
4865
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
4866
+ "license": "MIT",
4867
+ "dependencies": {
4868
+ "shebang-regex": "^3.0.0"
4869
+ },
4870
+ "engines": {
4871
+ "node": ">=8"
4872
+ }
4873
+ },
4874
+ "node_modules/shebang-regex": {
4875
+ "version": "3.0.0",
4876
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
4877
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
4878
+ "license": "MIT",
4879
+ "engines": {
4880
+ "node": ">=8"
4881
+ }
4882
+ },
4780
4883
  "node_modules/simple-concat": {
4781
4884
  "version": "1.0.1",
4782
4885
  "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz",
@@ -5060,6 +5163,21 @@
5060
5163
  "node": ">= 8"
5061
5164
  }
5062
5165
  },
5166
+ "node_modules/which": {
5167
+ "version": "2.0.2",
5168
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
5169
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
5170
+ "license": "ISC",
5171
+ "dependencies": {
5172
+ "isexe": "^2.0.0"
5173
+ },
5174
+ "bin": {
5175
+ "node-which": "bin/node-which"
5176
+ },
5177
+ "engines": {
5178
+ "node": ">= 8"
5179
+ }
5180
+ },
5063
5181
  "node_modules/wrappy": {
5064
5182
  "version": "1.0.2",
5065
5183
  "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
@@ -5118,9 +5236,9 @@
5118
5236
  }
5119
5237
  },
5120
5238
  "node_modules/zod": {
5121
- "version": "4.4.2",
5122
- "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.2.tgz",
5123
- "integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==",
5239
+ "version": "4.4.3",
5240
+ "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.3.tgz",
5241
+ "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==",
5124
5242
  "license": "MIT",
5125
5243
  "funding": {
5126
5244
  "url": "https://github.com/sponsors/colinhacks"