ostacky 0.5.9 → 0.6.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 (911) hide show
  1. package/README.md +20 -19
  2. package/assets/agents/ostacky.md +191 -61
  3. package/assets/commands/install-stack.md +137 -66
  4. package/assets/mcp/openspec/bun.lock +20 -0
  5. package/assets/mcp/openspec/index.js +300 -0
  6. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/LICENSE +216 -0
  7. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/README.md +40 -0
  8. package/assets/mcp/{ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-BUWfrB3C.d.cts → openspec/node_modules/@modelcontextprotocol/core/dist/auth-B2Q9_Vxp.d.cts} +768 -465
  9. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/auth-B2Q9_Vxp.d.cts.map +1 -0
  10. package/assets/mcp/{ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-DFgbUATV.mjs → openspec/node_modules/@modelcontextprotocol/core/dist/auth-CUe6YdwF.mjs} +31 -6
  11. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/auth-CUe6YdwF.mjs.map +1 -0
  12. package/assets/mcp/{ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-CNbu4K4a.d.mts → openspec/node_modules/@modelcontextprotocol/core/dist/auth-CVhIKulL.d.mts} +768 -465
  13. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/auth-CVhIKulL.d.mts.map +1 -0
  14. package/assets/mcp/{ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-CEFpHq32.cjs → openspec/node_modules/@modelcontextprotocol/core/dist/auth-CfDMXiII.cjs} +42 -5
  15. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/auth-CfDMXiII.cjs.map +1 -0
  16. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/index.cjs +175 -0
  17. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/index.d.cts +2 -0
  18. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/index.d.mts +2 -0
  19. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/index.mjs +3 -0
  20. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/internal.cjs +201 -0
  21. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/internal.d.cts +99 -0
  22. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/internal.d.cts.map +1 -0
  23. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/internal.d.mts +99 -0
  24. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/internal.d.mts.map +1 -0
  25. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/dist/internal.mjs +3 -0
  26. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/core/package.json +85 -0
  27. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/LICENSE +216 -0
  28. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/README.md +30 -0
  29. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/ajvProvider-B_4czhCS.d.cts +1054 -0
  30. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/ajvProvider-B_4czhCS.d.cts.map +1 -0
  31. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/ajvProvider-BdSo9BII.d.mts +1054 -0
  32. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/ajvProvider-BdSo9BII.d.mts.map +1 -0
  33. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/ajvProvider-Brn-Q2J_.cjs +7086 -0
  34. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/ajvProvider-Brn-Q2J_.cjs.map +1 -0
  35. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/ajvProvider-CplOkyLC.mjs +7069 -0
  36. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/ajvProvider-CplOkyLC.mjs.map +1 -0
  37. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-BYRW5af5.d.mts +59 -0
  38. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-BYRW5af5.d.mts.map +1 -0
  39. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-Bd-iTHAF.mjs +970 -0
  40. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-Bd-iTHAF.mjs.map +1 -0
  41. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-D9GAttn8.d.cts +59 -0
  42. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-D9GAttn8.d.cts.map +1 -0
  43. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-ojcZaap3.cjs +976 -0
  44. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-ojcZaap3.cjs.map +1 -0
  45. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/chunk-Bnu9O96Y.cjs +60 -0
  46. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/chunk-Br0eD_fh.mjs +42 -0
  47. package/assets/mcp/{ostacky-controller/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-D93NefGZ.d.mts → openspec/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-CEckaSEs.d.mts} +41 -13
  48. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-CEckaSEs.d.mts.map +1 -0
  49. package/assets/mcp/{ostacky-controller/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-BRM5MGf9.d.cts → openspec/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-DzBzpE4_.d.cts} +41 -13
  50. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-DzBzpE4_.d.cts.map +1 -0
  51. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/index.cjs +1999 -0
  52. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/index.cjs.map +1 -0
  53. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/index.d.cts +732 -0
  54. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/index.d.cts.map +1 -0
  55. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/index.d.mts +732 -0
  56. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/index.d.mts.map +1 -0
  57. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/index.mjs +1814 -0
  58. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/index.mjs.map +1 -0
  59. package/assets/mcp/{ostacky-controller/node_modules/@modelcontextprotocol/server/dist/mcp-CzU40gwu.cjs → openspec/node_modules/@modelcontextprotocol/server/dist/mcp-DM1iHYFo.cjs} +55 -14
  60. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/mcp-DM1iHYFo.cjs.map +1 -0
  61. package/assets/mcp/{ostacky-controller/node_modules/@modelcontextprotocol/server/dist/mcp-Ctiu4nBa.mjs → openspec/node_modules/@modelcontextprotocol/server/dist/mcp-IJurDZVN.mjs} +50 -15
  62. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/mcp-IJurDZVN.mjs.map +1 -0
  63. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.cjs +23 -0
  64. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.cjs.map +1 -0
  65. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.d.cts +11 -0
  66. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.d.cts.map +1 -0
  67. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.d.mts +11 -0
  68. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.d.mts.map +1 -0
  69. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.mjs +22 -0
  70. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.mjs.map +1 -0
  71. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsNode.cjs +12 -0
  72. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsNode.d.cts +3 -0
  73. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsNode.d.mts +3 -0
  74. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsNode.mjs +4 -0
  75. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.cjs +30 -0
  76. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.cjs.map +1 -0
  77. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.d.cts +10 -0
  78. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.d.cts.map +1 -0
  79. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.d.mts +10 -0
  80. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.d.mts.map +1 -0
  81. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.mjs +29 -0
  82. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.mjs.map +1 -0
  83. package/assets/mcp/{ostacky-controller/node_modules/@modelcontextprotocol/server/dist/src-D9A7ArDn.cjs → openspec/node_modules/@modelcontextprotocol/server/dist/src-BX_fm-dB.cjs} +91 -22
  84. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/src-BX_fm-dB.cjs.map +1 -0
  85. package/assets/mcp/{ostacky-controller/node_modules/@modelcontextprotocol/server/dist/src-D5Nfqtoz.mjs → openspec/node_modules/@modelcontextprotocol/server/dist/src-D86MbS1I.mjs} +93 -24
  86. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/src-D86MbS1I.mjs.map +1 -0
  87. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/stdio.cjs +564 -0
  88. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/stdio.cjs.map +1 -0
  89. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/stdio.d.cts +107 -0
  90. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/stdio.d.cts.map +1 -0
  91. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/stdio.d.mts +107 -0
  92. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/stdio.d.mts.map +1 -0
  93. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/stdio.mjs +562 -0
  94. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/stdio.mjs.map +1 -0
  95. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/types-DsbMXNFL.d.cts +1099 -0
  96. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/types-DsbMXNFL.d.cts.map +1 -0
  97. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/types-mS0yxCL0.d.mts +1099 -0
  98. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/types-mS0yxCL0.d.mts.map +1 -0
  99. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/validators/ajv.cjs +5 -0
  100. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/validators/ajv.d.cts +2 -0
  101. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/validators/ajv.d.mts +2 -0
  102. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/validators/ajv.mjs +3 -0
  103. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/validators/cfWorker.cjs +3 -0
  104. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/validators/cfWorker.d.cts +2 -0
  105. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/validators/cfWorker.d.mts +2 -0
  106. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/dist/validators/cfWorker.mjs +3 -0
  107. package/assets/mcp/openspec/node_modules/@modelcontextprotocol/server/package.json +160 -0
  108. package/assets/mcp/openspec/node_modules/zod/LICENSE +21 -0
  109. package/assets/mcp/openspec/node_modules/zod/README.md +191 -0
  110. package/assets/mcp/openspec/node_modules/zod/index.cjs +33 -0
  111. package/assets/mcp/openspec/node_modules/zod/index.d.cts +4 -0
  112. package/assets/mcp/openspec/node_modules/zod/index.d.ts +4 -0
  113. package/assets/mcp/openspec/node_modules/zod/index.js +4 -0
  114. package/assets/mcp/openspec/node_modules/zod/locales/index.cjs +17 -0
  115. package/assets/mcp/openspec/node_modules/zod/locales/index.d.cts +1 -0
  116. package/assets/mcp/openspec/node_modules/zod/locales/index.d.ts +1 -0
  117. package/assets/mcp/openspec/node_modules/zod/locales/index.js +1 -0
  118. package/assets/mcp/openspec/node_modules/zod/locales/package.json +7 -0
  119. package/assets/mcp/openspec/node_modules/zod/mini/index.cjs +32 -0
  120. package/assets/mcp/openspec/node_modules/zod/mini/index.d.cts +3 -0
  121. package/assets/mcp/openspec/node_modules/zod/mini/index.d.ts +3 -0
  122. package/assets/mcp/openspec/node_modules/zod/mini/index.js +3 -0
  123. package/assets/mcp/openspec/node_modules/zod/mini/package.json +7 -0
  124. package/assets/mcp/openspec/node_modules/zod/package.json +135 -0
  125. package/assets/mcp/openspec/node_modules/zod/src/index.ts +4 -0
  126. package/assets/mcp/openspec/node_modules/zod/src/locales/index.ts +1 -0
  127. package/assets/mcp/openspec/node_modules/zod/src/mini/index.ts +3 -0
  128. package/assets/mcp/openspec/node_modules/zod/src/v3/ZodError.ts +330 -0
  129. package/assets/mcp/openspec/node_modules/zod/src/v3/benchmarks/datetime.ts +58 -0
  130. package/assets/mcp/openspec/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +80 -0
  131. package/assets/mcp/openspec/node_modules/zod/src/v3/benchmarks/index.ts +59 -0
  132. package/assets/mcp/openspec/node_modules/zod/src/v3/benchmarks/ipv4.ts +57 -0
  133. package/assets/mcp/openspec/node_modules/zod/src/v3/benchmarks/object.ts +69 -0
  134. package/assets/mcp/openspec/node_modules/zod/src/v3/benchmarks/primitives.ts +162 -0
  135. package/assets/mcp/openspec/node_modules/zod/src/v3/benchmarks/realworld.ts +63 -0
  136. package/assets/mcp/openspec/node_modules/zod/src/v3/benchmarks/string.ts +55 -0
  137. package/assets/mcp/openspec/node_modules/zod/src/v3/benchmarks/union.ts +80 -0
  138. package/assets/mcp/openspec/node_modules/zod/src/v3/errors.ts +13 -0
  139. package/assets/mcp/openspec/node_modules/zod/src/v3/external.ts +6 -0
  140. package/assets/mcp/openspec/node_modules/zod/src/v3/helpers/enumUtil.ts +17 -0
  141. package/assets/mcp/openspec/node_modules/zod/src/v3/helpers/errorUtil.ts +8 -0
  142. package/assets/mcp/openspec/node_modules/zod/src/v3/helpers/parseUtil.ts +176 -0
  143. package/assets/mcp/openspec/node_modules/zod/src/v3/helpers/partialUtil.ts +34 -0
  144. package/assets/mcp/openspec/node_modules/zod/src/v3/helpers/typeAliases.ts +2 -0
  145. package/assets/mcp/openspec/node_modules/zod/src/v3/helpers/util.ts +224 -0
  146. package/assets/mcp/openspec/node_modules/zod/src/v3/index.ts +4 -0
  147. package/assets/mcp/openspec/node_modules/zod/src/v3/locales/en.ts +124 -0
  148. package/assets/mcp/openspec/node_modules/zod/src/v3/standard-schema.ts +113 -0
  149. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/Mocker.ts +54 -0
  150. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/all-errors.test.ts +157 -0
  151. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/anyunknown.test.ts +28 -0
  152. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/array.test.ts +71 -0
  153. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/async-parsing.test.ts +388 -0
  154. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/async-refinements.test.ts +46 -0
  155. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/base.test.ts +29 -0
  156. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/bigint.test.ts +55 -0
  157. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/branded.test.ts +53 -0
  158. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/catch.test.ts +220 -0
  159. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/coerce.test.ts +133 -0
  160. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/complex.test.ts +70 -0
  161. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/custom.test.ts +31 -0
  162. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/date.test.ts +32 -0
  163. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/deepmasking.test.ts +186 -0
  164. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/default.test.ts +112 -0
  165. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/description.test.ts +33 -0
  166. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +315 -0
  167. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/enum.test.ts +80 -0
  168. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/error.test.ts +551 -0
  169. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/firstparty.test.ts +87 -0
  170. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +21 -0
  171. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/function.test.ts +261 -0
  172. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/generics.test.ts +48 -0
  173. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/instanceof.test.ts +37 -0
  174. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/intersection.test.ts +110 -0
  175. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/language-server.source.ts +76 -0
  176. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/language-server.test.ts +207 -0
  177. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/literal.test.ts +36 -0
  178. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/map.test.ts +110 -0
  179. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/masking.test.ts +4 -0
  180. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/mocker.test.ts +19 -0
  181. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/nan.test.ts +24 -0
  182. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/nativeEnum.test.ts +87 -0
  183. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/nullable.test.ts +42 -0
  184. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/number.test.ts +176 -0
  185. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/object-augmentation.test.ts +29 -0
  186. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +29 -0
  187. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/object.test.ts +434 -0
  188. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/optional.test.ts +42 -0
  189. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/parseUtil.test.ts +23 -0
  190. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/parser.test.ts +41 -0
  191. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/partials.test.ts +243 -0
  192. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/pickomit.test.ts +111 -0
  193. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/pipeline.test.ts +29 -0
  194. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/preprocess.test.ts +186 -0
  195. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/primitive.test.ts +440 -0
  196. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/promise.test.ts +90 -0
  197. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/readonly.test.ts +194 -0
  198. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/record.test.ts +171 -0
  199. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/recursive.test.ts +197 -0
  200. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/refine.test.ts +313 -0
  201. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/safeparse.test.ts +27 -0
  202. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/set.test.ts +142 -0
  203. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/standard-schema.test.ts +83 -0
  204. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/string.test.ts +916 -0
  205. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/transformer.test.ts +233 -0
  206. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/tuple.test.ts +90 -0
  207. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/unions.test.ts +57 -0
  208. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/validations.test.ts +133 -0
  209. package/assets/mcp/openspec/node_modules/zod/src/v3/tests/void.test.ts +15 -0
  210. package/assets/mcp/openspec/node_modules/zod/src/v3/types.ts +5138 -0
  211. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/checks.ts +32 -0
  212. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/coerce.ts +27 -0
  213. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/compat.ts +70 -0
  214. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/errors.ts +82 -0
  215. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/external.ts +52 -0
  216. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/from-json-schema.ts +659 -0
  217. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/index.ts +5 -0
  218. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/iso.ts +90 -0
  219. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/parse.ts +82 -0
  220. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/schemas.ts +2672 -0
  221. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +26 -0
  222. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/apply.test.ts +59 -0
  223. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/array.test.ts +264 -0
  224. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/assignability.test.ts +216 -0
  225. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +381 -0
  226. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +68 -0
  227. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/base.test.ts +7 -0
  228. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/bigint.test.ts +54 -0
  229. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/brand.test.ts +106 -0
  230. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/catch.test.ts +326 -0
  231. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +20 -0
  232. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +573 -0
  233. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/codec.test.ts +703 -0
  234. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/coerce.test.ts +160 -0
  235. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/continuability.test.ts +374 -0
  236. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/custom.test.ts +40 -0
  237. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/date.test.ts +62 -0
  238. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/datetime.test.ts +302 -0
  239. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/default.test.ts +409 -0
  240. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +27 -0
  241. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/description.test.ts +32 -0
  242. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +197 -0
  243. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +694 -0
  244. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/enum.test.ts +285 -0
  245. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +807 -0
  246. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/error.test.ts +711 -0
  247. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/file.test.ts +96 -0
  248. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +179 -0
  249. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +26 -0
  250. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +895 -0
  251. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/function.test.ts +360 -0
  252. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/generics.test.ts +72 -0
  253. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/global-config.test.ts +39 -0
  254. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/hash.test.ts +68 -0
  255. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/index.test.ts +939 -0
  256. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +60 -0
  257. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/intersection.test.ts +198 -0
  258. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +46 -0
  259. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/json.test.ts +109 -0
  260. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/lazy.test.ts +227 -0
  261. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/literal.test.ts +117 -0
  262. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/locales_ka.test.ts +29 -0
  263. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/locales_ro.test.ts +24 -0
  264. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/map.test.ts +330 -0
  265. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/nan.test.ts +21 -0
  266. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +168 -0
  267. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +101 -0
  268. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/nullable.test.ts +22 -0
  269. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/number.test.ts +325 -0
  270. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/object.test.ts +717 -0
  271. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/optional.test.ts +333 -0
  272. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/partial.test.ts +450 -0
  273. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +211 -0
  274. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/pipe.test.ts +101 -0
  275. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/prefault.test.ts +74 -0
  276. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +26 -0
  277. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +351 -0
  278. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/primitive.test.ts +175 -0
  279. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/promise.test.ts +81 -0
  280. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +23 -0
  281. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/readonly.test.ts +252 -0
  282. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/record.test.ts +717 -0
  283. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +631 -0
  284. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/refine.test.ts +633 -0
  285. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/registries.test.ts +243 -0
  286. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/set.test.ts +181 -0
  287. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +134 -0
  288. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +125 -0
  289. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/string.test.ts +1224 -0
  290. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +106 -0
  291. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +771 -0
  292. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +438 -0
  293. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +3125 -0
  294. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/transform.test.ts +378 -0
  295. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/tuple.test.ts +496 -0
  296. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/union.test.ts +273 -0
  297. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/url.test.ts +13 -0
  298. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/validations.test.ts +283 -0
  299. package/assets/mcp/openspec/node_modules/zod/src/v4/classic/tests/void.test.ts +12 -0
  300. package/assets/mcp/openspec/node_modules/zod/src/v4/core/api.ts +1823 -0
  301. package/assets/mcp/openspec/node_modules/zod/src/v4/core/checks.ts +1293 -0
  302. package/assets/mcp/openspec/node_modules/zod/src/v4/core/config.ts +15 -0
  303. package/assets/mcp/openspec/node_modules/zod/src/v4/core/core.ts +153 -0
  304. package/assets/mcp/openspec/node_modules/zod/src/v4/core/doc.ts +44 -0
  305. package/assets/mcp/openspec/node_modules/zod/src/v4/core/errors.ts +455 -0
  306. package/assets/mcp/openspec/node_modules/zod/src/v4/core/index.ts +16 -0
  307. package/assets/mcp/openspec/node_modules/zod/src/v4/core/json-schema-generator.ts +126 -0
  308. package/assets/mcp/openspec/node_modules/zod/src/v4/core/json-schema-processors.ts +666 -0
  309. package/assets/mcp/openspec/node_modules/zod/src/v4/core/json-schema.ts +147 -0
  310. package/assets/mcp/openspec/node_modules/zod/src/v4/core/parse.ts +195 -0
  311. package/assets/mcp/openspec/node_modules/zod/src/v4/core/regexes.ts +190 -0
  312. package/assets/mcp/openspec/node_modules/zod/src/v4/core/registries.ts +105 -0
  313. package/assets/mcp/openspec/node_modules/zod/src/v4/core/schemas.ts +4730 -0
  314. package/assets/mcp/openspec/node_modules/zod/src/v4/core/standard-schema.ts +159 -0
  315. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/extend.test.ts +59 -0
  316. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/index.test.ts +46 -0
  317. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/locales/be.test.ts +124 -0
  318. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/locales/el.test.ts +215 -0
  319. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/locales/en.test.ts +22 -0
  320. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/locales/es.test.ts +181 -0
  321. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +72 -0
  322. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/locales/he.test.ts +379 -0
  323. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/locales/hr.test.ts +163 -0
  324. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +46 -0
  325. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +128 -0
  326. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +69 -0
  327. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +105 -0
  328. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +125 -0
  329. package/assets/mcp/openspec/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +45 -0
  330. package/assets/mcp/openspec/node_modules/zod/src/v4/core/to-json-schema.ts +622 -0
  331. package/assets/mcp/openspec/node_modules/zod/src/v4/core/util.ts +983 -0
  332. package/assets/mcp/openspec/node_modules/zod/src/v4/core/versions.ts +5 -0
  333. package/assets/mcp/openspec/node_modules/zod/src/v4/core/zsf.ts +323 -0
  334. package/assets/mcp/openspec/node_modules/zod/src/v4/index.ts +4 -0
  335. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ar.ts +115 -0
  336. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/az.ts +111 -0
  337. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/be.ts +176 -0
  338. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/bg.ts +128 -0
  339. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ca.ts +116 -0
  340. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/cs.ts +118 -0
  341. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/da.ts +123 -0
  342. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/de.ts +116 -0
  343. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/el.ts +121 -0
  344. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/en.ts +123 -0
  345. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/eo.ts +118 -0
  346. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/es.ts +141 -0
  347. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/fa.ts +126 -0
  348. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/fi.ts +121 -0
  349. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/fr-CA.ts +116 -0
  350. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/fr.ts +132 -0
  351. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/he.ts +246 -0
  352. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/hr.ts +131 -0
  353. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/hu.ts +117 -0
  354. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/hy.ts +164 -0
  355. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/id.ts +115 -0
  356. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/index.ts +52 -0
  357. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/is.ts +119 -0
  358. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/it.ts +116 -0
  359. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ja.ts +114 -0
  360. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ka.ts +123 -0
  361. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/kh.ts +7 -0
  362. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/km.ts +119 -0
  363. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ko.ts +121 -0
  364. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/lt.ts +239 -0
  365. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/mk.ts +118 -0
  366. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ms.ts +115 -0
  367. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/nl.ts +121 -0
  368. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/no.ts +116 -0
  369. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ota.ts +117 -0
  370. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/pl.ts +118 -0
  371. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ps.ts +126 -0
  372. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/pt.ts +116 -0
  373. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ro.ts +129 -0
  374. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ru.ts +176 -0
  375. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/sl.ts +118 -0
  376. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/sv.ts +119 -0
  377. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ta.ts +118 -0
  378. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/th.ts +119 -0
  379. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/tr.ts +111 -0
  380. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ua.ts +7 -0
  381. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/uk.ts +117 -0
  382. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/ur.ts +119 -0
  383. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/uz.ts +117 -0
  384. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/vi.ts +117 -0
  385. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/yo.ts +124 -0
  386. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/zh-CN.ts +116 -0
  387. package/assets/mcp/openspec/node_modules/zod/src/v4/locales/zh-TW.ts +115 -0
  388. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/checks.ts +32 -0
  389. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/coerce.ts +27 -0
  390. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/external.ts +41 -0
  391. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/index.ts +3 -0
  392. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/iso.ts +66 -0
  393. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/parse.ts +14 -0
  394. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/schemas.ts +1947 -0
  395. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/apply.test.ts +24 -0
  396. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/assignability.test.ts +129 -0
  397. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/brand.test.ts +94 -0
  398. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/checks.test.ts +144 -0
  399. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/codec.test.ts +548 -0
  400. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/computed.test.ts +36 -0
  401. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/error.test.ts +22 -0
  402. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/functions.test.ts +5 -0
  403. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/index.test.ts +993 -0
  404. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/number.test.ts +95 -0
  405. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/object.test.ts +227 -0
  406. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +43 -0
  407. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +325 -0
  408. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +50 -0
  409. package/assets/mcp/openspec/node_modules/zod/src/v4/mini/tests/string.test.ts +352 -0
  410. package/assets/mcp/openspec/node_modules/zod/src/v4-mini/index.ts +3 -0
  411. package/assets/mcp/openspec/node_modules/zod/v3/ZodError.cjs +138 -0
  412. package/assets/mcp/openspec/node_modules/zod/v3/ZodError.d.cts +164 -0
  413. package/assets/mcp/openspec/node_modules/zod/v3/ZodError.d.ts +164 -0
  414. package/assets/mcp/openspec/node_modules/zod/v3/ZodError.js +133 -0
  415. package/assets/mcp/openspec/node_modules/zod/v3/errors.cjs +17 -0
  416. package/assets/mcp/openspec/node_modules/zod/v3/errors.d.cts +5 -0
  417. package/assets/mcp/openspec/node_modules/zod/v3/errors.d.ts +5 -0
  418. package/assets/mcp/openspec/node_modules/zod/v3/errors.js +9 -0
  419. package/assets/mcp/openspec/node_modules/zod/v3/external.cjs +22 -0
  420. package/assets/mcp/openspec/node_modules/zod/v3/external.d.cts +6 -0
  421. package/assets/mcp/openspec/node_modules/zod/v3/external.d.ts +6 -0
  422. package/assets/mcp/openspec/node_modules/zod/v3/external.js +6 -0
  423. package/assets/mcp/openspec/node_modules/zod/v3/helpers/enumUtil.cjs +2 -0
  424. package/assets/mcp/openspec/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
  425. package/assets/mcp/openspec/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
  426. package/assets/mcp/openspec/node_modules/zod/v3/helpers/enumUtil.js +1 -0
  427. package/assets/mcp/openspec/node_modules/zod/v3/helpers/errorUtil.cjs +9 -0
  428. package/assets/mcp/openspec/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
  429. package/assets/mcp/openspec/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
  430. package/assets/mcp/openspec/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  431. package/assets/mcp/openspec/node_modules/zod/v3/helpers/parseUtil.cjs +124 -0
  432. package/assets/mcp/openspec/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
  433. package/assets/mcp/openspec/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
  434. package/assets/mcp/openspec/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  435. package/assets/mcp/openspec/node_modules/zod/v3/helpers/partialUtil.cjs +2 -0
  436. package/assets/mcp/openspec/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
  437. package/assets/mcp/openspec/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
  438. package/assets/mcp/openspec/node_modules/zod/v3/helpers/partialUtil.js +1 -0
  439. package/assets/mcp/openspec/node_modules/zod/v3/helpers/typeAliases.cjs +2 -0
  440. package/assets/mcp/openspec/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
  441. package/assets/mcp/openspec/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
  442. package/assets/mcp/openspec/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  443. package/assets/mcp/openspec/node_modules/zod/v3/helpers/util.cjs +137 -0
  444. package/assets/mcp/openspec/node_modules/zod/v3/helpers/util.d.cts +85 -0
  445. package/assets/mcp/openspec/node_modules/zod/v3/helpers/util.d.ts +85 -0
  446. package/assets/mcp/openspec/node_modules/zod/v3/helpers/util.js +133 -0
  447. package/assets/mcp/openspec/node_modules/zod/v3/index.cjs +33 -0
  448. package/assets/mcp/openspec/node_modules/zod/v3/index.d.cts +4 -0
  449. package/assets/mcp/openspec/node_modules/zod/v3/index.d.ts +4 -0
  450. package/assets/mcp/openspec/node_modules/zod/v3/index.js +4 -0
  451. package/assets/mcp/openspec/node_modules/zod/v3/locales/en.cjs +112 -0
  452. package/assets/mcp/openspec/node_modules/zod/v3/locales/en.d.cts +3 -0
  453. package/assets/mcp/openspec/node_modules/zod/v3/locales/en.d.ts +3 -0
  454. package/assets/mcp/openspec/node_modules/zod/v3/locales/en.js +109 -0
  455. package/assets/mcp/openspec/node_modules/zod/v3/package.json +7 -0
  456. package/assets/mcp/openspec/node_modules/zod/v3/standard-schema.cjs +2 -0
  457. package/assets/mcp/openspec/node_modules/zod/v3/standard-schema.d.cts +102 -0
  458. package/assets/mcp/openspec/node_modules/zod/v3/standard-schema.d.ts +102 -0
  459. package/assets/mcp/openspec/node_modules/zod/v3/standard-schema.js +1 -0
  460. package/assets/mcp/openspec/node_modules/zod/v3/types.cjs +3777 -0
  461. package/assets/mcp/openspec/node_modules/zod/v3/types.d.cts +1034 -0
  462. package/assets/mcp/openspec/node_modules/zod/v3/types.d.ts +1034 -0
  463. package/assets/mcp/openspec/node_modules/zod/v3/types.js +3695 -0
  464. package/assets/mcp/openspec/node_modules/zod/v4/classic/checks.cjs +33 -0
  465. package/assets/mcp/openspec/node_modules/zod/v4/classic/checks.d.cts +1 -0
  466. package/assets/mcp/openspec/node_modules/zod/v4/classic/checks.d.ts +1 -0
  467. package/assets/mcp/openspec/node_modules/zod/v4/classic/checks.js +1 -0
  468. package/assets/mcp/openspec/node_modules/zod/v4/classic/coerce.cjs +47 -0
  469. package/assets/mcp/openspec/node_modules/zod/v4/classic/coerce.d.cts +17 -0
  470. package/assets/mcp/openspec/node_modules/zod/v4/classic/coerce.d.ts +17 -0
  471. package/assets/mcp/openspec/node_modules/zod/v4/classic/coerce.js +17 -0
  472. package/assets/mcp/openspec/node_modules/zod/v4/classic/compat.cjs +61 -0
  473. package/assets/mcp/openspec/node_modules/zod/v4/classic/compat.d.cts +50 -0
  474. package/assets/mcp/openspec/node_modules/zod/v4/classic/compat.d.ts +50 -0
  475. package/assets/mcp/openspec/node_modules/zod/v4/classic/compat.js +31 -0
  476. package/assets/mcp/openspec/node_modules/zod/v4/classic/errors.cjs +74 -0
  477. package/assets/mcp/openspec/node_modules/zod/v4/classic/errors.d.cts +30 -0
  478. package/assets/mcp/openspec/node_modules/zod/v4/classic/errors.d.ts +30 -0
  479. package/assets/mcp/openspec/node_modules/zod/v4/classic/errors.js +48 -0
  480. package/assets/mcp/openspec/node_modules/zod/v4/classic/external.cjs +73 -0
  481. package/assets/mcp/openspec/node_modules/zod/v4/classic/external.d.cts +16 -0
  482. package/assets/mcp/openspec/node_modules/zod/v4/classic/external.d.ts +16 -0
  483. package/assets/mcp/openspec/node_modules/zod/v4/classic/external.js +20 -0
  484. package/assets/mcp/openspec/node_modules/zod/v4/classic/from-json-schema.cjs +625 -0
  485. package/assets/mcp/openspec/node_modules/zod/v4/classic/from-json-schema.d.cts +12 -0
  486. package/assets/mcp/openspec/node_modules/zod/v4/classic/from-json-schema.d.ts +12 -0
  487. package/assets/mcp/openspec/node_modules/zod/v4/classic/from-json-schema.js +599 -0
  488. package/assets/mcp/openspec/node_modules/zod/v4/classic/index.cjs +33 -0
  489. package/assets/mcp/openspec/node_modules/zod/v4/classic/index.d.cts +4 -0
  490. package/assets/mcp/openspec/node_modules/zod/v4/classic/index.d.ts +4 -0
  491. package/assets/mcp/openspec/node_modules/zod/v4/classic/index.js +4 -0
  492. package/assets/mcp/openspec/node_modules/zod/v4/classic/iso.cjs +60 -0
  493. package/assets/mcp/openspec/node_modules/zod/v4/classic/iso.d.cts +22 -0
  494. package/assets/mcp/openspec/node_modules/zod/v4/classic/iso.d.ts +22 -0
  495. package/assets/mcp/openspec/node_modules/zod/v4/classic/iso.js +30 -0
  496. package/assets/mcp/openspec/node_modules/zod/v4/classic/package.json +7 -0
  497. package/assets/mcp/openspec/node_modules/zod/v4/classic/parse.cjs +41 -0
  498. package/assets/mcp/openspec/node_modules/zod/v4/classic/parse.d.cts +31 -0
  499. package/assets/mcp/openspec/node_modules/zod/v4/classic/parse.d.ts +31 -0
  500. package/assets/mcp/openspec/node_modules/zod/v4/classic/parse.js +15 -0
  501. package/assets/mcp/openspec/node_modules/zod/v4/classic/schemas.cjs +1511 -0
  502. package/assets/mcp/openspec/node_modules/zod/v4/classic/schemas.d.cts +767 -0
  503. package/assets/mcp/openspec/node_modules/zod/v4/classic/schemas.d.ts +767 -0
  504. package/assets/mcp/openspec/node_modules/zod/v4/classic/schemas.js +1395 -0
  505. package/assets/mcp/openspec/node_modules/zod/v4/core/api.cjs +1227 -0
  506. package/assets/mcp/openspec/node_modules/zod/v4/core/api.d.cts +325 -0
  507. package/assets/mcp/openspec/node_modules/zod/v4/core/api.d.ts +325 -0
  508. package/assets/mcp/openspec/node_modules/zod/v4/core/api.js +1087 -0
  509. package/assets/mcp/openspec/node_modules/zod/v4/core/checks.cjs +601 -0
  510. package/assets/mcp/openspec/node_modules/zod/v4/core/checks.d.cts +278 -0
  511. package/assets/mcp/openspec/node_modules/zod/v4/core/checks.d.ts +278 -0
  512. package/assets/mcp/openspec/node_modules/zod/v4/core/checks.js +575 -0
  513. package/assets/mcp/openspec/node_modules/zod/v4/core/core.cjs +85 -0
  514. package/assets/mcp/openspec/node_modules/zod/v4/core/core.d.cts +70 -0
  515. package/assets/mcp/openspec/node_modules/zod/v4/core/core.d.ts +70 -0
  516. package/assets/mcp/openspec/node_modules/zod/v4/core/core.js +78 -0
  517. package/assets/mcp/openspec/node_modules/zod/v4/core/doc.cjs +39 -0
  518. package/assets/mcp/openspec/node_modules/zod/v4/core/doc.d.cts +14 -0
  519. package/assets/mcp/openspec/node_modules/zod/v4/core/doc.d.ts +14 -0
  520. package/assets/mcp/openspec/node_modules/zod/v4/core/doc.js +35 -0
  521. package/assets/mcp/openspec/node_modules/zod/v4/core/errors.cjs +216 -0
  522. package/assets/mcp/openspec/node_modules/zod/v4/core/errors.d.cts +221 -0
  523. package/assets/mcp/openspec/node_modules/zod/v4/core/errors.d.ts +221 -0
  524. package/assets/mcp/openspec/node_modules/zod/v4/core/errors.js +185 -0
  525. package/assets/mcp/openspec/node_modules/zod/v4/core/index.cjs +47 -0
  526. package/assets/mcp/openspec/node_modules/zod/v4/core/index.d.cts +16 -0
  527. package/assets/mcp/openspec/node_modules/zod/v4/core/index.d.ts +16 -0
  528. package/assets/mcp/openspec/node_modules/zod/v4/core/index.js +16 -0
  529. package/assets/mcp/openspec/node_modules/zod/v4/core/json-schema-generator.cjs +99 -0
  530. package/assets/mcp/openspec/node_modules/zod/v4/core/json-schema-generator.d.cts +65 -0
  531. package/assets/mcp/openspec/node_modules/zod/v4/core/json-schema-generator.d.ts +65 -0
  532. package/assets/mcp/openspec/node_modules/zod/v4/core/json-schema-generator.js +95 -0
  533. package/assets/mcp/openspec/node_modules/zod/v4/core/json-schema-processors.cjs +644 -0
  534. package/assets/mcp/openspec/node_modules/zod/v4/core/json-schema-processors.d.cts +49 -0
  535. package/assets/mcp/openspec/node_modules/zod/v4/core/json-schema-processors.d.ts +49 -0
  536. package/assets/mcp/openspec/node_modules/zod/v4/core/json-schema-processors.js +601 -0
  537. package/assets/mcp/openspec/node_modules/zod/v4/core/json-schema.cjs +2 -0
  538. package/assets/mcp/openspec/node_modules/zod/v4/core/json-schema.d.cts +88 -0
  539. package/assets/mcp/openspec/node_modules/zod/v4/core/json-schema.d.ts +88 -0
  540. package/assets/mcp/openspec/node_modules/zod/v4/core/json-schema.js +1 -0
  541. package/assets/mcp/openspec/node_modules/zod/v4/core/package.json +7 -0
  542. package/assets/mcp/openspec/node_modules/zod/v4/core/parse.cjs +131 -0
  543. package/assets/mcp/openspec/node_modules/zod/v4/core/parse.d.cts +49 -0
  544. package/assets/mcp/openspec/node_modules/zod/v4/core/parse.d.ts +49 -0
  545. package/assets/mcp/openspec/node_modules/zod/v4/core/parse.js +93 -0
  546. package/assets/mcp/openspec/node_modules/zod/v4/core/regexes.cjs +172 -0
  547. package/assets/mcp/openspec/node_modules/zod/v4/core/regexes.d.cts +85 -0
  548. package/assets/mcp/openspec/node_modules/zod/v4/core/regexes.d.ts +85 -0
  549. package/assets/mcp/openspec/node_modules/zod/v4/core/regexes.js +139 -0
  550. package/assets/mcp/openspec/node_modules/zod/v4/core/registries.cjs +56 -0
  551. package/assets/mcp/openspec/node_modules/zod/v4/core/registries.d.cts +35 -0
  552. package/assets/mcp/openspec/node_modules/zod/v4/core/registries.d.ts +35 -0
  553. package/assets/mcp/openspec/node_modules/zod/v4/core/registries.js +51 -0
  554. package/assets/mcp/openspec/node_modules/zod/v4/core/schemas.cjs +2270 -0
  555. package/assets/mcp/openspec/node_modules/zod/v4/core/schemas.d.cts +1184 -0
  556. package/assets/mcp/openspec/node_modules/zod/v4/core/schemas.d.ts +1184 -0
  557. package/assets/mcp/openspec/node_modules/zod/v4/core/schemas.js +2239 -0
  558. package/assets/mcp/openspec/node_modules/zod/v4/core/standard-schema.cjs +2 -0
  559. package/assets/mcp/openspec/node_modules/zod/v4/core/standard-schema.d.cts +126 -0
  560. package/assets/mcp/openspec/node_modules/zod/v4/core/standard-schema.d.ts +126 -0
  561. package/assets/mcp/openspec/node_modules/zod/v4/core/standard-schema.js +1 -0
  562. package/assets/mcp/openspec/node_modules/zod/v4/core/to-json-schema.cjs +457 -0
  563. package/assets/mcp/openspec/node_modules/zod/v4/core/to-json-schema.d.cts +114 -0
  564. package/assets/mcp/openspec/node_modules/zod/v4/core/to-json-schema.d.ts +114 -0
  565. package/assets/mcp/openspec/node_modules/zod/v4/core/to-json-schema.js +448 -0
  566. package/assets/mcp/openspec/node_modules/zod/v4/core/util.cjs +734 -0
  567. package/assets/mcp/openspec/node_modules/zod/v4/core/util.d.cts +200 -0
  568. package/assets/mcp/openspec/node_modules/zod/v4/core/util.d.ts +200 -0
  569. package/assets/mcp/openspec/node_modules/zod/v4/core/util.js +674 -0
  570. package/assets/mcp/openspec/node_modules/zod/v4/core/versions.cjs +8 -0
  571. package/assets/mcp/openspec/node_modules/zod/v4/core/versions.d.cts +5 -0
  572. package/assets/mcp/openspec/node_modules/zod/v4/core/versions.d.ts +5 -0
  573. package/assets/mcp/openspec/node_modules/zod/v4/core/versions.js +5 -0
  574. package/assets/mcp/openspec/node_modules/zod/v4/index.cjs +22 -0
  575. package/assets/mcp/openspec/node_modules/zod/v4/index.d.cts +3 -0
  576. package/assets/mcp/openspec/node_modules/zod/v4/index.d.ts +3 -0
  577. package/assets/mcp/openspec/node_modules/zod/v4/index.js +3 -0
  578. package/assets/mcp/openspec/node_modules/zod/v4/locales/ar.cjs +133 -0
  579. package/assets/mcp/openspec/node_modules/zod/v4/locales/ar.d.cts +5 -0
  580. package/assets/mcp/openspec/node_modules/zod/v4/locales/ar.d.ts +4 -0
  581. package/assets/mcp/openspec/node_modules/zod/v4/locales/ar.js +106 -0
  582. package/assets/mcp/openspec/node_modules/zod/v4/locales/az.cjs +132 -0
  583. package/assets/mcp/openspec/node_modules/zod/v4/locales/az.d.cts +5 -0
  584. package/assets/mcp/openspec/node_modules/zod/v4/locales/az.d.ts +4 -0
  585. package/assets/mcp/openspec/node_modules/zod/v4/locales/az.js +105 -0
  586. package/assets/mcp/openspec/node_modules/zod/v4/locales/be.cjs +183 -0
  587. package/assets/mcp/openspec/node_modules/zod/v4/locales/be.d.cts +5 -0
  588. package/assets/mcp/openspec/node_modules/zod/v4/locales/be.d.ts +4 -0
  589. package/assets/mcp/openspec/node_modules/zod/v4/locales/be.js +156 -0
  590. package/assets/mcp/openspec/node_modules/zod/v4/locales/bg.cjs +147 -0
  591. package/assets/mcp/openspec/node_modules/zod/v4/locales/bg.d.cts +5 -0
  592. package/assets/mcp/openspec/node_modules/zod/v4/locales/bg.d.ts +4 -0
  593. package/assets/mcp/openspec/node_modules/zod/v4/locales/bg.js +120 -0
  594. package/assets/mcp/openspec/node_modules/zod/v4/locales/ca.cjs +134 -0
  595. package/assets/mcp/openspec/node_modules/zod/v4/locales/ca.d.cts +5 -0
  596. package/assets/mcp/openspec/node_modules/zod/v4/locales/ca.d.ts +4 -0
  597. package/assets/mcp/openspec/node_modules/zod/v4/locales/ca.js +107 -0
  598. package/assets/mcp/openspec/node_modules/zod/v4/locales/cs.cjs +138 -0
  599. package/assets/mcp/openspec/node_modules/zod/v4/locales/cs.d.cts +5 -0
  600. package/assets/mcp/openspec/node_modules/zod/v4/locales/cs.d.ts +4 -0
  601. package/assets/mcp/openspec/node_modules/zod/v4/locales/cs.js +111 -0
  602. package/assets/mcp/openspec/node_modules/zod/v4/locales/da.cjs +142 -0
  603. package/assets/mcp/openspec/node_modules/zod/v4/locales/da.d.cts +5 -0
  604. package/assets/mcp/openspec/node_modules/zod/v4/locales/da.d.ts +4 -0
  605. package/assets/mcp/openspec/node_modules/zod/v4/locales/da.js +115 -0
  606. package/assets/mcp/openspec/node_modules/zod/v4/locales/de.cjs +135 -0
  607. package/assets/mcp/openspec/node_modules/zod/v4/locales/de.d.cts +5 -0
  608. package/assets/mcp/openspec/node_modules/zod/v4/locales/de.d.ts +4 -0
  609. package/assets/mcp/openspec/node_modules/zod/v4/locales/de.js +108 -0
  610. package/assets/mcp/openspec/node_modules/zod/v4/locales/el.cjs +136 -0
  611. package/assets/mcp/openspec/node_modules/zod/v4/locales/el.d.cts +5 -0
  612. package/assets/mcp/openspec/node_modules/zod/v4/locales/el.d.ts +4 -0
  613. package/assets/mcp/openspec/node_modules/zod/v4/locales/el.js +109 -0
  614. package/assets/mcp/openspec/node_modules/zod/v4/locales/en.cjs +140 -0
  615. package/assets/mcp/openspec/node_modules/zod/v4/locales/en.d.cts +5 -0
  616. package/assets/mcp/openspec/node_modules/zod/v4/locales/en.d.ts +4 -0
  617. package/assets/mcp/openspec/node_modules/zod/v4/locales/en.js +113 -0
  618. package/assets/mcp/openspec/node_modules/zod/v4/locales/eo.cjs +136 -0
  619. package/assets/mcp/openspec/node_modules/zod/v4/locales/eo.d.cts +5 -0
  620. package/assets/mcp/openspec/node_modules/zod/v4/locales/eo.d.ts +4 -0
  621. package/assets/mcp/openspec/node_modules/zod/v4/locales/eo.js +109 -0
  622. package/assets/mcp/openspec/node_modules/zod/v4/locales/es.cjs +159 -0
  623. package/assets/mcp/openspec/node_modules/zod/v4/locales/es.d.cts +5 -0
  624. package/assets/mcp/openspec/node_modules/zod/v4/locales/es.d.ts +4 -0
  625. package/assets/mcp/openspec/node_modules/zod/v4/locales/es.js +132 -0
  626. package/assets/mcp/openspec/node_modules/zod/v4/locales/fa.cjs +141 -0
  627. package/assets/mcp/openspec/node_modules/zod/v4/locales/fa.d.cts +5 -0
  628. package/assets/mcp/openspec/node_modules/zod/v4/locales/fa.d.ts +4 -0
  629. package/assets/mcp/openspec/node_modules/zod/v4/locales/fa.js +114 -0
  630. package/assets/mcp/openspec/node_modules/zod/v4/locales/fi.cjs +139 -0
  631. package/assets/mcp/openspec/node_modules/zod/v4/locales/fi.d.cts +5 -0
  632. package/assets/mcp/openspec/node_modules/zod/v4/locales/fi.d.ts +4 -0
  633. package/assets/mcp/openspec/node_modules/zod/v4/locales/fi.js +112 -0
  634. package/assets/mcp/openspec/node_modules/zod/v4/locales/fr-CA.cjs +134 -0
  635. package/assets/mcp/openspec/node_modules/zod/v4/locales/fr-CA.d.cts +5 -0
  636. package/assets/mcp/openspec/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
  637. package/assets/mcp/openspec/node_modules/zod/v4/locales/fr-CA.js +107 -0
  638. package/assets/mcp/openspec/node_modules/zod/v4/locales/fr.cjs +152 -0
  639. package/assets/mcp/openspec/node_modules/zod/v4/locales/fr.d.cts +5 -0
  640. package/assets/mcp/openspec/node_modules/zod/v4/locales/fr.d.ts +4 -0
  641. package/assets/mcp/openspec/node_modules/zod/v4/locales/fr.js +125 -0
  642. package/assets/mcp/openspec/node_modules/zod/v4/locales/he.cjs +241 -0
  643. package/assets/mcp/openspec/node_modules/zod/v4/locales/he.d.cts +5 -0
  644. package/assets/mcp/openspec/node_modules/zod/v4/locales/he.d.ts +4 -0
  645. package/assets/mcp/openspec/node_modules/zod/v4/locales/he.js +214 -0
  646. package/assets/mcp/openspec/node_modules/zod/v4/locales/hr.cjs +149 -0
  647. package/assets/mcp/openspec/node_modules/zod/v4/locales/hr.d.cts +5 -0
  648. package/assets/mcp/openspec/node_modules/zod/v4/locales/hr.d.ts +4 -0
  649. package/assets/mcp/openspec/node_modules/zod/v4/locales/hr.js +122 -0
  650. package/assets/mcp/openspec/node_modules/zod/v4/locales/hu.cjs +135 -0
  651. package/assets/mcp/openspec/node_modules/zod/v4/locales/hu.d.cts +5 -0
  652. package/assets/mcp/openspec/node_modules/zod/v4/locales/hu.d.ts +4 -0
  653. package/assets/mcp/openspec/node_modules/zod/v4/locales/hu.js +108 -0
  654. package/assets/mcp/openspec/node_modules/zod/v4/locales/hy.cjs +174 -0
  655. package/assets/mcp/openspec/node_modules/zod/v4/locales/hy.d.cts +5 -0
  656. package/assets/mcp/openspec/node_modules/zod/v4/locales/hy.d.ts +4 -0
  657. package/assets/mcp/openspec/node_modules/zod/v4/locales/hy.js +147 -0
  658. package/assets/mcp/openspec/node_modules/zod/v4/locales/id.cjs +133 -0
  659. package/assets/mcp/openspec/node_modules/zod/v4/locales/id.d.cts +5 -0
  660. package/assets/mcp/openspec/node_modules/zod/v4/locales/id.d.ts +4 -0
  661. package/assets/mcp/openspec/node_modules/zod/v4/locales/id.js +106 -0
  662. package/assets/mcp/openspec/node_modules/zod/v4/locales/index.cjs +111 -0
  663. package/assets/mcp/openspec/node_modules/zod/v4/locales/index.d.cts +52 -0
  664. package/assets/mcp/openspec/node_modules/zod/v4/locales/index.d.ts +52 -0
  665. package/assets/mcp/openspec/node_modules/zod/v4/locales/index.js +52 -0
  666. package/assets/mcp/openspec/node_modules/zod/v4/locales/is.cjs +136 -0
  667. package/assets/mcp/openspec/node_modules/zod/v4/locales/is.d.cts +5 -0
  668. package/assets/mcp/openspec/node_modules/zod/v4/locales/is.d.ts +4 -0
  669. package/assets/mcp/openspec/node_modules/zod/v4/locales/is.js +109 -0
  670. package/assets/mcp/openspec/node_modules/zod/v4/locales/it.cjs +135 -0
  671. package/assets/mcp/openspec/node_modules/zod/v4/locales/it.d.cts +5 -0
  672. package/assets/mcp/openspec/node_modules/zod/v4/locales/it.d.ts +4 -0
  673. package/assets/mcp/openspec/node_modules/zod/v4/locales/it.js +108 -0
  674. package/assets/mcp/openspec/node_modules/zod/v4/locales/ja.cjs +134 -0
  675. package/assets/mcp/openspec/node_modules/zod/v4/locales/ja.d.cts +5 -0
  676. package/assets/mcp/openspec/node_modules/zod/v4/locales/ja.d.ts +4 -0
  677. package/assets/mcp/openspec/node_modules/zod/v4/locales/ja.js +107 -0
  678. package/assets/mcp/openspec/node_modules/zod/v4/locales/ka.cjs +139 -0
  679. package/assets/mcp/openspec/node_modules/zod/v4/locales/ka.d.cts +5 -0
  680. package/assets/mcp/openspec/node_modules/zod/v4/locales/ka.d.ts +4 -0
  681. package/assets/mcp/openspec/node_modules/zod/v4/locales/ka.js +112 -0
  682. package/assets/mcp/openspec/node_modules/zod/v4/locales/kh.cjs +12 -0
  683. package/assets/mcp/openspec/node_modules/zod/v4/locales/kh.d.cts +5 -0
  684. package/assets/mcp/openspec/node_modules/zod/v4/locales/kh.d.ts +5 -0
  685. package/assets/mcp/openspec/node_modules/zod/v4/locales/kh.js +5 -0
  686. package/assets/mcp/openspec/node_modules/zod/v4/locales/km.cjs +137 -0
  687. package/assets/mcp/openspec/node_modules/zod/v4/locales/km.d.cts +5 -0
  688. package/assets/mcp/openspec/node_modules/zod/v4/locales/km.d.ts +4 -0
  689. package/assets/mcp/openspec/node_modules/zod/v4/locales/km.js +110 -0
  690. package/assets/mcp/openspec/node_modules/zod/v4/locales/ko.cjs +138 -0
  691. package/assets/mcp/openspec/node_modules/zod/v4/locales/ko.d.cts +5 -0
  692. package/assets/mcp/openspec/node_modules/zod/v4/locales/ko.d.ts +4 -0
  693. package/assets/mcp/openspec/node_modules/zod/v4/locales/ko.js +111 -0
  694. package/assets/mcp/openspec/node_modules/zod/v4/locales/lt.cjs +230 -0
  695. package/assets/mcp/openspec/node_modules/zod/v4/locales/lt.d.cts +5 -0
  696. package/assets/mcp/openspec/node_modules/zod/v4/locales/lt.d.ts +4 -0
  697. package/assets/mcp/openspec/node_modules/zod/v4/locales/lt.js +203 -0
  698. package/assets/mcp/openspec/node_modules/zod/v4/locales/mk.cjs +136 -0
  699. package/assets/mcp/openspec/node_modules/zod/v4/locales/mk.d.cts +5 -0
  700. package/assets/mcp/openspec/node_modules/zod/v4/locales/mk.d.ts +4 -0
  701. package/assets/mcp/openspec/node_modules/zod/v4/locales/mk.js +109 -0
  702. package/assets/mcp/openspec/node_modules/zod/v4/locales/ms.cjs +134 -0
  703. package/assets/mcp/openspec/node_modules/zod/v4/locales/ms.d.cts +5 -0
  704. package/assets/mcp/openspec/node_modules/zod/v4/locales/ms.d.ts +4 -0
  705. package/assets/mcp/openspec/node_modules/zod/v4/locales/ms.js +107 -0
  706. package/assets/mcp/openspec/node_modules/zod/v4/locales/nl.cjs +137 -0
  707. package/assets/mcp/openspec/node_modules/zod/v4/locales/nl.d.cts +5 -0
  708. package/assets/mcp/openspec/node_modules/zod/v4/locales/nl.d.ts +4 -0
  709. package/assets/mcp/openspec/node_modules/zod/v4/locales/nl.js +110 -0
  710. package/assets/mcp/openspec/node_modules/zod/v4/locales/no.cjs +135 -0
  711. package/assets/mcp/openspec/node_modules/zod/v4/locales/no.d.cts +5 -0
  712. package/assets/mcp/openspec/node_modules/zod/v4/locales/no.d.ts +4 -0
  713. package/assets/mcp/openspec/node_modules/zod/v4/locales/no.js +108 -0
  714. package/assets/mcp/openspec/node_modules/zod/v4/locales/ota.cjs +136 -0
  715. package/assets/mcp/openspec/node_modules/zod/v4/locales/ota.d.cts +5 -0
  716. package/assets/mcp/openspec/node_modules/zod/v4/locales/ota.d.ts +4 -0
  717. package/assets/mcp/openspec/node_modules/zod/v4/locales/ota.js +109 -0
  718. package/assets/mcp/openspec/node_modules/zod/v4/locales/package.json +7 -0
  719. package/assets/mcp/openspec/node_modules/zod/v4/locales/pl.cjs +136 -0
  720. package/assets/mcp/openspec/node_modules/zod/v4/locales/pl.d.cts +5 -0
  721. package/assets/mcp/openspec/node_modules/zod/v4/locales/pl.d.ts +4 -0
  722. package/assets/mcp/openspec/node_modules/zod/v4/locales/pl.js +109 -0
  723. package/assets/mcp/openspec/node_modules/zod/v4/locales/ps.cjs +141 -0
  724. package/assets/mcp/openspec/node_modules/zod/v4/locales/ps.d.cts +5 -0
  725. package/assets/mcp/openspec/node_modules/zod/v4/locales/ps.d.ts +4 -0
  726. package/assets/mcp/openspec/node_modules/zod/v4/locales/ps.js +114 -0
  727. package/assets/mcp/openspec/node_modules/zod/v4/locales/pt.cjs +135 -0
  728. package/assets/mcp/openspec/node_modules/zod/v4/locales/pt.d.cts +5 -0
  729. package/assets/mcp/openspec/node_modules/zod/v4/locales/pt.d.ts +4 -0
  730. package/assets/mcp/openspec/node_modules/zod/v4/locales/pt.js +108 -0
  731. package/assets/mcp/openspec/node_modules/zod/v4/locales/ro.cjs +146 -0
  732. package/assets/mcp/openspec/node_modules/zod/v4/locales/ro.d.cts +5 -0
  733. package/assets/mcp/openspec/node_modules/zod/v4/locales/ro.d.ts +4 -0
  734. package/assets/mcp/openspec/node_modules/zod/v4/locales/ro.js +119 -0
  735. package/assets/mcp/openspec/node_modules/zod/v4/locales/ru.cjs +183 -0
  736. package/assets/mcp/openspec/node_modules/zod/v4/locales/ru.d.cts +5 -0
  737. package/assets/mcp/openspec/node_modules/zod/v4/locales/ru.d.ts +4 -0
  738. package/assets/mcp/openspec/node_modules/zod/v4/locales/ru.js +156 -0
  739. package/assets/mcp/openspec/node_modules/zod/v4/locales/sl.cjs +136 -0
  740. package/assets/mcp/openspec/node_modules/zod/v4/locales/sl.d.cts +5 -0
  741. package/assets/mcp/openspec/node_modules/zod/v4/locales/sl.d.ts +4 -0
  742. package/assets/mcp/openspec/node_modules/zod/v4/locales/sl.js +109 -0
  743. package/assets/mcp/openspec/node_modules/zod/v4/locales/sv.cjs +137 -0
  744. package/assets/mcp/openspec/node_modules/zod/v4/locales/sv.d.cts +5 -0
  745. package/assets/mcp/openspec/node_modules/zod/v4/locales/sv.d.ts +4 -0
  746. package/assets/mcp/openspec/node_modules/zod/v4/locales/sv.js +110 -0
  747. package/assets/mcp/openspec/node_modules/zod/v4/locales/ta.cjs +137 -0
  748. package/assets/mcp/openspec/node_modules/zod/v4/locales/ta.d.cts +5 -0
  749. package/assets/mcp/openspec/node_modules/zod/v4/locales/ta.d.ts +4 -0
  750. package/assets/mcp/openspec/node_modules/zod/v4/locales/ta.js +110 -0
  751. package/assets/mcp/openspec/node_modules/zod/v4/locales/th.cjs +137 -0
  752. package/assets/mcp/openspec/node_modules/zod/v4/locales/th.d.cts +5 -0
  753. package/assets/mcp/openspec/node_modules/zod/v4/locales/th.d.ts +4 -0
  754. package/assets/mcp/openspec/node_modules/zod/v4/locales/th.js +110 -0
  755. package/assets/mcp/openspec/node_modules/zod/v4/locales/tr.cjs +132 -0
  756. package/assets/mcp/openspec/node_modules/zod/v4/locales/tr.d.cts +5 -0
  757. package/assets/mcp/openspec/node_modules/zod/v4/locales/tr.d.ts +4 -0
  758. package/assets/mcp/openspec/node_modules/zod/v4/locales/tr.js +105 -0
  759. package/assets/mcp/openspec/node_modules/zod/v4/locales/ua.cjs +12 -0
  760. package/assets/mcp/openspec/node_modules/zod/v4/locales/ua.d.cts +5 -0
  761. package/assets/mcp/openspec/node_modules/zod/v4/locales/ua.d.ts +5 -0
  762. package/assets/mcp/openspec/node_modules/zod/v4/locales/ua.js +5 -0
  763. package/assets/mcp/openspec/node_modules/zod/v4/locales/uk.cjs +135 -0
  764. package/assets/mcp/openspec/node_modules/zod/v4/locales/uk.d.cts +5 -0
  765. package/assets/mcp/openspec/node_modules/zod/v4/locales/uk.d.ts +4 -0
  766. package/assets/mcp/openspec/node_modules/zod/v4/locales/uk.js +108 -0
  767. package/assets/mcp/openspec/node_modules/zod/v4/locales/ur.cjs +137 -0
  768. package/assets/mcp/openspec/node_modules/zod/v4/locales/ur.d.cts +5 -0
  769. package/assets/mcp/openspec/node_modules/zod/v4/locales/ur.d.ts +4 -0
  770. package/assets/mcp/openspec/node_modules/zod/v4/locales/ur.js +110 -0
  771. package/assets/mcp/openspec/node_modules/zod/v4/locales/uz.cjs +137 -0
  772. package/assets/mcp/openspec/node_modules/zod/v4/locales/uz.d.cts +5 -0
  773. package/assets/mcp/openspec/node_modules/zod/v4/locales/uz.d.ts +4 -0
  774. package/assets/mcp/openspec/node_modules/zod/v4/locales/uz.js +110 -0
  775. package/assets/mcp/openspec/node_modules/zod/v4/locales/vi.cjs +135 -0
  776. package/assets/mcp/openspec/node_modules/zod/v4/locales/vi.d.cts +5 -0
  777. package/assets/mcp/openspec/node_modules/zod/v4/locales/vi.d.ts +4 -0
  778. package/assets/mcp/openspec/node_modules/zod/v4/locales/vi.js +108 -0
  779. package/assets/mcp/openspec/node_modules/zod/v4/locales/yo.cjs +134 -0
  780. package/assets/mcp/openspec/node_modules/zod/v4/locales/yo.d.cts +5 -0
  781. package/assets/mcp/openspec/node_modules/zod/v4/locales/yo.d.ts +4 -0
  782. package/assets/mcp/openspec/node_modules/zod/v4/locales/yo.js +107 -0
  783. package/assets/mcp/openspec/node_modules/zod/v4/locales/zh-CN.cjs +136 -0
  784. package/assets/mcp/openspec/node_modules/zod/v4/locales/zh-CN.d.cts +5 -0
  785. package/assets/mcp/openspec/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
  786. package/assets/mcp/openspec/node_modules/zod/v4/locales/zh-CN.js +109 -0
  787. package/assets/mcp/openspec/node_modules/zod/v4/locales/zh-TW.cjs +134 -0
  788. package/assets/mcp/openspec/node_modules/zod/v4/locales/zh-TW.d.cts +5 -0
  789. package/assets/mcp/openspec/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
  790. package/assets/mcp/openspec/node_modules/zod/v4/locales/zh-TW.js +107 -0
  791. package/assets/mcp/openspec/node_modules/zod/v4/mini/checks.cjs +34 -0
  792. package/assets/mcp/openspec/node_modules/zod/v4/mini/checks.d.cts +1 -0
  793. package/assets/mcp/openspec/node_modules/zod/v4/mini/checks.d.ts +1 -0
  794. package/assets/mcp/openspec/node_modules/zod/v4/mini/checks.js +1 -0
  795. package/assets/mcp/openspec/node_modules/zod/v4/mini/coerce.cjs +52 -0
  796. package/assets/mcp/openspec/node_modules/zod/v4/mini/coerce.d.cts +7 -0
  797. package/assets/mcp/openspec/node_modules/zod/v4/mini/coerce.d.ts +7 -0
  798. package/assets/mcp/openspec/node_modules/zod/v4/mini/coerce.js +22 -0
  799. package/assets/mcp/openspec/node_modules/zod/v4/mini/external.cjs +63 -0
  800. package/assets/mcp/openspec/node_modules/zod/v4/mini/external.d.cts +13 -0
  801. package/assets/mcp/openspec/node_modules/zod/v4/mini/external.d.ts +13 -0
  802. package/assets/mcp/openspec/node_modules/zod/v4/mini/external.js +14 -0
  803. package/assets/mcp/openspec/node_modules/zod/v4/mini/index.cjs +32 -0
  804. package/assets/mcp/openspec/node_modules/zod/v4/mini/index.d.cts +3 -0
  805. package/assets/mcp/openspec/node_modules/zod/v4/mini/index.d.ts +3 -0
  806. package/assets/mcp/openspec/node_modules/zod/v4/mini/index.js +3 -0
  807. package/assets/mcp/openspec/node_modules/zod/v4/mini/iso.cjs +64 -0
  808. package/assets/mcp/openspec/node_modules/zod/v4/mini/iso.d.cts +22 -0
  809. package/assets/mcp/openspec/node_modules/zod/v4/mini/iso.d.ts +22 -0
  810. package/assets/mcp/openspec/node_modules/zod/v4/mini/iso.js +34 -0
  811. package/assets/mcp/openspec/node_modules/zod/v4/mini/package.json +7 -0
  812. package/assets/mcp/openspec/node_modules/zod/v4/mini/parse.cjs +16 -0
  813. package/assets/mcp/openspec/node_modules/zod/v4/mini/parse.d.cts +1 -0
  814. package/assets/mcp/openspec/node_modules/zod/v4/mini/parse.d.ts +1 -0
  815. package/assets/mcp/openspec/node_modules/zod/v4/mini/parse.js +1 -0
  816. package/assets/mcp/openspec/node_modules/zod/v4/mini/schemas.cjs +1083 -0
  817. package/assets/mcp/openspec/node_modules/zod/v4/mini/schemas.d.cts +445 -0
  818. package/assets/mcp/openspec/node_modules/zod/v4/mini/schemas.d.ts +445 -0
  819. package/assets/mcp/openspec/node_modules/zod/v4/mini/schemas.js +961 -0
  820. package/assets/mcp/openspec/node_modules/zod/v4/package.json +7 -0
  821. package/assets/mcp/openspec/node_modules/zod/v4-mini/index.cjs +32 -0
  822. package/assets/mcp/openspec/node_modules/zod/v4-mini/index.d.cts +3 -0
  823. package/assets/mcp/openspec/node_modules/zod/v4-mini/index.d.ts +3 -0
  824. package/assets/mcp/openspec/node_modules/zod/v4-mini/index.js +3 -0
  825. package/assets/mcp/openspec/node_modules/zod/v4-mini/package.json +7 -0
  826. package/assets/mcp/openspec/package.json +10 -0
  827. package/assets/mcp/ostacky-controller/index.js +455 -164
  828. package/assets/mcp/ostacky-controller/node_modules/.package-lock.json +8 -8
  829. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-B2Q9_Vxp.d.cts +8501 -0
  830. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-B2Q9_Vxp.d.cts.map +1 -0
  831. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-CUe6YdwF.mjs +1678 -0
  832. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-CUe6YdwF.mjs.map +1 -0
  833. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-CVhIKulL.d.mts +8501 -0
  834. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-CVhIKulL.d.mts.map +1 -0
  835. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-CfDMXiII.cjs +2899 -0
  836. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-CfDMXiII.cjs.map +1 -0
  837. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/index.cjs +2 -1
  838. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/index.d.cts +2 -2
  839. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/index.d.mts +2 -2
  840. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/index.mjs +2 -2
  841. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/internal.cjs +3 -1
  842. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/internal.d.cts +14 -2
  843. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/internal.d.cts.map +1 -1
  844. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/internal.d.mts +14 -2
  845. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/internal.d.mts.map +1 -1
  846. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/internal.mjs +2 -2
  847. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/package.json +1 -1
  848. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-CEckaSEs.d.mts +4041 -0
  849. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-CEckaSEs.d.mts.map +1 -0
  850. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-DzBzpE4_.d.cts +4043 -0
  851. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-DzBzpE4_.d.cts.map +1 -0
  852. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/index.cjs +12 -3
  853. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/index.cjs.map +1 -1
  854. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/index.d.cts +2 -2
  855. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/index.d.mts +2 -2
  856. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/index.mjs +5 -4
  857. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/index.mjs.map +1 -1
  858. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/mcp-DM1iHYFo.cjs +2004 -0
  859. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/mcp-DM1iHYFo.cjs.map +1 -0
  860. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/mcp-IJurDZVN.mjs +1919 -0
  861. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/mcp-IJurDZVN.mjs.map +1 -0
  862. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.cjs +1 -1
  863. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.mjs +1 -1
  864. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/src-BX_fm-dB.cjs +8069 -0
  865. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/src-BX_fm-dB.cjs.map +1 -0
  866. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/src-D86MbS1I.mjs +7571 -0
  867. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/src-D86MbS1I.mjs.map +1 -0
  868. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/stdio.cjs +3 -3
  869. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/stdio.cjs.map +1 -1
  870. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/stdio.d.cts +1 -1
  871. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/stdio.d.mts +1 -1
  872. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/stdio.mjs +3 -3
  873. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/stdio.mjs.map +1 -1
  874. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/package.json +3 -3
  875. package/assets/mcp/ostacky-controller/package-lock.json +10 -10
  876. package/assets/mcp/ostacky-controller/package.json +2 -2
  877. package/assets/plugins/engram.ts +537 -0
  878. package/assets/skills/{thinking → brainstorming}/SKILL.md +8 -6
  879. package/assets/skills/dispatching-parallel-agents/SKILL.md +7 -7
  880. package/assets/skills/execution-mode-evaluation/SKILL.md +10 -8
  881. package/assets/skills/graceful-degradation/SKILL.md +235 -0
  882. package/assets/skills/openspec-apply-change/SKILL.md +4 -2
  883. package/assets/skills/openspec-archive-change/SKILL.md +4 -4
  884. package/assets/skills/openspec-explore/SKILL.md +288 -0
  885. package/assets/skills/openspec-propose/SKILL.md +7 -5
  886. package/assets/skills/subagent-driven-development/SKILL.md +18 -17
  887. package/assets/skills/tdd/SKILL.md +1 -1
  888. package/assets/skills/using-git-worktrees/SKILL.md +3 -11
  889. package/assets/skills/using-superpowers/SKILL.md +14 -20
  890. package/assets/skills/writing-plans/SKILL.md +5 -3
  891. package/assets/skills/writing-skills/SKILL.md +9 -9
  892. package/dist/cli.js +2351 -1728
  893. package/manifest.json +61 -40
  894. package/package.json +9 -3
  895. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-BUWfrB3C.d.cts.map +0 -1
  896. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-CEFpHq32.cjs.map +0 -1
  897. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-CNbu4K4a.d.mts.map +0 -1
  898. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/core/dist/auth-DFgbUATV.mjs.map +0 -1
  899. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-BRM5MGf9.d.cts.map +0 -1
  900. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-D93NefGZ.d.mts.map +0 -1
  901. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/mcp-Ctiu4nBa.mjs.map +0 -1
  902. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/mcp-CzU40gwu.cjs.map +0 -1
  903. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/src-D5Nfqtoz.mjs.map +0 -1
  904. package/assets/mcp/ostacky-controller/node_modules/@modelcontextprotocol/server/dist/src-D9A7ArDn.cjs.map +0 -1
  905. package/assets/skills/execution-mode-evaluation/README.md +0 -257
  906. package/assets/tests/agent-contract.test.js +0 -226
  907. package/assets/tests/controller.test.js +0 -187
  908. package/assets/tests/e2e-scenarios.md +0 -502
  909. package/assets/tests/validate-config.sh +0 -272
  910. package/dist/mcp/ask-user-server/index.js +0 -19657
  911. package/dist/mcp/ostacky-controller/index.js +0 -20085
