@harness-engineering/cli 1.12.0 → 1.13.1

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 (281) hide show
  1. package/dist/agents/skills/claude-code/add-harness-component/skill.yaml +1 -0
  2. package/dist/agents/skills/claude-code/align-documentation/skill.yaml +1 -0
  3. package/dist/agents/skills/claude-code/check-mechanical-constraints/skill.yaml +1 -0
  4. package/dist/agents/skills/claude-code/cleanup-dead-code/skill.yaml +1 -0
  5. package/dist/agents/skills/claude-code/detect-doc-drift/skill.yaml +1 -0
  6. package/dist/agents/skills/claude-code/enforce-architecture/skill.yaml +1 -0
  7. package/dist/agents/skills/claude-code/harness-accessibility/skill.yaml +1 -0
  8. package/dist/agents/skills/claude-code/harness-api-design/SKILL.md +304 -0
  9. package/dist/agents/skills/claude-code/harness-api-design/skill.yaml +74 -0
  10. package/dist/agents/skills/claude-code/harness-architecture-advisor/skill.yaml +1 -0
  11. package/dist/agents/skills/claude-code/harness-auth/SKILL.md +279 -0
  12. package/dist/agents/skills/claude-code/harness-auth/skill.yaml +81 -0
  13. package/dist/agents/skills/claude-code/harness-autopilot/SKILL.md +57 -9
  14. package/dist/agents/skills/claude-code/harness-autopilot/skill.yaml +1 -0
  15. package/dist/agents/skills/claude-code/harness-brainstorming/SKILL.md +1 -1
  16. package/dist/agents/skills/claude-code/harness-brainstorming/skill.yaml +1 -0
  17. package/dist/agents/skills/claude-code/harness-caching/SKILL.md +309 -0
  18. package/dist/agents/skills/claude-code/harness-caching/skill.yaml +73 -0
  19. package/dist/agents/skills/claude-code/harness-chaos/SKILL.md +295 -0
  20. package/dist/agents/skills/claude-code/harness-chaos/skill.yaml +72 -0
  21. package/dist/agents/skills/claude-code/harness-code-review/SKILL.md +19 -2
  22. package/dist/agents/skills/claude-code/harness-code-review/skill.yaml +1 -0
  23. package/dist/agents/skills/claude-code/harness-codebase-cleanup/skill.yaml +1 -0
  24. package/dist/agents/skills/claude-code/harness-compliance/SKILL.md +303 -0
  25. package/dist/agents/skills/claude-code/harness-compliance/skill.yaml +78 -0
  26. package/dist/agents/skills/claude-code/harness-containerization/SKILL.md +284 -0
  27. package/dist/agents/skills/claude-code/harness-containerization/skill.yaml +80 -0
  28. package/dist/agents/skills/claude-code/harness-data-pipeline/SKILL.md +274 -0
  29. package/dist/agents/skills/claude-code/harness-data-pipeline/skill.yaml +81 -0
  30. package/dist/agents/skills/claude-code/harness-data-validation/SKILL.md +343 -0
  31. package/dist/agents/skills/claude-code/harness-data-validation/skill.yaml +75 -0
  32. package/dist/agents/skills/claude-code/harness-database/SKILL.md +258 -0
  33. package/dist/agents/skills/claude-code/harness-database/skill.yaml +80 -0
  34. package/dist/agents/skills/claude-code/harness-debugging/skill.yaml +1 -0
  35. package/dist/agents/skills/claude-code/harness-dependency-health/skill.yaml +1 -0
  36. package/dist/agents/skills/claude-code/harness-deployment/SKILL.md +255 -0
  37. package/dist/agents/skills/claude-code/harness-deployment/skill.yaml +77 -0
  38. package/dist/agents/skills/claude-code/harness-design/skill.yaml +1 -0
  39. package/dist/agents/skills/claude-code/harness-design-mobile/skill.yaml +1 -0
  40. package/dist/agents/skills/claude-code/harness-design-system/skill.yaml +1 -0
  41. package/dist/agents/skills/claude-code/harness-design-web/skill.yaml +1 -0
  42. package/dist/agents/skills/claude-code/harness-diagnostics/skill.yaml +1 -0
  43. package/dist/agents/skills/claude-code/harness-docs-pipeline/skill.yaml +1 -0
  44. package/dist/agents/skills/claude-code/harness-dx/SKILL.md +276 -0
  45. package/dist/agents/skills/claude-code/harness-dx/skill.yaml +76 -0
  46. package/dist/agents/skills/claude-code/harness-e2e/SKILL.md +245 -0
  47. package/dist/agents/skills/claude-code/harness-e2e/skill.yaml +78 -0
  48. package/dist/agents/skills/claude-code/harness-event-driven/SKILL.md +280 -0
  49. package/dist/agents/skills/claude-code/harness-event-driven/skill.yaml +77 -0
  50. package/dist/agents/skills/claude-code/harness-execution/SKILL.md +39 -12
  51. package/dist/agents/skills/claude-code/harness-execution/skill.yaml +1 -0
  52. package/dist/agents/skills/claude-code/harness-feature-flags/SKILL.md +287 -0
  53. package/dist/agents/skills/claude-code/harness-feature-flags/skill.yaml +74 -0
  54. package/dist/agents/skills/claude-code/harness-git-workflow/skill.yaml +1 -0
  55. package/dist/agents/skills/claude-code/harness-hotspot-detector/skill.yaml +1 -0
  56. package/dist/agents/skills/claude-code/harness-i18n/skill.yaml +1 -0
  57. package/dist/agents/skills/claude-code/harness-i18n-process/skill.yaml +1 -0
  58. package/dist/agents/skills/claude-code/harness-i18n-workflow/skill.yaml +1 -0
  59. package/dist/agents/skills/claude-code/harness-impact-analysis/skill.yaml +1 -0
  60. package/dist/agents/skills/claude-code/harness-incident-response/SKILL.md +223 -0
  61. package/dist/agents/skills/claude-code/harness-incident-response/skill.yaml +78 -0
  62. package/dist/agents/skills/claude-code/harness-infrastructure-as-code/SKILL.md +279 -0
  63. package/dist/agents/skills/claude-code/harness-infrastructure-as-code/skill.yaml +80 -0
  64. package/dist/agents/skills/claude-code/harness-integration-test/SKILL.md +271 -0
  65. package/dist/agents/skills/claude-code/harness-integration-test/skill.yaml +73 -0
  66. package/dist/agents/skills/claude-code/harness-integrity/skill.yaml +1 -0
  67. package/dist/agents/skills/claude-code/harness-knowledge-mapper/skill.yaml +1 -0
  68. package/dist/agents/skills/claude-code/harness-load-testing/SKILL.md +274 -0
  69. package/dist/agents/skills/claude-code/harness-load-testing/skill.yaml +79 -0
  70. package/dist/agents/skills/claude-code/harness-ml-ops/SKILL.md +341 -0
  71. package/dist/agents/skills/claude-code/harness-ml-ops/skill.yaml +79 -0
  72. package/dist/agents/skills/claude-code/harness-mobile-patterns/SKILL.md +326 -0
  73. package/dist/agents/skills/claude-code/harness-mobile-patterns/skill.yaml +82 -0
  74. package/dist/agents/skills/claude-code/harness-mutation-test/SKILL.md +251 -0
  75. package/dist/agents/skills/claude-code/harness-mutation-test/skill.yaml +70 -0
  76. package/dist/agents/skills/claude-code/harness-observability/SKILL.md +283 -0
  77. package/dist/agents/skills/claude-code/harness-observability/skill.yaml +78 -0
  78. package/dist/agents/skills/claude-code/harness-onboarding/skill.yaml +1 -0
  79. package/dist/agents/skills/claude-code/harness-parallel-agents/skill.yaml +1 -0
  80. package/dist/agents/skills/claude-code/harness-perf/skill.yaml +1 -0
  81. package/dist/agents/skills/claude-code/harness-perf-tdd/skill.yaml +1 -0
  82. package/dist/agents/skills/claude-code/harness-planning/SKILL.md +28 -11
  83. package/dist/agents/skills/claude-code/harness-planning/skill.yaml +1 -0
  84. package/dist/agents/skills/claude-code/harness-pre-commit-review/skill.yaml +1 -0
  85. package/dist/agents/skills/claude-code/harness-product-spec/SKILL.md +285 -0
  86. package/dist/agents/skills/claude-code/harness-product-spec/skill.yaml +72 -0
  87. package/dist/agents/skills/claude-code/harness-property-test/SKILL.md +281 -0
  88. package/dist/agents/skills/claude-code/harness-property-test/skill.yaml +71 -0
  89. package/dist/agents/skills/claude-code/harness-refactoring/skill.yaml +1 -0
  90. package/dist/agents/skills/claude-code/harness-release-readiness/skill.yaml +1 -0
  91. package/dist/agents/skills/claude-code/harness-resilience/SKILL.md +255 -0
  92. package/dist/agents/skills/claude-code/harness-resilience/skill.yaml +76 -0
  93. package/dist/agents/skills/claude-code/harness-roadmap/SKILL.md +34 -0
  94. package/dist/agents/skills/claude-code/harness-roadmap/skill.yaml +1 -0
  95. package/dist/agents/skills/claude-code/harness-secrets/SKILL.md +293 -0
  96. package/dist/agents/skills/claude-code/harness-secrets/skill.yaml +76 -0
  97. package/dist/agents/skills/claude-code/harness-security-review/skill.yaml +1 -0
  98. package/dist/agents/skills/claude-code/harness-security-scan/skill.yaml +1 -0
  99. package/dist/agents/skills/claude-code/harness-skill-authoring/skill.yaml +1 -0
  100. package/dist/agents/skills/claude-code/harness-soundness-review/skill.yaml +1 -0
  101. package/dist/agents/skills/claude-code/harness-sql-review/SKILL.md +315 -0
  102. package/dist/agents/skills/claude-code/harness-sql-review/skill.yaml +74 -0
  103. package/dist/agents/skills/claude-code/harness-state-management/skill.yaml +1 -0
  104. package/dist/agents/skills/claude-code/harness-tdd/skill.yaml +1 -0
  105. package/dist/agents/skills/claude-code/harness-test-advisor/skill.yaml +1 -0
  106. package/dist/agents/skills/claude-code/harness-test-data/SKILL.md +268 -0
  107. package/dist/agents/skills/claude-code/harness-test-data/skill.yaml +74 -0
  108. package/dist/agents/skills/claude-code/harness-ux-copy/SKILL.md +271 -0
  109. package/dist/agents/skills/claude-code/harness-ux-copy/skill.yaml +77 -0
  110. package/dist/agents/skills/claude-code/harness-verification/SKILL.md +42 -0
  111. package/dist/agents/skills/claude-code/harness-verification/skill.yaml +1 -0
  112. package/dist/agents/skills/claude-code/harness-verify/skill.yaml +1 -0
  113. package/dist/agents/skills/claude-code/harness-visual-regression/SKILL.md +257 -0
  114. package/dist/agents/skills/claude-code/harness-visual-regression/skill.yaml +74 -0
  115. package/dist/agents/skills/claude-code/initialize-harness-project/skill.yaml +1 -0
  116. package/dist/agents/skills/claude-code/validate-context-engineering/skill.yaml +1 -0
  117. package/dist/agents/skills/gemini-cli/add-harness-component/skill.yaml +1 -0
  118. package/dist/agents/skills/gemini-cli/align-documentation/skill.yaml +1 -0
  119. package/dist/agents/skills/gemini-cli/check-mechanical-constraints/skill.yaml +1 -0
  120. package/dist/agents/skills/gemini-cli/cleanup-dead-code/skill.yaml +1 -0
  121. package/dist/agents/skills/gemini-cli/detect-doc-drift/skill.yaml +1 -0
  122. package/dist/agents/skills/gemini-cli/enforce-architecture/skill.yaml +1 -0
  123. package/dist/agents/skills/gemini-cli/harness-accessibility/skill.yaml +1 -0
  124. package/dist/agents/skills/gemini-cli/harness-api-design/SKILL.md +304 -0
  125. package/dist/agents/skills/gemini-cli/harness-api-design/skill.yaml +74 -0
  126. package/dist/agents/skills/gemini-cli/harness-architecture-advisor/skill.yaml +1 -0
  127. package/dist/agents/skills/gemini-cli/harness-auth/SKILL.md +279 -0
  128. package/dist/agents/skills/gemini-cli/harness-auth/skill.yaml +81 -0
  129. package/dist/agents/skills/gemini-cli/harness-autopilot/SKILL.md +57 -9
  130. package/dist/agents/skills/gemini-cli/harness-autopilot/skill.yaml +1 -0
  131. package/dist/agents/skills/gemini-cli/harness-brainstorming/SKILL.md +1 -1
  132. package/dist/agents/skills/gemini-cli/harness-brainstorming/skill.yaml +1 -0
  133. package/dist/agents/skills/gemini-cli/harness-caching/SKILL.md +309 -0
  134. package/dist/agents/skills/gemini-cli/harness-caching/skill.yaml +73 -0
  135. package/dist/agents/skills/gemini-cli/harness-chaos/SKILL.md +295 -0
  136. package/dist/agents/skills/gemini-cli/harness-chaos/skill.yaml +72 -0
  137. package/dist/agents/skills/gemini-cli/harness-code-review/SKILL.md +19 -2
  138. package/dist/agents/skills/gemini-cli/harness-code-review/skill.yaml +1 -0
  139. package/dist/agents/skills/gemini-cli/harness-codebase-cleanup/skill.yaml +1 -0
  140. package/dist/agents/skills/gemini-cli/harness-compliance/SKILL.md +303 -0
  141. package/dist/agents/skills/gemini-cli/harness-compliance/skill.yaml +78 -0
  142. package/dist/agents/skills/gemini-cli/harness-containerization/SKILL.md +284 -0
  143. package/dist/agents/skills/gemini-cli/harness-containerization/skill.yaml +80 -0
  144. package/dist/agents/skills/gemini-cli/harness-data-pipeline/SKILL.md +274 -0
  145. package/dist/agents/skills/gemini-cli/harness-data-pipeline/skill.yaml +81 -0
  146. package/dist/agents/skills/gemini-cli/harness-data-validation/SKILL.md +343 -0
  147. package/dist/agents/skills/gemini-cli/harness-data-validation/skill.yaml +75 -0
  148. package/dist/agents/skills/gemini-cli/harness-database/SKILL.md +258 -0
  149. package/dist/agents/skills/gemini-cli/harness-database/skill.yaml +80 -0
  150. package/dist/agents/skills/gemini-cli/harness-debugging/skill.yaml +1 -0
  151. package/dist/agents/skills/gemini-cli/harness-dependency-health/skill.yaml +1 -0
  152. package/dist/agents/skills/gemini-cli/harness-deployment/SKILL.md +255 -0
  153. package/dist/agents/skills/gemini-cli/harness-deployment/skill.yaml +77 -0
  154. package/dist/agents/skills/gemini-cli/harness-design/skill.yaml +1 -0
  155. package/dist/agents/skills/gemini-cli/harness-design-mobile/skill.yaml +1 -0
  156. package/dist/agents/skills/gemini-cli/harness-design-system/skill.yaml +1 -0
  157. package/dist/agents/skills/gemini-cli/harness-design-web/skill.yaml +1 -0
  158. package/dist/agents/skills/gemini-cli/harness-diagnostics/skill.yaml +1 -0
  159. package/dist/agents/skills/gemini-cli/harness-docs-pipeline/skill.yaml +1 -0
  160. package/dist/agents/skills/gemini-cli/harness-dx/SKILL.md +276 -0
  161. package/dist/agents/skills/gemini-cli/harness-dx/skill.yaml +76 -0
  162. package/dist/agents/skills/gemini-cli/harness-e2e/SKILL.md +245 -0
  163. package/dist/agents/skills/gemini-cli/harness-e2e/skill.yaml +78 -0
  164. package/dist/agents/skills/gemini-cli/harness-event-driven/SKILL.md +280 -0
  165. package/dist/agents/skills/gemini-cli/harness-event-driven/skill.yaml +77 -0
  166. package/dist/agents/skills/gemini-cli/harness-execution/SKILL.md +39 -12
  167. package/dist/agents/skills/gemini-cli/harness-execution/skill.yaml +1 -0
  168. package/dist/agents/skills/gemini-cli/harness-feature-flags/SKILL.md +287 -0
  169. package/dist/agents/skills/gemini-cli/harness-feature-flags/skill.yaml +74 -0
  170. package/dist/agents/skills/gemini-cli/harness-git-workflow/skill.yaml +1 -0
  171. package/dist/agents/skills/gemini-cli/harness-hotspot-detector/skill.yaml +1 -0
  172. package/dist/agents/skills/gemini-cli/harness-i18n/skill.yaml +1 -0
  173. package/dist/agents/skills/gemini-cli/harness-i18n-process/skill.yaml +1 -0
  174. package/dist/agents/skills/gemini-cli/harness-i18n-workflow/skill.yaml +1 -0
  175. package/dist/agents/skills/gemini-cli/harness-impact-analysis/skill.yaml +1 -0
  176. package/dist/agents/skills/gemini-cli/harness-incident-response/SKILL.md +223 -0
  177. package/dist/agents/skills/gemini-cli/harness-incident-response/skill.yaml +78 -0
  178. package/dist/agents/skills/gemini-cli/harness-infrastructure-as-code/SKILL.md +279 -0
  179. package/dist/agents/skills/gemini-cli/harness-infrastructure-as-code/skill.yaml +80 -0
  180. package/dist/agents/skills/gemini-cli/harness-integration-test/SKILL.md +271 -0
  181. package/dist/agents/skills/gemini-cli/harness-integration-test/skill.yaml +73 -0
  182. package/dist/agents/skills/gemini-cli/harness-integrity/skill.yaml +1 -0
  183. package/dist/agents/skills/gemini-cli/harness-knowledge-mapper/skill.yaml +1 -0
  184. package/dist/agents/skills/gemini-cli/harness-load-testing/SKILL.md +274 -0
  185. package/dist/agents/skills/gemini-cli/harness-load-testing/skill.yaml +79 -0
  186. package/dist/agents/skills/gemini-cli/harness-ml-ops/SKILL.md +341 -0
  187. package/dist/agents/skills/gemini-cli/harness-ml-ops/skill.yaml +79 -0
  188. package/dist/agents/skills/gemini-cli/harness-mobile-patterns/SKILL.md +326 -0
  189. package/dist/agents/skills/gemini-cli/harness-mobile-patterns/skill.yaml +82 -0
  190. package/dist/agents/skills/gemini-cli/harness-mutation-test/SKILL.md +251 -0
  191. package/dist/agents/skills/gemini-cli/harness-mutation-test/skill.yaml +70 -0
  192. package/dist/agents/skills/gemini-cli/harness-observability/SKILL.md +283 -0
  193. package/dist/agents/skills/gemini-cli/harness-observability/skill.yaml +78 -0
  194. package/dist/agents/skills/gemini-cli/harness-onboarding/skill.yaml +1 -0
  195. package/dist/agents/skills/gemini-cli/harness-parallel-agents/skill.yaml +1 -0
  196. package/dist/agents/skills/gemini-cli/harness-perf/skill.yaml +1 -0
  197. package/dist/agents/skills/gemini-cli/harness-perf-tdd/skill.yaml +1 -0
  198. package/dist/agents/skills/gemini-cli/harness-planning/SKILL.md +28 -11
  199. package/dist/agents/skills/gemini-cli/harness-planning/skill.yaml +1 -0
  200. package/dist/agents/skills/gemini-cli/harness-pre-commit-review/skill.yaml +1 -0
  201. package/dist/agents/skills/gemini-cli/harness-product-spec/SKILL.md +285 -0
  202. package/dist/agents/skills/gemini-cli/harness-product-spec/skill.yaml +72 -0
  203. package/dist/agents/skills/gemini-cli/harness-property-test/SKILL.md +281 -0
  204. package/dist/agents/skills/gemini-cli/harness-property-test/skill.yaml +71 -0
  205. package/dist/agents/skills/gemini-cli/harness-refactoring/skill.yaml +1 -0
  206. package/dist/agents/skills/gemini-cli/harness-release-readiness/skill.yaml +1 -0
  207. package/dist/agents/skills/gemini-cli/harness-resilience/SKILL.md +255 -0
  208. package/dist/agents/skills/gemini-cli/harness-resilience/skill.yaml +76 -0
  209. package/dist/agents/skills/gemini-cli/harness-roadmap/SKILL.md +34 -0
  210. package/dist/agents/skills/gemini-cli/harness-roadmap/skill.yaml +1 -0
  211. package/dist/agents/skills/gemini-cli/harness-secrets/SKILL.md +293 -0
  212. package/dist/agents/skills/gemini-cli/harness-secrets/skill.yaml +76 -0
  213. package/dist/agents/skills/gemini-cli/harness-security-review/SKILL.md +240 -0
  214. package/dist/agents/skills/gemini-cli/harness-security-review/skill.yaml +1 -0
  215. package/dist/agents/skills/gemini-cli/harness-security-scan/skill.yaml +1 -0
  216. package/dist/agents/skills/gemini-cli/harness-skill-authoring/skill.yaml +1 -0
  217. package/dist/agents/skills/gemini-cli/harness-soundness-review/skill.yaml +1 -0
  218. package/dist/agents/skills/gemini-cli/harness-sql-review/SKILL.md +315 -0
  219. package/dist/agents/skills/gemini-cli/harness-sql-review/skill.yaml +74 -0
  220. package/dist/agents/skills/gemini-cli/harness-state-management/skill.yaml +1 -0
  221. package/dist/agents/skills/gemini-cli/harness-tdd/skill.yaml +1 -0
  222. package/dist/agents/skills/gemini-cli/harness-test-advisor/skill.yaml +1 -0
  223. package/dist/agents/skills/gemini-cli/harness-test-data/SKILL.md +268 -0
  224. package/dist/agents/skills/gemini-cli/harness-test-data/skill.yaml +74 -0
  225. package/dist/agents/skills/gemini-cli/harness-ux-copy/SKILL.md +271 -0
  226. package/dist/agents/skills/gemini-cli/harness-ux-copy/skill.yaml +77 -0
  227. package/dist/agents/skills/gemini-cli/harness-verification/SKILL.md +42 -0
  228. package/dist/agents/skills/gemini-cli/harness-verification/skill.yaml +1 -0
  229. package/dist/agents/skills/gemini-cli/harness-verify/skill.yaml +1 -0
  230. package/dist/agents/skills/gemini-cli/harness-visual-regression/SKILL.md +257 -0
  231. package/dist/agents/skills/gemini-cli/harness-visual-regression/skill.yaml +74 -0
  232. package/dist/agents/skills/gemini-cli/initialize-harness-project/skill.yaml +1 -0
  233. package/dist/agents/skills/gemini-cli/validate-context-engineering/skill.yaml +1 -0
  234. package/dist/{agents-md-KIS2RSMG.js → agents-md-XU3BHE22.js} +1 -1
  235. package/dist/{architecture-AJAUDRQQ.js → architecture-2R5Z4ZAF.js} +2 -2
  236. package/dist/bin/harness-mcp.js +14 -13
  237. package/dist/bin/harness.js +22 -21
  238. package/dist/{check-phase-gate-K7QCSYRJ.js → check-phase-gate-2OFZ7OWW.js} +3 -2
  239. package/dist/{chunk-TJVVU3HB.js → chunk-4ZMOCPYO.js} +1 -1
  240. package/dist/{chunk-EAURF4LH.js → chunk-65FRIL4D.js} +2 -2
  241. package/dist/{chunk-L2KLU56K.js → chunk-AOZRDOIP.js} +2 -2
  242. package/dist/{chunk-JLXOEO5C.js → chunk-DZS7CJKL.js} +4 -4
  243. package/dist/{chunk-FLOEMHDF.js → chunk-IM32EEDM.js} +9 -9
  244. package/dist/{chunk-2YPZKGAG.js → chunk-IMFVFNJE.js} +1 -1
  245. package/dist/{chunk-HD4IBGLA.js → chunk-N5G5QMS3.js} +24 -1
  246. package/dist/{chunk-CTTFXXKJ.js → chunk-ND6PNADU.js} +23 -9
  247. package/dist/{chunk-747VBPA4.js → chunk-NERR4TAO.js} +783 -444
  248. package/dist/{chunk-YXOG2277.js → chunk-NOPU4RZ4.js} +2 -2
  249. package/dist/{chunk-AE2OWWDH.js → chunk-PQ5YK4AY.js} +870 -504
  250. package/dist/{chunk-OIGVQF5V.js → chunk-QY4T6YAZ.js} +3 -3
  251. package/dist/{chunk-B5SBNH4S.js → chunk-SSKDAOX5.js} +93 -30
  252. package/dist/{chunk-2SWJ4VO7.js → chunk-TKJZKICB.js} +6 -6
  253. package/dist/{chunk-GNGELAXY.js → chunk-TS3XWPW5.js} +1 -1
  254. package/dist/chunk-UAX4I5ZE.js +217 -0
  255. package/dist/{chunk-VRFZWGMS.js → chunk-XYLGHKG6.js} +5 -1
  256. package/dist/{chunk-6N4R6FVX.js → chunk-YBJ262QL.js} +1 -1
  257. package/dist/{chunk-ZU2UBYBY.js → chunk-Z77YQRQT.js} +11 -207
  258. package/dist/{ci-workflow-NBL4OT4A.js → ci-workflow-EHV65NQB.js} +1 -1
  259. package/dist/{create-skill-WPXHSLX2.js → create-skill-XSWHMSM5.js} +2 -2
  260. package/dist/{dist-IJ4J4C5G.js → dist-2B363XUH.js} +25 -1
  261. package/dist/{dist-M6BQODWC.js → dist-HXHWB7SV.js} +2 -2
  262. package/dist/{docs-CPTMH3VY.js → docs-FZOPM4GK.js} +4 -2
  263. package/dist/{engine-BUWPAAGD.js → engine-OL4T6NZS.js} +1 -1
  264. package/dist/{entropy-Z4FYVQ7L.js → entropy-LVHJMFGH.js} +2 -2
  265. package/dist/{feedback-TT6WF5YX.js → feedback-IHLVLMRD.js} +1 -1
  266. package/dist/{generate-agent-definitions-J5HANRNR.js → generate-agent-definitions-64S3CLEZ.js} +3 -3
  267. package/dist/{glob-helper-5OHBUQAI.js → glob-helper-R5FXNUPS.js} +1 -1
  268. package/dist/{graph-loader-KO4GJ5N2.js → graph-loader-GJZ4FN4Y.js} +1 -1
  269. package/dist/index.d.ts +60 -33
  270. package/dist/index.js +23 -21
  271. package/dist/{loader-PCU5YWRH.js → loader-DPYFB6R6.js} +1 -1
  272. package/dist/{mcp-YM6QLHLZ.js → mcp-JQUI7BVZ.js} +14 -13
  273. package/dist/{performance-YJVXOKIB.js → performance-ZTVSUANN.js} +2 -2
  274. package/dist/{review-pipeline-KGMIMLIE.js → review-pipeline-76JHKGSV.js} +1 -1
  275. package/dist/{runtime-F6R27LD6.js → runtime-X7U6SC7K.js} +1 -1
  276. package/dist/{security-MX5VVXBC.js → security-FWQZF2IZ.js} +1 -1
  277. package/dist/skill-executor-XZLYZYAK.js +8 -0
  278. package/dist/{validate-EFNMSFKD.js → validate-GCHZJIL7.js} +2 -2
  279. package/dist/{validate-cross-check-LJX65SBS.js → validate-cross-check-STFHYMAZ.js} +1 -1
  280. package/package.json +4 -4
  281. package/dist/skill-executor-RG45LUO5.js +0 -8
