nexakit 0.0.0-stage → 0.2.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 (438) hide show
  1. package/.claude-plugin/marketplace.json +28 -0
  2. package/LICENSE +26 -0
  3. package/README.md +79 -2
  4. package/agents/claude/docs-researcher.md +9 -0
  5. package/agents/claude/implementation-tutor.md +9 -0
  6. package/agents/claude/project-explorer.md +9 -0
  7. package/agents/claude/quality-reviewer.md +9 -0
  8. package/agents/claude/requirements-analyst.md +9 -0
  9. package/agents/claude/solution-architect.md +9 -0
  10. package/agents/codex/docs-researcher.toml +10 -0
  11. package/agents/codex/implementation-tutor.toml +10 -0
  12. package/agents/codex/project-explorer.toml +10 -0
  13. package/agents/codex/quality-reviewer.toml +10 -0
  14. package/agents/codex/requirements-analyst.toml +11 -0
  15. package/agents/codex/solution-architect.toml +10 -0
  16. package/assets/brand/README.md +38 -0
  17. package/assets/brand/agent-toolkit-mark.png +0 -0
  18. package/assets/brand/agent-toolkit-mark.svg +13 -0
  19. package/assets/brand/agent-toolkit-tui-hero.png +0 -0
  20. package/assets/brand/nexakit-readme-hero.png +0 -0
  21. package/assets/brand/nexakit-readme-hero.svg +21 -0
  22. package/assets/runtime/package-lock.json +1425 -0
  23. package/bin/agent-task.js +14 -0
  24. package/bin/agent-toolkit-gemini.js +13 -0
  25. package/bin/agent-toolkit-inbox.js +14 -0
  26. package/bin/agent-toolkit-mcp.js +17 -0
  27. package/bin/agent-toolkit.js +13 -0
  28. package/bin/nexakit.js +13 -0
  29. package/bin/project-memory-mcp.js +22 -0
  30. package/bin/project-memory.js +7 -0
  31. package/catalogs/skills/api-design-principles/LICENSE.txt +21 -0
  32. package/catalogs/skills/api-design-principles/SKILL.md +110 -0
  33. package/catalogs/skills/api-design-principles/assets/api-design-checklist.md +155 -0
  34. package/catalogs/skills/api-design-principles/assets/rest-api-template.py +185 -0
  35. package/catalogs/skills/api-design-principles/references/details.md +413 -0
  36. package/catalogs/skills/api-design-principles/references/graphql-schema-design.md +589 -0
  37. package/catalogs/skills/api-design-principles/references/rest-best-practices.md +408 -0
  38. package/catalogs/skills/nodejs-backend-patterns/LICENSE.txt +21 -0
  39. package/catalogs/skills/nodejs-backend-patterns/SKILL.md +45 -0
  40. package/catalogs/skills/nodejs-backend-patterns/references/advanced-patterns.md +430 -0
  41. package/catalogs/skills/nodejs-backend-patterns/references/details.md +599 -0
  42. package/catalogs/skills/supabase-postgres-best-practices/CHANGELOG.md +73 -0
  43. package/catalogs/skills/supabase-postgres-best-practices/LICENSE.txt +21 -0
  44. package/catalogs/skills/supabase-postgres-best-practices/SKILL.md +64 -0
  45. package/catalogs/skills/supabase-postgres-best-practices/references/_contributing.md +170 -0
  46. package/catalogs/skills/supabase-postgres-best-practices/references/_sections.md +39 -0
  47. package/catalogs/skills/supabase-postgres-best-practices/references/_template.md +34 -0
  48. package/catalogs/skills/supabase-postgres-best-practices/references/advanced-full-text-search.md +55 -0
  49. package/catalogs/skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md +49 -0
  50. package/catalogs/skills/supabase-postgres-best-practices/references/conn-idle-timeout.md +46 -0
  51. package/catalogs/skills/supabase-postgres-best-practices/references/conn-limits.md +44 -0
  52. package/catalogs/skills/supabase-postgres-best-practices/references/conn-pooling.md +41 -0
  53. package/catalogs/skills/supabase-postgres-best-practices/references/conn-prepared-statements.md +46 -0
  54. package/catalogs/skills/supabase-postgres-best-practices/references/data-batch-inserts.md +54 -0
  55. package/catalogs/skills/supabase-postgres-best-practices/references/data-n-plus-one.md +53 -0
  56. package/catalogs/skills/supabase-postgres-best-practices/references/data-pagination.md +50 -0
  57. package/catalogs/skills/supabase-postgres-best-practices/references/data-upsert.md +50 -0
  58. package/catalogs/skills/supabase-postgres-best-practices/references/lock-advisory.md +56 -0
  59. package/catalogs/skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md +68 -0
  60. package/catalogs/skills/supabase-postgres-best-practices/references/lock-short-transactions.md +50 -0
  61. package/catalogs/skills/supabase-postgres-best-practices/references/lock-skip-locked.md +54 -0
  62. package/catalogs/skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md +45 -0
  63. package/catalogs/skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md +55 -0
  64. package/catalogs/skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md +55 -0
  65. package/catalogs/skills/supabase-postgres-best-practices/references/query-composite-indexes.md +44 -0
  66. package/catalogs/skills/supabase-postgres-best-practices/references/query-covering-indexes.md +40 -0
  67. package/catalogs/skills/supabase-postgres-best-practices/references/query-index-types.md +48 -0
  68. package/catalogs/skills/supabase-postgres-best-practices/references/query-missing-indexes.md +43 -0
  69. package/catalogs/skills/supabase-postgres-best-practices/references/query-partial-indexes.md +45 -0
  70. package/catalogs/skills/supabase-postgres-best-practices/references/schema-constraints.md +80 -0
  71. package/catalogs/skills/supabase-postgres-best-practices/references/schema-data-types.md +46 -0
  72. package/catalogs/skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md +59 -0
  73. package/catalogs/skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md +55 -0
  74. package/catalogs/skills/supabase-postgres-best-practices/references/schema-partitioning.md +55 -0
  75. package/catalogs/skills/supabase-postgres-best-practices/references/schema-primary-keys.md +61 -0
  76. package/catalogs/skills/supabase-postgres-best-practices/references/security-privileges.md +54 -0
  77. package/catalogs/skills/supabase-postgres-best-practices/references/security-rls-basics.md +50 -0
  78. package/catalogs/skills/supabase-postgres-best-practices/references/security-rls-performance.md +63 -0
  79. package/catalogs/skills/vercel-composition-patterns/AGENTS.md +946 -0
  80. package/catalogs/skills/vercel-composition-patterns/LICENSE.txt +27 -0
  81. package/catalogs/skills/vercel-composition-patterns/README.md +60 -0
  82. package/catalogs/skills/vercel-composition-patterns/SKILL.md +89 -0
  83. package/catalogs/skills/vercel-composition-patterns/metadata.json +11 -0
  84. package/catalogs/skills/vercel-composition-patterns/rules/_sections.md +29 -0
  85. package/catalogs/skills/vercel-composition-patterns/rules/_template.md +24 -0
  86. package/catalogs/skills/vercel-composition-patterns/rules/architecture-avoid-boolean-props.md +100 -0
  87. package/catalogs/skills/vercel-composition-patterns/rules/architecture-compound-components.md +112 -0
  88. package/catalogs/skills/vercel-composition-patterns/rules/patterns-children-over-render-props.md +87 -0
  89. package/catalogs/skills/vercel-composition-patterns/rules/patterns-explicit-variants.md +100 -0
  90. package/catalogs/skills/vercel-composition-patterns/rules/react19-no-forwardref.md +42 -0
  91. package/catalogs/skills/vercel-composition-patterns/rules/state-context-interface.md +191 -0
  92. package/catalogs/skills/vercel-composition-patterns/rules/state-decouple-implementation.md +113 -0
  93. package/catalogs/skills/vercel-composition-patterns/rules/state-lift-state.md +125 -0
  94. package/catalogs/skills/vercel-react-best-practices/AGENTS.md +3810 -0
  95. package/catalogs/skills/vercel-react-best-practices/LICENSE.txt +27 -0
  96. package/catalogs/skills/vercel-react-best-practices/README.md +123 -0
  97. package/catalogs/skills/vercel-react-best-practices/SKILL.md +149 -0
  98. package/catalogs/skills/vercel-react-best-practices/metadata.json +15 -0
  99. package/catalogs/skills/vercel-react-best-practices/rules/_sections.md +46 -0
  100. package/catalogs/skills/vercel-react-best-practices/rules/_template.md +28 -0
  101. package/catalogs/skills/vercel-react-best-practices/rules/advanced-effect-event-deps.md +56 -0
  102. package/catalogs/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  103. package/catalogs/skills/vercel-react-best-practices/rules/advanced-init-once.md +42 -0
  104. package/catalogs/skills/vercel-react-best-practices/rules/advanced-use-latest.md +39 -0
  105. package/catalogs/skills/vercel-react-best-practices/rules/async-api-routes.md +38 -0
  106. package/catalogs/skills/vercel-react-best-practices/rules/async-cheap-condition-before-await.md +37 -0
  107. package/catalogs/skills/vercel-react-best-practices/rules/async-defer-await.md +82 -0
  108. package/catalogs/skills/vercel-react-best-practices/rules/async-dependencies.md +51 -0
  109. package/catalogs/skills/vercel-react-best-practices/rules/async-parallel.md +28 -0
  110. package/catalogs/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +99 -0
  111. package/catalogs/skills/vercel-react-best-practices/rules/bundle-analyzable-paths.md +63 -0
  112. package/catalogs/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +60 -0
  113. package/catalogs/skills/vercel-react-best-practices/rules/bundle-conditional.md +31 -0
  114. package/catalogs/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +49 -0
  115. package/catalogs/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  116. package/catalogs/skills/vercel-react-best-practices/rules/bundle-preload.md +50 -0
  117. package/catalogs/skills/vercel-react-best-practices/rules/client-event-listeners.md +74 -0
  118. package/catalogs/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +71 -0
  119. package/catalogs/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +48 -0
  120. package/catalogs/skills/vercel-react-best-practices/rules/client-swr-dedup.md +56 -0
  121. package/catalogs/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +107 -0
  122. package/catalogs/skills/vercel-react-best-practices/rules/js-cache-function-results.md +80 -0
  123. package/catalogs/skills/vercel-react-best-practices/rules/js-cache-property-access.md +28 -0
  124. package/catalogs/skills/vercel-react-best-practices/rules/js-cache-storage.md +70 -0
  125. package/catalogs/skills/vercel-react-best-practices/rules/js-combine-iterations.md +32 -0
  126. package/catalogs/skills/vercel-react-best-practices/rules/js-early-exit.md +50 -0
  127. package/catalogs/skills/vercel-react-best-practices/rules/js-flatmap-filter.md +60 -0
  128. package/catalogs/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +45 -0
  129. package/catalogs/skills/vercel-react-best-practices/rules/js-index-maps.md +37 -0
  130. package/catalogs/skills/vercel-react-best-practices/rules/js-length-check-first.md +49 -0
  131. package/catalogs/skills/vercel-react-best-practices/rules/js-min-max-loop.md +82 -0
  132. package/catalogs/skills/vercel-react-best-practices/rules/js-request-idle-callback.md +105 -0
  133. package/catalogs/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +24 -0
  134. package/catalogs/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +57 -0
  135. package/catalogs/skills/vercel-react-best-practices/rules/rendering-activity.md +26 -0
  136. package/catalogs/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  137. package/catalogs/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +40 -0
  138. package/catalogs/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +38 -0
  139. package/catalogs/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  140. package/catalogs/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  141. package/catalogs/skills/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +30 -0
  142. package/catalogs/skills/vercel-react-best-practices/rules/rendering-resource-hints.md +85 -0
  143. package/catalogs/skills/vercel-react-best-practices/rules/rendering-script-defer-async.md +68 -0
  144. package/catalogs/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +28 -0
  145. package/catalogs/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +75 -0
  146. package/catalogs/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +39 -0
  147. package/catalogs/skills/vercel-react-best-practices/rules/rerender-dependencies.md +45 -0
  148. package/catalogs/skills/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +40 -0
  149. package/catalogs/skills/vercel-react-best-practices/rules/rerender-derived-state.md +29 -0
  150. package/catalogs/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +74 -0
  151. package/catalogs/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  152. package/catalogs/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
  153. package/catalogs/skills/vercel-react-best-practices/rules/rerender-memo.md +44 -0
  154. package/catalogs/skills/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +45 -0
  155. package/catalogs/skills/vercel-react-best-practices/rules/rerender-no-inline-components.md +82 -0
  156. package/catalogs/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
  157. package/catalogs/skills/vercel-react-best-practices/rules/rerender-split-combined-hooks.md +64 -0
  158. package/catalogs/skills/vercel-react-best-practices/rules/rerender-transitions.md +40 -0
  159. package/catalogs/skills/vercel-react-best-practices/rules/rerender-use-deferred-value.md +59 -0
  160. package/catalogs/skills/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +73 -0
  161. package/catalogs/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +73 -0
  162. package/catalogs/skills/vercel-react-best-practices/rules/server-auth-actions.md +96 -0
  163. package/catalogs/skills/vercel-react-best-practices/rules/server-cache-lru.md +41 -0
  164. package/catalogs/skills/vercel-react-best-practices/rules/server-cache-react.md +76 -0
  165. package/catalogs/skills/vercel-react-best-practices/rules/server-dedup-props.md +65 -0
  166. package/catalogs/skills/vercel-react-best-practices/rules/server-hoist-static-io.md +149 -0
  167. package/catalogs/skills/vercel-react-best-practices/rules/server-no-shared-module-state.md +50 -0
  168. package/catalogs/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +83 -0
  169. package/catalogs/skills/vercel-react-best-practices/rules/server-parallel-nested-fetching.md +34 -0
  170. package/catalogs/skills/vercel-react-best-practices/rules/server-serialization.md +38 -0
  171. package/catalogs/skills/webapp-testing/LICENSE.txt +202 -0
  172. package/catalogs/skills/webapp-testing/SKILL.md +96 -0
  173. package/catalogs/skills/webapp-testing/examples/console_logging.py +35 -0
  174. package/catalogs/skills/webapp-testing/examples/element_discovery.py +40 -0
  175. package/catalogs/skills/webapp-testing/examples/static_html_automation.py +33 -0
  176. package/catalogs/skills/webapp-testing/scripts/with_server.py +106 -0
  177. package/catalogs/skills.json +1115 -0
  178. package/docs/skills/evidencias/2026-10-28-evaluacion-inicial-mcp-seguridad.md +118 -0
  179. package/docs/skills/evidencias/2026-10-28-incorporacion-mcp-seguridad.json +152 -0
  180. package/docs/skills/evidencias/2026-10-28-recomendador-preparacion.md +50 -0
  181. package/package.json +73 -4
  182. package/plugins/nexakit-modelo/.claude-plugin/plugin.json +1 -0
  183. package/plugins/nexakit-modelo/hooks/hooks.json +1 -0
  184. package/plugins/nexakit-modelo/hooks/register.js +48 -0
  185. package/plugins/nexakit-modelo/hooks/status.js +8 -0
  186. package/plugins/nexakit-modelo/tests/register.test.ts +21 -0
  187. package/plugins/nexakit-panel/.claude-plugin/plugin.json +1 -0
  188. package/plugins/nexakit-panel/README.md +20 -0
  189. package/plugins/nexakit-panel/hooks/hooks.json +1 -0
  190. package/plugins/nexakit-panel/hooks/lienzo.js +382 -0
  191. package/plugins/nexakit-panel/hooks/panel.js +279 -0
  192. package/plugins/nexakit-panel/hooks/register.tsx +248 -0
  193. package/plugins/nexakit-panel/tests/lienzo.test.ts +142 -0
  194. package/plugins/nexakit-panel/tests/panel.test.ts +240 -0
  195. package/plugins/nexakit-panel/tests/register.test.ts +167 -0
  196. package/plugins/nexakit-panel/types/index.d.ts +41 -0
  197. package/plugins/nexakit-sesion/.claude-plugin/plugin.json +1 -0
  198. package/plugins/nexakit-sesion/README.md +12 -0
  199. package/plugins/nexakit-sesion/hooks/aviso.js +38 -0
  200. package/plugins/nexakit-sesion/hooks/hooks.json +1 -0
  201. package/plugins/nexakit-sesion/hooks/register.js +28 -0
  202. package/plugins/nexakit-sesion/tests/register.test.ts +96 -0
  203. package/plugins/niveles/.claude-plugin/plugin.json +5 -0
  204. package/plugins/niveles/agents/nivel-alto.md +13 -0
  205. package/plugins/niveles/agents/nivel-exigente.md +13 -0
  206. package/plugins/niveles/agents/nivel-ligero.md +13 -0
  207. package/plugins/niveles/agents/nivel-normal.md +13 -0
  208. package/schemas/agent-client-adapter.schema.json +786 -0
  209. package/schemas/agent-client-auth-diagnostic.schema.json +801 -0
  210. package/schemas/agent-client-isolated-variant.schema.json +105 -0
  211. package/schemas/agent-client-isolated-verification.schema.json +99 -0
  212. package/schemas/agent-client-managed-preferences-invocation.schema.json +67 -0
  213. package/schemas/agent-client-managed-preferences.schema.json +63 -0
  214. package/schemas/agent-client-native-diagnostics.schema.json +85 -0
  215. package/schemas/agent-client-native-evaluation.schema.json +171 -0
  216. package/schemas/agent-client-native-preflight.schema.json +90 -0
  217. package/schemas/agent-client-output.schema.json +551 -0
  218. package/schemas/agent-client-runtime-fixture.schema.json +90 -0
  219. package/schemas/agent-client-runtime-local.schema.json +95 -0
  220. package/schemas/agent-client-runtime.schema.json +1288 -0
  221. package/schemas/agent-client-selective-config.schema.json +77 -0
  222. package/schemas/agent-client-supervised-local.schema.json +135 -0
  223. package/schemas/agent-client-supervised.schema.json +186 -0
  224. package/schemas/agent-model-preference.schema.json +573 -0
  225. package/schemas/agent-model-selection.schema.json +311 -0
  226. package/schemas/agent-task-approvals.schema.json +362 -0
  227. package/schemas/agent-task-prepare.schema.json +1324 -0
  228. package/schemas/agent-task-verify.schema.json +198 -0
  229. package/schemas/project-memory-update.schema.json +33 -0
  230. package/schemas/project-memory.schema.json +298 -0
  231. package/schemas/skill-catalog.schema.json +246 -0
  232. package/schemas/task-workflow-plan-output.schema.json +35 -0
  233. package/scripts/prepare-package.js +6 -0
  234. package/scripts/validate-skill-catalog.js +41 -0
  235. package/skills/cerrar-avisens/SKILL.md +12 -0
  236. package/skills/cerrar-memoria/SKILL.md +96 -0
  237. package/skills/cerrar-memoria/references/cierre.md +76 -0
  238. package/skills/decision-records/SKILL.md +27 -0
  239. package/skills/decision-records/agents/openai.yaml +7 -0
  240. package/skills/decision-records/references/adr-template.md +35 -0
  241. package/skills/differential-review/LICENSE.txt +427 -0
  242. package/skills/differential-review/SKILL.md +225 -0
  243. package/skills/differential-review/adversarial.md +203 -0
  244. package/skills/differential-review/agents/openai.yaml +6 -0
  245. package/skills/differential-review/assets/trail-of-bits-mark.svg +1 -0
  246. package/skills/differential-review/methodology.md +234 -0
  247. package/skills/differential-review/patterns.md +300 -0
  248. package/skills/differential-review/reporting.md +369 -0
  249. package/skills/elegir-modelo/SKILL.md +68 -0
  250. package/skills/elegir-modelo/modelos.mjs +108 -0
  251. package/skills/frontend-design/LICENSE.txt +177 -0
  252. package/skills/frontend-design/SKILL.md +71 -0
  253. package/skills/gemini/SKILL.md +52 -0
  254. package/skills/imagen/SKILL.md +12 -0
  255. package/skills/investigar/SKILL.md +11 -0
  256. package/skills/mcp-builder/LICENSE.txt +202 -0
  257. package/skills/mcp-builder/SKILL.md +236 -0
  258. package/skills/mcp-builder/reference/evaluation.md +602 -0
  259. package/skills/mcp-builder/reference/mcp_best_practices.md +249 -0
  260. package/skills/mcp-builder/reference/node_mcp_server.md +970 -0
  261. package/skills/mcp-builder/reference/python_mcp_server.md +719 -0
  262. package/skills/mcp-builder/scripts/connections.py +151 -0
  263. package/skills/mcp-builder/scripts/evaluation.py +373 -0
  264. package/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
  265. package/skills/mcp-builder/scripts/requirements.txt +2 -0
  266. package/skills/ordenar-proyecto/SKILL.md +56 -0
  267. package/skills/project-handoff/SKILL.md +53 -0
  268. package/skills/project-handoff/agents/openai.yaml +7 -0
  269. package/skills/project-handoff/references/handoff-template.md +35 -0
  270. package/skills/quality-gate/LICENSE.txt +26 -0
  271. package/skills/quality-gate/SKILL.md +44 -0
  272. package/skills/quality-gate/agents/openai.yaml +7 -0
  273. package/skills/quality-gate/references/review-checklist.md +42 -0
  274. package/skills/revisar/SKILL.md +11 -0
  275. package/skills/revisar-skill/LICENSE-find-skills.txt +26 -0
  276. package/skills/revisar-skill/SKILL.md +94 -0
  277. package/skills/revision-cruzada/SKILL.md +59 -0
  278. package/skills/web-design-guidelines/AGENTS.md +156 -0
  279. package/skills/web-design-guidelines/LICENSE.txt +21 -0
  280. package/skills/web-design-guidelines/SKILL.md +29 -0
  281. package/src/agent-models.js +131 -0
  282. package/src/brand.js +117 -0
  283. package/src/claude-code-runner.js +642 -0
  284. package/src/cli-executable.js +88 -0
  285. package/src/cli.js +778 -0
  286. package/src/client-adapter-plan.js +271 -0
  287. package/src/client-auth-diagnostic-parser.js +211 -0
  288. package/src/client-auth-diagnostic.js +257 -0
  289. package/src/client-isolated-variant.js +106 -0
  290. package/src/client-isolated-verification.js +130 -0
  291. package/src/client-local-platform.js +14 -0
  292. package/src/client-managed-preferences-invocation.js +209 -0
  293. package/src/client-managed-preferences.js +78 -0
  294. package/src/client-native-access.js +134 -0
  295. package/src/client-native-diagnostics.js +253 -0
  296. package/src/client-native-evaluation.js +106 -0
  297. package/src/client-native-preflight-files.js +68 -0
  298. package/src/client-native-preflight.js +95 -0
  299. package/src/client-output-json.js +118 -0
  300. package/src/client-output-parser.js +278 -0
  301. package/src/client-runtime-admission.js +80 -0
  302. package/src/client-runtime-coordinator.js +70 -0
  303. package/src/client-runtime-core.js +92 -0
  304. package/src/client-runtime-fixture-permit.js +20 -0
  305. package/src/client-runtime-fixture-protocol.js +39 -0
  306. package/src/client-runtime-state.js +67 -0
  307. package/src/client-runtime-store-files.js +91 -0
  308. package/src/client-runtime-store.js +239 -0
  309. package/src/client-runtime-supervisor.js +146 -0
  310. package/src/client-selective-config.js +195 -0
  311. package/src/client-selective-files.js +126 -0
  312. package/src/client-supervised-codes.js +32 -0
  313. package/src/client-supervised-contract.js +52 -0
  314. package/src/client-supervised-coordinator.js +36 -0
  315. package/src/client-supervised-permit.js +20 -0
  316. package/src/client-supervised-protocol.js +37 -0
  317. package/src/client-supervised-store.js +167 -0
  318. package/src/client-supervised-supervisor.js +167 -0
  319. package/src/client-supervised.js +160 -0
  320. package/src/codex-cli-runner.js +358 -0
  321. package/src/codex-delivery.js +101 -0
  322. package/src/connect.js +703 -0
  323. package/src/doctor.js +795 -0
  324. package/src/gemini-cli.js +76 -0
  325. package/src/gemini-files.js +45 -0
  326. package/src/gemini-tools.js +249 -0
  327. package/src/init.js +473 -0
  328. package/src/install-lock.js +127 -0
  329. package/src/install-registry.js +61 -0
  330. package/src/legacy-repair.js +71 -0
  331. package/src/level-agents.js +111 -0
  332. package/src/link-states.js +172 -0
  333. package/src/memory-connection-artifacts.js +192 -0
  334. package/src/memory-connection-descriptor.js +158 -0
  335. package/src/memory-connection-diagnostic.js +177 -0
  336. package/src/memory-connection-files.js +191 -0
  337. package/src/memory-connection-manifest.js +118 -0
  338. package/src/memory-connection-package.js +176 -0
  339. package/src/memory-connection-plan.js +211 -0
  340. package/src/memory-connection-skill.js +211 -0
  341. package/src/memory-connection-toml.js +153 -0
  342. package/src/memory-locator.js +118 -0
  343. package/src/memory-mcp-policy.js +181 -0
  344. package/src/memory-mcp-server.js +166 -0
  345. package/src/memory-mcp-transport.js +59 -0
  346. package/src/missing-dependencies.js +21 -0
  347. package/src/model-command.js +147 -0
  348. package/src/model-preference.js +235 -0
  349. package/src/model-selection.js +368 -0
  350. package/src/native/managed-preferences.c +100 -0
  351. package/src/native/managed-preferences.h +17 -0
  352. package/src/package-lock-path.js +13 -0
  353. package/src/panel-cli.js +182 -0
  354. package/src/peer-handoff.js +27 -0
  355. package/src/peer-inbox-cli.js +211 -0
  356. package/src/peer-review-mcp.js +210 -0
  357. package/src/peer-review-store.js +532 -0
  358. package/src/platform.js +24 -0
  359. package/src/project-root.js +41 -0
  360. package/src/project-signals.js +339 -0
  361. package/src/recommend-report.js +77 -0
  362. package/src/review-instructions.js +211 -0
  363. package/src/review-policy.js +35 -0
  364. package/src/revision-adapters.js +157 -0
  365. package/src/revision-context.js +86 -0
  366. package/src/revision-isolation.js +222 -0
  367. package/src/revision-process.js +103 -0
  368. package/src/revision-provenance.js +89 -0
  369. package/src/revision-snapshot.js +120 -0
  370. package/src/revision.js +242 -0
  371. package/src/runtime-fixtures/runtime-supervisor/child.cjs +3 -0
  372. package/src/runtime-fixtures/runtime-supervisor/fixture.cjs +49 -0
  373. package/src/runtime-fixtures/supervised/child.cjs +3 -0
  374. package/src/runtime-fixtures/supervised/fixture.cjs +47 -0
  375. package/src/sensitive-data.js +21 -0
  376. package/src/setup-apply.js +231 -0
  377. package/src/setup-plan.js +231 -0
  378. package/src/setup-state.js +277 -0
  379. package/src/setup-tui.js +555 -0
  380. package/src/skill-catalog-add.js +91 -0
  381. package/src/skill-catalog-audit.js +68 -0
  382. package/src/skill-catalog.js +170 -0
  383. package/src/skill-files.js +39 -0
  384. package/src/skill-recommendations.js +1673 -0
  385. package/src/skill-scan-report.js +14 -0
  386. package/src/skill-scan.js +178 -0
  387. package/src/stable-command.js +53 -0
  388. package/src/stable-install.js +222 -0
  389. package/src/status.js +200 -0
  390. package/src/superpowers.js +133 -0
  391. package/src/sync-apply.js +227 -0
  392. package/src/sync-files.js +109 -0
  393. package/src/sync-inspect.js +394 -0
  394. package/src/sync-ledger.js +94 -0
  395. package/src/sync-markdown.js +151 -0
  396. package/src/sync-proposal.js +84 -0
  397. package/src/sync-record.js +459 -0
  398. package/src/sync.js +360 -0
  399. package/src/task-approvals.js +367 -0
  400. package/src/task-cli.js +79 -0
  401. package/src/task-external-verifier.js +584 -0
  402. package/src/task-prepare-files.js +115 -0
  403. package/src/task-prepare.js +180 -0
  404. package/src/task-verify-cli.js +67 -0
  405. package/src/task-verify-files.js +188 -0
  406. package/src/task-verify.js +118 -0
  407. package/src/task-workflow-mcp.js +544 -0
  408. package/src/task-workflow-store.js +254 -0
  409. package/src/terminal-text.js +68 -0
  410. package/src/toolkit-cli.js +543 -0
  411. package/src/toolkit-commands-guide.js +107 -0
  412. package/src/toolkit-setup.js +614 -0
  413. package/src/usage-metrics.js +43 -0
  414. package/templates/agent-team/01-encargo.md +158 -0
  415. package/templates/agent-team/02-propuesta.md +132 -0
  416. package/templates/agent-team/03-revision.md +150 -0
  417. package/templates/agent-team/README.md +213 -0
  418. package/templates/model-inventory/01-inventario.md +154 -0
  419. package/templates/model-inventory/README.md +115 -0
  420. package/templates/project-memory/README.md +67 -0
  421. package/templates/project-memory/project-memory.example.json +53 -0
  422. package/templates/project-memory/skill/project-id/SKILL.md +37 -0
  423. package/templates/project-memory/skill/project-id/references/project-profile.md +44 -0
  424. package/templates/project-memory/vault/00-INICIO/Estado actual.md +44 -0
  425. package/templates/project-memory/vault/00-INICIO/Fuentes de verdad.md +30 -0
  426. package/templates/project-memory/vault/00-INICIO/Inicio del proyecto.md +44 -0
  427. package/templates/project-memory/vault/00-INICIO/Mantenimiento de la memoria.md +26 -0
  428. package/templates/project-memory/vault/00-INICIO/Mapa de la memoria.md +33 -0
  429. package/templates/project-memory/vault/00-INICIO/Registro de sincronizaci/303/263n.md" +28 -0
  430. package/templates/project-memory/vault/01-PRODUCTO/Producto.md +16 -0
  431. package/templates/project-memory/vault/02-ARQUITECTURA/Arquitectura.md +16 -0
  432. package/templates/project-memory/vault/03-IMPLEMENTACION/Implementaci/303/263n.md +15 -0
  433. package/templates/project-memory/vault/04-DECISIONES/Decisiones.md +19 -0
  434. package/templates/project-memory/vault/05-ENTREGAS/Entregas.md +12 -0
  435. package/templates/project-memory/vault/06-OPERACION/Operaci/303/263n.md +15 -0
  436. package/templates/project-memory/vault/07-AGENTES/Protocolo de agentes.md +33 -0
  437. package/templates/project-memory/vault/08-RECURSOS/Recursos.md +12 -0
  438. package/templates/project-memory/vault/09-ARCHIVO/README.md +5 -0