@@ -5,11 +5,11 @@ agent: build
5
5
 
6
6
  Instala el stack tecnológico de desarrollo para OpenCode. **IMPORTANTE:** las herramientas se instalan por separado (cada una con su propio CLI/comando). `npx ostacky install` solo instala el agente y commands de Ostacky en `.opencode/`. Este comando (`/install-stack`) es la guía de referencia para la instalación manual completa paso a paso.
7
7
 
8
- **Nota:** A partir de v0.5.9, `npx ostacky install` ya instala automáticamente el stack completo (CodeGraph, OpenSpec, Engram, Context7, MCPs bundleados) además del agente y skills. Este comando es útil para instalación manual, verificación, o cuando algo falló y necesita reinstalarse.
8
+ **Nota:** A partir de v0.6.0, `npx ostacky install` ya instala automáticamente el stack completo (CodeGraph, OpenSpec, Engram, Context7, MCPs bundleados) además del agente y skills. Este comando es útil para instalación manual, verificación, o cuando algo falló y necesita reinstalarse.
9
9
 
10
10
  **RESTRICCIÓN ABSOLUTA:** instalar ÚNICAMENTE para OpenCode. Está terminantemente prohibido crear o modificar archivos en `.claude/`, `.kiro/`, `.cursor/`, `.gemini/`, `.codex/`, `.antigravity/`, `.windsurf/` o cualquier otro directorio de plataformas externas.
