agents-city 0.3.0-beta.21

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 (440) hide show
  1. package/.claude-plugin/marketplace.json +16 -0
  2. package/LICENSE +202 -0
  3. package/NOTICE +5 -0
  4. package/README.es.md +2021 -0
  5. package/README.md +1999 -0
  6. package/benchmarks/committee/README.md +39 -0
  7. package/benchmarks/committee/metrics.py +51 -0
  8. package/benchmarks/committee/run.py +64 -0
  9. package/benchmarks/committee/traces/01-single.json +8 -0
  10. package/benchmarks/committee/traces/02-mesh.json +16 -0
  11. package/benchmarks/committee/traces/03-chair.json +15 -0
  12. package/benchmarks/latency/README.md +35 -0
  13. package/benchmarks/latency/fake-claude-cli.mjs +119 -0
  14. package/benchmarks/latency/fake-native-server.mjs +340 -0
  15. package/benchmarks/latency/fake-tui.py +91 -0
  16. package/benchmarks/latency/live.py +380 -0
  17. package/benchmarks/stress/README.md +20 -0
  18. package/benchmarks/stress/run.py +487 -0
  19. package/bin/agents +4 -0
  20. package/bin/agents-city.js +116 -0
  21. package/bin/benchmark +17 -0
  22. package/bin/bus +6 -0
  23. package/bin/cities +3 -0
  24. package/bin/city +86 -0
  25. package/bin/committee +6 -0
  26. package/bin/demo +200 -0
  27. package/bin/exit +5 -0
  28. package/bin/hall +73 -0
  29. package/bin/hall.html +426 -0
  30. package/bin/logs +3 -0
  31. package/bin/report.py +14 -0
  32. package/bin/reset +3 -0
  33. package/bin/road +3 -0
  34. package/bin/seat +10 -0
  35. package/bin/serve.py +1428 -0
  36. package/bin/setup.py +753 -0
  37. package/bin/skills +3 -0
  38. package/bin/test +131 -0
  39. package/bin/test-adapter.py +183 -0
  40. package/bin/test-admision.py +99 -0
  41. package/bin/test-avatar.py +58 -0
  42. package/bin/test-benchmark.py +40 -0
  43. package/bin/test-broker.py +334 -0
  44. package/bin/test-cage.py +206 -0
  45. package/bin/test-card.py +402 -0
  46. package/bin/test-channel.py +379 -0
  47. package/bin/test-cities.py +453 -0
  48. package/bin/test-claude-runtime.py +252 -0
  49. package/bin/test-committee.py +340 -0
  50. package/bin/test-contracts.py +544 -0
  51. package/bin/test-crecimiento.py +164 -0
  52. package/bin/test-demo.py +308 -0
  53. package/bin/test-doctor.py +106 -0
  54. package/bin/test-domains.py +151 -0
  55. package/bin/test-evidencia.py +50 -0
  56. package/bin/test-exit.py +128 -0
  57. package/bin/test-hall-protocol.py +93 -0
  58. package/bin/test-launch.py +169 -0
  59. package/bin/test-live-feed.py +508 -0
  60. package/bin/test-pairing.py +99 -0
  61. package/bin/test-parcels.py +283 -0
  62. package/bin/test-runtime-failures.py +252 -0
  63. package/bin/test-runtime-ui.py +488 -0
  64. package/bin/test-runtime.py +268 -0
  65. package/bin/test-rutas.py +80 -0
  66. package/bin/test-seat.py +1386 -0
  67. package/bin/test-security.py +150 -0
  68. package/bin/test-serve.py +1057 -0
  69. package/bin/test-stress.py +64 -0
  70. package/bin/test-widgets.py +143 -0
  71. package/bin/test-workspace.py +188 -0
  72. package/bin/testlib.py +95 -0
  73. package/bin/tokens.py +14 -0
  74. package/bus/scripts/deploy.sh +60 -0
  75. package/bus/scripts/mint-token.sh +68 -0
  76. package/bus/scripts/setup-dev.sh +79 -0
  77. package/bus/scripts/test-channel.ts +8 -0
  78. package/bus/scripts/test-hub.ts +266 -0
  79. package/bus/scripts/test-local.sh +40 -0
  80. package/bus/scripts/test-queue.ts +132 -0
  81. package/bus/worker/package-lock.json +1971 -0
  82. package/bus/worker/package.json +17 -0
  83. package/bus/worker/src/index.ts +485 -0
  84. package/bus/worker/tsconfig.json +13 -0
  85. package/bus/worker/wrangler.toml +32 -0
  86. package/city/oven/README.md +59 -0
  87. package/city/oven/collect.py +43 -0
  88. package/city/oven/oven.html +4 -0
  89. package/city/scripts/history.py +120 -0
  90. package/city/scripts/seed.py +442 -0
  91. package/city/web/assets/modelos/License.txt +28 -0
  92. package/city/web/assets/modelos/PROCEDENCIA.txt +3 -0
  93. package/city/web/assets/modelos/building-a.glb +0 -0
  94. package/city/web/assets/modelos/building-b.glb +0 -0
  95. package/city/web/assets/modelos/building-c.glb +0 -0
  96. package/city/web/assets/modelos/building-d.glb +0 -0
  97. package/city/web/assets/modelos/building-e.glb +0 -0
  98. package/city/web/assets/modelos/building-f.glb +0 -0
  99. package/city/web/assets/modelos/building-g.glb +0 -0
  100. package/city/web/assets/modelos/building-h.glb +0 -0
  101. package/city/web/assets/sprites/building-a.png +0 -0
  102. package/city/web/assets/sprites/building-b.png +0 -0
  103. package/city/web/assets/sprites/building-c.png +0 -0
  104. package/city/web/assets/sprites/building-d.png +0 -0
  105. package/city/web/assets/sprites/building-e.png +0 -0
  106. package/city/web/assets/sprites/building-f.png +0 -0
  107. package/city/web/assets/sprites/building-g.png +0 -0
  108. package/city/web/assets/sprites/building-h.png +0 -0
  109. package/city/web/assets/sprites/building-i.png +0 -0
  110. package/city/web/assets/sprites/building-j.png +0 -0
  111. package/city/web/assets/sprites/building-k.png +0 -0
  112. package/city/web/assets/sprites/building-l.png +0 -0
  113. package/city/web/assets/sprites/building-m.png +0 -0
  114. package/city/web/assets/sprites/building-n.png +0 -0
  115. package/city/web/assets/sprites/building-skyscraper-a.png +0 -0
  116. package/city/web/assets/sprites/building-skyscraper-b.png +0 -0
  117. package/city/web/assets/sprites/building-skyscraper-c.png +0 -0
  118. package/city/web/assets/sprites/building-skyscraper-d.png +0 -0
  119. package/city/web/assets/sprites/building-skyscraper-e.png +0 -0
  120. package/city/web/assets/sprites/catalogo.json +47 -0
  121. package/city/web/assets/sprites/detail-awning-wide.png +0 -0
  122. package/city/web/assets/sprites/detail-awning.png +0 -0
  123. package/city/web/assets/sprites/detail-overhang-wide.png +0 -0
  124. package/city/web/assets/sprites/detail-overhang.png +0 -0
  125. package/city/web/assets/sprites/detail-parasol-a.png +0 -0
  126. package/city/web/assets/sprites/detail-parasol-b.png +0 -0
  127. package/city/web/assets/sprites/low-detail-building-a.png +0 -0
  128. package/city/web/assets/sprites/low-detail-building-b.png +0 -0
  129. package/city/web/assets/sprites/low-detail-building-c.png +0 -0
  130. package/city/web/assets/sprites/low-detail-building-d.png +0 -0
  131. package/city/web/assets/sprites/low-detail-building-e.png +0 -0
  132. package/city/web/assets/sprites/low-detail-building-f.png +0 -0
  133. package/city/web/assets/sprites/low-detail-building-g.png +0 -0
  134. package/city/web/assets/sprites/low-detail-building-h.png +0 -0
  135. package/city/web/assets/sprites/low-detail-building-i.png +0 -0
  136. package/city/web/assets/sprites/low-detail-building-j.png +0 -0
  137. package/city/web/assets/sprites/low-detail-building-k.png +0 -0
  138. package/city/web/assets/sprites/low-detail-building-l.png +0 -0
  139. package/city/web/assets/sprites/low-detail-building-m.png +0 -0
  140. package/city/web/assets/sprites/low-detail-building-n.png +0 -0
  141. package/city/web/assets/sprites/low-detail-building-wide-a.png +0 -0
  142. package/city/web/assets/sprites/low-detail-building-wide-b.png +0 -0
  143. package/city/web/assets/sprites/medidas.json +248 -0
  144. package/city/web/dist/city.js +939 -0
  145. package/city/web/dist/index.html +294 -0
  146. package/city/web/dist/modelos/License.txt +28 -0
  147. package/city/web/dist/modelos/PROCEDENCIA.txt +3 -0
  148. package/city/web/dist/modelos/building-a.glb +0 -0
  149. package/city/web/dist/modelos/building-b.glb +0 -0
  150. package/city/web/dist/modelos/building-c.glb +0 -0
  151. package/city/web/dist/modelos/building-d.glb +0 -0
  152. package/city/web/dist/modelos/building-e.glb +0 -0
  153. package/city/web/dist/modelos/building-f.glb +0 -0
  154. package/city/web/dist/modelos/building-g.glb +0 -0
  155. package/city/web/dist/modelos/building-h.glb +0 -0
  156. package/city/web/dist/sprites/building-a.png +0 -0
  157. package/city/web/dist/sprites/building-b.png +0 -0
  158. package/city/web/dist/sprites/building-c.png +0 -0
  159. package/city/web/dist/sprites/building-d.png +0 -0
  160. package/city/web/dist/sprites/building-e.png +0 -0
  161. package/city/web/dist/sprites/building-f.png +0 -0
  162. package/city/web/dist/sprites/building-g.png +0 -0
  163. package/city/web/dist/sprites/building-h.png +0 -0
  164. package/city/web/dist/sprites/building-i.png +0 -0
  165. package/city/web/dist/sprites/building-j.png +0 -0
  166. package/city/web/dist/sprites/building-k.png +0 -0
  167. package/city/web/dist/sprites/building-l.png +0 -0
  168. package/city/web/dist/sprites/building-m.png +0 -0
  169. package/city/web/dist/sprites/building-n.png +0 -0
  170. package/city/web/dist/sprites/building-skyscraper-a.png +0 -0
  171. package/city/web/dist/sprites/building-skyscraper-b.png +0 -0
  172. package/city/web/dist/sprites/building-skyscraper-c.png +0 -0
  173. package/city/web/dist/sprites/building-skyscraper-d.png +0 -0
  174. package/city/web/dist/sprites/building-skyscraper-e.png +0 -0
  175. package/city/web/dist/sprites/catalogo.json +47 -0
  176. package/city/web/dist/sprites/detail-awning-wide.png +0 -0
  177. package/city/web/dist/sprites/detail-awning.png +0 -0
  178. package/city/web/dist/sprites/detail-overhang-wide.png +0 -0
  179. package/city/web/dist/sprites/detail-overhang.png +0 -0
  180. package/city/web/dist/sprites/detail-parasol-a.png +0 -0
  181. package/city/web/dist/sprites/detail-parasol-b.png +0 -0
  182. package/city/web/dist/sprites/low-detail-building-a.png +0 -0
  183. package/city/web/dist/sprites/low-detail-building-b.png +0 -0
  184. package/city/web/dist/sprites/low-detail-building-c.png +0 -0
  185. package/city/web/dist/sprites/low-detail-building-d.png +0 -0
  186. package/city/web/dist/sprites/low-detail-building-e.png +0 -0
  187. package/city/web/dist/sprites/low-detail-building-f.png +0 -0
  188. package/city/web/dist/sprites/low-detail-building-g.png +0 -0
  189. package/city/web/dist/sprites/low-detail-building-h.png +0 -0
  190. package/city/web/dist/sprites/low-detail-building-i.png +0 -0
  191. package/city/web/dist/sprites/low-detail-building-j.png +0 -0
  192. package/city/web/dist/sprites/low-detail-building-k.png +0 -0
  193. package/city/web/dist/sprites/low-detail-building-l.png +0 -0
  194. package/city/web/dist/sprites/low-detail-building-m.png +0 -0
  195. package/city/web/dist/sprites/low-detail-building-n.png +0 -0
  196. package/city/web/dist/sprites/low-detail-building-wide-a.png +0 -0
  197. package/city/web/dist/sprites/low-detail-building-wide-b.png +0 -0
  198. package/city/web/dist/sprites/medidas.json +248 -0
  199. package/city/web/dist-hall/hall.js +264 -0
  200. package/city/web/index.html +294 -0
  201. package/city/web/package.json +18 -0
  202. package/city/web/sella.py +21 -0
  203. package/city/web/src/activity-actors.ts +47 -0
  204. package/city/web/src/activity.ts +172 -0
  205. package/city/web/src/ayuntamiento.ts +580 -0
  206. package/city/web/src/draw.ts +640 -0
  207. package/city/web/src/game-speech.ts +79 -0
  208. package/city/web/src/hall.ts +1867 -0
  209. package/city/web/src/main.ts +2225 -0
  210. package/city/web/src/oven.ts +124 -0
  211. package/city/web/src/people.ts +244 -0
  212. package/city/web/src/presencia.ts +193 -0
  213. package/city/web/src/puertas.ts +180 -0
  214. package/city/web/src/repo-roles.ts +59 -0
  215. package/city/worker/package.json +16 -0
  216. package/city/worker/schema.sql +117 -0
  217. package/city/worker/src/index.ts +702 -0
  218. package/city/worker/src/square.ts +218 -0
  219. package/city/worker/wrangler.toml +58 -0
  220. package/demo/ada.md +50 -0
  221. package/demo/bruno.md +62 -0
  222. package/demo/camila.md +56 -0
  223. package/demo/city/ada.md +40 -0
  224. package/demo/city/city.yml +8 -0
  225. package/demo/city/parcels.yml +15 -0
  226. package/demo/city/roads.json +4 -0
  227. package/demo/city/units.yml +10 -0
  228. package/demo/clinica/city.yml +8 -0
  229. package/demo/clinica/parcels.yml +15 -0
  230. package/demo/clinica/roads.json +4 -0
  231. package/demo/clinica/units.yml +9 -0
  232. package/demo/clinica/vera.md +46 -0
  233. package/demo/dante.md +54 -0
  234. package/demo/despacho/city.yml +8 -0
  235. package/demo/despacho/marta.md +46 -0
  236. package/demo/despacho/parcels.yml +15 -0
  237. package/demo/despacho/roads.json +4 -0
  238. package/demo/despacho/units.yml +9 -0
  239. package/demo/elsa.md +50 -0
  240. package/demo/farid.md +52 -0
  241. package/demo/greta.md +50 -0
  242. package/demo/hugo.md +49 -0
  243. package/demo/iris.md +49 -0
  244. package/demo/jonas.md +51 -0
  245. package/demo/kira.md +51 -0
  246. package/demo/luca.md +49 -0
  247. package/demo/parcels.yml +92 -0
  248. package/demo/seed.py +20 -0
  249. package/demo/show.py +161 -0
  250. package/demo/stories.py +824 -0
  251. package/demo/units.yml +33 -0
  252. package/docs/agents-first.md +99 -0
  253. package/docs/glossary.md +55 -0
  254. package/docs/map-live-layers.md +73 -0
  255. package/docs/security.md +231 -0
  256. package/docs/self-host.md +151 -0
  257. package/docs/testing.md +205 -0
  258. package/package.json +73 -0
  259. package/plugin/.claude-plugin/plugin.json +62 -0
  260. package/plugin/.mcp.json +15 -0
  261. package/plugin/channel/activity-cli.ts +16 -0
  262. package/plugin/channel/adapter-prompts.ts +113 -0
  263. package/plugin/channel/adapter.js +4292 -0
  264. package/plugin/channel/adapter.ts +133 -0
  265. package/plugin/channel/bus.js +20188 -0
  266. package/plugin/channel/bus.ts +131 -0
  267. package/plugin/channel/city-config.ts +125 -0
  268. package/plugin/channel/claude-channel.ts +58 -0
  269. package/plugin/channel/cli-args.ts +75 -0
  270. package/plugin/channel/client.js +4200 -0
  271. package/plugin/channel/client.ts +38 -0
  272. package/plugin/channel/committee/activity.ts +256 -0
  273. package/plugin/channel/committee/collection.ts +154 -0
  274. package/plugin/channel/committee/decision.ts +175 -0
  275. package/plugin/channel/committee/floor.ts +135 -0
  276. package/plugin/channel/committee/guards.ts +30 -0
  277. package/plugin/channel/committee/history.ts +38 -0
  278. package/plugin/channel/committee/render.ts +102 -0
  279. package/plugin/channel/committee/service.ts +72 -0
  280. package/plugin/channel/committee/storage.ts +92 -0
  281. package/plugin/channel/committee/types.ts +163 -0
  282. package/plugin/channel/committee/view.ts +63 -0
  283. package/plugin/channel/committee-cli.ts +109 -0
  284. package/plugin/channel/delivery-metrics.ts +61 -0
  285. package/plugin/channel/delivery-queue.ts +118 -0
  286. package/plugin/channel/hub/activity-controller.ts +72 -0
  287. package/plugin/channel/hub/activity-feed.ts +169 -0
  288. package/plugin/channel/hub/committee-controller.ts +60 -0
  289. package/plugin/channel/hub/connections.ts +48 -0
  290. package/plugin/channel/hub/diagnostics.ts +67 -0
  291. package/plugin/channel/hub/envelope-validity.ts +109 -0
  292. package/plugin/channel/hub/envelopes.ts +66 -0
  293. package/plugin/channel/hub/lifecycle.ts +91 -0
  294. package/plugin/channel/hub/local-roads.ts +89 -0
  295. package/plugin/channel/hub/remote-roads.ts +165 -0
  296. package/plugin/channel/hub/road-controller.ts +99 -0
  297. package/plugin/channel/hub-client.ts +149 -0
  298. package/plugin/channel/local-hub.js +5995 -0
  299. package/plugin/channel/local-hub.ts +349 -0
  300. package/plugin/channel/map-reporter.ts +48 -0
  301. package/plugin/channel/package-lock.json +1731 -0
  302. package/plugin/channel/package.json +19 -0
  303. package/plugin/channel/protocol.ts +98 -0
  304. package/plugin/channel/road-cli.ts +18 -0
  305. package/plugin/channel/run.sh +15 -0
  306. package/plugin/channel/runtime/claude.ts +458 -0
  307. package/plugin/channel/runtime/codex-config.ts +77 -0
  308. package/plugin/channel/runtime/codex.ts +669 -0
  309. package/plugin/channel/runtime/command.ts +62 -0
  310. package/plugin/channel/runtime/factory.ts +15 -0
  311. package/plugin/channel/runtime/json-rpc.ts +154 -0
  312. package/plugin/channel/runtime/kimi.ts +277 -0
  313. package/plugin/channel/runtime/opencode.ts +248 -0
  314. package/plugin/channel/runtime/process.ts +84 -0
  315. package/plugin/channel/runtime/types.ts +45 -0
  316. package/plugin/channel/runtime-files.ts +73 -0
  317. package/plugin/channel/runtime-gateway.js +6396 -0
  318. package/plugin/channel/runtime-gateway.ts +358 -0
  319. package/plugin/channel/runtime-metrics.ts +52 -0
  320. package/plugin/channel/runtime-subscription.ts +180 -0
  321. package/plugin/channel/terminal-delivery.ts +131 -0
  322. package/plugin/channel/untrusted.ts +60 -0
  323. package/plugin/commands/committee.md +31 -0
  324. package/plugin/commands/exit.md +32 -0
  325. package/plugin/commands/goals.md +20 -0
  326. package/plugin/commands/join.md +18 -0
  327. package/plugin/commands/notice.md +20 -0
  328. package/plugin/commands/propose.md +19 -0
  329. package/plugin/commands/round.md +17 -0
  330. package/plugin/commands/session.md +22 -0
  331. package/plugin/commands/settings.md +25 -0
  332. package/plugin/commands/setup.md +21 -0
  333. package/plugin/commands/team.md +23 -0
  334. package/plugin/domains/custom.md +27 -0
  335. package/plugin/domains/finance.md +31 -0
  336. package/plugin/domains/healthcare.md +34 -0
  337. package/plugin/domains/legal.md +31 -0
  338. package/plugin/domains/marketing.md +33 -0
  339. package/plugin/domains/operations.md +31 -0
  340. package/plugin/domains/research.md +32 -0
  341. package/plugin/domains/sales.md +30 -0
  342. package/plugin/domains/software.md +37 -0
  343. package/plugin/hooks/activity.sh +6 -0
  344. package/plugin/hooks/digging.sh +68 -0
  345. package/plugin/hooks/growth.sh +42 -0
  346. package/plugin/hooks/hooks.json +106 -0
  347. package/plugin/hooks/notice-on-pr.sh +35 -0
  348. package/plugin/hooks/notice-on-stop.sh +80 -0
  349. package/plugin/hooks/notice-pending.sh +58 -0
  350. package/plugin/hooks/solo-en-ciudad.sh +23 -0
  351. package/plugin/hooks/tokens.sh +47 -0
  352. package/plugin/roles/examples/account-executive.md +25 -0
  353. package/plugin/roles/examples/ai-manager.md +34 -0
  354. package/plugin/roles/examples/associate.md +24 -0
  355. package/plugin/roles/examples/brand-lead.md +20 -0
  356. package/plugin/roles/examples/cfo.md +20 -0
  357. package/plugin/roles/examples/city-lead.md +25 -0
  358. package/plugin/roles/examples/clinical-director.md +26 -0
  359. package/plugin/roles/examples/clinical-ops.md +25 -0
  360. package/plugin/roles/examples/clinician.md +25 -0
  361. package/plugin/roles/examples/compliance.md +27 -0
  362. package/plugin/roles/examples/content.md +24 -0
  363. package/plugin/roles/examples/controller.md +27 -0
  364. package/plugin/roles/examples/cpto.md +41 -0
  365. package/plugin/roles/examples/customer-success.md +25 -0
  366. package/plugin/roles/examples/data-engineer.md +37 -0
  367. package/plugin/roles/examples/data.md +60 -0
  368. package/plugin/roles/examples/dev.md +37 -0
  369. package/plugin/roles/examples/devops.md +39 -0
  370. package/plugin/roles/examples/enablement.md +24 -0
  371. package/plugin/roles/examples/ethics.md +24 -0
  372. package/plugin/roles/examples/fin-analytics.md +27 -0
  373. package/plugin/roles/examples/health-compliance.md +25 -0
  374. package/plugin/roles/examples/health-data.md +26 -0
  375. package/plugin/roles/examples/knowledge.md +25 -0
  376. package/plugin/roles/examples/lifecycle.md +26 -0
  377. package/plugin/roles/examples/llm-engineer.md +34 -0
  378. package/plugin/roles/examples/managing-partner.md +20 -0
  379. package/plugin/roles/examples/methods.md +23 -0
  380. package/plugin/roles/examples/operations-lead.md +23 -0
  381. package/plugin/roles/examples/ops.md +24 -0
  382. package/plugin/roles/examples/patient-safety.md +26 -0
  383. package/plugin/roles/examples/performance.md +27 -0
  384. package/plugin/roles/examples/po.md +36 -0
  385. package/plugin/roles/examples/process-owner.md +23 -0
  386. package/plugin/roles/examples/product-design.md +39 -0
  387. package/plugin/roles/examples/program-manager.md +24 -0
  388. package/plugin/roles/examples/quality.md +25 -0
  389. package/plugin/roles/examples/research-director.md +24 -0
  390. package/plugin/roles/examples/research-ops.md +25 -0
  391. package/plugin/roles/examples/researcher.md +25 -0
  392. package/plugin/roles/examples/revenue-lead.md +25 -0
  393. package/plugin/roles/examples/revops.md +26 -0
  394. package/plugin/roles/examples/seo.md +27 -0
  395. package/plugin/roles/examples/specialist.md +24 -0
  396. package/plugin/scripts/admision.py +165 -0
  397. package/plugin/scripts/apaga.py +232 -0
  398. package/plugin/scripts/avatar.py +211 -0
  399. package/plugin/scripts/broker.py +531 -0
  400. package/plugin/scripts/cage.py +252 -0
  401. package/plugin/scripts/capabilities.py +197 -0
  402. package/plugin/scripts/card.py +312 -0
  403. package/plugin/scripts/cities.py +520 -0
  404. package/plugin/scripts/city-env.sh +90 -0
  405. package/plugin/scripts/city-runtime.sh +87 -0
  406. package/plugin/scripts/city-session.sh +526 -0
  407. package/plugin/scripts/city_env.py +67 -0
  408. package/plugin/scripts/crecimiento.py +140 -0
  409. package/plugin/scripts/deliberations.py +48 -0
  410. package/plugin/scripts/doctor.py +172 -0
  411. package/plugin/scripts/domains.py +201 -0
  412. package/plugin/scripts/evidencia.py +64 -0
  413. package/plugin/scripts/find-repos.sh +111 -0
  414. package/plugin/scripts/gh.py +159 -0
  415. package/plugin/scripts/hall_protocol.py +147 -0
  416. package/plugin/scripts/hook_activity.py +139 -0
  417. package/plugin/scripts/launch.py +94 -0
  418. package/plugin/scripts/logs.py +98 -0
  419. package/plugin/scripts/pairing.py +185 -0
  420. package/plugin/scripts/parcels.py +132 -0
  421. package/plugin/scripts/read-card.py +51 -0
  422. package/plugin/scripts/report.py +201 -0
  423. package/plugin/scripts/reset.py +180 -0
  424. package/plugin/scripts/roads.py +230 -0
  425. package/plugin/scripts/roles.py +274 -0
  426. package/plugin/scripts/runtime_log.py +69 -0
  427. package/plugin/scripts/runtime_processes.py +132 -0
  428. package/plugin/scripts/rutas.py +83 -0
  429. package/plugin/scripts/seat.py +1349 -0
  430. package/plugin/scripts/tokens.py +194 -0
  431. package/plugin/scripts/trust-repos.py +59 -0
  432. package/plugin/scripts/ui.py +280 -0
  433. package/plugin/scripts/units.py +80 -0
  434. package/plugin/scripts/workspace.py +364 -0
  435. package/plugin/skills/city/SKILL.md +191 -0
  436. package/templates/blank.md +39 -0
  437. package/templates/finance.md +44 -0
  438. package/templates/legal.md +45 -0
  439. package/templates/marketing.md +48 -0
  440. package/templates/product.md +45 -0