@@ -1,23 +1,15 @@
1
- import {
2
- logger
3
- } from "./chunk-EBJQ6N4M.js";
4
1
  import {
5
2
  CLIError,
6
3
  ExitCode
7
4
  } from "./chunk-3WGJMBKH.js";
8
5
  import {
9
6
  ArchConfigSchema
10
- } from "./chunk-AE2OWWDH.js";
7
+ } from "./chunk-PQ5YK4AY.js";
11
8
  import {
12
9
  Err,
13
10
  Ok
14
11
  } from "./chunk-MHBMTPW7.js";
15
12
 
16
- // src/commands/check-phase-gate.ts
17
- import { Command } from "commander";
18
- import * as path2 from "path";
19
- import * as fs2 from "fs";
20
-
21
13
  // src/config/loader.ts
22
14
  import * as fs from "fs";
23
15
  import * as path from "path";
@@ -209,6 +201,15 @@ var HarnessConfigSchema = z.object({
209
201
  review: ReviewConfigSchema.optional(),
210
202
  /** General architectural enforcement settings */
211
203
  architecture: ArchConfigSchema.optional(),
204
+ /** Skill loading, suggestion, and tier override settings */
205
+ skills: z.object({
206
+ /** Skills to always suggest in the dispatcher, regardless of scoring */
207
+ alwaysSuggest: z.array(z.string()).default([]),
208
+ /** Skills to never suggest in the dispatcher, even if they score highly */
209
+ neverSuggest: z.array(z.string()).default([]),
210
+ /** Override the tier of specific skills (e.g., promote a Tier 3 skill to Tier 2) */
211
+ tierOverrides: z.record(z.string(), z.number().int().min(1).max(3)).default({})
212
+ }).optional(),
212
213
  /** How often (in ms) to check for CLI updates */
213
214
  updateCheckInterval: z.number().int().min(0).optional()
214
215
  });