@@ -0,0 +1,1425 @@
1
+ {
2
+ "name": "nexakit",
3
+ "version": "0.2.0",
4
+ "lockfileVersion": 3,
5
+ "requires": true,
6
+ "packages": {
7
+ "": {
8
+ "name": "nexakit",
9
+ "version": "0.2.0",
10
+ "dependencies": {
11
+ "@modelcontextprotocol/sdk": "1.30.0",
12
+ "@modelcontextprotocol/server": "^2.4.0",
13
+ "@modelcontextprotocol/server-filesystem": "2026.8.31",
14
+ "ajv": "^8.17.1",
15
+ "eslint-visitor-keys": "5.0.1",
16
+ "toml-eslint-parser": "1.0.3",
17
+ "zod": "^4.6.7"
18
+ },
19
+ "bin": {
20
+ "nexakit": "./bin/nexakit.js",
21
+ "agent-toolkit": "./bin/agent-toolkit.js",
22
+ "project-memory": "./bin/project-memory.js",
23
+ "agent-task": "./bin/agent-task.js",
24
+ "agent-toolkit-mcp": "./bin/agent-toolkit-mcp.js",
25
+ "agent-toolkit-inbox": "./bin/agent-toolkit-inbox.js",
26
+ "project-memory-mcp": "./bin/project-memory-mcp.js",
27
+ "agent-toolkit-gemini": "./bin/agent-toolkit-gemini.js"
28
+ },
29
+ "devDependencies": {
30
+ "@modelcontextprotocol/client": "^2.4.0"
31
+ },
32
+ "engines": {
33
+ "node": ">=24"
34
+ },
35
+ "license": "MIT"
36
+ },
37
+ "node_modules/@hono/node-server": {
38
+ "version": "2.1.5",
39
+ "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-2.1.5.tgz",
40
+ "integrity": "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q==",
41
+ "license": "MIT",
42
+ "engines": {
43
+ "node": ">=20"
44
+ },
45
+ "peerDependencies": {
46
+ "hono": "^4 || ^5.0.0-0"
47
+ }
48
+ },
49
+ "node_modules/@modelcontextprotocol/client": {
50
+ "version": "2.4.0",
51
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/client/-/client-2.4.0.tgz",
52
+ "integrity": "sha512-LgrD2OphHuG12vfKFKz6SOnq7bKHQmhGJIAYdD+MZBn2npHEyry6uD8zvktodtl5CQM85MO0anUyD9JwmUmxww==",
53
+ "dev": true,
54
+ "license": "Apache-2.0",
55
+ "dependencies": {
56
+ "@modelcontextprotocol/core": "2.4.0",
57
+ "cross-spawn": "^7.0.5",
58
+ "eventsource": "^3.0.2",
59
+ "eventsource-parser": "^3.0.8",
60
+ "jose": "^6.1.3",
61
+ "pkce-challenge": "^5.0.0",
62
+ "zod": "^4.2.0"
63
+ },
64
+ "engines": {
65
+ "node": ">=20"
66
+ }
67
+ },
68
+ "node_modules/@modelcontextprotocol/core": {
69
+ "version": "2.4.0",
70
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/core/-/core-2.4.0.tgz",
71
+ "integrity": "sha512-z8QBKqdfXLPzkLQuG4xp8hrVEMm1PZ1IgxMN2sMbJiFiAKOWXnAzogXn2W4aqIBlP1ea6U5yiqVquvUNM1Cj6Q==",
72
+ "license": "Apache-2.0",
73
+ "dependencies": {
74
+ "zod": "^4.2.0"
75
+ },
76
+ "engines": {
77
+ "node": ">=20"
78
+ }
79
+ },
80
+ "node_modules/@modelcontextprotocol/sdk": {
81
+ "version": "1.30.0",
82
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.30.0.tgz",
83
+ "integrity": "sha512-xKd8OIzlqNzcqcNumGAa6g+PW2kjD5vrpcKOnfldAUPP3j7lnqMPwlTXQm8gF+UwH72z0lqaRbjr9hqGz0eITA==",
84
+ "license": "MIT",
85
+ "dependencies": {
86
+ "@hono/node-server": "^1.19.9 || ^2.0.5",
87
+ "ajv": "^8.17.1",
88
+ "ajv-formats": "^3.0.1",
89
+ "content-type": "^1.0.5",
90
+ "cors": "^2.8.5",
91
+ "cross-spawn": "^7.0.5",
92
+ "eventsource": "^3.0.2",
93
+ "eventsource-parser": "^3.0.0",
94
+ "express": "^5.2.1",
95
+ "express-rate-limit": "^8.2.1",
96
+ "hono": "^4.11.4",
97
+ "jose": "^6.1.3",
98
+ "json-schema-typed": "^8.0.2",
99
+ "pkce-challenge": "^5.0.0",
100
+ "raw-body": "^3.0.0",
101
+ "zod": "^3.25 || ^4.0",
102
+ "zod-to-json-schema": "^3.25.1"
103
+ },
104
+ "engines": {
105
+ "node": ">=18"
106
+ },
107
+ "peerDependencies": {
108
+ "@cfworker/json-schema": "^4.1.1",
109
+ "zod": "^3.25 || ^4.0"
110
+ },
111
+ "peerDependenciesMeta": {
112
+ "@cfworker/json-schema": {
113
+ "optional": true
114
+ },
115
+ "zod": {
116
+ "optional": false
117
+ }
118
+ }
119
+ },
120
+ "node_modules/@modelcontextprotocol/server": {
121
+ "version": "2.4.0",
122
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/server/-/server-2.4.0.tgz",
123
+ "integrity": "sha512-rgR9yxSaAJ+bcsi/XroT/S2AfPiIWloXAnrdfYSCms9ivVju0ishu/wW0J21Ho6+ZOR1r7RyeRbjiRuF87ix5Q==",
124
+ "license": "Apache-2.0",
125
+ "dependencies": {
126
+ "@modelcontextprotocol/core": "2.4.0",
127
+ "zod": "^4.2.0"
128
+ },
129
+ "engines": {
130
+ "node": ">=20"
131
+ }
132
+ },
133
+ "node_modules/@modelcontextprotocol/server-filesystem": {
134
+ "version": "2026.8.31",
135
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/server-filesystem/-/server-filesystem-2026.8.31.tgz",
136
+ "integrity": "sha512-kKaFkyAh6oipvc9+EAbJ552JafnMnOq5nzmzWkp1jJdBhTAAGpmIpWihUG1+rfNhmEFM98gUZDdCHCDD4v6a7Q==",
137
+ "deprecated": "Date-based versions are no longer published. This package has resumed semantic versioning at 1.0.0: install the latest version.",
138
+ "license": "SEE LICENSE IN LICENSE",
139
+ "dependencies": {
140
+ "@modelcontextprotocol/sdk": "^1.30.0",
141
+ "diff": "^8.0.3",
142
+ "glob": "^13.0.6",
143
+ "minimatch": "^10.0.1"
144
+ },
145
+ "bin": {
146
+ "mcp-server-filesystem": "dist/index.js"
147
+ }
148
+ },
149
+ "node_modules/accepts": {
150
+ "version": "2.0.0",
151
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz",
152
+ "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==",
153
+ "license": "MIT",
154
+ "dependencies": {
155
+ "mime-types": "^3.0.0",
156
+ "negotiator": "^1.0.0"
157
+ },
158
+ "engines": {
159
+ "node": ">= 0.6"
160
+ }
161
+ },
162
+ "node_modules/ajv": {
163
+ "version": "8.20.0",
164
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz",
165
+ "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==",
166
+ "license": "MIT",
167
+ "dependencies": {
168
+ "fast-deep-equal": "^3.1.3",
169
+ "fast-uri": "^3.0.1",
170
+ "json-schema-traverse": "^1.0.0",
171
+ "require-from-string": "^2.0.2"
172
+ },
173
+ "funding": {
174
+ "type": "github",
175
+ "url": "https://github.com/sponsors/epoberezkin"
176
+ }
177
+ },
178
+ "node_modules/ajv-formats": {
179
+ "version": "3.0.1",
180
+ "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz",
181
+ "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==",
182
+ "license": "MIT",
183
+ "dependencies": {
184
+ "ajv": "^8.0.0"
185
+ },
186
+ "peerDependencies": {
187
+ "ajv": "^8.0.0"
188
+ },
189
+ "peerDependenciesMeta": {
190
+ "ajv": {
191
+ "optional": true
192
+ }
193
+ }
194
+ },
195
+ "node_modules/balanced-match": {
196
+ "version": "4.0.4",
197
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
198
+ "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
199
+ "license": "MIT",
200
+ "engines": {
201
+ "node": "18 || 20 || >=22"
202
+ }
203
+ },
204
+ "node_modules/body-parser": {
205
+ "version": "2.4.0",
206
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.4.0.tgz",
207
+ "integrity": "sha512-Ifk1KcLrxaGt1occQagQNFNNOqRt1LFuehEnHHzB8Z6cRgIxRU1TBaiIsUiCdA+gy5PL7Y1IX31DNKkRmxtXjQ==",
208
+ "license": "MIT",
209
+ "dependencies": {
210
+ "bytes": "^3.1.2",
211
+ "content-type": "^2.1.0",
212
+ "debug": "^4.4.3",
213
+ "http-errors": "^2.0.1",
214
+ "iconv-lite": "^0.7.3",
215
+ "on-finished": "^2.4.1",
216
+ "qs": "^6.16.1",
217
+ "raw-body": "^3.0.2",
218
+ "type-is": "^2.1.0"
219
+ },
220
+ "engines": {
221
+ "node": ">=18"
222
+ },
223
+ "funding": {
224
+ "type": "opencollective",
225
+ "url": "https://opencollective.com/express"
226
+ }
227
+ },
228
+ "node_modules/body-parser/node_modules/content-type": {
229
+ "version": "2.1.0",
230
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz",
231
+ "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==",
232
+ "license": "MIT",
233
+ "engines": {
234
+ "node": ">=18"
235
+ },
236
+ "funding": {
237
+ "type": "opencollective",
238
+ "url": "https://opencollective.com/express"
239
+ }
240
+ },
241
+ "node_modules/brace-expansion": {
242
+ "version": "5.0.12",
243
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.12.tgz",
244
+ "integrity": "sha512-YovQ3rzhaLMIrDjNDMkNS01tea93qhEhG5xy8f6+R0l+dw3Ki+5sCoIoI942iuLZTHWogWktgwVDhU09iNEimQ==",
245
+ "license": "MIT",
246
+ "dependencies": {
247
+ "balanced-match": "^4.0.2"
248
+ },
249
+ "engines": {
250
+ "node": "20 || >=22"
251
+ }
252
+ },
253
+ "node_modules/bytes": {
254
+ "version": "3.1.2",
255
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
256
+ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
257
+ "license": "MIT",
258
+ "engines": {
259
+ "node": ">= 0.8"
260
+ }
261
+ },
262
+ "node_modules/call-bind-apply-helpers": {
263
+ "version": "1.0.2",
264
+ "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
265
+ "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
266
+ "license": "MIT",
267
+ "dependencies": {
268
+ "es-errors": "^1.3.0",
269
+ "function-bind": "^1.1.2"
270
+ },
271
+ "engines": {
272
+ "node": ">= 0.4"
273
+ }
274
+ },
275
+ "node_modules/call-bound": {
276
+ "version": "1.0.4",
277
+ "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
278
+ "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
279
+ "license": "MIT",
280
+ "dependencies": {
281
+ "call-bind-apply-helpers": "^1.0.2",
282
+ "get-intrinsic": "^1.3.0"
283
+ },
284
+ "engines": {
285
+ "node": ">= 0.4"
286
+ },
287
+ "funding": {
288
+ "url": "https://github.com/sponsors/ljharb"
289
+ }
290
+ },
291
+ "node_modules/content-disposition": {
292
+ "version": "2.0.1",
293
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-2.0.1.tgz",
294
+ "integrity": "sha512-e+H0ZXHSWYrENhQzw1LPuP4oF5MzVKmDU6d3hxlvaPEYLLg62MxtQNPRx4SYSuYJSBUgnQIG4HIN2tEtNv7Dog==",
295
+ "license": "MIT",
296
+ "engines": {
297
+ "node": ">=18"
298
+ },
299
+ "funding": {
300
+ "type": "opencollective",
301
+ "url": "https://opencollective.com/express"
302
+ }
303
+ },
304
+ "node_modules/content-type": {
305
+ "version": "1.0.5",
306
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
307
+ "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
308
+ "license": "MIT",
309
+ "engines": {
310
+ "node": ">= 0.6"
311
+ }
312
+ },
313
+ "node_modules/cookie": {
314
+ "version": "0.7.2",
315
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz",
316
+ "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==",
317
+ "license": "MIT",
318
+ "engines": {
319
+ "node": ">= 0.6"
320
+ }
321
+ },
322
+ "node_modules/cookie-signature": {
323
+ "version": "1.2.2",
324
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz",
325
+ "integrity": "sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==",
326
+ "license": "MIT",
327
+ "engines": {
328
+ "node": ">=6.6.0"
329
+ }
330
+ },
331
+ "node_modules/cors": {
332
+ "version": "2.8.6",
333
+ "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.6.tgz",
334
+ "integrity": "sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==",
335
+ "license": "MIT",
336
+ "dependencies": {
337
+ "object-assign": "^4",
338
+ "vary": "^1"
339
+ },
340
+ "engines": {
341
+ "node": ">= 0.10"
342
+ },
343
+ "funding": {
344
+ "type": "opencollective",
345
+ "url": "https://opencollective.com/express"
346
+ }
347
+ },
348
+ "node_modules/cross-spawn": {
349
+ "version": "7.0.6",
350
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
351
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
352
+ "license": "MIT",
353
+ "dependencies": {
354
+ "path-key": "^3.1.0",
355
+ "shebang-command": "^2.0.0",
356
+ "which": "^2.0.1"
357
+ },
358
+ "engines": {
359
+ "node": ">= 8"
360
+ }
361
+ },
362
+ "node_modules/debug": {
363
+ "version": "4.4.3",
364
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
365
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
366
+ "license": "MIT",
367
+ "dependencies": {
368
+ "ms": "^2.1.3"
369
+ },
370
+ "engines": {
371
+ "node": ">=6.0"
372
+ },
373
+ "peerDependenciesMeta": {
374
+ "supports-color": {
375
+ "optional": true
376
+ }
377
+ }
378
+ },
379
+ "node_modules/depd": {
380
+ "version": "2.0.0",
381
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
382
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
383
+ "license": "MIT",
384
+ "engines": {
385
+ "node": ">= 0.8"
386
+ }
387
+ },
388
+ "node_modules/diff": {
389
+ "version": "8.0.4",
390
+ "resolved": "https://registry.npmjs.org/diff/-/diff-8.0.4.tgz",
391
+ "integrity": "sha512-DPi0FmjiSU5EvQV0++GFDOJ9ASQUVFh5kD+OzOnYdi7n3Wpm9hWWGfB/O2blfHcMVTL5WkQXSnRiK9makhrcnw==",
392
+ "license": "BSD-3-Clause",
393
+ "engines": {
394
+ "node": ">=0.3.1"
395
+ }
396
+ },
397
+ "node_modules/dunder-proto": {
398
+ "version": "1.0.1",
399
+ "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
400
+ "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
401
+ "license": "MIT",
402
+ "dependencies": {
403
+ "call-bind-apply-helpers": "^1.0.1",
404
+ "es-errors": "^1.3.0",
405
+ "gopd": "^1.2.0"
406
+ },
407
+ "engines": {
408
+ "node": ">= 0.4"
409
+ }
410
+ },
411
+ "node_modules/ee-first": {
412
+ "version": "1.1.1",
413
+ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
414
+ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
415
+ "license": "MIT"
416
+ },
417
+ "node_modules/encodeurl": {
418
+ "version": "2.0.0",
419
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
420
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
421
+ "license": "MIT",
422
+ "engines": {
423
+ "node": ">= 0.8"
424
+ }
425
+ },
426
+ "node_modules/es-define-property": {
427
+ "version": "1.0.1",
428
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
429
+ "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
430
+ "license": "MIT",
431
+ "engines": {
432
+ "node": ">= 0.4"
433
+ }
434
+ },
435
+ "node_modules/es-errors": {
436
+ "version": "1.3.0",
437
+ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
438
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
439
+ "license": "MIT",
440
+ "engines": {
441
+ "node": ">= 0.4"
442
+ }
443
+ },
444
+ "node_modules/es-object-atoms": {
445
+ "version": "1.1.2",
446
+ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz",
447
+ "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==",
448
+ "license": "MIT",
449
+ "dependencies": {
450
+ "es-errors": "^1.3.0"
451
+ },
452
+ "engines": {
453
+ "node": ">= 0.4"
454
+ }
455
+ },
456
+ "node_modules/escape-html": {
457
+ "version": "1.0.3",
458
+ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
459
+ "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==",
460
+ "license": "MIT"
461
+ },
462
+ "node_modules/eslint-visitor-keys": {
463
+ "version": "5.0.1",
464
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz",
465
+ "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==",
466
+ "license": "Apache-2.0",
467
+ "engines": {
468
+ "node": "^20.19.0 || ^22.13.0 || >=24"
469
+ },
470
+ "funding": {
471
+ "url": "https://opencollective.com/eslint"
472
+ }
473
+ },
474
+ "node_modules/etag": {
475
+ "version": "1.8.1",
476
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
477
+ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
478
+ "license": "MIT",
479
+ "engines": {
480
+ "node": ">= 0.6"
481
+ }
482
+ },
483
+ "node_modules/eventsource": {
484
+ "version": "3.0.7",
485
+ "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz",
486
+ "integrity": "sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==",
487
+ "license": "MIT",
488
+ "dependencies": {
489
+ "eventsource-parser": "^3.0.1"
490
+ },
491
+ "engines": {
492
+ "node": ">=18.0.0"
493
+ }
494
+ },
495
+ "node_modules/eventsource-parser": {
496
+ "version": "3.1.1",
497
+ "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.1.1.tgz",
498
+ "integrity": "sha512-EKN1vKAMcZ8MlYMpaNuxN6R9yakzH6uajHcHVTqWJzvu5pWw9DyhbP35HH8MVBQ+dZjAfDxk+A8NiR9KWaXiyQ==",
499
+ "license": "MIT",
500
+ "engines": {
501
+ "node": ">=18.0.0"
502
+ }
503
+ },
504
+ "node_modules/express": {
505
+ "version": "5.3.0",
506
+ "resolved": "https://registry.npmjs.org/express/-/express-5.3.0.tgz",
507
+ "integrity": "sha512-qCqy1xSoaugxOD4IVHb1ZWdkvCF2W3aE2okKouWj8VwJ+ztskSiXoBnCSJqfKT+cVPJhuJqe9YLbY425+Zh00g==",
508
+ "license": "MIT",
509
+ "dependencies": {
510
+ "accepts": "^2.0.0",
511
+ "body-parser": "^2.3.0",
512
+ "content-disposition": "^2.0.1",
513
+ "content-type": "^2.0.0",
514
+ "cookie": "^0.7.1",
515
+ "cookie-signature": "^1.2.1",
516
+ "debug": "^4.4.0",
517
+ "depd": "^2.0.0",
518
+ "encodeurl": "^2.0.0",
519
+ "escape-html": "^1.0.3",
520
+ "etag": "^1.8.1",
521
+ "finalhandler": "^2.1.0",
522
+ "fresh": "^2.0.0",
523
+ "http-errors": "^2.0.0",
524
+ "merge-descriptors": "^2.0.0",
525
+ "mime-types": "^3.0.0",
526
+ "on-finished": "^2.4.1",
527
+ "once": "^1.4.0",
528
+ "parseurl": "^1.3.3",
529
+ "proxy-addr": "^2.0.8",
530
+ "qs": "^6.16.0",
531
+ "range-parser": "^1.2.1",
532
+ "router": "^2.2.0",
533
+ "send": "^1.1.0",
534
+ "serve-static": "^2.2.0",
535
+ "statuses": "^2.0.1",
536
+ "type-is": "^2.1.0",
537
+ "vary": "^1.1.2"
538
+ },
539
+ "engines": {
540
+ "node": ">= 18"
541
+ },
542
+ "funding": {
543
+ "type": "opencollective",
544
+ "url": "https://opencollective.com/express"
545
+ }
546
+ },
547
+ "node_modules/express-rate-limit": {
548
+ "version": "8.7.1",
549
+ "resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-8.7.1.tgz",
550
+ "integrity": "sha512-2FXbqkygil3mZiXzEtM0IjE/UBmBNot0J1GEVrJT4JbrvwOSoEtqtO+wHbiMQELWe1eNvHoYRg2dkjOid+6JkA==",
551
+ "license": "MIT",
552
+ "dependencies": {
553
+ "debug": "^4.4.3",
554
+ "ip-address": "^10.2.0"
555
+ },
556
+ "engines": {
557
+ "node": ">= 16"
558
+ },
559
+ "funding": {
560
+ "url": "https://github.com/sponsors/express-rate-limit"
561
+ },
562
+ "peerDependencies": {
563
+ "express": ">= 4.11"
564
+ }
565
+ },
566
+ "node_modules/express/node_modules/content-type": {
567
+ "version": "2.1.0",
568
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz",
569
+ "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==",
570
+ "license": "MIT",
571
+ "engines": {
572
+ "node": ">=18"
573
+ },
574
+ "funding": {
575
+ "type": "opencollective",
576
+ "url": "https://opencollective.com/express"
577
+ }
578
+ },
579
+ "node_modules/fast-deep-equal": {
580
+ "version": "3.1.3",
581
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
582
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
583
+ "license": "MIT"
584
+ },
585
+ "node_modules/fast-uri": {
586
+ "version": "3.1.9",
587
+ "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.9.tgz",
588
+ "integrity": "sha512-hS/0Wt3Ya043oKXs0sIxrMpKQITXhMLIrVAKKXi4gozGC9v7YRWVnXIZzjNPTO02M9BdxLCWqK1yRXgNziVyJQ==",
589
+ "funding": [
590
+ {
591
+ "type": "github",
592
+ "url": "https://github.com/sponsors/fastify"
593
+ },
594
+ {
595
+ "type": "opencollective",
596
+ "url": "https://opencollective.com/fastify"
597
+ }
598
+ ],
599
+ "license": "BSD-3-Clause"
600
+ },
601
+ "node_modules/finalhandler": {
602
+ "version": "2.1.1",
603
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.1.tgz",
604
+ "integrity": "sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA==",
605
+ "license": "MIT",
606
+ "dependencies": {
607
+ "debug": "^4.4.0",
608
+ "encodeurl": "^2.0.0",
609
+ "escape-html": "^1.0.3",
610
+ "on-finished": "^2.4.1",
611
+ "parseurl": "^1.3.3",
612
+ "statuses": "^2.0.1"
613
+ },
614
+ "engines": {
615
+ "node": ">= 18.0.0"
616
+ },
617
+ "funding": {
618
+ "type": "opencollective",
619
+ "url": "https://opencollective.com/express"
620
+ }
621
+ },
622
+ "node_modules/forwarded": {
623
+ "version": "0.2.0",
624
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
625
+ "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
626
+ "license": "MIT",
627
+ "engines": {
628
+ "node": ">= 0.6"
629
+ }
630
+ },
631
+ "node_modules/fresh": {
632
+ "version": "2.0.0",
633
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz",
634
+ "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==",
635
+ "license": "MIT",
636
+ "engines": {
637
+ "node": ">= 0.8"
638
+ }
639
+ },
640
+ "node_modules/function-bind": {
641
+ "version": "1.1.2",
642
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
643
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
644
+ "license": "MIT",
645
+ "funding": {
646
+ "url": "https://github.com/sponsors/ljharb"
647
+ }
648
+ },
649
+ "node_modules/get-intrinsic": {
650
+ "version": "1.3.0",
651
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
652
+ "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
653
+ "license": "MIT",
654
+ "dependencies": {
655
+ "call-bind-apply-helpers": "^1.0.2",
656
+ "es-define-property": "^1.0.1",
657
+ "es-errors": "^1.3.0",
658
+ "es-object-atoms": "^1.1.1",
659
+ "function-bind": "^1.1.2",
660
+ "get-proto": "^1.0.1",
661
+ "gopd": "^1.2.0",
662
+ "has-symbols": "^1.1.0",
663
+ "hasown": "^2.0.2",
664
+ "math-intrinsics": "^1.1.0"
665
+ },
666
+ "engines": {
667
+ "node": ">= 0.4"
668
+ },
669
+ "funding": {
670
+ "url": "https://github.com/sponsors/ljharb"
671
+ }
672
+ },
673
+ "node_modules/get-proto": {
674
+ "version": "1.0.1",
675
+ "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
676
+ "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
677
+ "license": "MIT",
678
+ "dependencies": {
679
+ "dunder-proto": "^1.0.1",
680
+ "es-object-atoms": "^1.0.0"
681
+ },
682
+ "engines": {
683
+ "node": ">= 0.4"
684
+ }
685
+ },
686
+ "node_modules/glob": {
687
+ "version": "13.0.6",
688
+ "resolved": "https://registry.npmjs.org/glob/-/glob-13.0.6.tgz",
689
+ "integrity": "sha512-Wjlyrolmm8uDpm/ogGyXZXb1Z+Ca2B8NbJwqBVg0axK9GbBeoS7yGV6vjXnYdGm6X53iehEuxxbyiKp8QmN4Vw==",
690
+ "license": "BlueOak-1.0.0",
691
+ "dependencies": {
692
+ "minimatch": "^10.2.2",
693
+ "minipass": "^7.1.3",
694
+ "path-scurry": "^2.0.2"
695
+ },
696
+ "engines": {
697
+ "node": "18 || 20 || >=22"
698
+ },
699
+ "funding": {
700
+ "url": "https://github.com/sponsors/isaacs"
701
+ }
702
+ },
703
+ "node_modules/gopd": {
704
+ "version": "1.2.0",
705
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
706
+ "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
707
+ "license": "MIT",
708
+ "engines": {
709
+ "node": ">= 0.4"
710
+ },
711
+ "funding": {
712
+ "url": "https://github.com/sponsors/ljharb"
713
+ }
714
+ },
715
+ "node_modules/has-symbols": {
716
+ "version": "1.1.0",
717
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
718
+ "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
719
+ "license": "MIT",
720
+ "engines": {
721
+ "node": ">= 0.4"
722
+ },
723
+ "funding": {
724
+ "url": "https://github.com/sponsors/ljharb"
725
+ }
726
+ },
727
+ "node_modules/hasown": {
728
+ "version": "2.0.4",
729
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz",
730
+ "integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==",
731
+ "license": "MIT",
732
+ "dependencies": {
733
+ "function-bind": "^1.1.2"
734
+ },
735
+ "engines": {
736
+ "node": ">= 0.4"
737
+ }
738
+ },
739
+ "node_modules/hono": {
740
+ "version": "4.13.14",
741
+ "resolved": "https://registry.npmjs.org/hono/-/hono-4.13.14.tgz",
742
+ "integrity": "sha512-yhRLQ21U6qa9Hsu2N7Qcbh8tE+WKEcoErjIo56LeSGiGXGp9sA7UpE86Ui9uexb61KakiGwuHMn2QdV7w6i6kQ==",
743
+ "license": "MIT",
744
+ "engines": {
745
+ "node": ">=16.9.0"
746
+ }
747
+ },
748
+ "node_modules/http-errors": {
749
+ "version": "2.0.1",
750
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz",
751
+ "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==",
752
+ "license": "MIT",
753
+ "dependencies": {
754
+ "depd": "~2.0.0",
755
+ "inherits": "~2.0.4",
756
+ "setprototypeof": "~1.2.0",
757
+ "statuses": "~2.0.2",
758
+ "toidentifier": "~1.0.1"
759
+ },
760
+ "engines": {
761
+ "node": ">= 0.8"
762
+ },
763
+ "funding": {
764
+ "type": "opencollective",
765
+ "url": "https://opencollective.com/express"
766
+ }
767
+ },
768
+ "node_modules/iconv-lite": {
769
+ "version": "0.7.3",
770
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.3.tgz",
771
+ "integrity": "sha512-IKXpvIzjnC9XTAUbVBcMfGS0EPaIXtW6v+zr+RRp+hqULEpo0owZax6wyRwPOJbWbzjYspQwusTsfVr0ifh4uQ==",
772
+ "license": "MIT",
773
+ "dependencies": {
774
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
775
+ },
776
+ "engines": {
777
+ "node": ">=0.10.0"
778
+ },
779
+ "funding": {
780
+ "type": "opencollective",
781
+ "url": "https://opencollective.com/express"
782
+ }
783
+ },
784
+ "node_modules/inherits": {
785
+ "version": "2.0.4",
786
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
787
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
788
+ "license": "ISC"
789
+ },
790
+ "node_modules/ip-address": {
791
+ "version": "10.7.5",
792
+ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.7.5.tgz",
793
+ "integrity": "sha512-t2v0rkILYv9WXmSL7TpAaU3HXgaFYOPUcH3QHgwQ++gpJuH3bqyMy4Fvt/DJCTKwzH3Cf+bAp5W/mFL39KPLzA==",
794
+ "license": "MIT",
795
+ "engines": {
796
+ "node": ">= 12"
797
+ }
798
+ },
799
+ "node_modules/ipaddr.js": {
800
+ "version": "1.9.1",
801
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
802
+ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
803
+ "license": "MIT",
804
+ "engines": {
805
+ "node": ">= 0.10"
806
+ }
807
+ },
808
+ "node_modules/is-promise": {
809
+ "version": "4.0.0",
810
+ "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz",
811
+ "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==",
812
+ "license": "MIT"
813
+ },
814
+ "node_modules/isexe": {
815
+ "version": "2.0.0",
816
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
817
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
818
+ "license": "ISC"
819
+ },
820
+ "node_modules/jose": {
821
+ "version": "6.2.13",
822
+ "resolved": "https://registry.npmjs.org/jose/-/jose-6.2.13.tgz",
823
+ "integrity": "sha512-7TIg10ZE1x82YediN+lcrPNvGMKge9yFHQD+Qho/b8y2adfugU3AsvvHfxV0fzyFllT6l9xCjf4RWY9g/Z9PJQ==",
824
+ "license": "MIT",
825
+ "funding": {
826
+ "url": "https://github.com/sponsors/panva"
827
+ }
828
+ },
829
+ "node_modules/json-schema-traverse": {
830
+ "version": "1.0.0",
831
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
832
+ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
833
+ "license": "MIT"
834
+ },
835
+ "node_modules/json-schema-typed": {
836
+ "version": "8.0.2",
837
+ "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-8.0.2.tgz",
838
+ "integrity": "sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA==",
839
+ "license": "BSD-2-Clause"
840
+ },
841
+ "node_modules/lru-cache": {
842
+ "version": "11.5.3",
843
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.3.tgz",
844
+ "integrity": "sha512-U4N8FgzmWxc8k1VH8Kr6lQg18U7Fjvby6wXHVRX/ZZ7IwWbRMgrRbP0Wrb5q5NVinryp4SQampHKdvtecItxUg==",
845
+ "license": "BlueOak-1.0.0",
846
+ "engines": {
847
+ "node": "20 || >=22"
848
+ }
849
+ },
850
+ "node_modules/math-intrinsics": {
851
+ "version": "1.1.0",
852
+ "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
853
+ "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
854
+ "license": "MIT",
855
+ "engines": {
856
+ "node": ">= 0.4"
857
+ }
858
+ },
859
+ "node_modules/media-typer": {
860
+ "version": "1.1.1",
861
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.1.tgz",
862
+ "integrity": "sha512-yz3xRaG20c6/BOzvYoDaGtPmGscs7YivItZEEqe6GbwNfHuxu9YNmvnEkMzKldAGY4/80pRcQRZSEnhquk9XuQ==",
863
+ "license": "MIT",
864
+ "engines": {
865
+ "node": ">= 0.8"
866
+ },
867
+ "funding": {
868
+ "type": "opencollective",
869
+ "url": "https://opencollective.com/express"
870
+ }
871
+ },
872
+ "node_modules/merge-descriptors": {
873
+ "version": "2.0.0",
874
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz",
875
+ "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==",
876
+ "license": "MIT",
877
+ "engines": {
878
+ "node": ">=18"
879
+ },
880
+ "funding": {
881
+ "url": "https://github.com/sponsors/sindresorhus"
882
+ }
883
+ },
884
+ "node_modules/mime-db": {
885
+ "version": "1.54.0",
886
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz",
887
+ "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==",
888
+ "license": "MIT",
889
+ "engines": {
890
+ "node": ">= 0.6"
891
+ }
892
+ },
893
+ "node_modules/mime-types": {
894
+ "version": "3.0.2",
895
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz",
896
+ "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==",
897
+ "license": "MIT",
898
+ "dependencies": {
899
+ "mime-db": "^1.54.0"
900
+ },
901
+ "engines": {
902
+ "node": ">=18"
903
+ },
904
+ "funding": {
905
+ "type": "opencollective",
906
+ "url": "https://opencollective.com/express"
907
+ }
908
+ },
909
+ "node_modules/minimatch": {
910
+ "version": "10.2.6",
911
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz",
912
+ "integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==",
913
+ "license": "BlueOak-1.0.0",
914
+ "dependencies": {
915
+ "brace-expansion": "^5.0.8"
916
+ },
917
+ "engines": {
918
+ "node": "18 || 20 || >=22"
919
+ },
920
+ "funding": {
921
+ "url": "https://github.com/sponsors/isaacs"
922
+ }
923
+ },
924
+ "node_modules/minipass": {
925
+ "version": "7.1.3",
926
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz",
927
+ "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==",
928
+ "license": "BlueOak-1.0.0",
929
+ "engines": {
930
+ "node": ">=16 || 14 >=14.17"
931
+ }
932
+ },
933
+ "node_modules/ms": {
934
+ "version": "2.1.3",
935
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
936
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
937
+ "license": "MIT"
938
+ },
939
+ "node_modules/negotiator": {
940
+ "version": "1.1.0",
941
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.1.0.tgz",
942
+ "integrity": "sha512-NMPBRMJgiQHjbd8phG3Vebdx4kZ1H121rbl5IkMqeOsahptB9BKo/d7oJ3zTXqTgagn2bWlNSXkh0QUGM31RYg==",
943
+ "license": "MIT",
944
+ "dependencies": {
945
+ "content-type": "^2.1.0"
946
+ },
947
+ "engines": {
948
+ "node": ">=18"
949
+ },
950
+ "funding": {
951
+ "type": "opencollective",
952
+ "url": "https://opencollective.com/express"
953
+ }
954
+ },
955
+ "node_modules/negotiator/node_modules/content-type": {
956
+ "version": "2.1.0",
957
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz",
958
+ "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==",
959
+ "license": "MIT",
960
+ "engines": {
961
+ "node": ">=18"
962
+ },
963
+ "funding": {
964
+ "type": "opencollective",
965
+ "url": "https://opencollective.com/express"
966
+ }
967
+ },
968
+ "node_modules/object-assign": {
969
+ "version": "4.1.1",
970
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
971
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
972
+ "license": "MIT",
973
+ "engines": {
974
+ "node": ">=0.10.0"
975
+ }
976
+ },
977
+ "node_modules/object-inspect": {
978
+ "version": "1.13.4",
979
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
980
+ "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
981
+ "license": "MIT",
982
+ "engines": {
983
+ "node": ">= 0.4"
984
+ },
985
+ "funding": {
986
+ "url": "https://github.com/sponsors/ljharb"
987
+ }
988
+ },
989
+ "node_modules/on-finished": {
990
+ "version": "2.4.2",
991
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.2.tgz",
992
+ "integrity": "sha512-ATWUv387i+nLD49EiDoOft5scf32Vsdz3ktrQJG9bi7jRFmaXTssvyvj1EmeKVVgvesbqUtvQQvaS2TpTukAZQ==",
993
+ "license": "MIT",
994
+ "dependencies": {
995
+ "ee-first": "1.1.1"
996
+ },
997
+ "engines": {
998
+ "node": ">= 0.8"
999
+ },
1000
+ "funding": {
1001
+ "type": "opencollective",
1002
+ "url": "https://opencollective.com/express"
1003
+ }
1004
+ },
1005
+ "node_modules/once": {
1006
+ "version": "1.4.0",
1007
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
1008
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
1009
+ "license": "ISC",
1010
+ "dependencies": {
1011
+ "wrappy": "1"
1012
+ }
1013
+ },
1014
+ "node_modules/parseurl": {
1015
+ "version": "1.3.3",
1016
+ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
1017
+ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
1018
+ "license": "MIT",
1019
+ "engines": {
1020
+ "node": ">= 0.8"
1021
+ }
1022
+ },
1023
+ "node_modules/path-key": {
1024
+ "version": "3.1.1",
1025
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
1026
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
1027
+ "license": "MIT",
1028
+ "engines": {
1029
+ "node": ">=8"
1030
+ }
1031
+ },
1032
+ "node_modules/path-scurry": {
1033
+ "version": "2.0.2",
1034
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.2.tgz",
1035
+ "integrity": "sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==",
1036
+ "license": "BlueOak-1.0.0",
1037
+ "dependencies": {
1038
+ "lru-cache": "^11.0.0",
1039
+ "minipass": "^7.1.2"
1040
+ },
1041
+ "engines": {
1042
+ "node": "18 || 20 || >=22"
1043
+ },
1044
+ "funding": {
1045
+ "url": "https://github.com/sponsors/isaacs"
1046
+ }
1047
+ },
1048
+ "node_modules/path-to-regexp": {
1049
+ "version": "8.4.2",
1050
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.2.tgz",
1051
+ "integrity": "sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA==",
1052
+ "license": "MIT",
1053
+ "funding": {
1054
+ "type": "opencollective",
1055
+ "url": "https://opencollective.com/express"
1056
+ }
1057
+ },
1058
+ "node_modules/pkce-challenge": {
1059
+ "version": "5.0.1",
1060
+ "resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.1.tgz",
1061
+ "integrity": "sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ==",
1062
+ "license": "MIT",
1063
+ "engines": {
1064
+ "node": ">=16.20.0"
1065
+ }
1066
+ },
1067
+ "node_modules/proxy-addr": {
1068
+ "version": "2.0.8",
1069
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.8.tgz",
1070
+ "integrity": "sha512-5nnx0yGyVUcY6t9RnWcARWtwT9F1D8O9rt08htPvnd49W1IgZtmLkhu9WfMzQj1cFxjHIO6connUNVW5k7AVyQ==",
1071
+ "license": "MIT",
1072
+ "dependencies": {
1073
+ "forwarded": "0.2.0",
1074
+ "ipaddr.js": "1.9.1"
1075
+ },
1076
+ "engines": {
1077
+ "node": ">= 0.10"
1078
+ },
1079
+ "funding": {
1080
+ "type": "opencollective",
1081
+ "url": "https://opencollective.com/express"
1082
+ }
1083
+ },
1084
+ "node_modules/qs": {
1085
+ "version": "6.16.1",
1086
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.16.1.tgz",
1087
+ "integrity": "sha512-5Px6J7rfHBAGUhNQ3es4YzcOdBBw0SDcVtThJml4RdnKw4tKs2epA0kPZ+K8X+WiHktT93RHVcQ/3ym5aTCgtg==",
1088
+ "license": "BSD-3-Clause",
1089
+ "dependencies": {
1090
+ "es-define-property": "^1.0.1",
1091
+ "side-channel": "^1.1.1"
1092
+ },
1093
+ "engines": {
1094
+ "node": ">=0.6"
1095
+ },
1096
+ "funding": {
1097
+ "url": "https://github.com/sponsors/ljharb"
1098
+ }
1099
+ },
1100
+ "node_modules/range-parser": {
1101
+ "version": "1.3.0",
1102
+ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.3.0.tgz",
1103
+ "integrity": "sha512-hek2mFQpPuI4E1BBKrSto+BU3e3x4xuarsbiwr3+lf7p44juvFMV0XFWQAP3xUyqXA4RrXLIoaSUGbSt056ZMw==",
1104
+ "license": "MIT",
1105
+ "engines": {
1106
+ "node": ">= 0.6"
1107
+ },
1108
+ "funding": {
1109
+ "type": "opencollective",
1110
+ "url": "https://opencollective.com/express"
1111
+ }
1112
+ },
1113
+ "node_modules/raw-body": {
1114
+ "version": "3.0.2",
1115
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-3.0.2.tgz",
1116
+ "integrity": "sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA==",
1117
+ "license": "MIT",
1118
+ "dependencies": {
1119
+ "bytes": "~3.1.2",
1120
+ "http-errors": "~2.0.1",
1121
+ "iconv-lite": "~0.7.0",
1122
+ "unpipe": "~1.0.0"
1123
+ },
1124
+ "engines": {
1125
+ "node": ">= 0.10"
1126
+ }
1127
+ },
1128
+ "node_modules/require-from-string": {
1129
+ "version": "2.0.2",
1130
+ "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
1131
+ "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
1132
+ "license": "MIT",
1133
+ "engines": {
1134
+ "node": ">=0.10.0"
1135
+ }
1136
+ },
1137
+ "node_modules/router": {
1138
+ "version": "2.2.0",
1139
+ "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz",
1140
+ "integrity": "sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==",
1141
+ "license": "MIT",
1142
+ "dependencies": {
1143
+ "debug": "^4.4.0",
1144
+ "depd": "^2.0.0",
1145
+ "is-promise": "^4.0.0",
1146
+ "parseurl": "^1.3.3",
1147
+ "path-to-regexp": "^8.0.0"
1148
+ },
1149
+ "engines": {
1150
+ "node": ">= 18"
1151
+ }
1152
+ },
1153
+ "node_modules/safer-buffer": {
1154
+ "version": "2.1.2",
1155
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
1156
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
1157
+ "license": "MIT"
1158
+ },
1159
+ "node_modules/send": {
1160
+ "version": "1.2.1",
1161
+ "resolved": "https://registry.npmjs.org/send/-/send-1.2.1.tgz",
1162
+ "integrity": "sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==",
1163
+ "license": "MIT",
1164
+ "dependencies": {
1165
+ "debug": "^4.4.3",
1166
+ "encodeurl": "^2.0.0",
1167
+ "escape-html": "^1.0.3",
1168
+ "etag": "^1.8.1",
1169
+ "fresh": "^2.0.0",
1170
+ "http-errors": "^2.0.1",
1171
+ "mime-types": "^3.0.2",
1172
+ "ms": "^2.1.3",
1173
+ "on-finished": "^2.4.1",
1174
+ "range-parser": "^1.2.1",
1175
+ "statuses": "^2.0.2"
1176
+ },
1177
+ "engines": {
1178
+ "node": ">= 18"
1179
+ },
1180
+ "funding": {
1181
+ "type": "opencollective",
1182
+ "url": "https://opencollective.com/express"
1183
+ }
1184
+ },
1185
+ "node_modules/serve-static": {
1186
+ "version": "2.2.1",
1187
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-2.2.1.tgz",
1188
+ "integrity": "sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw==",
1189
+ "license": "MIT",
1190
+ "dependencies": {
1191
+ "encodeurl": "^2.0.0",
1192
+ "escape-html": "^1.0.3",
1193
+ "parseurl": "^1.3.3",
1194
+ "send": "^1.2.0"
1195
+ },
1196
+ "engines": {
1197
+ "node": ">= 18"
1198
+ },
1199
+ "funding": {
1200
+ "type": "opencollective",
1201
+ "url": "https://opencollective.com/express"
1202
+ }
1203
+ },
1204
+ "node_modules/setprototypeof": {
1205
+ "version": "1.2.0",
1206
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
1207
+ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
1208
+ "license": "ISC"
1209
+ },
1210
+ "node_modules/shebang-command": {
1211
+ "version": "2.0.0",
1212
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
1213
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
1214
+ "license": "MIT",
1215
+ "dependencies": {
1216
+ "shebang-regex": "^3.0.0"
1217
+ },
1218
+ "engines": {
1219
+ "node": ">=8"
1220
+ }
1221
+ },
1222
+ "node_modules/shebang-regex": {
1223
+ "version": "3.0.0",
1224
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
1225
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
1226
+ "license": "MIT",
1227
+ "engines": {
1228
+ "node": ">=8"
1229
+ }
1230
+ },
1231
+ "node_modules/side-channel": {
1232
+ "version": "1.1.1",
1233
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz",
1234
+ "integrity": "sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==",
1235
+ "license": "MIT",
1236
+ "dependencies": {
1237
+ "es-errors": "^1.3.0",
1238
+ "object-inspect": "^1.13.4",
1239
+ "side-channel-list": "^1.0.1",
1240
+ "side-channel-map": "^1.0.1",
1241
+ "side-channel-weakmap": "^1.0.2"
1242
+ },
1243
+ "engines": {
1244
+ "node": ">= 0.4"
1245
+ },
1246
+ "funding": {
1247
+ "url": "https://github.com/sponsors/ljharb"
1248
+ }
1249
+ },
1250
+ "node_modules/side-channel-list": {
1251
+ "version": "1.0.1",
1252
+ "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz",
1253
+ "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==",
1254
+ "license": "MIT",
1255
+ "dependencies": {
1256
+ "es-errors": "^1.3.0",
1257
+ "object-inspect": "^1.13.4"
1258
+ },
1259
+ "engines": {
1260
+ "node": ">= 0.4"
1261
+ },
1262
+ "funding": {
1263
+ "url": "https://github.com/sponsors/ljharb"
1264
+ }
1265
+ },
1266
+ "node_modules/side-channel-map": {
1267
+ "version": "1.0.1",
1268
+ "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
1269
+ "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
1270
+ "license": "MIT",
1271
+ "dependencies": {
1272
+ "call-bound": "^1.0.2",
1273
+ "es-errors": "^1.3.0",
1274
+ "get-intrinsic": "^1.2.5",
1275
+ "object-inspect": "^1.13.3"
1276
+ },
1277
+ "engines": {
1278
+ "node": ">= 0.4"
1279
+ },
1280
+ "funding": {
1281
+ "url": "https://github.com/sponsors/ljharb"
1282
+ }
1283
+ },
1284
+ "node_modules/side-channel-weakmap": {
1285
+ "version": "1.0.2",
1286
+ "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
1287
+ "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
1288
+ "license": "MIT",
1289
+ "dependencies": {
1290
+ "call-bound": "^1.0.2",
1291
+ "es-errors": "^1.3.0",
1292
+ "get-intrinsic": "^1.2.5",
1293
+ "object-inspect": "^1.13.3",
1294
+ "side-channel-map": "^1.0.1"
1295
+ },
1296
+ "engines": {
1297
+ "node": ">= 0.4"
1298
+ },
1299
+ "funding": {
1300
+ "url": "https://github.com/sponsors/ljharb"
1301
+ }
1302
+ },
1303
+ "node_modules/statuses": {
1304
+ "version": "2.0.2",
1305
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz",
1306
+ "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==",
1307
+ "license": "MIT",
1308
+ "engines": {
1309
+ "node": ">= 0.8"
1310
+ }
1311
+ },
1312
+ "node_modules/toidentifier": {
1313
+ "version": "1.0.1",
1314
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
1315
+ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
1316
+ "license": "MIT",
1317
+ "engines": {
1318
+ "node": ">=0.6"
1319
+ }
1320
+ },
1321
+ "node_modules/toml-eslint-parser": {
1322
+ "version": "1.0.3",
1323
+ "resolved": "https://registry.npmjs.org/toml-eslint-parser/-/toml-eslint-parser-1.0.3.tgz",
1324
+ "integrity": "sha512-A5F0cM6+mDleacLIEUkmfpkBbnHJFV1d2rprHU2MXNk7mlxHq2zGojA+SRvQD1RoMo9gqjZPWEaKG4v1BQ48lw==",
1325
+ "license": "MIT",
1326
+ "dependencies": {
1327
+ "eslint-visitor-keys": "^5.0.0"
1328
+ },
1329
+ "engines": {
1330
+ "node": "^20.19.0 || ^22.13.0 || >=24"
1331
+ },
1332
+ "funding": {
1333
+ "url": "https://github.com/sponsors/ota-meshi"
1334
+ }
1335
+ },
1336
+ "node_modules/type-is": {
1337
+ "version": "2.1.0",
1338
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-2.1.0.tgz",
1339
+ "integrity": "sha512-faYHw0anBbc/kWF3zFTEnxSFOAGUX9GFbOBthvDdLsIlEoWOFOtS0zgCiQYwIskL9iGXZL3kAXD8OoZ4GmMATA==",
1340
+ "license": "MIT",
1341
+ "dependencies": {
1342
+ "content-type": "^2.0.0",
1343
+ "media-typer": "^1.1.0",
1344
+ "mime-types": "^3.0.0"
1345
+ },
1346
+ "engines": {
1347
+ "node": ">= 18"
1348
+ },
1349
+ "funding": {
1350
+ "type": "opencollective",
1351
+ "url": "https://opencollective.com/express"
1352
+ }
1353
+ },
1354
+ "node_modules/type-is/node_modules/content-type": {
1355
+ "version": "2.1.0",
1356
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz",
1357
+ "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==",
1358
+ "license": "MIT",
1359
+ "engines": {
1360
+ "node": ">=18"
1361
+ },
1362
+ "funding": {
1363
+ "type": "opencollective",
1364
+ "url": "https://opencollective.com/express"
1365
+ }
1366
+ },
1367
+ "node_modules/unpipe": {
1368
+ "version": "1.0.0",
1369
+ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
1370
+ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
1371
+ "license": "MIT",
1372
+ "engines": {
1373
+ "node": ">= 0.8"
1374
+ }
1375
+ },
1376
+ "node_modules/vary": {
1377
+ "version": "1.1.2",
1378
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
1379
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
1380
+ "license": "MIT",
1381
+ "engines": {
1382
+ "node": ">= 0.8"
1383
+ }
1384
+ },
1385
+ "node_modules/which": {
1386
+ "version": "2.0.2",
1387
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
1388
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
1389
+ "license": "ISC",
1390
+ "dependencies": {
1391
+ "isexe": "^2.0.0"
1392
+ },
1393
+ "bin": {
1394
+ "node-which": "bin/node-which"
1395
+ },
1396
+ "engines": {
1397
+ "node": ">= 8"
1398
+ }
1399
+ },
1400
+ "node_modules/wrappy": {
1401
+ "version": "1.0.2",
1402
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1403
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
1404
+ "license": "ISC"
1405
+ },
1406
+ "node_modules/zod": {
1407
+ "version": "4.6.7",
1408
+ "resolved": "https://registry.npmjs.org/zod/-/zod-4.6.7.tgz",
1409
+ "integrity": "sha512-g8W2D2kU6a8untc053fX1uVBKzM7yqAxW/3zwk83+6RyF2+SKOuV+c0wBDhUwzV1PaGapmZH+rmcUzPf+3CGwg==",
1410
+ "license": "MIT",
1411
+ "funding": {
1412
+ "url": "https://github.com/sponsors/colinhacks"
1413
+ }
1414
+ },
1415
+ "node_modules/zod-to-json-schema": {
1416
+ "version": "3.25.2",
1417
+ "resolved": "https://registry.npmjs.org/zod-to-json-schema/-/zod-to-json-schema-3.25.2.tgz",
1418
+ "integrity": "sha512-O/PgfnpT1xKSDeQYSCfRI5Gy3hPf91mKVDuYLUHZJMiDFptvP41MSnWofm8dnCm0256ZNfZIM7DSzuSMAFnjHA==",
1419
+ "license": "ISC",
1420
+ "peerDependencies": {
1421
+ "zod": "^3.25.28 || ^4"
1422
+ }
1423
+ }
1424
+ }
1425
+ }