@@ -0,0 +1,1731 @@
1
+ {
2
+ "name": "city-channel",
3
+ "lockfileVersion": 3,
4
+ "requires": true,
5
+ "packages": {
6
+ "": {
7
+ "name": "city-channel",
8
+ "dependencies": {
9
+ "@modelcontextprotocol/sdk": "^1.30.0",
10
+ "ws": "^8.18.0"
11
+ },
12
+ "devDependencies": {
13
+ "@types/node": "^22.0.0",
14
+ "@types/ws": "^8.18.0",
15
+ "esbuild": "^0.24.0",
16
+ "typescript": "^5.7.0"
17
+ }
18
+ },
19
+ "node_modules/@esbuild/aix-ppc64": {
20
+ "version": "0.24.2",
21
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz",
22
+ "integrity": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==",
23
+ "cpu": [
24
+ "ppc64"
25
+ ],
26
+ "dev": true,
27
+ "license": "MIT",
28
+ "optional": true,
29
+ "os": [
30
+ "aix"
31
+ ],
32
+ "engines": {
33
+ "node": ">=18"
34
+ }
35
+ },
36
+ "node_modules/@esbuild/android-arm": {
37
+ "version": "0.24.2",
38
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz",
39
+ "integrity": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==",
40
+ "cpu": [
41
+ "arm"
42
+ ],
43
+ "dev": true,
44
+ "license": "MIT",
45
+ "optional": true,
46
+ "os": [
47
+ "android"
48
+ ],
49
+ "engines": {
50
+ "node": ">=18"
51
+ }
52
+ },
53
+ "node_modules/@esbuild/android-arm64": {
54
+ "version": "0.24.2",
55
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz",
56
+ "integrity": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==",
57
+ "cpu": [
58
+ "arm64"
59
+ ],
60
+ "dev": true,
61
+ "license": "MIT",
62
+ "optional": true,
63
+ "os": [
64
+ "android"
65
+ ],
66
+ "engines": {
67
+ "node": ">=18"
68
+ }
69
+ },
70
+ "node_modules/@esbuild/android-x64": {
71
+ "version": "0.24.2",
72
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz",
73
+ "integrity": "sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==",
74
+ "cpu": [
75
+ "x64"
76
+ ],
77
+ "dev": true,
78
+ "license": "MIT",
79
+ "optional": true,
80
+ "os": [
81
+ "android"
82
+ ],
83
+ "engines": {
84
+ "node": ">=18"
85
+ }
86
+ },
87
+ "node_modules/@esbuild/darwin-arm64": {
88
+ "version": "0.24.2",
89
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz",
90
+ "integrity": "sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==",
91
+ "cpu": [
92
+ "arm64"
93
+ ],
94
+ "dev": true,
95
+ "license": "MIT",
96
+ "optional": true,
97
+ "os": [
98
+ "darwin"
99
+ ],
100
+ "engines": {
101
+ "node": ">=18"
102
+ }
103
+ },
104
+ "node_modules/@esbuild/darwin-x64": {
105
+ "version": "0.24.2",
106
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz",
107
+ "integrity": "sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==",
108
+ "cpu": [
109
+ "x64"
110
+ ],
111
+ "dev": true,
112
+ "license": "MIT",
113
+ "optional": true,
114
+ "os": [
115
+ "darwin"
116
+ ],
117
+ "engines": {
118
+ "node": ">=18"
119
+ }
120
+ },
121
+ "node_modules/@esbuild/freebsd-arm64": {
122
+ "version": "0.24.2",
123
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz",
124
+ "integrity": "sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==",
125
+ "cpu": [
126
+ "arm64"
127
+ ],
128
+ "dev": true,
129
+ "license": "MIT",
130
+ "optional": true,
131
+ "os": [
132
+ "freebsd"
133
+ ],
134
+ "engines": {
135
+ "node": ">=18"
136
+ }
137
+ },
138
+ "node_modules/@esbuild/freebsd-x64": {
139
+ "version": "0.24.2",
140
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz",
141
+ "integrity": "sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==",
142
+ "cpu": [
143
+ "x64"
144
+ ],
145
+ "dev": true,
146
+ "license": "MIT",
147
+ "optional": true,
148
+ "os": [
149
+ "freebsd"
150
+ ],
151
+ "engines": {
152
+ "node": ">=18"
153
+ }
154
+ },
155
+ "node_modules/@esbuild/linux-arm": {
156
+ "version": "0.24.2",
157
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz",
158
+ "integrity": "sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==",
159
+ "cpu": [
160
+ "arm"
161
+ ],
162
+ "dev": true,
163
+ "license": "MIT",
164
+ "optional": true,
165
+ "os": [
166
+ "linux"
167
+ ],
168
+ "engines": {
169
+ "node": ">=18"
170
+ }
171
+ },
172
+ "node_modules/@esbuild/linux-arm64": {
173
+ "version": "0.24.2",
174
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz",
175
+ "integrity": "sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==",
176
+ "cpu": [
177
+ "arm64"
178
+ ],
179
+ "dev": true,
180
+ "license": "MIT",
181
+ "optional": true,
182
+ "os": [
183
+ "linux"
184
+ ],
185
+ "engines": {
186
+ "node": ">=18"
187
+ }
188
+ },
189
+ "node_modules/@esbuild/linux-ia32": {
190
+ "version": "0.24.2",
191
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz",
192
+ "integrity": "sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==",
193
+ "cpu": [
194
+ "ia32"
195
+ ],
196
+ "dev": true,
197
+ "license": "MIT",
198
+ "optional": true,
199
+ "os": [
200
+ "linux"
201
+ ],
202
+ "engines": {
203
+ "node": ">=18"
204
+ }
205
+ },
206
+ "node_modules/@esbuild/linux-loong64": {
207
+ "version": "0.24.2",
208
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz",
209
+ "integrity": "sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==",
210
+ "cpu": [
211
+ "loong64"
212
+ ],
213
+ "dev": true,
214
+ "license": "MIT",
215
+ "optional": true,
216
+ "os": [
217
+ "linux"
218
+ ],
219
+ "engines": {
220
+ "node": ">=18"
221
+ }
222
+ },
223
+ "node_modules/@esbuild/linux-mips64el": {
224
+ "version": "0.24.2",
225
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz",
226
+ "integrity": "sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==",
227
+ "cpu": [
228
+ "mips64el"
229
+ ],
230
+ "dev": true,
231
+ "license": "MIT",
232
+ "optional": true,
233
+ "os": [
234
+ "linux"
235
+ ],
236
+ "engines": {
237
+ "node": ">=18"
238
+ }
239
+ },
240
+ "node_modules/@esbuild/linux-ppc64": {
241
+ "version": "0.24.2",
242
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz",
243
+ "integrity": "sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==",
244
+ "cpu": [
245
+ "ppc64"
246
+ ],
247
+ "dev": true,
248
+ "license": "MIT",
249
+ "optional": true,
250
+ "os": [
251
+ "linux"
252
+ ],
253
+ "engines": {
254
+ "node": ">=18"
255
+ }
256
+ },
257
+ "node_modules/@esbuild/linux-riscv64": {
258
+ "version": "0.24.2",
259
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz",
260
+ "integrity": "sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==",
261
+ "cpu": [
262
+ "riscv64"
263
+ ],
264
+ "dev": true,
265
+ "license": "MIT",
266
+ "optional": true,
267
+ "os": [
268
+ "linux"
269
+ ],
270
+ "engines": {
271
+ "node": ">=18"
272
+ }
273
+ },
274
+ "node_modules/@esbuild/linux-s390x": {
275
+ "version": "0.24.2",
276
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz",
277
+ "integrity": "sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==",
278
+ "cpu": [
279
+ "s390x"
280
+ ],
281
+ "dev": true,
282
+ "license": "MIT",
283
+ "optional": true,
284
+ "os": [
285
+ "linux"
286
+ ],
287
+ "engines": {
288
+ "node": ">=18"
289
+ }
290
+ },
291
+ "node_modules/@esbuild/linux-x64": {
292
+ "version": "0.24.2",
293
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz",
294
+ "integrity": "sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==",
295
+ "cpu": [
296
+ "x64"
297
+ ],
298
+ "dev": true,
299
+ "license": "MIT",
300
+ "optional": true,
301
+ "os": [
302
+ "linux"
303
+ ],
304
+ "engines": {
305
+ "node": ">=18"
306
+ }
307
+ },
308
+ "node_modules/@esbuild/netbsd-arm64": {
309
+ "version": "0.24.2",
310
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz",
311
+ "integrity": "sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==",
312
+ "cpu": [
313
+ "arm64"
314
+ ],
315
+ "dev": true,
316
+ "license": "MIT",
317
+ "optional": true,
318
+ "os": [
319
+ "netbsd"
320
+ ],
321
+ "engines": {
322
+ "node": ">=18"
323
+ }
324
+ },
325
+ "node_modules/@esbuild/netbsd-x64": {
326
+ "version": "0.24.2",
327
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz",
328
+ "integrity": "sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==",
329
+ "cpu": [
330
+ "x64"
331
+ ],
332
+ "dev": true,
333
+ "license": "MIT",
334
+ "optional": true,
335
+ "os": [
336
+ "netbsd"
337
+ ],
338
+ "engines": {
339
+ "node": ">=18"
340
+ }
341
+ },
342
+ "node_modules/@esbuild/openbsd-arm64": {
343
+ "version": "0.24.2",
344
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz",
345
+ "integrity": "sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==",
346
+ "cpu": [
347
+ "arm64"
348
+ ],
349
+ "dev": true,
350
+ "license": "MIT",
351
+ "optional": true,
352
+ "os": [
353
+ "openbsd"
354
+ ],
355
+ "engines": {
356
+ "node": ">=18"
357
+ }
358
+ },
359
+ "node_modules/@esbuild/openbsd-x64": {
360
+ "version": "0.24.2",
361
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz",
362
+ "integrity": "sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==",
363
+ "cpu": [
364
+ "x64"
365
+ ],
366
+ "dev": true,
367
+ "license": "MIT",
368
+ "optional": true,
369
+ "os": [
370
+ "openbsd"
371
+ ],
372
+ "engines": {
373
+ "node": ">=18"
374
+ }
375
+ },
376
+ "node_modules/@esbuild/sunos-x64": {
377
+ "version": "0.24.2",
378
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz",
379
+ "integrity": "sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==",
380
+ "cpu": [
381
+ "x64"
382
+ ],
383
+ "dev": true,
384
+ "license": "MIT",
385
+ "optional": true,
386
+ "os": [
387
+ "sunos"
388
+ ],
389
+ "engines": {
390
+ "node": ">=18"
391
+ }
392
+ },
393
+ "node_modules/@esbuild/win32-arm64": {
394
+ "version": "0.24.2",
395
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz",
396
+ "integrity": "sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==",
397
+ "cpu": [
398
+ "arm64"
399
+ ],
400
+ "dev": true,
401
+ "license": "MIT",
402
+ "optional": true,
403
+ "os": [
404
+ "win32"
405
+ ],
406
+ "engines": {
407
+ "node": ">=18"
408
+ }
409
+ },
410
+ "node_modules/@esbuild/win32-ia32": {
411
+ "version": "0.24.2",
412
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz",
413
+ "integrity": "sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==",
414
+ "cpu": [
415
+ "ia32"
416
+ ],
417
+ "dev": true,
418
+ "license": "MIT",
419
+ "optional": true,
420
+ "os": [
421
+ "win32"
422
+ ],
423
+ "engines": {
424
+ "node": ">=18"
425
+ }
426
+ },
427
+ "node_modules/@esbuild/win32-x64": {
428
+ "version": "0.24.2",
429
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz",
430
+ "integrity": "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==",
431
+ "cpu": [
432
+ "x64"
433
+ ],
434
+ "dev": true,
435
+ "license": "MIT",
436
+ "optional": true,
437
+ "os": [
438
+ "win32"
439
+ ],
440
+ "engines": {
441
+ "node": ">=18"
442
+ }
443
+ },
444
+ "node_modules/@hono/node-server": {
445
+ "version": "2.1.1",
446
+ "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-2.1.1.tgz",
447
+ "integrity": "sha512-ELuehkj5VCBdgEw9zs+ivkKwyzzUCSQuE96YmiPvn1ECBoZCczbFXJLeEGMTYjphP6gydh4pHMqEYPVMYUVgQg==",
448
+ "license": "MIT",
449
+ "engines": {
450
+ "node": ">=20"
451
+ },
452
+ "peerDependencies": {
453
+ "hono": "^4"
454
+ }
455
+ },
456
+ "node_modules/@modelcontextprotocol/sdk": {
457
+ "version": "1.30.0",
458
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.30.0.tgz",
459
+ "integrity": "sha512-xKd8OIzlqNzcqcNumGAa6g+PW2kjD5vrpcKOnfldAUPP3j7lnqMPwlTXQm8gF+UwH72z0lqaRbjr9hqGz0eITA==",
460
+ "license": "MIT",
461
+ "dependencies": {
462
+ "@hono/node-server": "^1.19.9 || ^2.0.5",
463
+ "ajv": "^8.17.1",
464
+ "ajv-formats": "^3.0.1",
465
+ "content-type": "^1.0.5",
466
+ "cors": "^2.8.5",
467
+ "cross-spawn": "^7.0.5",
468
+ "eventsource": "^3.0.2",
469
+ "eventsource-parser": "^3.0.0",
470
+ "express": "^5.2.1",
471
+ "express-rate-limit": "^8.2.1",
472
+ "hono": "^4.11.4",
473
+ "jose": "^6.1.3",
474
+ "json-schema-typed": "^8.0.2",
475
+ "pkce-challenge": "^5.0.0",
476
+ "raw-body": "^3.0.0",
477
+ "zod": "^3.25 || ^4.0",
478
+ "zod-to-json-schema": "^3.25.1"
479
+ },
480
+ "engines": {
481
+ "node": ">=18"
482
+ },
483
+ "peerDependencies": {
484
+ "@cfworker/json-schema": "^4.1.1",
485
+ "zod": "^3.25 || ^4.0"
486
+ },
487
+ "peerDependenciesMeta": {
488
+ "@cfworker/json-schema": {
489
+ "optional": true
490
+ },
491
+ "zod": {
492
+ "optional": false
493
+ }
494
+ }
495
+ },
496
+ "node_modules/@types/node": {
497
+ "version": "22.20.1",
498
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.20.1.tgz",
499
+ "integrity": "sha512-EANqOCF9QFyra+4pfxUcX9STKJpCLjMbObVzljIJomAWSnuSIEAvyzEU53GaajbXJEgdh0iEcPL+DGvpUd4k1Q==",
500
+ "dev": true,
501
+ "license": "MIT",
502
+ "dependencies": {
503
+ "undici-types": "~6.21.0"
504
+ }
505
+ },
506
+ "node_modules/@types/ws": {
507
+ "version": "8.18.1",
508
+ "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz",
509
+ "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==",
510
+ "dev": true,
511
+ "license": "MIT",
512
+ "dependencies": {
513
+ "@types/node": "*"
514
+ }
515
+ },
516
+ "node_modules/accepts": {
517
+ "version": "2.0.0",
518
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz",
519
+ "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==",
520
+ "license": "MIT",
521
+ "dependencies": {
522
+ "mime-types": "^3.0.0",
523
+ "negotiator": "^1.0.0"
524
+ },
525
+ "engines": {
526
+ "node": ">= 0.6"
527
+ }
528
+ },
529
+ "node_modules/ajv": {
530
+ "version": "8.20.0",
531
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz",
532
+ "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==",
533
+ "license": "MIT",
534
+ "dependencies": {
535
+ "fast-deep-equal": "^3.1.3",
536
+ "fast-uri": "^3.0.1",
537
+ "json-schema-traverse": "^1.0.0",
538
+ "require-from-string": "^2.0.2"
539
+ },
540
+ "funding": {
541
+ "type": "github",
542
+ "url": "https://github.com/sponsors/epoberezkin"
543
+ }
544
+ },
545
+ "node_modules/ajv-formats": {
546
+ "version": "3.0.1",
547
+ "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz",
548
+ "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==",
549
+ "license": "MIT",
550
+ "dependencies": {
551
+ "ajv": "^8.0.0"
552
+ },
553
+ "peerDependencies": {
554
+ "ajv": "^8.0.0"
555
+ },
556
+ "peerDependenciesMeta": {
557
+ "ajv": {
558
+ "optional": true
559
+ }
560
+ }
561
+ },
562
+ "node_modules/body-parser": {
563
+ "version": "2.3.0",
564
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.3.0.tgz",
565
+ "integrity": "sha512-2cGmJupaNgg+QUwVLAucDuWuoMZ6EX9iHDRswZ5lsNYEmwPaRknMPCLZz07yTzVq/83p4o/wzbDZbBrTvGGTIw==",
566
+ "license": "MIT",
567
+ "dependencies": {
568
+ "bytes": "^3.1.2",
569
+ "content-type": "^2.0.0",
570
+ "debug": "^4.4.3",
571
+ "http-errors": "^2.0.1",
572
+ "iconv-lite": "^0.7.2",
573
+ "on-finished": "^2.4.1",
574
+ "qs": "^6.15.2",
575
+ "raw-body": "^3.0.2",
576
+ "type-is": "^2.1.0"
577
+ },
578
+ "engines": {
579
+ "node": ">=18"
580
+ },
581
+ "funding": {
582
+ "type": "opencollective",
583
+ "url": "https://opencollective.com/express"
584
+ }
585
+ },
586
+ "node_modules/body-parser/node_modules/content-type": {
587
+ "version": "2.1.0",
588
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz",
589
+ "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==",
590
+ "license": "MIT",
591
+ "engines": {
592
+ "node": ">=18"
593
+ },
594
+ "funding": {
595
+ "type": "opencollective",
596
+ "url": "https://opencollective.com/express"
597
+ }
598
+ },
599
+ "node_modules/bytes": {
600
+ "version": "3.1.2",
601
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
602
+ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
603
+ "license": "MIT",
604
+ "engines": {
605
+ "node": ">= 0.8"
606
+ }
607
+ },
608
+ "node_modules/call-bind-apply-helpers": {
609
+ "version": "1.0.2",
610
+ "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
611
+ "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
612
+ "license": "MIT",
613
+ "dependencies": {
614
+ "es-errors": "^1.3.0",
615
+ "function-bind": "^1.1.2"
616
+ },
617
+ "engines": {
618
+ "node": ">= 0.4"
619
+ }
620
+ },
621
+ "node_modules/call-bound": {
622
+ "version": "1.0.4",
623
+ "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
624
+ "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
625
+ "license": "MIT",
626
+ "dependencies": {
627
+ "call-bind-apply-helpers": "^1.0.2",
628
+ "get-intrinsic": "^1.3.0"
629
+ },
630
+ "engines": {
631
+ "node": ">= 0.4"
632
+ },
633
+ "funding": {
634
+ "url": "https://github.com/sponsors/ljharb"
635
+ }
636
+ },
637
+ "node_modules/content-disposition": {
638
+ "version": "1.1.0",
639
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.1.0.tgz",
640
+ "integrity": "sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g==",
641
+ "license": "MIT",
642
+ "engines": {
643
+ "node": ">=18"
644
+ },
645
+ "funding": {
646
+ "type": "opencollective",
647
+ "url": "https://opencollective.com/express"
648
+ }
649
+ },
650
+ "node_modules/content-type": {
651
+ "version": "1.0.5",
652
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
653
+ "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
654
+ "license": "MIT",
655
+ "engines": {
656
+ "node": ">= 0.6"
657
+ }
658
+ },
659
+ "node_modules/cookie": {
660
+ "version": "0.7.2",
661
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz",
662
+ "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==",
663
+ "license": "MIT",
664
+ "engines": {
665
+ "node": ">= 0.6"
666
+ }
667
+ },
668
+ "node_modules/cookie-signature": {
669
+ "version": "1.2.2",
670
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz",
671
+ "integrity": "sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==",
672
+ "license": "MIT",
673
+ "engines": {
674
+ "node": ">=6.6.0"
675
+ }
676
+ },
677
+ "node_modules/cors": {
678
+ "version": "2.8.6",
679
+ "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.6.tgz",
680
+ "integrity": "sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==",
681
+ "license": "MIT",
682
+ "dependencies": {
683
+ "object-assign": "^4",
684
+ "vary": "^1"
685
+ },
686
+ "engines": {
687
+ "node": ">= 0.10"
688
+ },
689
+ "funding": {
690
+ "type": "opencollective",
691
+ "url": "https://opencollective.com/express"
692
+ }
693
+ },
694
+ "node_modules/cross-spawn": {
695
+ "version": "7.0.6",
696
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
697
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
698
+ "license": "MIT",
699
+ "dependencies": {
700
+ "path-key": "^3.1.0",
701
+ "shebang-command": "^2.0.0",
702
+ "which": "^2.0.1"
703
+ },
704
+ "engines": {
705
+ "node": ">= 8"
706
+ }
707
+ },
708
+ "node_modules/debug": {
709
+ "version": "4.4.3",
710
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
711
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
712
+ "license": "MIT",
713
+ "dependencies": {
714
+ "ms": "^2.1.3"
715
+ },
716
+ "engines": {
717
+ "node": ">=6.0"
718
+ },
719
+ "peerDependenciesMeta": {
720
+ "supports-color": {
721
+ "optional": true
722
+ }
723
+ }
724
+ },
725
+ "node_modules/depd": {
726
+ "version": "2.0.0",
727
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
728
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
729
+ "license": "MIT",
730
+ "engines": {
731
+ "node": ">= 0.8"
732
+ }
733
+ },
734
+ "node_modules/dunder-proto": {
735
+ "version": "1.0.1",
736
+ "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
737
+ "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
738
+ "license": "MIT",
739
+ "dependencies": {
740
+ "call-bind-apply-helpers": "^1.0.1",
741
+ "es-errors": "^1.3.0",
742
+ "gopd": "^1.2.0"
743
+ },
744
+ "engines": {
745
+ "node": ">= 0.4"
746
+ }
747
+ },
748
+ "node_modules/ee-first": {
749
+ "version": "1.1.1",
750
+ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
751
+ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
752
+ "license": "MIT"
753
+ },
754
+ "node_modules/encodeurl": {
755
+ "version": "2.0.0",
756
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
757
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
758
+ "license": "MIT",
759
+ "engines": {
760
+ "node": ">= 0.8"
761
+ }
762
+ },
763
+ "node_modules/es-define-property": {
764
+ "version": "1.0.1",
765
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
766
+ "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
767
+ "license": "MIT",
768
+ "engines": {
769
+ "node": ">= 0.4"
770
+ }
771
+ },
772
+ "node_modules/es-errors": {
773
+ "version": "1.3.0",
774
+ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
775
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
776
+ "license": "MIT",
777
+ "engines": {
778
+ "node": ">= 0.4"
779
+ }
780
+ },
781
+ "node_modules/es-object-atoms": {
782
+ "version": "1.1.2",
783
+ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz",
784
+ "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==",
785
+ "license": "MIT",
786
+ "dependencies": {
787
+ "es-errors": "^1.3.0"
788
+ },
789
+ "engines": {
790
+ "node": ">= 0.4"
791
+ }
792
+ },
793
+ "node_modules/esbuild": {
794
+ "version": "0.24.2",
795
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz",
796
+ "integrity": "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==",
797
+ "dev": true,
798
+ "hasInstallScript": true,
799
+ "license": "MIT",
800
+ "bin": {
801
+ "esbuild": "bin/esbuild"
802
+ },
803
+ "engines": {
804
+ "node": ">=18"
805
+ },
806
+ "optionalDependencies": {
807
+ "@esbuild/aix-ppc64": "0.24.2",
808
+ "@esbuild/android-arm": "0.24.2",
809
+ "@esbuild/android-arm64": "0.24.2",
810
+ "@esbuild/android-x64": "0.24.2",
811
+ "@esbuild/darwin-arm64": "0.24.2",
812
+ "@esbuild/darwin-x64": "0.24.2",
813
+ "@esbuild/freebsd-arm64": "0.24.2",
814
+ "@esbuild/freebsd-x64": "0.24.2",
815
+ "@esbuild/linux-arm": "0.24.2",
816
+ "@esbuild/linux-arm64": "0.24.2",
817
+ "@esbuild/linux-ia32": "0.24.2",
818
+ "@esbuild/linux-loong64": "0.24.2",
819
+ "@esbuild/linux-mips64el": "0.24.2",
820
+ "@esbuild/linux-ppc64": "0.24.2",
821
+ "@esbuild/linux-riscv64": "0.24.2",
822
+ "@esbuild/linux-s390x": "0.24.2",
823
+ "@esbuild/linux-x64": "0.24.2",
824
+ "@esbuild/netbsd-arm64": "0.24.2",
825
+ "@esbuild/netbsd-x64": "0.24.2",
826
+ "@esbuild/openbsd-arm64": "0.24.2",
827
+ "@esbuild/openbsd-x64": "0.24.2",
828
+ "@esbuild/sunos-x64": "0.24.2",
829
+ "@esbuild/win32-arm64": "0.24.2",
830
+ "@esbuild/win32-ia32": "0.24.2",
831
+ "@esbuild/win32-x64": "0.24.2"
832
+ }
833
+ },
834
+ "node_modules/escape-html": {
835
+ "version": "1.0.3",
836
+ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
837
+ "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==",
838
+ "license": "MIT"
839
+ },
840
+ "node_modules/etag": {
841
+ "version": "1.8.1",
842
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
843
+ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
844
+ "license": "MIT",
845
+ "engines": {
846
+ "node": ">= 0.6"
847
+ }
848
+ },
849
+ "node_modules/eventsource": {
850
+ "version": "3.0.7",
851
+ "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz",
852
+ "integrity": "sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==",
853
+ "license": "MIT",
854
+ "dependencies": {
855
+ "eventsource-parser": "^3.0.1"
856
+ },
857
+ "engines": {
858
+ "node": ">=18.0.0"
859
+ }
860
+ },
861
+ "node_modules/eventsource-parser": {
862
+ "version": "3.1.1",
863
+ "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.1.1.tgz",
864
+ "integrity": "sha512-EKN1vKAMcZ8MlYMpaNuxN6R9yakzH6uajHcHVTqWJzvu5pWw9DyhbP35HH8MVBQ+dZjAfDxk+A8NiR9KWaXiyQ==",
865
+ "license": "MIT",
866
+ "engines": {
867
+ "node": ">=18.0.0"
868
+ }
869
+ },
870
+ "node_modules/express": {
871
+ "version": "5.2.1",
872
+ "resolved": "https://registry.npmjs.org/express/-/express-5.2.1.tgz",
873
+ "integrity": "sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==",
874
+ "license": "MIT",
875
+ "dependencies": {
876
+ "accepts": "^2.0.0",
877
+ "body-parser": "^2.2.1",
878
+ "content-disposition": "^1.0.0",
879
+ "content-type": "^1.0.5",
880
+ "cookie": "^0.7.1",
881
+ "cookie-signature": "^1.2.1",
882
+ "debug": "^4.4.0",
883
+ "depd": "^2.0.0",
884
+ "encodeurl": "^2.0.0",
885
+ "escape-html": "^1.0.3",
886
+ "etag": "^1.8.1",
887
+ "finalhandler": "^2.1.0",
888
+ "fresh": "^2.0.0",
889
+ "http-errors": "^2.0.0",
890
+ "merge-descriptors": "^2.0.0",
891
+ "mime-types": "^3.0.0",
892
+ "on-finished": "^2.4.1",
893
+ "once": "^1.4.0",
894
+ "parseurl": "^1.3.3",
895
+ "proxy-addr": "^2.0.7",
896
+ "qs": "^6.14.0",
897
+ "range-parser": "^1.2.1",
898
+ "router": "^2.2.0",
899
+ "send": "^1.1.0",
900
+ "serve-static": "^2.2.0",
901
+ "statuses": "^2.0.1",
902
+ "type-is": "^2.0.1",
903
+ "vary": "^1.1.2"
904
+ },
905
+ "engines": {
906
+ "node": ">= 18"
907
+ },
908
+ "funding": {
909
+ "type": "opencollective",
910
+ "url": "https://opencollective.com/express"
911
+ }
912
+ },
913
+ "node_modules/express-rate-limit": {
914
+ "version": "8.6.2",
915
+ "resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-8.6.2.tgz",
916
+ "integrity": "sha512-YH4ru+eOJxQABscKFfRCy9R7x9QFGdezclVMwwgFFndzS2Xnm0uo6B0ABZsLhcpeptGv2qvuJVWlQr9gQZoC3A==",
917
+ "license": "MIT",
918
+ "dependencies": {
919
+ "debug": "^4.4.3",
920
+ "ip-address": "^10.2.0"
921
+ },
922
+ "engines": {
923
+ "node": ">= 16"
924
+ },
925
+ "funding": {
926
+ "url": "https://github.com/sponsors/express-rate-limit"
927
+ },
928
+ "peerDependencies": {
929
+ "express": ">= 4.11"
930
+ }
931
+ },
932
+ "node_modules/fast-deep-equal": {
933
+ "version": "3.1.3",
934
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
935
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
936
+ "license": "MIT"
937
+ },
938
+ "node_modules/fast-uri": {
939
+ "version": "3.1.6",
940
+ "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.6.tgz",
941
+ "integrity": "sha512-7Ical1vFEMr0onbVzEDIreM22I4khW+fzyQPwvAFWBp1iwdshSZRsL4jjRvPG9JP1uiqMHRto+YU6R2/CzDz5Q==",
942
+ "funding": [
943
+ {
944
+ "type": "github",
945
+ "url": "https://github.com/sponsors/fastify"
946
+ },
947
+ {
948
+ "type": "opencollective",
949
+ "url": "https://opencollective.com/fastify"
950
+ }
951
+ ],
952
+ "license": "BSD-3-Clause"
953
+ },
954
+ "node_modules/finalhandler": {
955
+ "version": "2.1.1",
956
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.1.tgz",
957
+ "integrity": "sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA==",
958
+ "license": "MIT",
959
+ "dependencies": {
960
+ "debug": "^4.4.0",
961
+ "encodeurl": "^2.0.0",
962
+ "escape-html": "^1.0.3",
963
+ "on-finished": "^2.4.1",
964
+ "parseurl": "^1.3.3",
965
+ "statuses": "^2.0.1"
966
+ },
967
+ "engines": {
968
+ "node": ">= 18.0.0"
969
+ },
970
+ "funding": {
971
+ "type": "opencollective",
972
+ "url": "https://opencollective.com/express"
973
+ }
974
+ },
975
+ "node_modules/forwarded": {
976
+ "version": "0.2.0",
977
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
978
+ "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
979
+ "license": "MIT",
980
+ "engines": {
981
+ "node": ">= 0.6"
982
+ }
983
+ },
984
+ "node_modules/fresh": {
985
+ "version": "2.0.0",
986
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz",
987
+ "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==",
988
+ "license": "MIT",
989
+ "engines": {
990
+ "node": ">= 0.8"
991
+ }
992
+ },
993
+ "node_modules/function-bind": {
994
+ "version": "1.1.2",
995
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
996
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
997
+ "license": "MIT",
998
+ "funding": {
999
+ "url": "https://github.com/sponsors/ljharb"
1000
+ }
1001
+ },
1002
+ "node_modules/get-intrinsic": {
1003
+ "version": "1.3.0",
1004
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
1005
+ "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
1006
+ "license": "MIT",
1007
+ "dependencies": {
1008
+ "call-bind-apply-helpers": "^1.0.2",
1009
+ "es-define-property": "^1.0.1",
1010
+ "es-errors": "^1.3.0",
1011
+ "es-object-atoms": "^1.1.1",
1012
+ "function-bind": "^1.1.2",
1013
+ "get-proto": "^1.0.1",
1014
+ "gopd": "^1.2.0",
1015
+ "has-symbols": "^1.1.0",
1016
+ "hasown": "^2.0.2",
1017
+ "math-intrinsics": "^1.1.0"
1018
+ },
1019
+ "engines": {
1020
+ "node": ">= 0.4"
1021
+ },
1022
+ "funding": {
1023
+ "url": "https://github.com/sponsors/ljharb"
1024
+ }
1025
+ },
1026
+ "node_modules/get-proto": {
1027
+ "version": "1.0.1",
1028
+ "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
1029
+ "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
1030
+ "license": "MIT",
1031
+ "dependencies": {
1032
+ "dunder-proto": "^1.0.1",
1033
+ "es-object-atoms": "^1.0.0"
1034
+ },
1035
+ "engines": {
1036
+ "node": ">= 0.4"
1037
+ }
1038
+ },
1039
+ "node_modules/gopd": {
1040
+ "version": "1.2.0",
1041
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
1042
+ "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
1043
+ "license": "MIT",
1044
+ "engines": {
1045
+ "node": ">= 0.4"
1046
+ },
1047
+ "funding": {
1048
+ "url": "https://github.com/sponsors/ljharb"
1049
+ }
1050
+ },
1051
+ "node_modules/has-symbols": {
1052
+ "version": "1.1.0",
1053
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
1054
+ "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
1055
+ "license": "MIT",
1056
+ "engines": {
1057
+ "node": ">= 0.4"
1058
+ },
1059
+ "funding": {
1060
+ "url": "https://github.com/sponsors/ljharb"
1061
+ }
1062
+ },
1063
+ "node_modules/hasown": {
1064
+ "version": "2.0.4",
1065
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz",
1066
+ "integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==",
1067
+ "license": "MIT",
1068
+ "dependencies": {
1069
+ "function-bind": "^1.1.2"
1070
+ },
1071
+ "engines": {
1072
+ "node": ">= 0.4"
1073
+ }
1074
+ },
1075
+ "node_modules/hono": {
1076
+ "version": "4.13.4",
1077
+ "resolved": "https://registry.npmjs.org/hono/-/hono-4.13.4.tgz",
1078
+ "integrity": "sha512-AGEwKIyRMHRv1t8Wjwa3LHxQ61X5CqrdFT+4BRNTpqS5aJNnpl5WLjADb7vFlJzI/8uK7T5QLVApCMQKNa3LgQ==",
1079
+ "license": "MIT",
1080
+ "engines": {
1081
+ "node": ">=16.9.0"
1082
+ }
1083
+ },
1084
+ "node_modules/http-errors": {
1085
+ "version": "2.0.1",
1086
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz",
1087
+ "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==",
1088
+ "license": "MIT",
1089
+ "dependencies": {
1090
+ "depd": "~2.0.0",
1091
+ "inherits": "~2.0.4",
1092
+ "setprototypeof": "~1.2.0",
1093
+ "statuses": "~2.0.2",
1094
+ "toidentifier": "~1.0.1"
1095
+ },
1096
+ "engines": {
1097
+ "node": ">= 0.8"
1098
+ },
1099
+ "funding": {
1100
+ "type": "opencollective",
1101
+ "url": "https://opencollective.com/express"
1102
+ }
1103
+ },
1104
+ "node_modules/iconv-lite": {
1105
+ "version": "0.7.3",
1106
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.3.tgz",
1107
+ "integrity": "sha512-IKXpvIzjnC9XTAUbVBcMfGS0EPaIXtW6v+zr+RRp+hqULEpo0owZax6wyRwPOJbWbzjYspQwusTsfVr0ifh4uQ==",
1108
+ "license": "MIT",
1109
+ "dependencies": {
1110
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
1111
+ },
1112
+ "engines": {
1113
+ "node": ">=0.10.0"
1114
+ },
1115
+ "funding": {
1116
+ "type": "opencollective",
1117
+ "url": "https://opencollective.com/express"
1118
+ }
1119
+ },
1120
+ "node_modules/inherits": {
1121
+ "version": "2.0.4",
1122
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
1123
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
1124
+ "license": "ISC"
1125
+ },
1126
+ "node_modules/ip-address": {
1127
+ "version": "10.5.0",
1128
+ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.5.0.tgz",
1129
+ "integrity": "sha512-R5SnVLJmgYYvf2F2ZgwSBnelz5G4q5AxIC277GDfUaNbrZKNANcBC7RHqYYePlszf4kBolVkJauG0ZjHHFh55g==",
1130
+ "license": "MIT",
1131
+ "engines": {
1132
+ "node": ">= 12"
1133
+ }
1134
+ },
1135
+ "node_modules/ipaddr.js": {
1136
+ "version": "1.9.1",
1137
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
1138
+ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
1139
+ "license": "MIT",
1140
+ "engines": {
1141
+ "node": ">= 0.10"
1142
+ }
1143
+ },
1144
+ "node_modules/is-promise": {
1145
+ "version": "4.0.0",
1146
+ "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz",
1147
+ "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==",
1148
+ "license": "MIT"
1149
+ },
1150
+ "node_modules/isexe": {
1151
+ "version": "2.0.0",
1152
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
1153
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
1154
+ "license": "ISC"
1155
+ },
1156
+ "node_modules/jose": {
1157
+ "version": "6.2.10",
1158
+ "resolved": "https://registry.npmjs.org/jose/-/jose-6.2.10.tgz",
1159
+ "integrity": "sha512-iiW7J9qRFlGxvCOIBDBDxFePQSn7ZMAnrYGhrrOo6siO/MIqwfyilLR27pkfDgUk+raLuzADS8A3S/KLBisc0g==",
1160
+ "license": "MIT",
1161
+ "funding": {
1162
+ "url": "https://github.com/sponsors/panva"
1163
+ }
1164
+ },
1165
+ "node_modules/json-schema-traverse": {
1166
+ "version": "1.0.0",
1167
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
1168
+ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
1169
+ "license": "MIT"
1170
+ },
1171
+ "node_modules/json-schema-typed": {
1172
+ "version": "8.0.2",
1173
+ "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-8.0.2.tgz",
1174
+ "integrity": "sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA==",
1175
+ "license": "BSD-2-Clause"
1176
+ },
1177
+ "node_modules/math-intrinsics": {
1178
+ "version": "1.1.0",
1179
+ "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
1180
+ "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
1181
+ "license": "MIT",
1182
+ "engines": {
1183
+ "node": ">= 0.4"
1184
+ }
1185
+ },
1186
+ "node_modules/media-typer": {
1187
+ "version": "1.1.1",
1188
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.1.tgz",
1189
+ "integrity": "sha512-yz3xRaG20c6/BOzvYoDaGtPmGscs7YivItZEEqe6GbwNfHuxu9YNmvnEkMzKldAGY4/80pRcQRZSEnhquk9XuQ==",
1190
+ "license": "MIT",
1191
+ "engines": {
1192
+ "node": ">= 0.8"
1193
+ },
1194
+ "funding": {
1195
+ "type": "opencollective",
1196
+ "url": "https://opencollective.com/express"
1197
+ }
1198
+ },
1199
+ "node_modules/merge-descriptors": {
1200
+ "version": "2.0.0",
1201
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz",
1202
+ "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==",
1203
+ "license": "MIT",
1204
+ "engines": {
1205
+ "node": ">=18"
1206
+ },
1207
+ "funding": {
1208
+ "url": "https://github.com/sponsors/sindresorhus"
1209
+ }
1210
+ },
1211
+ "node_modules/mime-db": {
1212
+ "version": "1.54.0",
1213
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz",
1214
+ "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==",
1215
+ "license": "MIT",
1216
+ "engines": {
1217
+ "node": ">= 0.6"
1218
+ }
1219
+ },
1220
+ "node_modules/mime-types": {
1221
+ "version": "3.0.2",
1222
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz",
1223
+ "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==",
1224
+ "license": "MIT",
1225
+ "dependencies": {
1226
+ "mime-db": "^1.54.0"
1227
+ },
1228
+ "engines": {
1229
+ "node": ">=18"
1230
+ },
1231
+ "funding": {
1232
+ "type": "opencollective",
1233
+ "url": "https://opencollective.com/express"
1234
+ }
1235
+ },
1236
+ "node_modules/ms": {
1237
+ "version": "2.1.3",
1238
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
1239
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
1240
+ "license": "MIT"
1241
+ },
1242
+ "node_modules/negotiator": {
1243
+ "version": "1.1.0",
1244
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.1.0.tgz",
1245
+ "integrity": "sha512-NMPBRMJgiQHjbd8phG3Vebdx4kZ1H121rbl5IkMqeOsahptB9BKo/d7oJ3zTXqTgagn2bWlNSXkh0QUGM31RYg==",
1246
+ "license": "MIT",
1247
+ "dependencies": {
1248
+ "content-type": "^2.1.0"
1249
+ },
1250
+ "engines": {
1251
+ "node": ">=18"
1252
+ },
1253
+ "funding": {
1254
+ "type": "opencollective",
1255
+ "url": "https://opencollective.com/express"
1256
+ }
1257
+ },
1258
+ "node_modules/negotiator/node_modules/content-type": {
1259
+ "version": "2.1.0",
1260
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz",
1261
+ "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==",
1262
+ "license": "MIT",
1263
+ "engines": {
1264
+ "node": ">=18"
1265
+ },
1266
+ "funding": {
1267
+ "type": "opencollective",
1268
+ "url": "https://opencollective.com/express"
1269
+ }
1270
+ },
1271
+ "node_modules/object-assign": {
1272
+ "version": "4.1.1",
1273
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
1274
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
1275
+ "license": "MIT",
1276
+ "engines": {
1277
+ "node": ">=0.10.0"
1278
+ }
1279
+ },
1280
+ "node_modules/object-inspect": {
1281
+ "version": "1.13.4",
1282
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
1283
+ "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
1284
+ "license": "MIT",
1285
+ "engines": {
1286
+ "node": ">= 0.4"
1287
+ },
1288
+ "funding": {
1289
+ "url": "https://github.com/sponsors/ljharb"
1290
+ }
1291
+ },
1292
+ "node_modules/on-finished": {
1293
+ "version": "2.4.1",
1294
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
1295
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
1296
+ "license": "MIT",
1297
+ "dependencies": {
1298
+ "ee-first": "1.1.1"
1299
+ },
1300
+ "engines": {
1301
+ "node": ">= 0.8"
1302
+ }
1303
+ },
1304
+ "node_modules/once": {
1305
+ "version": "1.4.0",
1306
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
1307
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
1308
+ "license": "ISC",
1309
+ "dependencies": {
1310
+ "wrappy": "1"
1311
+ }
1312
+ },
1313
+ "node_modules/parseurl": {
1314
+ "version": "1.3.3",
1315
+ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
1316
+ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
1317
+ "license": "MIT",
1318
+ "engines": {
1319
+ "node": ">= 0.8"
1320
+ }
1321
+ },
1322
+ "node_modules/path-key": {
1323
+ "version": "3.1.1",
1324
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
1325
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
1326
+ "license": "MIT",
1327
+ "engines": {
1328
+ "node": ">=8"
1329
+ }
1330
+ },
1331
+ "node_modules/path-to-regexp": {
1332
+ "version": "8.4.2",
1333
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.2.tgz",
1334
+ "integrity": "sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA==",
1335
+ "license": "MIT",
1336
+ "funding": {
1337
+ "type": "opencollective",
1338
+ "url": "https://opencollective.com/express"
1339
+ }
1340
+ },
1341
+ "node_modules/pkce-challenge": {
1342
+ "version": "5.0.1",
1343
+ "resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.1.tgz",
1344
+ "integrity": "sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ==",
1345
+ "license": "MIT",
1346
+ "engines": {
1347
+ "node": ">=16.20.0"
1348
+ }
1349
+ },
1350
+ "node_modules/proxy-addr": {
1351
+ "version": "2.0.7",
1352
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
1353
+ "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
1354
+ "license": "MIT",
1355
+ "dependencies": {
1356
+ "forwarded": "0.2.0",
1357
+ "ipaddr.js": "1.9.1"
1358
+ },
1359
+ "engines": {
1360
+ "node": ">= 0.10"
1361
+ }
1362
+ },
1363
+ "node_modules/qs": {
1364
+ "version": "6.15.3",
1365
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.3.tgz",
1366
+ "integrity": "sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A==",
1367
+ "license": "BSD-3-Clause",
1368
+ "dependencies": {
1369
+ "es-define-property": "^1.0.1",
1370
+ "side-channel": "^1.1.1"
1371
+ },
1372
+ "engines": {
1373
+ "node": ">=0.6"
1374
+ },
1375
+ "funding": {
1376
+ "url": "https://github.com/sponsors/ljharb"
1377
+ }
1378
+ },
1379
+ "node_modules/range-parser": {
1380
+ "version": "1.3.0",
1381
+ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.3.0.tgz",
1382
+ "integrity": "sha512-hek2mFQpPuI4E1BBKrSto+BU3e3x4xuarsbiwr3+lf7p44juvFMV0XFWQAP3xUyqXA4RrXLIoaSUGbSt056ZMw==",
1383
+ "license": "MIT",
1384
+ "engines": {
1385
+ "node": ">= 0.6"
1386
+ },
1387
+ "funding": {
1388
+ "type": "opencollective",
1389
+ "url": "https://opencollective.com/express"
1390
+ }
1391
+ },
1392
+ "node_modules/raw-body": {
1393
+ "version": "3.0.2",
1394
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-3.0.2.tgz",
1395
+ "integrity": "sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA==",
1396
+ "license": "MIT",
1397
+ "dependencies": {
1398
+ "bytes": "~3.1.2",
1399
+ "http-errors": "~2.0.1",
1400
+ "iconv-lite": "~0.7.0",
1401
+ "unpipe": "~1.0.0"
1402
+ },
1403
+ "engines": {
1404
+ "node": ">= 0.10"
1405
+ }
1406
+ },
1407
+ "node_modules/require-from-string": {
1408
+ "version": "2.0.2",
1409
+ "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
1410
+ "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
1411
+ "license": "MIT",
1412
+ "engines": {
1413
+ "node": ">=0.10.0"
1414
+ }
1415
+ },
1416
+ "node_modules/router": {
1417
+ "version": "2.2.0",
1418
+ "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz",
1419
+ "integrity": "sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==",
1420
+ "license": "MIT",
1421
+ "dependencies": {
1422
+ "debug": "^4.4.0",
1423
+ "depd": "^2.0.0",
1424
+ "is-promise": "^4.0.0",
1425
+ "parseurl": "^1.3.3",
1426
+ "path-to-regexp": "^8.0.0"
1427
+ },
1428
+ "engines": {
1429
+ "node": ">= 18"
1430
+ }
1431
+ },
1432
+ "node_modules/safer-buffer": {
1433
+ "version": "2.1.2",
1434
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
1435
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
1436
+ "license": "MIT"
1437
+ },
1438
+ "node_modules/send": {
1439
+ "version": "1.2.1",
1440
+ "resolved": "https://registry.npmjs.org/send/-/send-1.2.1.tgz",
1441
+ "integrity": "sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==",
1442
+ "license": "MIT",
1443
+ "dependencies": {
1444
+ "debug": "^4.4.3",
1445
+ "encodeurl": "^2.0.0",
1446
+ "escape-html": "^1.0.3",
1447
+ "etag": "^1.8.1",
1448
+ "fresh": "^2.0.0",
1449
+ "http-errors": "^2.0.1",
1450
+ "mime-types": "^3.0.2",
1451
+ "ms": "^2.1.3",
1452
+ "on-finished": "^2.4.1",
1453
+ "range-parser": "^1.2.1",
1454
+ "statuses": "^2.0.2"
1455
+ },
1456
+ "engines": {
1457
+ "node": ">= 18"
1458
+ },
1459
+ "funding": {
1460
+ "type": "opencollective",
1461
+ "url": "https://opencollective.com/express"
1462
+ }
1463
+ },
1464
+ "node_modules/serve-static": {
1465
+ "version": "2.2.1",
1466
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-2.2.1.tgz",
1467
+ "integrity": "sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw==",
1468
+ "license": "MIT",
1469
+ "dependencies": {
1470
+ "encodeurl": "^2.0.0",
1471
+ "escape-html": "^1.0.3",
1472
+ "parseurl": "^1.3.3",
1473
+ "send": "^1.2.0"
1474
+ },
1475
+ "engines": {
1476
+ "node": ">= 18"
1477
+ },
1478
+ "funding": {
1479
+ "type": "opencollective",
1480
+ "url": "https://opencollective.com/express"
1481
+ }
1482
+ },
1483
+ "node_modules/setprototypeof": {
1484
+ "version": "1.2.0",
1485
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
1486
+ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
1487
+ "license": "ISC"
1488
+ },
1489
+ "node_modules/shebang-command": {
1490
+ "version": "2.0.0",
1491
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
1492
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
1493
+ "license": "MIT",
1494
+ "dependencies": {
1495
+ "shebang-regex": "^3.0.0"
1496
+ },
1497
+ "engines": {
1498
+ "node": ">=8"
1499
+ }
1500
+ },
1501
+ "node_modules/shebang-regex": {
1502
+ "version": "3.0.0",
1503
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
1504
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
1505
+ "license": "MIT",
1506
+ "engines": {
1507
+ "node": ">=8"
1508
+ }
1509
+ },
1510
+ "node_modules/side-channel": {
1511
+ "version": "1.1.1",
1512
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz",
1513
+ "integrity": "sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==",
1514
+ "license": "MIT",
1515
+ "dependencies": {
1516
+ "es-errors": "^1.3.0",
1517
+ "object-inspect": "^1.13.4",
1518
+ "side-channel-list": "^1.0.1",
1519
+ "side-channel-map": "^1.0.1",
1520
+ "side-channel-weakmap": "^1.0.2"
1521
+ },
1522
+ "engines": {
1523
+ "node": ">= 0.4"
1524
+ },
1525
+ "funding": {
1526
+ "url": "https://github.com/sponsors/ljharb"
1527
+ }
1528
+ },
1529
+ "node_modules/side-channel-list": {
1530
+ "version": "1.0.1",
1531
+ "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz",
1532
+ "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==",
1533
+ "license": "MIT",
1534
+ "dependencies": {
1535
+ "es-errors": "^1.3.0",
1536
+ "object-inspect": "^1.13.4"
1537
+ },
1538
+ "engines": {
1539
+ "node": ">= 0.4"
1540
+ },
1541
+ "funding": {
1542
+ "url": "https://github.com/sponsors/ljharb"
1543
+ }
1544
+ },
1545
+ "node_modules/side-channel-map": {
1546
+ "version": "1.0.1",
1547
+ "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
1548
+ "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
1549
+ "license": "MIT",
1550
+ "dependencies": {
1551
+ "call-bound": "^1.0.2",
1552
+ "es-errors": "^1.3.0",
1553
+ "get-intrinsic": "^1.2.5",
1554
+ "object-inspect": "^1.13.3"
1555
+ },
1556
+ "engines": {
1557
+ "node": ">= 0.4"
1558
+ },
1559
+ "funding": {
1560
+ "url": "https://github.com/sponsors/ljharb"
1561
+ }
1562
+ },
1563
+ "node_modules/side-channel-weakmap": {
1564
+ "version": "1.0.2",
1565
+ "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
1566
+ "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
1567
+ "license": "MIT",
1568
+ "dependencies": {
1569
+ "call-bound": "^1.0.2",
1570
+ "es-errors": "^1.3.0",
1571
+ "get-intrinsic": "^1.2.5",
1572
+ "object-inspect": "^1.13.3",
1573
+ "side-channel-map": "^1.0.1"
1574
+ },
1575
+ "engines": {
1576
+ "node": ">= 0.4"
1577
+ },
1578
+ "funding": {
1579
+ "url": "https://github.com/sponsors/ljharb"
1580
+ }
1581
+ },
1582
+ "node_modules/statuses": {
1583
+ "version": "2.0.2",
1584
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz",
1585
+ "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==",
1586
+ "license": "MIT",
1587
+ "engines": {
1588
+ "node": ">= 0.8"
1589
+ }
1590
+ },
1591
+ "node_modules/toidentifier": {
1592
+ "version": "1.0.1",
1593
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
1594
+ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
1595
+ "license": "MIT",
1596
+ "engines": {
1597
+ "node": ">=0.6"
1598
+ }
1599
+ },
1600
+ "node_modules/type-is": {
1601
+ "version": "2.1.0",
1602
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-2.1.0.tgz",
1603
+ "integrity": "sha512-faYHw0anBbc/kWF3zFTEnxSFOAGUX9GFbOBthvDdLsIlEoWOFOtS0zgCiQYwIskL9iGXZL3kAXD8OoZ4GmMATA==",
1604
+ "license": "MIT",
1605
+ "dependencies": {
1606
+ "content-type": "^2.0.0",
1607
+ "media-typer": "^1.1.0",
1608
+ "mime-types": "^3.0.0"
1609
+ },
1610
+ "engines": {
1611
+ "node": ">= 18"
1612
+ },
1613
+ "funding": {
1614
+ "type": "opencollective",
1615
+ "url": "https://opencollective.com/express"
1616
+ }
1617
+ },
1618
+ "node_modules/type-is/node_modules/content-type": {
1619
+ "version": "2.1.0",
1620
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz",
1621
+ "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==",
1622
+ "license": "MIT",
1623
+ "engines": {
1624
+ "node": ">=18"
1625
+ },
1626
+ "funding": {
1627
+ "type": "opencollective",
1628
+ "url": "https://opencollective.com/express"
1629
+ }
1630
+ },
1631
+ "node_modules/typescript": {
1632
+ "version": "5.9.3",
1633
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
1634
+ "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
1635
+ "dev": true,
1636
+ "license": "Apache-2.0",
1637
+ "bin": {
1638
+ "tsc": "bin/tsc",
1639
+ "tsserver": "bin/tsserver"
1640
+ },
1641
+ "engines": {
1642
+ "node": ">=14.17"
1643
+ }
1644
+ },
1645
+ "node_modules/undici-types": {
1646
+ "version": "6.21.0",
1647
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
1648
+ "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
1649
+ "dev": true,
1650
+ "license": "MIT"
1651
+ },
1652
+ "node_modules/unpipe": {
1653
+ "version": "1.0.0",
1654
+ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
1655
+ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
1656
+ "license": "MIT",
1657
+ "engines": {
1658
+ "node": ">= 0.8"
1659
+ }
1660
+ },
1661
+ "node_modules/vary": {
1662
+ "version": "1.1.2",
1663
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
1664
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
1665
+ "license": "MIT",
1666
+ "engines": {
1667
+ "node": ">= 0.8"
1668
+ }
1669
+ },
1670
+ "node_modules/which": {
1671
+ "version": "2.0.2",
1672
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
1673
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
1674
+ "license": "ISC",
1675
+ "dependencies": {
1676
+ "isexe": "^2.0.0"
1677
+ },
1678
+ "bin": {
1679
+ "node-which": "bin/node-which"
1680
+ },
1681
+ "engines": {
1682
+ "node": ">= 8"
1683
+ }
1684
+ },
1685
+ "node_modules/wrappy": {
1686
+ "version": "1.0.2",
1687
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1688
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
1689
+ "license": "ISC"
1690
+ },
1691
+ "node_modules/ws": {
1692
+ "version": "8.21.3",
1693
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.3.tgz",
1694
+ "integrity": "sha512-201TZ/kPWxoPr/OKWjquZR1SWKXcvxdH+e1xrx89b3YbmzLMFCLfnaG1HFIgWzJOEWZ7MvpK++odZufgYR50Rw==",
1695
+ "license": "MIT",
1696
+ "engines": {
1697
+ "node": ">=10.0.0"
1698
+ },
1699
+ "peerDependencies": {
1700
+ "bufferutil": "^4.0.1",
1701
+ "utf-8-validate": ">=5.0.2"
1702
+ },
1703
+ "peerDependenciesMeta": {
1704
+ "bufferutil": {
1705
+ "optional": true
1706
+ },
1707
+ "utf-8-validate": {
1708
+ "optional": true
1709
+ }
1710
+ }
1711
+ },
1712
+ "node_modules/zod": {
1713
+ "version": "4.4.3",
1714
+ "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.3.tgz",
1715
+ "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==",
1716
+ "license": "MIT",
1717
+ "funding": {
1718
+ "url": "https://github.com/sponsors/colinhacks"
1719
+ }
1720
+ },
1721
+ "node_modules/zod-to-json-schema": {
1722
+ "version": "3.25.2",
1723
+ "resolved": "https://registry.npmjs.org/zod-to-json-schema/-/zod-to-json-schema-3.25.2.tgz",
1724
+ "integrity": "sha512-O/PgfnpT1xKSDeQYSCfRI5Gy3hPf91mKVDuYLUHZJMiDFptvP41MSnWofm8dnCm0256ZNfZIM7DSzuSMAFnjHA==",
1725
+ "license": "ISC",
1726
+ "peerDependencies": {
1727
+ "zod": "^3.25.28 || ^4"
1728
+ }
1729
+ }
1730
+ }
1731
+ }