11
11
 
12
- **Origen del set curado:** el set de skills (6 Superpowers + 4 OpenSpec) referenciado en `assets/agents/ostacky.md` está bundleado en `assets/skills/` dentro del paquete npm. Context7 agrega su propio skill vía `npx ctx7 setup --opencode`. La definición del set y su trazabilidad viven en `manifest.json` y `.opencode/ostacky-lock.json`.
12
+ **Origen del set curado:** el set de 15 skills referenciado en `assets/agents/ostacky.md` está bundleado en `assets/skills/` dentro del paquete npm. Context7 agrega su propio skill vía `npx ctx7 setup --opencode`. La definición del set y su trazabilidad viven en `manifest.json` y `.opencode/ostacky-lock.json`.
13
13
 
14
14
  ---
15
15
 
@@ -70,11 +70,6 @@ El controller MCP se configura como server local en `opencode.json`. Si el contr
70
70
  ```json
71
71
  {
72
72
  "mcp": {
73
- "ask-user-server": {
74
- "type": "local",
75
- "command": ["node", ".opencode/mcp/ask-user-server/index.js"],
76
- "enabled": true
77
- },
78
73
  "ostacky-controller": {
79
74
  "type": "local",
80
75
  "command": ["node", ".opencode/mcp/ostacky-controller/index.js"],
@@ -87,9 +82,9 @@ El controller MCP se configura como server local en `opencode.json`. Si el contr
87
82
  **Notas:**
88
83
 
89
84
  - El controller no es obligatorio para operar Ostacky — es un refuerzo de disciplina.
90
- - Sin controller, Ostacky usa las mismas reglas en lenguaje natural pero sin validación de transiciones ni persistencia de estado.
85
+ - Sin controller, Ostacky usa las mismas reglas en lenguaje natural pero sin validación de transiciones ni persistencia de estado. El agente detecta automáticamente si el controller está disponible y opera en modo degraded si no.
91
86
  - El controller nunca autoriza subagentes sin confirmación explícita del usuario.
92
- - Los MCP servers se copian como archivos autocontenidos (bundleados en `dist/mcp/` durante el build). No requieren `npm install` ni `bun install` — cada `index.js` es un único archivo con todas las dependencias inlined.
87
+ - Los MCP servers se copian como archivos autocontenidos (bundleados en `dist/mcp/` durante el build). No requieren `npm install` ni `bun install` — cada `index.js` es un único archivo autocontenido sin dependencias externas.
93
88
  - El installer maneja `opencode.jsonc` (con comentarios) correctamente — strippea comentarios antes de parsear y escribe JSON válido de vuelta.
94
89
  - Si CodeGraph crea un `AGENTS.md` en la raíz del proyecto, el installer lo mueve a `.opencode/tools/codegraph/AGENTS.md` automáticamente.
95
90
 
@@ -97,23 +92,19 @@ El controller MCP se configura como server local en `opencode.json`. Si el contr
97
92
 
98
93
  ## Paso 2 — Skills curadas (bundleadas)
99
94
 
100
- Las **11 skills curadas del set base** (6 Superpowers + 4 OpenSpec + 1 Ostacky) están bundleadas dentro del paquete Ostacky en `assets/skills/`. No se descargan ni clonan; ya vienen en el paquete npm. Context7 agrega su propia skill aparte (Paso 6).
95
+ Las **15 skills curadas** están bundleadas dentro del paquete Ostacky en `assets/skills/`. No se descargan ni clonan; ya vienen en el paquete npm. Context7 agrega su propia skill aparte (Paso 6).
101
96
 
102
97
  Copiá cada skill bundleada a `.opencode/skills/<nombre>/` preservando la estructura interna (incluyendo `SKILL.md` y cualquier subdirectorio como `scripts/` o `references/`):
103
98
 
104
99
  ```bash