@@ -266,205 +267,8 @@ function resolveConfig(configPath) {
266
267
  return loadConfig(findResult.value);
267
268
  }
268
269
 
269
- // src/utils/files.ts
270
- import { glob } from "glob";
271
- async function findFiles(pattern, cwd = process.cwd()) {
272
- return glob(pattern, { cwd, absolute: true });
273
- }
274
-
275
- // src/output/formatter.ts
276
- import chalk from "chalk";
277
- var OutputMode = {
278
- /** Output as formatted JSON */
279
- JSON: "json",
280
- /** Output as human-readable text */
281
- TEXT: "text",
282
- /** Minimal output, only errors and successes */
283
- QUIET: "quiet",
284
- /** Full output with detailed context and suggestions */
285
- VERBOSE: "verbose"
286
- };
287
- var OutputFormatter = class {
288
- /**
289
- * Creates a new OutputFormatter.
290
- *
291
- * @param mode - The output mode to use. Defaults to TEXT.
292
- */
293
- constructor(mode = OutputMode.TEXT) {
294
- this.mode = mode;
295
- }
296
- /**
297
- * Formats raw data for output.
298
- *
299
- * @param data - The data to format.
300
- * @returns A string representation of the data based on the current mode.
301
- */
302
- format(data) {
303
- if (this.mode === OutputMode.JSON) {
304
- return JSON.stringify(data, null, 2);
305
- }
306
- return String(data);
307
- }
308
- /**
309
- * Formats a validation result into a user-friendly string.
310
- *
311
- * @param result - The validation result to format.
312
- * @returns A formatted string containing the validation status and any issues.
313
- */
314
- formatValidation(result) {
315
- if (this.mode === OutputMode.JSON) {
316
- return JSON.stringify(result, null, 2);
317
- }
318
- if (this.mode === OutputMode.QUIET) {
319
- if (result.valid) return "";
320
- return result.issues.map((i) => `${i.file ?? ""}: ${i.message}`).join("\n");
321
- }
322
- const lines = [];
323
- if (result.valid) {
324
- lines.push(chalk.green("v validation passed"));
325
- } else {
326
- lines.push(chalk.red(`x Validation failed (${result.issues.length} issues)`));
327
- lines.push("");
328
- for (const issue of result.issues) {
329
- const location = issue.file ? issue.line ? `${issue.file}:${issue.line}` : issue.file : "unknown";
330
- lines.push(` ${chalk.yellow("*")} ${chalk.dim(location)}`);
331
- lines.push(` ${issue.message}`);
332
- if (issue.suggestion && this.mode === OutputMode.VERBOSE) {
333
- lines.push(` ${chalk.dim("->")} ${issue.suggestion}`);
334
- }
335
- }
336
- }
337
- return lines.join("\n");
338
- }
339
- /**
340
- * Formats a summary line with a success/failure icon and label.
341
- *
342
- * @param label - The name of the field to summarize.
343
- * @param value - The value to display.
344
- * @param success - Whether the summary represents a success or failure state.
345
- * @returns A formatted summary string, or an empty string in JSON or QUIET modes.
346
- */
347
- formatSummary(label, value, success) {
348
- if (this.mode === OutputMode.JSON || this.mode === OutputMode.QUIET) {
349
- return "";
350
- }
351
- const icon = success ? chalk.green("v") : chalk.red("x");
352
- return `${icon} ${label}: ${value}`;
353
- }
354
- };
355
-
356
- // src/commands/check-phase-gate.ts
357
- function resolveSpecPath(implFile, implPattern, specPattern, cwd) {
358
- const relImpl = path2.relative(cwd, implFile).replace(/\\/g, "/");
359
- const implBase = (implPattern.split("*")[0] ?? "").replace(/\/+$/, "");
360
- const afterBase = relImpl.startsWith(implBase + "/") ? relImpl.slice(implBase.length + 1) : relImpl;
361
- const segments = afterBase.split("/");
362
- const firstSegment = segments[0] ?? "";
363
- const feature = segments.length > 1 ? firstSegment : path2.basename(firstSegment, path2.extname(firstSegment));
364
- const specRelative = specPattern.replace("{feature}", feature);
365
- return path2.resolve(cwd, specRelative);
366
- }
367
- async function runCheckPhaseGate(options) {
368
- const configResult = resolveConfig(options.configPath);
369
- if (!configResult.ok) {
370
- return configResult;
371
- }
372
- const config = configResult.value;
373
- const cwd = options.cwd ?? (options.configPath ? path2.dirname(path2.resolve(options.configPath)) : process.cwd());
374
- if (!config.phaseGates?.enabled) {
375
- return Ok({
376
- pass: true,
377
- skipped: true,
378
- missingSpecs: [],
379
- checkedFiles: 0
380
- });
381
- }
382
- const phaseGates = config.phaseGates;
383
- const missingSpecs = [];
384
- let checkedFiles = 0;
385
- for (const mapping of phaseGates.mappings) {
386
- const implFiles = await findFiles(mapping.implPattern, cwd);
387
- for (const implFile of implFiles) {
388
- checkedFiles++;
389
- const expectedSpec = resolveSpecPath(implFile, mapping.implPattern, mapping.specPattern, cwd);
390
- if (!fs2.existsSync(expectedSpec)) {
391
- missingSpecs.push({
392
- implFile: path2.relative(cwd, implFile).replace(/\\/g, "/"),
393
- expectedSpec: path2.relative(cwd, expectedSpec).replace(/\\/g, "/")
394
- });
395
- }
396
- }
397
- }
398
- const pass = missingSpecs.length === 0;
399
- return Ok({
400
- pass,
401
- skipped: false,
402
- severity: phaseGates.severity,
403
- missingSpecs,
404
- checkedFiles
405
- });
406
- }
407
- function createCheckPhaseGateCommand() {
408
- const command = new Command("check-phase-gate").description("Verify that implementation files have matching spec documents").action(async (_opts, cmd) => {
409
- const globalOpts = cmd.optsWithGlobals();
410
- const mode = globalOpts.json ? OutputMode.JSON : globalOpts.quiet ? OutputMode.QUIET : globalOpts.verbose ? OutputMode.VERBOSE : OutputMode.TEXT;
411
- const formatter = new OutputFormatter(mode);
412
- const result = await runCheckPhaseGate({
413
- configPath: globalOpts.config,
414
- json: globalOpts.json,
415
- verbose: globalOpts.verbose,
416
- quiet: globalOpts.quiet
417
- });
418
- if (!result.ok) {
419
- if (mode === OutputMode.JSON) {
420
- console.log(JSON.stringify({ error: result.error.message }));
421
- } else {
422
- logger.error(result.error.message);
423
- }
424
- process.exit(result.error.exitCode);
425
- }
426
- const value = result.value;
427
- if (value.skipped) {
428
- if (mode === OutputMode.JSON) {
429
- console.log(formatter.format(value));
430
- } else if (mode !== OutputMode.QUIET) {
431
- logger.dim("Phase gates not enabled, skipping.");
432
- }
433
- process.exit(ExitCode.SUCCESS);
434
- }
435
- const output = formatter.formatValidation({
436
- valid: value.pass,
437
- issues: value.missingSpecs.map((m) => ({
438
- file: m.implFile,
439
- message: `Missing spec: ${m.expectedSpec}`
440
- }))
441
- });
442
- if (output) {
443
- console.log(output);
444
- }
445
- const summary = formatter.formatSummary(
446
- "Phase gate check",
447
- `${value.checkedFiles} files checked, ${value.missingSpecs.length} missing specs`,
448
- value.pass
449
- );
450
- if (summary) {
451
- console.log(summary);
452
- }
453
- if (!value.pass && value.severity === "error") {
454
- process.exit(ExitCode.VALIDATION_FAILED);
455
- }
456
- process.exit(ExitCode.SUCCESS);
457
- });
458
- return command;
459
- }
460
-
461
270
  export {
462
271
  findConfigFile,
463
272
  loadConfig,
464
- resolveConfig,
465
- OutputMode,
466
- OutputFormatter,
467
- findFiles,
468
- runCheckPhaseGate,
469
- createCheckPhaseGateCommand
273
+ resolveConfig
470
274
  };
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  generateCIWorkflow
3
3
  } from "./chunk-VUCPTQ6G.js";