105
- # Ejemplo para una skill; aplicar a las 11
106
- mkdir -p .opencode/skills/thinking
107
- cp -r assets/skills/thinking/* .opencode/skills/thinking/
100
+ # Ejemplo para una skill; aplicar a las 15
101
+ mkdir -p .opencode/skills/brainstorming
102
+ cp -r assets/skills/brainstorming/* .opencode/skills/brainstorming/
108
103
  ```
109
104
 
110
- **Set curado (referenciado en `assets/agents/ostacky.md`):**
111
-
112
- **Superpowers (6):** `thinking`, `writing-plans`, `tdd`, `subagent-driven-development`, `dispatching-parallel-agents`, `review`
105
+ **Set curado (15 skills, referenciado en `assets/agents/ostacky.md`):**
113
106
 
114
- **OpenSpec (3):** `openspec-propose`, `openspec-apply-change`, `openspec-archive-change`
115
-
116
- **Ostacky (1):** `execution-mode-evaluation` — análisis de modo de ejecución (INLINE vs SUBAGENT_DRIVEN)
107
+ `brainstorming`, `writing-plans`, `tdd`, `review`, `execution-mode-evaluation`, `subagent-driven-development`, `dispatching-parallel-agents`, `openspec-propose`, `openspec-apply-change`, `openspec-archive-change`, `receiving-code-review`, `using-git-worktrees`, `using-superpowers`, `writing-skills`, `graceful-degradation`
117
108
 
118
109
  **NO se requiere** el plugin `superpowers@git+...` en `opencode.json`. Las skills viven en `.opencode/skills/` y OpenCode las descubre automáticamente desde ahí.
119
110
 
@@ -148,11 +139,6 @@ Leé `opencode.json` (o `opencode.jsonc`) en la raíz del proyecto.
148
139
  "url": "https://mcp.context7.com/mcp",
149
140
  "enabled": true
150
141
  },
151
- "ask-user-server": {
152
- "type": "local",
153
- "command": ["node", ".opencode/mcp/ask-user-server/index.js"],
154
- "enabled": true
155
- },
156
142
  "ostacky-controller": {
157
143
  "type": "local",
158
144
  "command": ["node", ".opencode/mcp/ostacky-controller/index.js"],
@@ -166,38 +152,48 @@ Leé `opencode.json` (o `opencode.jsonc`) en la raíz del proyecto.
166
152
 
167
153
  ---
168
154
 
169
- ## Paso 4 — OpenSpec
155
+ ## Paso 4 — OpenSpec (MCP Server local)
156
+
157
+ OpenSpec se instala como MCP server local en `.opencode/mcp/openspec/`. El server provee tools para proposal, apply, archive y sync de cambios.
170
158
 
171
- Inicializá OpenSpec configurándolo exclusivamente para OpenCode:
159
+ ### Verificar instalación
172
160
 
173
161
  ```bash
174
- bunx openspec init --tools opencode --force
162
+ .opencode/mcp/openspec/index.js --version 2>/dev/null || echo "no-instalado"
175
163
  ```
176
164
 
177
- El flag `--tools opencode` garantiza que solo se generen archivos en `.opencode/skills/` y `.opencode/commands/`. El flag `--force` limpia archivos legacy de inicializaciones anteriores que hayan podido configurar otras plataformas.
165
+ ### Configurar en opencode.json
178
166
 
179
- Si OpenSpec ya estaba correctamente inicializado para opencode, ejecutá en su lugar:
180
-
181
- ```bash
182
- bunx openspec update
167
+ ```json
168
+ {
169
+ "mcp": {
170
+ "openspec": {
171
+ "type": "local",
172
+ "command": ["node", ".opencode/mcp/openspec/index.js"],
173
+ "enabled": true
174
+ }
175
+ }
176
+ }
183
177
  ```
184
178
 
185
- **IMPORTANTE:** verificar después de la ejecución que no existan carpetas `.claude/`, `.kiro/`, `.cursor/` ni similares generadas por OpenSpec. Si existen, eliminalas.
179
+ **Notas:**
186
180
 
187
- ### Desinstalar OpenSpec
181
+ - OpenSpec MCP server es autocontenido — no requiere `npm install` ni `bun install`.
182
+ - El server provee las tools: `openspec_propose`, `openspec_list`, `openspec_archive`, `openspec_get_change`.
183
+ - Los changes se almacenan en `openspec/changes/` y se archivan en `openspec/archive/`.
188
184
 
189
- Para remover los archivos de OpenSpec del proyecto:
185
+ ### Desinstalar OpenSpec
190
186
 
191
187
  ```bash
192
- # Eliminar skills y commands de OpenSpec generados en .opencode/
193
- rm -rf .opencode/skills/thinking .opencode/skills/openspec-propose \
194
- .opencode/skills/openspec-apply-change .opencode/skills/openspec-archive-change
195
- # Los specs y changes viven en openspec/ eliminarlos si no los necesitás:
188
+ # Remover el MCP server
189
+ rm -rf .opencode/mcp/openspec/
190
+
191
+ # Remover la entrada MCP de opencode.json (editar el archivo)
192
+
193
+ # Remover cambios archivados (opcional)
196
194
  rm -rf openspec/
197
195
  ```
198
196
 
199
- Esto no desinstala el CLI de OpenSpec (que se ejecuta via `npx`), solo limpia los artefactos del proyecto.
200
-
201
197
  ---
202
198
 
203
199
  ## Paso 5 — Engram
@@ -245,19 +241,15 @@ chmod +x .opencode/tools/engram/bin/engram # Unix only
245
241
 
246
242
  ### Configurar para OpenCode
247
243
 
248
- Una vez que Engram está descargado localmente, ejecutá el setup que instala el plugin de OpenCode:
249
-
250
- ```bash
251
- .opencode/tools/engram/bin/engram setup opencode
252
- ```
244
+ Una vez que Engram está descargado localmente, el plugin se copia automáticamente de `assets/plugins/` a `.opencode/plugins/` durante la instalación. No necesitás correr ningún comando adicional.
253
245
 
254
246
  Este comando:
255
247
 
256
- - Instala el plugin de Engram para OpenCode en `~/.config/opencode/plugins/`
248
+ - Copia el plugin de Engram para OpenCode a `.opencode/plugins/`
257
249
  - **NO** agrega la entrada MCP al `opencode.json` del proyecto — eso lo hace `npx ostacky install` automáticamente
258
250
  - **NO** toca `.claude/`, `.cursor/`, `.gemini/` ni ninguna otra plataforma
259
251
 
260
- Verificá que `opencode.json` contenga la entrada MCP de Engram apuntando al binario local (agregada por el installer de Ostacky, no por `engram setup`):
252
+ Verificá que `opencode.json` contenga la entrada MCP de Engram apuntando al binario local (agregada por el installer de Ostacky):
261
253
 
262
254
  ```json
263
255
  {
@@ -281,7 +273,7 @@ El plugin de Engram para OpenCode usa `engram serve` para session tracking y rec
281
273
  engram serve
282
274
  ```
283
275
 
284
- Corre en el puerto 7437 por defecto. Los datos se almacenan en `~/.engram/engram.db` (SQLite local).
276
+ Corre en el puerto 7437 por defecto. Los datos se almacenan en `~/.engram/engram.db` (SQLite local). **Nota:** esta ruta está hardcoded en el binario de Engram y no es configurable por Ostacky.
285
277
 
286
278
  ### Desinstalar Engram del proyecto
287
279
 
@@ -290,14 +282,15 @@ Para remover la configuración de Engram del proyecto (sin borrar los datos):
290
282
  ```bash
291
283
  # Remover la entrada mcp.engram de opencode.json (editar el archivo)
292
284
  # Remover el plugin de Engram de OpenCode:
293
- rm -f ~/.config/opencode/plugins/engram.ts
285
+ rm -f .opencode/plugins/engram.ts
294
286
  # Remover el binario local
295
287
  rm -rf .opencode/tools/engram/
296
288
  ```
297
289
 
298
- Para borrar todos los datos de Engram (CUIDADO: borra toda la memoria persistente):
290
+ Para borrar todos los datos de Engram (**OPCIONAL** — esto borra la memoria persistente de TODOS los proyectos que usen Engram):
299
291
 
300
292
  ```bash
293
+ # ⚠️ Solo si querés borrar toda la memoria de Engram
301
294
  rm -rf ~/.engram/
302
295
  ```
303
296
 
@@ -411,26 +404,31 @@ Cada herramienta se instala en su propia carpeta dentro de `.opencode/` para man
411
404
  │ ├── opsx-archive.md # Generado por OpenSpec
412
405
  │ ├── opsx-explore.md # Generado por OpenSpec
413
406
  │ └── opsx-propose.md # Generado por OpenSpec
414
- ├── mcp/ # MCP servers bundleados (con node_modules)
415
- │ ├── ask-user-server/
407
+ ├── mcp/ # MCP servers bundleados (autocontenidos, sin dependencias externas)
408
+ │ ├── ostacky-controller/
416
409
  │ │ ├── index.js
417
410
  │ │ ├── package.json
418
411
  │ │ └── node_modules/
419
- │ └── ostacky-controller/
412
+ │ └── openspec/ # NUEVO: MCP server local
420
413
  │ ├── index.js
421
414
  │ ├── package.json
422
415
  │ └── node_modules/
423
- ├── skills/ # Skills bundleadas
424
- │ ├── thinking/
416
+ ├── skills/ # Skills bundleadas (15)
417
+ │ ├── brainstorming/
425
418
  │ ├── writing-plans/
426
419
  │ ├── tdd/
420
+ │ ├── review/
421
+ │ ├── execution-mode-evaluation/
427
422
  │ ├── subagent-driven-development/
428
423
  │ ├── dispatching-parallel-agents/
429
- │ ├── review/
430
424
  │ ├── openspec-propose/
431
425
  │ ├── openspec-apply-change/
432
426
  │ ├── openspec-archive-change/
433
- └── execution-mode-evaluation/
427
+ ├── receiving-code-review/
428
+ │ ├── using-git-worktrees/
429
+ │ ├── using-superpowers/
430
+ │ ├── writing-skills/
431
+ │ └── graceful-degradation/
434
432
  ├── tools/ # Config y archivos de herramientas externas
435
433
  │ ├── codegraph/ # Config de CodeGraph (AGENTS.md si codegraph lo crea)
436
434
  │ ├── engram/ # Config project-local de Engram
@@ -444,22 +442,95 @@ Cada herramienta se instala en su propia carpeta dentro de `.opencode/` para man
444
442
  - El binario de CodeGraph es **local al proyecto** en `.opencode/tools/codegraph/bin/codegraph` (con su runtime Node vendored en `.opencode/tools/codegraph/node`). No se instala globalmente.
445
443
  - El binario de Engram es **local al proyecto** en `.opencode/tools/engram/bin/engram`. No se instala globalmente.
446
444
  - Context7 se registra como MCP remoto en `opencode.jsonc`. Su skill opcional se instala via `npx ctx7 setup --opencode` en `.opencode/skills/context7/`.
447
- - Los MCP servers bundleados tienen sus `node_modules/` instalados localmente dentro de `.opencode/mcp/<name>/`.
445
+ - Los MCP servers bundleados son autocontenidos (un solo `index.js` sin dependencias externas).
448
446
 
449
447
  ## Verificación final
450
448
 
451
449
  Confirmá que:
452
450
 
453
- 1. `.opencode/skills/` contiene las skills curadas (6 Superpowers + 4 OpenSpec + 1 Ostacky `execution-mode-evaluation`) y opcionalmente `context7/` si se instaló con `npx ctx7 setup --opencode`
454
- 2. `.opencode/commands/` contiene los commands bundleados por Ostacky (`install-stack`, `opsx-sync`) y los 4 commands generados por OpenSpec (`opsx-apply`, `opsx-archive`, `opsx-explore`, `opsx-propose`) si OpenSpec fue inicializado en el Paso 4
455
- 3. `opencode.json` (o `.jsonc`) tiene los bloques `mcp.codegraph` (apuntando a `.opencode/tools/codegraph/bin/codegraph`), `mcp.engram` (apuntando a `.opencode/tools/engram/bin/engram`), `mcp.context7` y los MCP bundleados (`ask-user-server`, `ostacky-controller`) — sin campo `plugin`
451
+ 1. `.opencode/skills/` contiene las 15 skills curadas y opcionalmente `context7/` si se instaló con `npx ctx7 setup --opencode`
452
+ 2. `.opencode/commands/` contiene los commands bundleados por Ostacky (`install-stack`, `opsx-sync`) y los 4 commands generados por OpenSpec (`opsx-apply`, `opsx-archive`, `opsx-explore`, `opsx-propose`) si OpenSpec fue inicializado
453
+ 3. `opencode.json` (o `.jsonc`) tiene los bloques MCP: `codegraph`, `engram`, `context7`, `ostacky-controller`, `openspec` — sin campo `plugin`
456
454
  4. `.codegraph/` existe en la raíz del proyecto (índice local de CodeGraph)
457
455
  5. `.opencode/tools/codegraph/bin/codegraph --version` funciona (binario local)
458
456
  6. `.opencode/tools/engram/bin/engram --version` funciona (binario local)
459
457
  7. Context7 configurado: `mcp.context7` presente en `opencode.jsonc` y/o `.opencode/skills/context7/SKILL.md` existe
460
- 8. Los MCP bundleados tienen sus dependencias instaladas en `.opencode/mcp/*/node_modules/`
461
- 9. `.opencode/tools/` contiene subdirectorios para `codegraph/`, `engram/` y `context7/`
462
- 10. **NO existen** archivos generados en `.claude/`, `.kiro/`, `.cursor/`, `.gemini/`, `.codex/` ni ningún directorio de otra plataforma
463
- 11. **NO existe** `AGENTS.md` en la raíz del proyecto (si CodeGraph lo creó, el installer lo mueve a `.opencode/tools/codegraph/`)
458
+ 8. `.opencode/mcp/openspec/index.js` existe (MCP server local)
459
+ 9. Los MCP bundleados tienen sus dependencias instaladas en `.opencode/mcp/*/node_modules/`
460
+ 10. `.opencode/tools/` contiene subdirectorios para `codegraph/`, `engram/` y `context7/`
461
+ 11. **NO existen** archivos generados en `.claude/`, `.kiro/`, `.cursor/`, `.gemini/`, `.codex/` ni ningún directorio de otra plataforma
462
+ 12. **NO existe** `AGENTS.md` en la raíz del proyecto (si CodeGraph lo creó, el installer lo mueve a `.opencode/tools/codegraph/`)
464
463
 
465
464
  Reportá el estado de cada componente con ✓ o ✗.
465
+
466
+ ## Troubleshooting
467
+
468
+ ### MCP Server no responde
469
+
470
+ Si el controller o openspec MCP server no responde después de la instalación:
471
+
472
+ 1. **Verificar que el archivo existe:**
473
+
474
+ ```bash
475
+ ls -la .opencode/mcp/ostacky-controller/index.js
476
+ ls -la .opencode/mcp/openspec/index.js
477
+ ```
478
+
479
+ 2. **Verificar que Node.js está disponible:**
480
+
481
+ ```bash
482
+ node --version
483
+ ```
484
+
485
+ 3. **Testear el MCP server directamente:**
486
+
487
+ ```bash
488
+ echo '{"jsonrpc":"2.0","id":1,"method":"ping","params":{}}' | node .opencode/mcp/ostacky-controller/index.js
489
+ ```
490
+
491
+ 4. **Si falla, reinstalar:**
492
+ ```bash
493
+ npx ostacky install-stack
494
+ ```
495
+
496
+ ### CodeGraph no indexa
497
+
498
+ 1. **Verificar que el binario funciona:**
499
+
500
+ ```bash
501
+ .opencode/tools/codegraph/bin/codegraph --version
502
+ ```
503
+
504
+ 2. **Re-inicializar el índice:**
505
+
506
+ ```bash
507
+ .opencode/tools/codegraph/bin/codegraph init -i
508
+ ```
509
+
510
+ 3. **Si el binario no existe, reinstalar:**
511
+ ```bash
512
+ npx ostacky install-stack
513
+ ```
514
+
515
+ ### Engram no inicia
516
+
517
+ 1. **Verificar que el binario funciona:**
518
+
519
+ ```bash
520
+ .opencode/tools/engram/bin/engram --version
521
+ ```
522
+
523
+ 2. **Verificar que el plugin está instalado:**
524
+
525
+ ```bash
526
+ ls -la .opencode/plugins/engram.ts
527
+ ```
528
+
529
+ 3. **Re-instalar el plugin:**
530
+ ```bash
531
+ cp assets/plugins/engram.ts .opencode/plugins/engram.ts
532
+ ```
533
+
534
+ ### Degradación graceful
535
+
536
+ Si múltiples tools fallan, Ostacky opera en modo degraded. Ver `assets/skills/graceful-degradation/SKILL.md` para los flujos alternativos disponibles.
@@ -0,0 +1,20 @@
1
+ {
2
+ "lockfileVersion": 1,
3
+ "configVersion": 1,
4
+ "workspaces": {
5
+ "": {
6
+ "name": "openspec-mcp",
7
+ "dependencies": {
8
+ "@modelcontextprotocol/server": "^2.0.0-beta.5",
9
+ "zod": "^4.0.0",
10
+ },
11
+ },
12
+ },
13
+ "packages": {
14
+ "@modelcontextprotocol/core": ["@modelcontextprotocol/core@2.0.0-beta.5", "", { "dependencies": { "zod": "^4.2.0" } }, "sha512-HKbY9XTbsDy1Y6r2I55TGE3JEapM0vg96e1MUmBIF9LGjos5gjhcIrTz1yvBPLg2aFKHjwhUAQfRdrCEnPxNew=="],
15
+
16
+ "@modelcontextprotocol/server": ["@modelcontextprotocol/server@2.0.0-beta.5", "", { "dependencies": { "@modelcontextprotocol/core": "2.0.0-beta.5", "zod": "^4.2.0" } }, "sha512-i1E5l75rQKsgY/AKAIspgMBH1vEL7dqiK7tHr0L+raYcb0SWOziqNGJXGIG6NY4AlXDWIKGJQGB7Nqfs3oUi5g=="],
17
+
18
+ "zod": ["zod@4.4.3", "", {}, "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ=="],
19
+ }
20
+ }
@@ -0,0 +1,300 @@
1
+ #!/usr/bin/env node
2
+
3
+ import { McpServer } from '@modelcontextprotocol/server';
4
+ import { StdioServerTransport } from '@modelcontextprotocol/server/stdio';
5
+ import * as z from 'zod/v4';
6
+ import {
7
+ readFileSync,
8
+ writeFileSync,
9
+ existsSync,
10
+ mkdirSync,
11
+ readdirSync,
12
+ renameSync,
13
+ unlinkSync,
14
+ } from 'node:fs';
15
+ import { join, dirname, basename } from 'node:path';
16
+
17
+ const PROJECT_ROOT = process.cwd();
18
+ const OPENSPEC_DIR = join(PROJECT_ROOT, 'openspec');
19
+
20
+ function safeJsonStringify(obj, indent = 2) {
21
+ const seen = new WeakSet();
22
+ return JSON.stringify(obj, (key, value) => {
23
+ if (typeof value === 'object' && value !== null) {
24
+ if (seen.has(value)) return '[Circular]';
25
+ seen.add(value);
26
+ }
27
+ if (typeof value === 'bigint') return value.toString();
28
+ if (value instanceof Error) return { message: value.message, stack: value.stack, name: value.name };
29
+ return value;
30
+ }, indent);
31
+ }
32
+
33
+ function log(event, data) {
34
+ const ts = new Date().toISOString();
35
+ const payload = data ? ` ${safeJsonStringify(data)}` : '';
36
+ console.error(`[${ts}] ${event}${payload}`);
37
+ }
38
+
39
+ /**
40
+ * Cleans up stale .tmp.* files from a previous crash.
41
+ */
42
+ function cleanupTmpFiles(dir) {
43
+ if (!dir || !existsSync(dir)) return;
44
+ try {
45
+ for (const entry of readdirSync(dir)) {
46
+ if (entry.includes('.tmp.')) {
47
+ try {
48
+ unlinkSync(join(dir, entry));
49
+ } catch {
50
+ /* best-effort */
51
+ }
52
+ }
53
+ }
54
+ } catch {
55
+ /* best-effort */
56
+ }
57
+ }
58
+
59
+ /**
60
+ * Atomic write: write to tmp file, then rename.
61
+ * Prevents corruption on crash.
62
+ */
63
+ function atomicWriteSync(filePath, content) {
64
+ const dir = dirname(filePath);
65
+ mkdirSync(dir, { recursive: true });
66
+ const tmp = filePath + '.tmp.' + process.pid;
67
+ writeFileSync(tmp, content, 'utf-8');
68
+ renameSync(tmp, filePath);
69
+ }
70
+
71
+ function safeHandler(fn) {
72
+ return async (params) => {
73
+ try {
74
+ const result = await fn(params);
75
+ return { content: [{ type: 'text', text: safeJsonStringify(result) }] };
76
+ } catch (error) {
77
+ log('tool:error', {
78
+ name: fn.name || 'anonymous',
79
+ error: error.message,
80
+ stack: error.stack,
81
+ });
82
+ return {
83
+ content: [{ type: 'text', text: safeJsonStringify({ error: error.message }) }],
84
+ isError: true,
85
+ };
86
+ }
87
+ };
88
+ }
89
+
90
+ // ── Input Validation ─────────────────────────────────────────────────────────
91
+
92
+ function validateChangeId(changeId) {
93
+ if (!changeId || typeof changeId !== 'string') {
94
+ return 'changeId is required and must be a non-empty string';
95
+ }
96
+ if (/[\/\\]/.test(changeId) || changeId === '.' || changeId === '..') {
97
+ return 'changeId contains invalid characters';
98
+ }
99
+ return null;
100
+ }
101
+
102
+ function validateProposalInput({ title, description, scope }) {
103
+ if (!title || typeof title !== 'string' || title.trim().length === 0) {
104
+ return 'title is required and must be a non-empty string';
105
+ }
106
+ if (!description || typeof description !== 'string' || description.trim().length === 0) {
107
+ return 'description is required and must be a non-empty string';
108
+ }
109
+ if (!scope || typeof scope !== 'string' || scope.trim().length === 0) {
110
+ return 'scope is required and must be a non-empty string';
111
+ }
112
+ return null;
113
+ }
114
+
115
+ // ── OpenSpec State Manager ──────────────────────────────────────────────────
116
+
117
+ class OpenSpecManager {
118
+ #changesDir;
119
+
120
+ constructor() {
121
+ this.#changesDir = join(OPENSPEC_DIR, 'changes');
122
+ if (!existsSync(this.#changesDir)) {
123
+ mkdirSync(this.#changesDir, { recursive: true });
124
+ }
125
+ // Clean up stale tmp files from previous crashes
126
+ cleanupTmpFiles(this.#changesDir);
127
+ }
128
+
129
+ listChanges() {
130
+ if (!existsSync(this.#changesDir)) return [];
131
+ return readdirSync(this.#changesDir).filter(f =>
132
+ existsSync(join(this.#changesDir, f, 'proposal.md'))
133
+ );
134
+ }
135
+
136
+ getChange(changeId) {
137
+ const changeDir = join(this.#changesDir, changeId);
138
+ if (!existsSync(changeDir)) return null;
139
+
140
+ const proposal = existsSync(join(changeDir, 'proposal.md'))
141
+ ? readFileSync(join(changeDir, 'proposal.md'), 'utf-8')
142
+ : null;
143
+ const design = existsSync(join(changeDir, 'design.md'))
144
+ ? readFileSync(join(changeDir, 'design.md'), 'utf-8')
145
+ : null;
146
+ const tasks = existsSync(join(changeDir, 'tasks.md'))
147
+ ? readFileSync(join(changeDir, 'tasks.md'), 'utf-8')
148
+ : null;
149
+
150
+ return { changeId, proposal, design, tasks };
151
+ }
152
+
153
+ createProposal({ title, description, scope }) {
154
+ const changeId = `change-${Date.now()}`;
155
+ const changeDir = join(this.#changesDir, changeId);
156
+ mkdirSync(changeDir, { recursive: true });
157
+
158
+ const proposal = `# ${title}
159
+
160
+ ## Description
161
+ ${description}
162
+
163
+ ## Scope
164
+ ${scope}
165
+
166
+ ## Status
167
+ - Created: ${new Date().toISOString()}
168
+ - Phase: proposal
169
+ `;
170
+
171
+ atomicWriteSync(join(changeDir, 'proposal.md'), proposal);
172
+ log('proposal:created', { changeId, title });
173
+ return { changeId, status: 'created' };
174
+ }
175
+
176
+ archiveChange({ changeId }) {
177
+ const changeDir = join(this.#changesDir, changeId);
178
+ if (!existsSync(changeDir)) {
179
+ return { error: `Change ${changeId} not found` };
180
+ }
181
+
182
+ // Move to archive
183
+ const archiveDir = join(OPENSPEC_DIR, 'archive');
184
+ if (!existsSync(archiveDir)) {
185
+ mkdirSync(archiveDir, { recursive: true });
186
+ }
187
+
188
+ renameSync(changeDir, join(archiveDir, changeId));
189
+ log('change:archived', { changeId });
190
+ return { changeId, status: 'archived' };
191
+ }
192
+ }
193
+
194
+ const manager = new OpenSpecManager();
195
+
196
+ // ── MCP Server ──────────────────────────────────────────────────────────────
197
+
198
+ const server = new McpServer({
199
+ name: 'openspec',
200
+ version: '0.6.0',
201
+ });
202
+
203
+ server.registerTool(
204
+ 'openspec_list',
205
+ {
206
+ description: 'List all active changes',
207
+ inputSchema: z.object({}),
208
+ },
209
+ safeHandler(async () => {
210
+ log('tool:openspec_list');
211
+ const changes = manager.listChanges();
212
+ return { changes };
213
+ })
214
+ );
215
+
216
+ server.registerTool(
217
+ 'openspec_propose',
218
+ {
219
+ description: 'Create a new change proposal',
220
+ inputSchema: z.object({
221
+ title: z.string().min(1).describe('Change title'),
222
+ description: z.string().min(1).describe('Change description'),
223
+ scope: z.string().min(1).describe('Change scope'),
224
+ }),
225
+ },
226
+ safeHandler(async ({ title, description, scope }) => {
227
+ log('tool:openspec_propose', { title });
228
+ return manager.createProposal({ title, description, scope });
229
+ })
230
+ );
231
+
232
+ server.registerTool(
233
+ 'openspec_archive',
234
+ {
235
+ description: 'Archive a completed change',
236
+ inputSchema: z.object({
237
+ changeId: z.string().min(1).describe('Change ID to archive'),
238
+ }),
239
+ },
240
+ safeHandler(async ({ changeId }) => {
241
+ const validationError = validateChangeId(changeId);
242
+ if (validationError) return { error: validationError };
243
+ log('tool:openspec_archive', { changeId });
244
+ return manager.archiveChange({ changeId });
245
+ })
246
+ );
247
+
248
+ server.registerTool(
249
+ 'openspec_get_change',
250
+ {
251
+ description: 'Get change details (proposal, design, tasks)',
252
+ inputSchema: z.object({
253
+ changeId: z.string().min(1).describe('Change ID'),
254
+ }),
255
+ },
256
+ safeHandler(async ({ changeId }) => {
257
+ const validationError = validateChangeId(changeId);
258
+ if (validationError) return { error: validationError };
259
+ log('tool:openspec_get_change', { changeId });
260
+ return manager.getChange(changeId);
261
+ })
262
+ );
263
+
264
+ // ── Main ────────────────────────────────────────────────────────────────────
265
+
266
+ async function main() {
267
+ log('Starting openspec MCP...');
268
+ const transport = new StdioServerTransport();
269
+ await server.connect(transport);
270
+ log('openspec MCP connected and ready');
271
+ }
272
+
273
+ async function shutdown(signal) {
274
+ log('mcp:shutdown', { signal });
275
+ try {
276
+ await server.close();
277
+ } catch (err) {
278
+ log('mcp:shutdown:error', { error: err.message });
279
+ }
280
+ process.exit(0);
281
+ }
282
+
283
+ process.on('SIGINT', () => shutdown('SIGINT'));
284
+ process.on('SIGTERM', () => shutdown('SIGTERM'));
285
+ process.on('uncaughtException', (error) => {
286
+ log('mcp:uncaughtException', { error: error.message, stack: error.stack });
287
+ shutdown('uncaughtException');
288
+ });
289
+
290
+ const isDirectRun =
291
+ process.argv[1] && (process.argv[1].endsWith('/index.js') || process.argv[1].endsWith('\\index.js'));
292
+
293
+ if (isDirectRun) {
294
+ main().catch((error) => {
295
+ console.error('Fatal error:', error);
296
+ process.exit(1);
297
+ });
298
+ }
299
+
300
+ export { OpenSpecManager };