4
- import "./chunk-AE2OWWDH.js";
4
+ import "./chunk-PQ5YK4AY.js";
5
5
  import "./chunk-MHBMTPW7.js";
6
6
  export {
7
7
  generateCIWorkflow
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  createCreateSkillCommand,
3
3
  generateSkillFiles
4
- } from "./chunk-6N4R6FVX.js";
4
+ } from "./chunk-YBJ262QL.js";
5
5
  import "./chunk-EBJQ6N4M.js";
6
6
  import "./chunk-3WGJMBKH.js";
7
- import "./chunk-VRFZWGMS.js";
7
+ import "./chunk-XYLGHKG6.js";
8
8
  export {
9
9
  createCreateSkillCommand,
10
10
  generateSkillFiles
@@ -74,6 +74,7 @@ import {
74
74
  ViolationSchema,
75
75
  addProvenance,
76
76
  analyzeDiff,
77
+ analyzeLearningPatterns,
77
78
  appendFailure,
78
79
  appendLearning,
79
80
  applyFixes,
@@ -82,6 +83,7 @@ import {
82
83
  archModule,
83
84
  architecture,
84
85
  archiveFailures,
86
+ archiveLearnings,
85
87
  archiveStream,
86
88
  buildDependencyGraph,
87
89
  buildExclusionSet,
@@ -89,6 +91,8 @@ import {
89
91
  checkDocCoverage,
90
92
  checkEligibility,
91
93
  classifyFinding,
94
+ clearFailuresCache,
95
+ clearLearningsCache,
92
96
  configureFeedback,
93
97
  constraintRuleId,
94
98
  contextBudget,
@@ -144,16 +148,20 @@ import {
144
148
  injectionRules,
145
149
  isSmallSuggestion,
146
150
  isUpdateCheckEnabled,
151
+ listActiveSessions,
147
152
  listStreams,
153
+ loadBudgetedLearnings,
148
154
  loadFailures,
149
155
  loadHandoff,
150
156
  loadRelevantLearnings,
157
+ loadSessionSummary,
151
158
  loadState,
152
159
  loadStreamIndex,
153
160
  logAgentAction,
154
161
  migrateToStreams,
155
162
  networkRules,
156
163
  nodeRules,
164
+ parseDateFromEntry,
157
165
  parseDiff,
158
166
  parseManifest,
159
167
  parseRoadmap,
@@ -161,6 +169,7 @@ import {
161
169
  parseSize,
162
170
  pathTraversalRules,
163
171
  previewFix,
172
+ pruneLearnings,
164
173
  reactRules,
165
174
  readCheckState,
166
175
  readLockfile,
@@ -172,6 +181,7 @@ import {
172
181
  resolveFileToLayer,
173
182
  resolveModelTier,
174
183
  resolveRuleSeverity,
184
+ resolveSessionDir,
175
185
  resolveStreamPath,
176
186
  resolveThresholds,
177
187
  runAll,
@@ -198,6 +208,7 @@ import {
198
208
  syncRoadmap,
199
209
  touchStream,
200
210
  trackAction,
211
+ updateSessionIndex,
201
212
  validateAgentsMap,
202
213
  validateBoundaries,
203
214
  validateCommitMessage,
@@ -210,8 +221,9 @@ import {
210
221
  violationId,
211
222
  writeConfig,
212
223
  writeLockfile,
224
+ writeSessionSummary,
213
225
  xssRules
214
- } from "./chunk-AE2OWWDH.js";
226
+ } from "./chunk-PQ5YK4AY.js";
215
227
  import {
216
228
  Err,
217
229
  Ok,
@@ -298,6 +310,7 @@ export {
298
310
  ViolationSchema,
299
311
  addProvenance,
300
312
  analyzeDiff,
313
+ analyzeLearningPatterns,
301
314
  appendFailure,
302
315
  appendLearning,
303
316
  applyFixes,
@@ -306,6 +319,7 @@ export {
306
319
  archModule,
307
320
  architecture,
308
321
  archiveFailures,
322
+ archiveLearnings,
309
323
  archiveStream,
310
324
  buildDependencyGraph,
311
325
  buildExclusionSet,
@@ -313,6 +327,8 @@ export {
313
327
  checkDocCoverage,
314
328
  checkEligibility,
315
329
  classifyFinding,
330
+ clearFailuresCache,
331
+ clearLearningsCache,
316
332
  configureFeedback,
317
333
  constraintRuleId,
318
334
  contextBudget,
@@ -370,16 +386,20 @@ export {
370
386
  isOk,
371
387
  isSmallSuggestion,
372
388
  isUpdateCheckEnabled,
389
+ listActiveSessions,
373
390
  listStreams,
391
+ loadBudgetedLearnings,
374
392
  loadFailures,
375
393
  loadHandoff,
376
394
  loadRelevantLearnings,
395
+ loadSessionSummary,
377
396
  loadState,
378
397
  loadStreamIndex,
379
398
  logAgentAction,
380
399
  migrateToStreams,
381
400
  networkRules,
382
401
  nodeRules,
402
+ parseDateFromEntry,
383
403
  parseDiff,
384
404
  parseManifest,
385
405
  parseRoadmap,
@@ -387,6 +407,7 @@ export {
387
407
  parseSize,
388
408
  pathTraversalRules,
389
409
  previewFix,
410
+ pruneLearnings,
390
411
  reactRules,
391
412
  readCheckState,
392
413
  readLockfile,
@@ -398,6 +419,7 @@ export {
398
419
  resolveFileToLayer,
399
420
  resolveModelTier,
400
421
  resolveRuleSeverity,
422
+ resolveSessionDir,
401
423
  resolveStreamPath,
402
424
  resolveThresholds,
403
425
  runAll,
@@ -424,6 +446,7 @@ export {
424
446
  syncRoadmap,
425
447
  touchStream,
426
448
  trackAction,
449
+ updateSessionIndex,
427
450
  validateAgentsMap,
428
451
  validateBoundaries,
429
452
  validateCommitMessage,
@@ -436,5 +459,6 @@ export {
436
459
  violationId,
437
460
  writeConfig,
438
461
  writeLockfile,
462
+ writeSessionSummary,
439
463
  xssRules
440
464
  };
@@ -3370,8 +3370,8 @@ var GraphConstraintAdapter = class {
3370
3370
  const { edges } = this.computeDependencyGraph();
3371
3371
  const violations = [];
3372
3372
  for (const edge of edges) {
3373
- const fromRelative = relative2(rootDir, edge.from);
3374
- const toRelative = relative2(rootDir, edge.to);
3373
+ const fromRelative = relative2(rootDir, edge.from).replaceAll("\\", "/");
3374
+ const toRelative = relative2(rootDir, edge.to).replaceAll("\\", "/");
3375
3375
  const fromLayer = this.resolveLayer(fromRelative, layers);
3376
3376
  const toLayer = this.resolveLayer(toRelative, layers);
3377
3377
  if (!fromLayer || !toLayer) continue;
@@ -1,10 +1,12 @@
1
1
  import {
2
2
  checkDocsDefinition,
3
3
  handleCheckDocs
4
- } from "./chunk-CTTFXXKJ.js";
4
+ } from "./chunk-ND6PNADU.js";
5
+ import "./chunk-Z77YQRQT.js";
5
6
  import "./chunk-IDZNPTYD.js";
6
7
  import "./chunk-W6Y7ZW3Y.js";
7
- import "./chunk-AE2OWWDH.js";
8
+ import "./chunk-3WGJMBKH.js";
9
+ import "./chunk-PQ5YK4AY.js";
8
10
  import "./chunk-MHBMTPW7.js";
9
11
  export {
10
12
  checkDocsDefinition,
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  TemplateEngine
3
3
  } from "./chunk-C2ERUR3L.js";
4
- import "./chunk-AE2OWWDH.js";
4
+ import "./chunk-PQ5YK4AY.js";
5
5
  import "./chunk-MHBMTPW7.js";
6
6
  export {
7
7
  TemplateEngine
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  detectEntropyDefinition,
3
3
  handleDetectEntropy
4
- } from "./chunk-JLXOEO5C.js";
4
+ } from "./chunk-DZS7CJKL.js";
5
5
  import "./chunk-IDZNPTYD.js";
6
6
  import "./chunk-W6Y7ZW3Y.js";
7
- import "./chunk-AE2OWWDH.js";
7
+ import "./chunk-PQ5YK4AY.js";
8
8
  import "./chunk-MHBMTPW7.js";
9
9
  export {
10
10
  detectEntropyDefinition,
@@ -5,7 +5,7 @@ import {
5
5
  handleCreateSelfReview,
6
6
  handleRequestPeerReview,
7
7
  requestPeerReviewDefinition
8
- } from "./chunk-FLOEMHDF.js";
8
+ } from "./chunk-IM32EEDM.js";
9
9
  import "./chunk-IDZNPTYD.js";
10
10
  import "./chunk-W6Y7ZW3Y.js";
11
11
  export {
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  createGenerateAgentDefinitionsCommand,
3
3
  generateAgentDefinitions
4
- } from "./chunk-GNGELAXY.js";
4
+ } from "./chunk-TS3XWPW5.js";
5
5
  import "./chunk-Q6AB7W5Z.js";
6
6
  import "./chunk-KET4QQZB.js";
7
7
  import "./chunk-ZOAWBDWU.js";
8
- import "./chunk-HD4IBGLA.js";
8
+ import "./chunk-N5G5QMS3.js";
9
9
  import "./chunk-3WGJMBKH.js";
10
- import "./chunk-AE2OWWDH.js";
10
+ import "./chunk-PQ5YK4AY.js";
11
11
  import "./chunk-MHBMTPW7.js";
12
12
  export {
13
13
  createGenerateAgentDefinitionsCommand,
@@ -31,7 +31,7 @@ async function globFiles(rootDir, exclude) {
31
31
  }
32
32
  for (const entry of entries) {
33
33
  const fullPath = path.join(dir, entry.name);
34
- const relativePath = path.relative(rootDir, fullPath);
34
+ const relativePath = path.relative(rootDir, fullPath).replaceAll("\\", "/");
35
35
  if (entry.isDirectory()) {
36
36
  if (SKIP_DIRS.has(entry.name)) continue;
37
37
  if (isExcluded(relativePath + "/", excludeRegexes)) continue;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  clearGraphStoreCache,
3
3
  loadGraphStore
4
- } from "./chunk-2YPZKGAG.js";
4
+ } from "./chunk-IMFVFNJE.js";
5
5
  export {
6
6
  clearGraphStoreCache,
7
7
  loadGraphStore
package/dist/index.d.ts CHANGED
@@ -164,6 +164,39 @@ interface SkillSource {
164
164
  source: 'project' | 'community' | 'global';
165
165
  }
166
166
 
167
+ interface ImpactPreviewOptions {
168
+ detailed?: boolean;
169
+ perFile?: boolean;
170
+ path?: string;
171
+ }
172
+ declare function runImpactPreview(options: ImpactPreviewOptions): Promise<string>;
173
+
174
+ interface CheckArchOptions {
175
+ cwd?: string;
176
+ configPath?: string;
177
+ updateBaseline?: boolean;
178
+ json?: boolean;
179
+ module?: string;
180
+ }
181
+ interface CheckArchResult {
182
+ passed: boolean;
183
+ mode: 'baseline' | 'threshold-only';
184
+ totalViolations: number;
185
+ newViolations: Violation[];
186
+ resolvedViolations: string[];
187
+ preExisting: string[];
188
+ regressions: Array<{
189
+ category: string;
190
+ baselineValue: number;
191
+ currentValue: number;
192
+ delta: number;
193
+ }>;
194
+ thresholdViolations: Violation[];
195
+ baselineUpdated?: boolean;
196
+ warning?: string;
197
+ }
198
+ declare function runCheckArch(options: CheckArchOptions): Promise<Result<CheckArchResult, CLIError>>;
199
+
167
200
  /**
168
201
  * Supported output modes for the CLI.
169
202
  */
@@ -637,6 +670,23 @@ declare const HarnessConfigSchema: z.ZodObject<{
637
670
  enabled?: boolean | undefined;
638
671
  baselinePath?: string | undefined;
639
672
  }>>;
673
+ /** Skill loading, suggestion, and tier override settings */
674
+ skills: z.ZodOptional<z.ZodObject<{
675
+ /** Skills to always suggest in the dispatcher, regardless of scoring */
676
+ alwaysSuggest: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
677
+ /** Skills to never suggest in the dispatcher, even if they score highly */
678
+ neverSuggest: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
679
+ /** Override the tier of specific skills (e.g., promote a Tier 3 skill to Tier 2) */
680
+ tierOverrides: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodNumber>>;
681
+ }, "strip", z.ZodTypeAny, {
682
+ alwaysSuggest: string[];
683
+ neverSuggest: string[];
684
+ tierOverrides: Record<string, number>;
685
+ }, {
686
+ alwaysSuggest?: string[] | undefined;
687
+ neverSuggest?: string[] | undefined;
688
+ tierOverrides?: Record<string, number> | undefined;
689
+ }>>;
640
690
  /** How often (in ms) to check for CLI updates */
641
691
  updateCheckInterval: z.ZodOptional<z.ZodNumber>;
642
692
  }, "strip", z.ZodTypeAny, {
@@ -645,6 +695,11 @@ declare const HarnessConfigSchema: z.ZodObject<{
645
695
  agentsMapPath: string;
646
696
  docsDir: string;
647
697
  name?: string | undefined;
698
+ skills?: {
699
+ alwaysSuggest: string[];
700
+ neverSuggest: string[];
701
+ tierOverrides: Record<string, number>;
702
+ } | undefined;
648
703
  layers?: {
649
704
  name: string;
650
705
  pattern: string;
@@ -744,6 +799,11 @@ declare const HarnessConfigSchema: z.ZodObject<{
744
799
  }, {
745
800
  version: 1;
746
801
  name?: string | undefined;
802
+ skills?: {
803
+ alwaysSuggest?: string[] | undefined;
804
+ neverSuggest?: string[] | undefined;
805
+ tierOverrides?: Record<string, number> | undefined;
806
+ } | undefined;
747
807
  rootDir?: string | undefined;
748
808
  layers?: {
749
809
  name: string;
@@ -1221,39 +1281,6 @@ declare function renderClaudeCodeAgent(def: AgentDefinition): string;
1221
1281
 
1222
1282
  declare function renderGeminiAgent(def: AgentDefinition): string;
1223
1283
 
1224
- interface ImpactPreviewOptions {
1225
- detailed?: boolean;
1226
- perFile?: boolean;
1227
- path?: string;
1228
- }
1229
- declare function runImpactPreview(options: ImpactPreviewOptions): Promise<string>;
1230
-
1231
- interface CheckArchOptions {
1232
- cwd?: string;
1233
- configPath?: string;
1234
- updateBaseline?: boolean;
1235
- json?: boolean;
1236
- module?: string;
1237
- }
1238
- interface CheckArchResult {
1239
- passed: boolean;
1240
- mode: 'baseline' | 'threshold-only';
1241
- totalViolations: number;
1242
- newViolations: Violation[];
1243
- resolvedViolations: string[];
1244
- preExisting: string[];
1245
- regressions: Array<{
1246
- category: string;
1247
- baselineValue: number;
1248
- currentValue: number;
1249
- delta: number;
1250
- }>;
1251
- thresholdViolations: Violation[];
1252
- baselineUpdated?: boolean;
1253
- warning?: string;
1254
- }
1255
- declare function runCheckArch(options: CheckArchOptions): Promise<Result<CheckArchResult, CLIError>>;
1256
-
1257
1284
  type ToolDefinition = {
1258
1285
  name: string;
1259
1286
  description: string;