hunter-harness 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (566) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +11 -0
  3. package/dist/bin.js +955 -318
  4. package/package.json +1 -1
  5. package/resources/harness/bundles/general/claude-code/.harness-build.json +6 -0
  6. package/resources/harness/{general → bundles/general/claude-code}/agents/harness-reviewer.md +2 -2
  7. package/resources/harness/{general → bundles/general/claude-code}/harness-archive/SKILL.md +1 -1
  8. package/resources/harness/{java → bundles/general/claude-code}/harness-codebase-map/SKILL.md +1 -1
  9. package/resources/harness/{java → bundles/general/claude-code}/harness-knowledge-ingest/SKILL.md +1 -1
  10. package/resources/harness/{general → bundles/general/claude-code}/harness-knowledge-ingest/reference.md +1 -1
  11. package/resources/harness/{general → bundles/general/claude-code}/harness-knowledge-query/SKILL.md +1 -1
  12. package/resources/harness/{general → bundles/general/claude-code}/harness-plan/SKILL.md +1 -1
  13. package/resources/harness/{java → bundles/general/claude-code}/harness-review/SKILL.md +8 -4
  14. package/resources/harness/{general → bundles/general/claude-code}/harness-review/checklist.md +3 -3
  15. package/resources/harness/{general → bundles/general/claude-code}/harness-run/SKILL.md +1 -1
  16. package/resources/harness/{general → bundles/general/claude-code}/harness-run/checklist.md +1 -1
  17. package/resources/harness/{general → bundles/general/claude-code}/harness-run/reference.md +2 -2
  18. package/resources/harness/{general → bundles/general/claude-code}/harness-submit/SKILL.md +1 -1
  19. package/resources/harness/{java → bundles/general/claude-code}/harness-sync/SKILL.md +2 -2
  20. package/resources/harness/{general → bundles/general/claude-code}/harness-sync/reference.md +7 -7
  21. package/resources/harness/{general → bundles/general/claude-code}/harness-test/SKILL.md +1 -1
  22. package/resources/harness/{general → bundles/general/claude-code}/harness-test/checklist.md +1 -1
  23. package/resources/harness/{java → bundles/general/claude-code}/scripts/harness_archive.py +2300 -2300
  24. package/resources/harness/{general → bundles/general/claude-code}/scripts/harness_deploy.py +74 -13
  25. package/resources/harness/{general → bundles/general/claude-code}/scripts/harness_events.py +680 -680
  26. package/resources/harness/{general → bundles/general/claude-code}/scripts/harness_ledger.py +660 -660
  27. package/resources/harness/{java → bundles/general/claude-code}/scripts/harness_preflight.py +765 -765
  28. package/resources/harness/{general → bundles/general/claude-code}/scripts/harness_service.py +1331 -1331
  29. package/resources/harness/bundles/general/codebuddy/.harness-build.json +6 -0
  30. package/resources/harness/bundles/general/codebuddy/agents/harness-evaluator.md +94 -0
  31. package/resources/harness/bundles/general/codebuddy/agents/harness-explorer.md +53 -0
  32. package/resources/harness/bundles/general/codebuddy/agents/harness-reviewer.md +52 -0
  33. package/resources/harness/bundles/general/codebuddy/harness-archive/SKILL.md +198 -0
  34. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/SKILL.md +95 -0
  35. package/resources/harness/bundles/general/codebuddy/harness-knowledge-ingest/SKILL.md +229 -0
  36. package/resources/harness/{java → bundles/general/codebuddy}/harness-knowledge-ingest/reference.md +1 -1
  37. package/resources/harness/bundles/general/codebuddy/harness-knowledge-query/SKILL.md +147 -0
  38. package/resources/harness/bundles/general/codebuddy/harness-plan/SKILL.md +109 -0
  39. package/resources/harness/bundles/general/codebuddy/harness-review/SKILL.md +142 -0
  40. package/resources/harness/{java → bundles/general/codebuddy}/harness-review/checklist.md +3 -3
  41. package/resources/harness/bundles/general/codebuddy/harness-run/SKILL.md +113 -0
  42. package/resources/harness/bundles/general/codebuddy/harness-run/checklist.md +259 -0
  43. package/resources/harness/bundles/general/codebuddy/harness-run/reference.md +834 -0
  44. package/resources/harness/bundles/general/codebuddy/harness-submit/SKILL.md +142 -0
  45. package/resources/harness/bundles/general/codebuddy/harness-sync/SKILL.md +65 -0
  46. package/resources/harness/{java → bundles/general/codebuddy}/harness-sync/reference.md +7 -7
  47. package/resources/harness/bundles/general/codebuddy/harness-test/SKILL.md +160 -0
  48. package/resources/harness/bundles/general/codebuddy/harness-test/checklist.md +319 -0
  49. package/resources/harness/bundles/general/codebuddy/harness-test/reference.md +791 -0
  50. package/resources/harness/{general → bundles/general/codebuddy}/scripts/harness_archive.py +2300 -2300
  51. package/resources/harness/{java → bundles/general/codebuddy}/scripts/harness_deploy.py +74 -13
  52. package/resources/harness/{java → bundles/general/codebuddy}/scripts/harness_events.py +680 -680
  53. package/resources/harness/{java → bundles/general/codebuddy}/scripts/harness_ledger.py +660 -660
  54. package/resources/harness/{general → bundles/general/codebuddy}/scripts/harness_preflight.py +765 -765
  55. package/resources/harness/{java → bundles/general/codebuddy}/scripts/harness_service.py +1331 -1331
  56. package/resources/harness/bundles/general/codex/.harness-build.json +6 -0
  57. package/resources/harness/bundles/general/codex/CONTEXT.md +65 -0
  58. package/resources/harness/bundles/general/codex/README.md +478 -0
  59. package/resources/harness/bundles/general/codex/harness-archive/SKILL.md +198 -0
  60. package/resources/harness/bundles/general/codex/harness-archive/checklist.md +52 -0
  61. package/resources/harness/bundles/general/codex/harness-archive/reference.md +103 -0
  62. package/resources/harness/bundles/general/codex/harness-archive/scripts/gen-manifest.ps1 +31 -0
  63. package/resources/harness/bundles/general/codex/harness-archive/templates/render-summary.mjs +171 -0
  64. package/resources/harness/bundles/general/codex/harness-archive/templates/summary-data-template.json +128 -0
  65. package/resources/harness/bundles/general/codex/harness-codebase-map/SKILL.md +95 -0
  66. package/resources/harness/bundles/general/codex/harness-codebase-map/checklist.md +126 -0
  67. package/resources/harness/bundles/general/codex/harness-codebase-map/reference.md +364 -0
  68. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/ARCHITECTURE.md +57 -0
  69. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/CONCERNS.md +49 -0
  70. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/CONVENTIONS.md +57 -0
  71. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/INTEGRATIONS.md +52 -0
  72. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/STACK.md +55 -0
  73. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/STRUCTURE.md +69 -0
  74. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/TESTING.md +64 -0
  75. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/map-manifest.schema.json +73 -0
  76. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/map-summary.md +64 -0
  77. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/SKILL.md +229 -0
  78. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/design.md +842 -0
  79. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +42 -0
  80. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/mcp-config.example.json +10 -0
  81. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/reference.md +309 -0
  82. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/scripts/harness_knowledge.py +4082 -0
  83. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +273 -0
  84. package/resources/harness/bundles/general/codex/harness-knowledge-query/SKILL.md +147 -0
  85. package/resources/harness/bundles/general/codex/harness-plan/SKILL.md +109 -0
  86. package/resources/harness/bundles/general/codex/harness-plan/checklist.md +243 -0
  87. package/resources/harness/bundles/general/codex/harness-plan/protocols.md +124 -0
  88. package/resources/harness/bundles/general/codex/harness-plan/reference.md +376 -0
  89. package/resources/harness/bundles/general/codex/harness-review/SKILL.md +137 -0
  90. package/resources/harness/bundles/general/codex/harness-review/checklist.md +124 -0
  91. package/resources/harness/bundles/general/codex/harness-review/protocols.md +68 -0
  92. package/resources/harness/bundles/general/codex/harness-review/reference.md +86 -0
  93. package/resources/harness/bundles/general/codex/harness-run/SKILL.md +113 -0
  94. package/resources/harness/bundles/general/codex/harness-run/checklist.md +259 -0
  95. package/resources/harness/bundles/general/codex/harness-run/protocols.md +78 -0
  96. package/resources/harness/bundles/general/codex/harness-run/reference.md +834 -0
  97. package/resources/harness/bundles/general/codex/harness-submit/SKILL.md +142 -0
  98. package/resources/harness/bundles/general/codex/harness-submit/checklist.md +407 -0
  99. package/resources/harness/bundles/general/codex/harness-submit/reference.md +152 -0
  100. package/resources/harness/bundles/general/codex/harness-sync/SKILL.md +65 -0
  101. package/resources/harness/bundles/general/codex/harness-sync/reference.md +153 -0
  102. package/resources/harness/bundles/general/codex/harness-test/SKILL.md +160 -0
  103. package/resources/harness/bundles/general/codex/harness-test/checklist.md +319 -0
  104. package/resources/harness/bundles/general/codex/harness-test/pitfalls.md +260 -0
  105. package/resources/harness/bundles/general/codex/harness-test/reference.md +791 -0
  106. package/resources/harness/bundles/general/codex/protocols/archive-report-protocol.md +175 -0
  107. package/resources/harness/bundles/general/codex/protocols/evidence-based-reporting-protocol.md +134 -0
  108. package/resources/harness/bundles/general/codex/protocols/ledger-protocol.md +270 -0
  109. package/resources/harness/bundles/general/codex/protocols/powershell-protocol.md +181 -0
  110. package/resources/harness/bundles/general/codex/protocols/report-pipeline-protocol.md +150 -0
  111. package/resources/harness/bundles/general/codex/protocols/sensitive-info-protocol.md +92 -0
  112. package/resources/harness/bundles/general/codex/protocols/state-layout-protocol.md +131 -0
  113. package/resources/harness/bundles/general/codex/protocols/submit-protocol.md +78 -0
  114. package/resources/harness/bundles/general/codex/scripts/harness_archive.py +2319 -0
  115. package/resources/harness/bundles/general/codex/scripts/harness_deploy.py +674 -0
  116. package/resources/harness/bundles/general/codex/scripts/harness_events.py +680 -0
  117. package/resources/harness/bundles/general/codex/scripts/harness_ledger.py +671 -0
  118. package/resources/harness/bundles/general/codex/scripts/harness_preflight.py +780 -0
  119. package/resources/harness/bundles/general/codex/scripts/harness_service.py +1331 -0
  120. package/resources/harness/bundles/general/cursor/.harness-build.json +6 -0
  121. package/resources/harness/bundles/general/cursor/CONTEXT.md +65 -0
  122. package/resources/harness/bundles/general/cursor/README.md +478 -0
  123. package/resources/harness/bundles/general/cursor/harness-archive/SKILL.md +198 -0
  124. package/resources/harness/bundles/general/cursor/harness-archive/checklist.md +52 -0
  125. package/resources/harness/bundles/general/cursor/harness-archive/reference.md +103 -0
  126. package/resources/harness/bundles/general/cursor/harness-archive/scripts/gen-manifest.ps1 +31 -0
  127. package/resources/harness/bundles/general/cursor/harness-archive/templates/render-summary.mjs +171 -0
  128. package/resources/harness/bundles/general/cursor/harness-archive/templates/summary-data-template.json +128 -0
  129. package/resources/harness/bundles/general/cursor/harness-codebase-map/SKILL.md +95 -0
  130. package/resources/harness/bundles/general/cursor/harness-codebase-map/checklist.md +126 -0
  131. package/resources/harness/bundles/general/cursor/harness-codebase-map/reference.md +364 -0
  132. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/ARCHITECTURE.md +57 -0
  133. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/CONCERNS.md +49 -0
  134. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/CONVENTIONS.md +57 -0
  135. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/INTEGRATIONS.md +52 -0
  136. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/STACK.md +55 -0
  137. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/STRUCTURE.md +69 -0
  138. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/TESTING.md +64 -0
  139. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/map-manifest.schema.json +73 -0
  140. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/map-summary.md +64 -0
  141. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/SKILL.md +229 -0
  142. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/design.md +842 -0
  143. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +42 -0
  144. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/mcp-config.example.json +10 -0
  145. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/reference.md +309 -0
  146. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/scripts/harness_knowledge.py +4082 -0
  147. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +273 -0
  148. package/resources/harness/bundles/general/cursor/harness-knowledge-query/SKILL.md +147 -0
  149. package/resources/harness/bundles/general/cursor/harness-plan/SKILL.md +109 -0
  150. package/resources/harness/bundles/general/cursor/harness-plan/checklist.md +243 -0
  151. package/resources/harness/bundles/general/cursor/harness-plan/protocols.md +124 -0
  152. package/resources/harness/bundles/general/cursor/harness-plan/reference.md +376 -0
  153. package/resources/harness/bundles/general/cursor/harness-review/SKILL.md +137 -0
  154. package/resources/harness/bundles/general/cursor/harness-review/checklist.md +124 -0
  155. package/resources/harness/bundles/general/cursor/harness-review/protocols.md +68 -0
  156. package/resources/harness/bundles/general/cursor/harness-review/reference.md +86 -0
  157. package/resources/harness/bundles/general/cursor/harness-run/SKILL.md +113 -0
  158. package/resources/harness/bundles/general/cursor/harness-run/checklist.md +259 -0
  159. package/resources/harness/bundles/general/cursor/harness-run/protocols.md +78 -0
  160. package/resources/harness/bundles/general/cursor/harness-run/reference.md +834 -0
  161. package/resources/harness/bundles/general/cursor/harness-submit/SKILL.md +142 -0
  162. package/resources/harness/bundles/general/cursor/harness-submit/checklist.md +407 -0
  163. package/resources/harness/bundles/general/cursor/harness-submit/reference.md +152 -0
  164. package/resources/harness/bundles/general/cursor/harness-sync/SKILL.md +65 -0
  165. package/resources/harness/bundles/general/cursor/harness-sync/reference.md +153 -0
  166. package/resources/harness/bundles/general/cursor/harness-test/SKILL.md +160 -0
  167. package/resources/harness/bundles/general/cursor/harness-test/checklist.md +319 -0
  168. package/resources/harness/bundles/general/cursor/harness-test/pitfalls.md +260 -0
  169. package/resources/harness/bundles/general/cursor/harness-test/reference.md +791 -0
  170. package/resources/harness/bundles/general/cursor/protocols/archive-report-protocol.md +175 -0
  171. package/resources/harness/bundles/general/cursor/protocols/evidence-based-reporting-protocol.md +134 -0
  172. package/resources/harness/bundles/general/cursor/protocols/ledger-protocol.md +270 -0
  173. package/resources/harness/bundles/general/cursor/protocols/powershell-protocol.md +181 -0
  174. package/resources/harness/bundles/general/cursor/protocols/report-pipeline-protocol.md +150 -0
  175. package/resources/harness/bundles/general/cursor/protocols/sensitive-info-protocol.md +92 -0
  176. package/resources/harness/bundles/general/cursor/protocols/state-layout-protocol.md +131 -0
  177. package/resources/harness/bundles/general/cursor/protocols/submit-protocol.md +78 -0
  178. package/resources/harness/bundles/general/cursor/scripts/harness_archive.py +2319 -0
  179. package/resources/harness/bundles/general/cursor/scripts/harness_deploy.py +674 -0
  180. package/resources/harness/bundles/general/cursor/scripts/harness_events.py +680 -0
  181. package/resources/harness/bundles/general/cursor/scripts/harness_ledger.py +671 -0
  182. package/resources/harness/bundles/general/cursor/scripts/harness_preflight.py +780 -0
  183. package/resources/harness/bundles/general/cursor/scripts/harness_service.py +1331 -0
  184. package/resources/harness/bundles/java/claude-code/.harness-build.json +6 -0
  185. package/resources/harness/bundles/java/claude-code/CONTEXT.md +65 -0
  186. package/resources/harness/bundles/java/claude-code/README.md +478 -0
  187. package/resources/harness/{java → bundles/java/claude-code}/agents/harness-reviewer.md +2 -2
  188. package/resources/harness/{java → bundles/java/claude-code}/harness-apidoc/SKILL.md +1 -1
  189. package/resources/harness/{java → bundles/java/claude-code}/harness-archive/SKILL.md +1 -1
  190. package/resources/harness/bundles/java/claude-code/harness-archive/checklist.md +52 -0
  191. package/resources/harness/bundles/java/claude-code/harness-archive/reference.md +103 -0
  192. package/resources/harness/bundles/java/claude-code/harness-archive/scripts/gen-manifest.ps1 +31 -0
  193. package/resources/harness/bundles/java/claude-code/harness-archive/templates/render-summary.mjs +171 -0
  194. package/resources/harness/bundles/java/claude-code/harness-archive/templates/summary-data-template.json +128 -0
  195. package/resources/harness/{general → bundles/java/claude-code}/harness-codebase-map/SKILL.md +1 -1
  196. package/resources/harness/bundles/java/claude-code/harness-codebase-map/checklist.md +126 -0
  197. package/resources/harness/bundles/java/claude-code/harness-codebase-map/reference.md +364 -0
  198. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/ARCHITECTURE.md +57 -0
  199. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/CONCERNS.md +49 -0
  200. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/CONVENTIONS.md +57 -0
  201. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/INTEGRATIONS.md +52 -0
  202. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/STACK.md +55 -0
  203. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/STRUCTURE.md +69 -0
  204. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/TESTING.md +64 -0
  205. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/map-manifest.schema.json +73 -0
  206. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/map-summary.md +64 -0
  207. package/resources/harness/{general → bundles/java/claude-code}/harness-knowledge-ingest/SKILL.md +1 -1
  208. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/design.md +842 -0
  209. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +42 -0
  210. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/mcp-config.example.json +10 -0
  211. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/reference.md +309 -0
  212. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/scripts/harness_knowledge.py +4082 -0
  213. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +273 -0
  214. package/resources/harness/{java → bundles/java/claude-code}/harness-knowledge-query/SKILL.md +1 -1
  215. package/resources/harness/{java → bundles/java/claude-code}/harness-package/SKILL.md +1 -1
  216. package/resources/harness/{java → bundles/java/claude-code}/harness-package/reference.md +1 -1
  217. package/resources/harness/{java → bundles/java/claude-code}/harness-plan/SKILL.md +1 -1
  218. package/resources/harness/bundles/java/claude-code/harness-plan/checklist.md +243 -0
  219. package/resources/harness/bundles/java/claude-code/harness-plan/protocols.md +124 -0
  220. package/resources/harness/bundles/java/claude-code/harness-plan/reference.md +376 -0
  221. package/resources/harness/{general → bundles/java/claude-code}/harness-review/SKILL.md +8 -4
  222. package/resources/harness/bundles/java/claude-code/harness-review/checklist.md +124 -0
  223. package/resources/harness/bundles/java/claude-code/harness-review/protocols.md +68 -0
  224. package/resources/harness/bundles/java/claude-code/harness-review/reference.md +86 -0
  225. package/resources/harness/{java → bundles/java/claude-code}/harness-run/SKILL.md +1 -1
  226. package/resources/harness/{java → bundles/java/claude-code}/harness-run/checklist.md +1 -1
  227. package/resources/harness/bundles/java/claude-code/harness-run/protocols.md +78 -0
  228. package/resources/harness/{java → bundles/java/claude-code}/harness-run/reference.md +2 -2
  229. package/resources/harness/{java → bundles/java/claude-code}/harness-submit/SKILL.md +1 -1
  230. package/resources/harness/bundles/java/claude-code/harness-submit/checklist.md +407 -0
  231. package/resources/harness/bundles/java/claude-code/harness-submit/reference.md +152 -0
  232. package/resources/harness/{general → bundles/java/claude-code}/harness-sync/SKILL.md +2 -2
  233. package/resources/harness/bundles/java/claude-code/harness-sync/reference.md +153 -0
  234. package/resources/harness/{java → bundles/java/claude-code}/harness-test/SKILL.md +1 -1
  235. package/resources/harness/{java → bundles/java/claude-code}/harness-test/checklist.md +316 -316
  236. package/resources/harness/bundles/java/claude-code/harness-test/pitfalls.md +260 -0
  237. package/resources/harness/{java → bundles/java/claude-code}/harness-test/reference.md +788 -788
  238. package/resources/harness/bundles/java/claude-code/protocols/archive-report-protocol.md +175 -0
  239. package/resources/harness/bundles/java/claude-code/protocols/evidence-based-reporting-protocol.md +134 -0
  240. package/resources/harness/bundles/java/claude-code/protocols/ledger-protocol.md +270 -0
  241. package/resources/harness/bundles/java/claude-code/protocols/powershell-protocol.md +181 -0
  242. package/resources/harness/bundles/java/claude-code/protocols/report-pipeline-protocol.md +150 -0
  243. package/resources/harness/bundles/java/claude-code/protocols/sensitive-info-protocol.md +92 -0
  244. package/resources/harness/bundles/java/claude-code/protocols/state-layout-protocol.md +131 -0
  245. package/resources/harness/bundles/java/claude-code/protocols/submit-protocol.md +78 -0
  246. package/resources/harness/bundles/java/claude-code/scripts/harness_archive.py +2319 -0
  247. package/resources/harness/bundles/java/claude-code/scripts/harness_deploy.py +674 -0
  248. package/resources/harness/bundles/java/claude-code/scripts/harness_events.py +680 -0
  249. package/resources/harness/bundles/java/claude-code/scripts/harness_ledger.py +671 -0
  250. package/resources/harness/bundles/java/claude-code/scripts/harness_preflight.py +780 -0
  251. package/resources/harness/bundles/java/claude-code/scripts/harness_service.py +1331 -0
  252. package/resources/harness/bundles/java/codebuddy/.harness-build.json +6 -0
  253. package/resources/harness/bundles/java/codebuddy/CONTEXT.md +65 -0
  254. package/resources/harness/bundles/java/codebuddy/README.md +478 -0
  255. package/resources/harness/bundles/java/codebuddy/agents/harness-evaluator.md +94 -0
  256. package/resources/harness/bundles/java/codebuddy/agents/harness-explorer.md +53 -0
  257. package/resources/harness/bundles/java/codebuddy/agents/harness-reviewer.md +52 -0
  258. package/resources/harness/bundles/java/codebuddy/harness-apidoc/SKILL.md +68 -0
  259. package/resources/harness/bundles/java/codebuddy/harness-apidoc/checklist.md +142 -0
  260. package/resources/harness/bundles/java/codebuddy/harness-apidoc/reference.md +233 -0
  261. package/resources/harness/bundles/java/codebuddy/harness-archive/SKILL.md +198 -0
  262. package/resources/harness/bundles/java/codebuddy/harness-archive/checklist.md +52 -0
  263. package/resources/harness/bundles/java/codebuddy/harness-archive/reference.md +103 -0
  264. package/resources/harness/bundles/java/codebuddy/harness-archive/scripts/gen-manifest.ps1 +31 -0
  265. package/resources/harness/bundles/java/codebuddy/harness-archive/templates/render-summary.mjs +171 -0
  266. package/resources/harness/bundles/java/codebuddy/harness-archive/templates/summary-data-template.json +128 -0
  267. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/SKILL.md +95 -0
  268. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/checklist.md +126 -0
  269. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/reference.md +364 -0
  270. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/ARCHITECTURE.md +57 -0
  271. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/CONCERNS.md +49 -0
  272. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/CONVENTIONS.md +57 -0
  273. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/INTEGRATIONS.md +52 -0
  274. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/STACK.md +55 -0
  275. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/STRUCTURE.md +69 -0
  276. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/TESTING.md +64 -0
  277. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/map-manifest.schema.json +73 -0
  278. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/map-summary.md +64 -0
  279. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/SKILL.md +229 -0
  280. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/design.md +842 -0
  281. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +42 -0
  282. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/mcp-config.example.json +10 -0
  283. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/reference.md +309 -0
  284. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/scripts/harness_knowledge.py +4082 -0
  285. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +273 -0
  286. package/resources/harness/bundles/java/codebuddy/harness-knowledge-query/SKILL.md +147 -0
  287. package/resources/harness/bundles/java/codebuddy/harness-package/SKILL.md +69 -0
  288. package/resources/harness/bundles/java/codebuddy/harness-package/checklist.md +322 -0
  289. package/resources/harness/bundles/java/codebuddy/harness-package/reference.md +210 -0
  290. package/resources/harness/bundles/java/codebuddy/harness-plan/SKILL.md +109 -0
  291. package/resources/harness/bundles/java/codebuddy/harness-plan/checklist.md +243 -0
  292. package/resources/harness/bundles/java/codebuddy/harness-plan/protocols.md +124 -0
  293. package/resources/harness/bundles/java/codebuddy/harness-plan/reference.md +376 -0
  294. package/resources/harness/bundles/java/codebuddy/harness-review/SKILL.md +142 -0
  295. package/resources/harness/bundles/java/codebuddy/harness-review/checklist.md +124 -0
  296. package/resources/harness/bundles/java/codebuddy/harness-review/protocols.md +68 -0
  297. package/resources/harness/bundles/java/codebuddy/harness-review/reference.md +86 -0
  298. package/resources/harness/bundles/java/codebuddy/harness-run/SKILL.md +129 -0
  299. package/resources/harness/bundles/java/codebuddy/harness-run/checklist.md +250 -0
  300. package/resources/harness/bundles/java/codebuddy/harness-run/protocols.md +78 -0
  301. package/resources/harness/bundles/java/codebuddy/harness-run/reference.md +814 -0
  302. package/resources/harness/bundles/java/codebuddy/harness-submit/SKILL.md +149 -0
  303. package/resources/harness/bundles/java/codebuddy/harness-submit/checklist.md +407 -0
  304. package/resources/harness/bundles/java/codebuddy/harness-submit/reference.md +152 -0
  305. package/resources/harness/bundles/java/codebuddy/harness-sync/SKILL.md +65 -0
  306. package/resources/harness/bundles/java/codebuddy/harness-sync/reference.md +153 -0
  307. package/resources/harness/bundles/java/codebuddy/harness-test/SKILL.md +172 -0
  308. package/resources/harness/bundles/java/codebuddy/harness-test/checklist.md +317 -0
  309. package/resources/harness/bundles/java/codebuddy/harness-test/pitfalls-java.md +16 -0
  310. package/resources/harness/bundles/java/codebuddy/harness-test/pitfalls.md +260 -0
  311. package/resources/harness/bundles/java/codebuddy/harness-test/reference.md +788 -0
  312. package/resources/harness/bundles/java/codebuddy/protocols/archive-report-protocol.md +175 -0
  313. package/resources/harness/bundles/java/codebuddy/protocols/evidence-based-reporting-protocol.md +134 -0
  314. package/resources/harness/bundles/java/codebuddy/protocols/ledger-protocol.md +270 -0
  315. package/resources/harness/bundles/java/codebuddy/protocols/powershell-protocol.md +181 -0
  316. package/resources/harness/bundles/java/codebuddy/protocols/report-pipeline-protocol.md +150 -0
  317. package/resources/harness/bundles/java/codebuddy/protocols/sensitive-info-protocol.md +92 -0
  318. package/resources/harness/bundles/java/codebuddy/protocols/state-layout-protocol.md +131 -0
  319. package/resources/harness/bundles/java/codebuddy/protocols/submit-protocol.md +78 -0
  320. package/resources/harness/bundles/java/codebuddy/scripts/harness_archive.py +2319 -0
  321. package/resources/harness/bundles/java/codebuddy/scripts/harness_deploy.py +674 -0
  322. package/resources/harness/bundles/java/codebuddy/scripts/harness_events.py +680 -0
  323. package/resources/harness/bundles/java/codebuddy/scripts/harness_ledger.py +671 -0
  324. package/resources/harness/bundles/java/codebuddy/scripts/harness_preflight.py +780 -0
  325. package/resources/harness/bundles/java/codebuddy/scripts/harness_service.py +1331 -0
  326. package/resources/harness/bundles/java/codex/.harness-build.json +6 -0
  327. package/resources/harness/bundles/java/codex/CONTEXT.md +65 -0
  328. package/resources/harness/bundles/java/codex/README.md +478 -0
  329. package/resources/harness/bundles/java/codex/harness-apidoc/SKILL.md +68 -0
  330. package/resources/harness/bundles/java/codex/harness-apidoc/checklist.md +142 -0
  331. package/resources/harness/bundles/java/codex/harness-apidoc/reference.md +233 -0
  332. package/resources/harness/bundles/java/codex/harness-archive/SKILL.md +198 -0
  333. package/resources/harness/bundles/java/codex/harness-archive/checklist.md +52 -0
  334. package/resources/harness/bundles/java/codex/harness-archive/reference.md +103 -0
  335. package/resources/harness/bundles/java/codex/harness-archive/scripts/gen-manifest.ps1 +31 -0
  336. package/resources/harness/bundles/java/codex/harness-archive/templates/render-summary.mjs +171 -0
  337. package/resources/harness/bundles/java/codex/harness-archive/templates/summary-data-template.json +128 -0
  338. package/resources/harness/bundles/java/codex/harness-codebase-map/SKILL.md +95 -0
  339. package/resources/harness/bundles/java/codex/harness-codebase-map/checklist.md +126 -0
  340. package/resources/harness/bundles/java/codex/harness-codebase-map/reference.md +364 -0
  341. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/ARCHITECTURE.md +57 -0
  342. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/CONCERNS.md +49 -0
  343. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/CONVENTIONS.md +57 -0
  344. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/INTEGRATIONS.md +52 -0
  345. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/STACK.md +55 -0
  346. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/STRUCTURE.md +69 -0
  347. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/TESTING.md +64 -0
  348. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/map-manifest.schema.json +73 -0
  349. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/map-summary.md +64 -0
  350. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/SKILL.md +229 -0
  351. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/design.md +842 -0
  352. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +42 -0
  353. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/mcp-config.example.json +10 -0
  354. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/reference.md +309 -0
  355. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/scripts/harness_knowledge.py +4082 -0
  356. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +273 -0
  357. package/resources/harness/bundles/java/codex/harness-knowledge-query/SKILL.md +147 -0
  358. package/resources/harness/bundles/java/codex/harness-package/SKILL.md +69 -0
  359. package/resources/harness/bundles/java/codex/harness-package/checklist.md +322 -0
  360. package/resources/harness/bundles/java/codex/harness-package/reference.md +210 -0
  361. package/resources/harness/bundles/java/codex/harness-plan/SKILL.md +109 -0
  362. package/resources/harness/bundles/java/codex/harness-plan/checklist.md +243 -0
  363. package/resources/harness/bundles/java/codex/harness-plan/protocols.md +124 -0
  364. package/resources/harness/bundles/java/codex/harness-plan/reference.md +376 -0
  365. package/resources/harness/bundles/java/codex/harness-review/SKILL.md +137 -0
  366. package/resources/harness/bundles/java/codex/harness-review/checklist.md +124 -0
  367. package/resources/harness/bundles/java/codex/harness-review/protocols.md +68 -0
  368. package/resources/harness/bundles/java/codex/harness-review/reference.md +86 -0
  369. package/resources/harness/bundles/java/codex/harness-run/SKILL.md +129 -0
  370. package/resources/harness/bundles/java/codex/harness-run/checklist.md +250 -0
  371. package/resources/harness/bundles/java/codex/harness-run/protocols.md +78 -0
  372. package/resources/harness/bundles/java/codex/harness-run/reference.md +814 -0
  373. package/resources/harness/bundles/java/codex/harness-submit/SKILL.md +149 -0
  374. package/resources/harness/bundles/java/codex/harness-submit/checklist.md +407 -0
  375. package/resources/harness/bundles/java/codex/harness-submit/reference.md +152 -0
  376. package/resources/harness/bundles/java/codex/harness-sync/SKILL.md +65 -0
  377. package/resources/harness/bundles/java/codex/harness-sync/reference.md +153 -0
  378. package/resources/harness/bundles/java/codex/harness-test/SKILL.md +172 -0
  379. package/resources/harness/bundles/java/codex/harness-test/checklist.md +317 -0
  380. package/resources/harness/bundles/java/codex/harness-test/pitfalls-java.md +16 -0
  381. package/resources/harness/bundles/java/codex/harness-test/pitfalls.md +260 -0
  382. package/resources/harness/bundles/java/codex/harness-test/reference.md +788 -0
  383. package/resources/harness/bundles/java/codex/protocols/archive-report-protocol.md +175 -0
  384. package/resources/harness/bundles/java/codex/protocols/evidence-based-reporting-protocol.md +134 -0
  385. package/resources/harness/bundles/java/codex/protocols/ledger-protocol.md +270 -0
  386. package/resources/harness/bundles/java/codex/protocols/powershell-protocol.md +181 -0
  387. package/resources/harness/bundles/java/codex/protocols/report-pipeline-protocol.md +150 -0
  388. package/resources/harness/bundles/java/codex/protocols/sensitive-info-protocol.md +92 -0
  389. package/resources/harness/bundles/java/codex/protocols/state-layout-protocol.md +131 -0
  390. package/resources/harness/bundles/java/codex/protocols/submit-protocol.md +78 -0
  391. package/resources/harness/bundles/java/codex/scripts/harness_archive.py +2319 -0
  392. package/resources/harness/bundles/java/codex/scripts/harness_deploy.py +674 -0
  393. package/resources/harness/bundles/java/codex/scripts/harness_events.py +680 -0
  394. package/resources/harness/bundles/java/codex/scripts/harness_ledger.py +671 -0
  395. package/resources/harness/bundles/java/codex/scripts/harness_preflight.py +780 -0
  396. package/resources/harness/bundles/java/codex/scripts/harness_service.py +1331 -0
  397. package/resources/harness/bundles/java/cursor/.harness-build.json +6 -0
  398. package/resources/harness/bundles/java/cursor/CONTEXT.md +65 -0
  399. package/resources/harness/bundles/java/cursor/README.md +478 -0
  400. package/resources/harness/bundles/java/cursor/harness-apidoc/SKILL.md +68 -0
  401. package/resources/harness/bundles/java/cursor/harness-apidoc/checklist.md +142 -0
  402. package/resources/harness/bundles/java/cursor/harness-apidoc/reference.md +233 -0
  403. package/resources/harness/bundles/java/cursor/harness-archive/SKILL.md +198 -0
  404. package/resources/harness/bundles/java/cursor/harness-archive/checklist.md +52 -0
  405. package/resources/harness/bundles/java/cursor/harness-archive/reference.md +103 -0
  406. package/resources/harness/bundles/java/cursor/harness-archive/scripts/gen-manifest.ps1 +31 -0
  407. package/resources/harness/bundles/java/cursor/harness-archive/templates/render-summary.mjs +171 -0
  408. package/resources/harness/bundles/java/cursor/harness-archive/templates/summary-data-template.json +128 -0
  409. package/resources/harness/bundles/java/cursor/harness-codebase-map/SKILL.md +95 -0
  410. package/resources/harness/bundles/java/cursor/harness-codebase-map/checklist.md +126 -0
  411. package/resources/harness/bundles/java/cursor/harness-codebase-map/reference.md +364 -0
  412. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/ARCHITECTURE.md +57 -0
  413. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/CONCERNS.md +49 -0
  414. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/CONVENTIONS.md +57 -0
  415. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/INTEGRATIONS.md +52 -0
  416. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/STACK.md +55 -0
  417. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/STRUCTURE.md +69 -0
  418. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/TESTING.md +64 -0
  419. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/map-manifest.schema.json +73 -0
  420. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/map-summary.md +64 -0
  421. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/SKILL.md +229 -0
  422. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/design.md +842 -0
  423. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +42 -0
  424. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/mcp-config.example.json +10 -0
  425. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/reference.md +309 -0
  426. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/scripts/harness_knowledge.py +4082 -0
  427. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +273 -0
  428. package/resources/harness/bundles/java/cursor/harness-knowledge-query/SKILL.md +147 -0
  429. package/resources/harness/bundles/java/cursor/harness-package/SKILL.md +69 -0
  430. package/resources/harness/bundles/java/cursor/harness-package/checklist.md +322 -0
  431. package/resources/harness/bundles/java/cursor/harness-package/reference.md +210 -0
  432. package/resources/harness/bundles/java/cursor/harness-plan/SKILL.md +109 -0
  433. package/resources/harness/bundles/java/cursor/harness-plan/checklist.md +243 -0
  434. package/resources/harness/bundles/java/cursor/harness-plan/protocols.md +124 -0
  435. package/resources/harness/bundles/java/cursor/harness-plan/reference.md +376 -0
  436. package/resources/harness/bundles/java/cursor/harness-review/SKILL.md +137 -0
  437. package/resources/harness/bundles/java/cursor/harness-review/checklist.md +124 -0
  438. package/resources/harness/bundles/java/cursor/harness-review/protocols.md +68 -0
  439. package/resources/harness/bundles/java/cursor/harness-review/reference.md +86 -0
  440. package/resources/harness/bundles/java/cursor/harness-run/SKILL.md +129 -0
  441. package/resources/harness/bundles/java/cursor/harness-run/checklist.md +250 -0
  442. package/resources/harness/bundles/java/cursor/harness-run/protocols.md +78 -0
  443. package/resources/harness/bundles/java/cursor/harness-run/reference.md +814 -0
  444. package/resources/harness/bundles/java/cursor/harness-submit/SKILL.md +149 -0
  445. package/resources/harness/bundles/java/cursor/harness-submit/checklist.md +407 -0
  446. package/resources/harness/bundles/java/cursor/harness-submit/reference.md +152 -0
  447. package/resources/harness/bundles/java/cursor/harness-sync/SKILL.md +65 -0
  448. package/resources/harness/bundles/java/cursor/harness-sync/reference.md +153 -0
  449. package/resources/harness/bundles/java/cursor/harness-test/SKILL.md +172 -0
  450. package/resources/harness/bundles/java/cursor/harness-test/checklist.md +317 -0
  451. package/resources/harness/bundles/java/cursor/harness-test/pitfalls-java.md +16 -0
  452. package/resources/harness/bundles/java/cursor/harness-test/pitfalls.md +260 -0
  453. package/resources/harness/bundles/java/cursor/harness-test/reference.md +788 -0
  454. package/resources/harness/bundles/java/cursor/protocols/archive-report-protocol.md +175 -0
  455. package/resources/harness/bundles/java/cursor/protocols/evidence-based-reporting-protocol.md +134 -0
  456. package/resources/harness/bundles/java/cursor/protocols/ledger-protocol.md +270 -0
  457. package/resources/harness/bundles/java/cursor/protocols/powershell-protocol.md +181 -0
  458. package/resources/harness/bundles/java/cursor/protocols/report-pipeline-protocol.md +150 -0
  459. package/resources/harness/bundles/java/cursor/protocols/sensitive-info-protocol.md +92 -0
  460. package/resources/harness/bundles/java/cursor/protocols/state-layout-protocol.md +131 -0
  461. package/resources/harness/bundles/java/cursor/protocols/submit-protocol.md +78 -0
  462. package/resources/harness/bundles/java/cursor/scripts/harness_archive.py +2319 -0
  463. package/resources/harness/bundles/java/cursor/scripts/harness_deploy.py +674 -0
  464. package/resources/harness/bundles/java/cursor/scripts/harness_events.py +680 -0
  465. package/resources/harness/bundles/java/cursor/scripts/harness_ledger.py +671 -0
  466. package/resources/harness/bundles/java/cursor/scripts/harness_preflight.py +780 -0
  467. package/resources/harness/bundles/java/cursor/scripts/harness_service.py +1331 -0
  468. package/resources/harness/manifests/{general.json → general/claude-code.json} +27 -26
  469. package/resources/harness/manifests/general/codebuddy.json +277 -0
  470. package/resources/harness/manifests/general/codex.json +265 -0
  471. package/resources/harness/manifests/general/cursor.json +265 -0
  472. package/resources/harness/manifests/{java.json → java/claude-code.json} +31 -30
  473. package/resources/harness/manifests/java/codebuddy.json +305 -0
  474. package/resources/harness/manifests/java/codex.json +293 -0
  475. package/resources/harness/manifests/java/cursor.json +293 -0
  476. package/resources/harness/general/.harness-build.json +0 -5
  477. package/resources/harness/java/.harness-build.json +0 -5
  478. /package/resources/harness/{general → bundles/general/claude-code}/CONTEXT.md +0 -0
  479. /package/resources/harness/{general → bundles/general/claude-code}/README.md +0 -0
  480. /package/resources/harness/{general → bundles/general/claude-code}/agents/harness-evaluator.md +0 -0
  481. /package/resources/harness/{general → bundles/general/claude-code}/agents/harness-explorer.md +0 -0
  482. /package/resources/harness/{general → bundles/general/claude-code}/harness-archive/checklist.md +0 -0
  483. /package/resources/harness/{general → bundles/general/claude-code}/harness-archive/reference.md +0 -0
  484. /package/resources/harness/{general → bundles/general/claude-code}/harness-archive/scripts/gen-manifest.ps1 +0 -0
  485. /package/resources/harness/{general → bundles/general/claude-code}/harness-archive/templates/render-summary.mjs +0 -0
  486. /package/resources/harness/{general → bundles/general/claude-code}/harness-archive/templates/summary-data-template.json +0 -0
  487. /package/resources/harness/{general → bundles/general/claude-code}/harness-codebase-map/checklist.md +0 -0
  488. /package/resources/harness/{general → bundles/general/claude-code}/harness-codebase-map/reference.md +0 -0
  489. /package/resources/harness/{general → bundles/general/claude-code}/harness-codebase-map/templates/ARCHITECTURE.md +0 -0
  490. /package/resources/harness/{general → bundles/general/claude-code}/harness-codebase-map/templates/CONCERNS.md +0 -0
  491. /package/resources/harness/{general → bundles/general/claude-code}/harness-codebase-map/templates/CONVENTIONS.md +0 -0
  492. /package/resources/harness/{general → bundles/general/claude-code}/harness-codebase-map/templates/INTEGRATIONS.md +0 -0
  493. /package/resources/harness/{general → bundles/general/claude-code}/harness-codebase-map/templates/STACK.md +0 -0
  494. /package/resources/harness/{general → bundles/general/claude-code}/harness-codebase-map/templates/STRUCTURE.md +0 -0
  495. /package/resources/harness/{general → bundles/general/claude-code}/harness-codebase-map/templates/TESTING.md +0 -0
  496. /package/resources/harness/{general → bundles/general/claude-code}/harness-codebase-map/templates/map-manifest.schema.json +0 -0
  497. /package/resources/harness/{general → bundles/general/claude-code}/harness-codebase-map/templates/map-summary.md +0 -0
  498. /package/resources/harness/{general → bundles/general/claude-code}/harness-knowledge-ingest/design.md +0 -0
  499. /package/resources/harness/{general → bundles/general/claude-code}/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +0 -0
  500. /package/resources/harness/{general → bundles/general/claude-code}/harness-knowledge-ingest/mcp-config.example.json +0 -0
  501. /package/resources/harness/{general → bundles/general/claude-code}/harness-knowledge-ingest/scripts/harness_knowledge.py +0 -0
  502. /package/resources/harness/{general → bundles/general/claude-code}/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +0 -0
  503. /package/resources/harness/{general → bundles/general/claude-code}/harness-plan/checklist.md +0 -0
  504. /package/resources/harness/{general → bundles/general/claude-code}/harness-plan/protocols.md +0 -0
  505. /package/resources/harness/{general → bundles/general/claude-code}/harness-plan/reference.md +0 -0
  506. /package/resources/harness/{general → bundles/general/claude-code}/harness-review/protocols.md +0 -0
  507. /package/resources/harness/{general → bundles/general/claude-code}/harness-review/reference.md +0 -0
  508. /package/resources/harness/{general → bundles/general/claude-code}/harness-run/protocols.md +0 -0
  509. /package/resources/harness/{general → bundles/general/claude-code}/harness-submit/checklist.md +0 -0
  510. /package/resources/harness/{general → bundles/general/claude-code}/harness-submit/reference.md +0 -0
  511. /package/resources/harness/{general → bundles/general/claude-code}/harness-test/pitfalls.md +0 -0
  512. /package/resources/harness/{general → bundles/general/claude-code}/harness-test/reference.md +0 -0
  513. /package/resources/harness/{general → bundles/general/claude-code}/protocols/archive-report-protocol.md +0 -0
  514. /package/resources/harness/{general → bundles/general/claude-code}/protocols/evidence-based-reporting-protocol.md +0 -0
  515. /package/resources/harness/{general → bundles/general/claude-code}/protocols/ledger-protocol.md +0 -0
  516. /package/resources/harness/{general → bundles/general/claude-code}/protocols/powershell-protocol.md +0 -0
  517. /package/resources/harness/{general → bundles/general/claude-code}/protocols/report-pipeline-protocol.md +0 -0
  518. /package/resources/harness/{general → bundles/general/claude-code}/protocols/sensitive-info-protocol.md +0 -0
  519. /package/resources/harness/{general → bundles/general/claude-code}/protocols/state-layout-protocol.md +0 -0
  520. /package/resources/harness/{general → bundles/general/claude-code}/protocols/submit-protocol.md +0 -0
  521. /package/resources/harness/{java → bundles/general/codebuddy}/CONTEXT.md +0 -0
  522. /package/resources/harness/{java → bundles/general/codebuddy}/README.md +0 -0
  523. /package/resources/harness/{java → bundles/general/codebuddy}/harness-archive/checklist.md +0 -0
  524. /package/resources/harness/{java → bundles/general/codebuddy}/harness-archive/reference.md +0 -0
  525. /package/resources/harness/{java → bundles/general/codebuddy}/harness-archive/scripts/gen-manifest.ps1 +0 -0
  526. /package/resources/harness/{java → bundles/general/codebuddy}/harness-archive/templates/render-summary.mjs +0 -0
  527. /package/resources/harness/{java → bundles/general/codebuddy}/harness-archive/templates/summary-data-template.json +0 -0
  528. /package/resources/harness/{java → bundles/general/codebuddy}/harness-codebase-map/checklist.md +0 -0
  529. /package/resources/harness/{java → bundles/general/codebuddy}/harness-codebase-map/reference.md +0 -0
  530. /package/resources/harness/{java → bundles/general/codebuddy}/harness-codebase-map/templates/ARCHITECTURE.md +0 -0
  531. /package/resources/harness/{java → bundles/general/codebuddy}/harness-codebase-map/templates/CONCERNS.md +0 -0
  532. /package/resources/harness/{java → bundles/general/codebuddy}/harness-codebase-map/templates/CONVENTIONS.md +0 -0
  533. /package/resources/harness/{java → bundles/general/codebuddy}/harness-codebase-map/templates/INTEGRATIONS.md +0 -0
  534. /package/resources/harness/{java → bundles/general/codebuddy}/harness-codebase-map/templates/STACK.md +0 -0
  535. /package/resources/harness/{java → bundles/general/codebuddy}/harness-codebase-map/templates/STRUCTURE.md +0 -0
  536. /package/resources/harness/{java → bundles/general/codebuddy}/harness-codebase-map/templates/TESTING.md +0 -0
  537. /package/resources/harness/{java → bundles/general/codebuddy}/harness-codebase-map/templates/map-manifest.schema.json +0 -0
  538. /package/resources/harness/{java → bundles/general/codebuddy}/harness-codebase-map/templates/map-summary.md +0 -0
  539. /package/resources/harness/{java → bundles/general/codebuddy}/harness-knowledge-ingest/design.md +0 -0
  540. /package/resources/harness/{java → bundles/general/codebuddy}/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +0 -0
  541. /package/resources/harness/{java → bundles/general/codebuddy}/harness-knowledge-ingest/mcp-config.example.json +0 -0
  542. /package/resources/harness/{java → bundles/general/codebuddy}/harness-knowledge-ingest/scripts/harness_knowledge.py +0 -0
  543. /package/resources/harness/{java → bundles/general/codebuddy}/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +0 -0
  544. /package/resources/harness/{java → bundles/general/codebuddy}/harness-plan/checklist.md +0 -0
  545. /package/resources/harness/{java → bundles/general/codebuddy}/harness-plan/protocols.md +0 -0
  546. /package/resources/harness/{java → bundles/general/codebuddy}/harness-plan/reference.md +0 -0
  547. /package/resources/harness/{java → bundles/general/codebuddy}/harness-review/protocols.md +0 -0
  548. /package/resources/harness/{java → bundles/general/codebuddy}/harness-review/reference.md +0 -0
  549. /package/resources/harness/{java → bundles/general/codebuddy}/harness-run/protocols.md +0 -0
  550. /package/resources/harness/{java → bundles/general/codebuddy}/harness-submit/checklist.md +0 -0
  551. /package/resources/harness/{java → bundles/general/codebuddy}/harness-submit/reference.md +0 -0
  552. /package/resources/harness/{java → bundles/general/codebuddy}/harness-test/pitfalls.md +0 -0
  553. /package/resources/harness/{java → bundles/general/codebuddy}/protocols/archive-report-protocol.md +0 -0
  554. /package/resources/harness/{java → bundles/general/codebuddy}/protocols/evidence-based-reporting-protocol.md +0 -0
  555. /package/resources/harness/{java → bundles/general/codebuddy}/protocols/ledger-protocol.md +0 -0
  556. /package/resources/harness/{java → bundles/general/codebuddy}/protocols/powershell-protocol.md +0 -0
  557. /package/resources/harness/{java → bundles/general/codebuddy}/protocols/report-pipeline-protocol.md +0 -0
  558. /package/resources/harness/{java → bundles/general/codebuddy}/protocols/sensitive-info-protocol.md +0 -0
  559. /package/resources/harness/{java → bundles/general/codebuddy}/protocols/state-layout-protocol.md +0 -0
  560. /package/resources/harness/{java → bundles/general/codebuddy}/protocols/submit-protocol.md +0 -0
  561. /package/resources/harness/{java → bundles/java/claude-code}/agents/harness-evaluator.md +0 -0
  562. /package/resources/harness/{java → bundles/java/claude-code}/agents/harness-explorer.md +0 -0
  563. /package/resources/harness/{java → bundles/java/claude-code}/harness-apidoc/checklist.md +0 -0
  564. /package/resources/harness/{java → bundles/java/claude-code}/harness-apidoc/reference.md +0 -0
  565. /package/resources/harness/{java → bundles/java/claude-code}/harness-package/checklist.md +0 -0
  566. /package/resources/harness/{java → bundles/java/claude-code}/harness-test/pitfalls-java.md +0 -0
@@ -0,0 +1,273 @@
1
+ #!/usr/bin/env python3
2
+ """MCP entry point for Harness knowledge operations."""
3
+
4
+ from __future__ import annotations
5
+
6
+ import argparse
7
+ import json
8
+ import sys
9
+ from pathlib import Path
10
+ from typing import Any
11
+
12
+
13
+ SCRIPT_DIR = Path(__file__).resolve().parent
14
+ if str(SCRIPT_DIR) not in sys.path:
15
+ sys.path.insert(0, str(SCRIPT_DIR))
16
+
17
+ import harness_knowledge as hk # noqa: E402
18
+
19
+
20
+ TOOL_DESCRIPTIONS: list[dict[str, Any]] = [
21
+ {
22
+ "name": "harness_knowledge_ingest",
23
+ "description": "Build or refresh a project-local .harness/knowledge index from .harness/archive.",
24
+ "inputSchema": {
25
+ "type": "object",
26
+ "properties": {
27
+ "project": {"type": "string", "description": "Project root containing .harness/archive."},
28
+ "incremental": {"type": "boolean", "default": True, "description": "Reuse cached archive extraction results when valid."},
29
+ },
30
+ "required": ["project"],
31
+ },
32
+ },
33
+ {
34
+ "name": "harness_knowledge_sync",
35
+ "description": "Check whether .harness/knowledge is current, optionally refreshing stale indexes.",
36
+ "inputSchema": {
37
+ "type": "object",
38
+ "properties": {
39
+ "project": {"type": "string", "description": "Project root containing .harness/archive."},
40
+ "update": {"type": "boolean", "default": False, "description": "Refresh the index when it is out of date."},
41
+ "incremental": {"type": "boolean", "default": True, "description": "Use incremental extraction when update is true."},
42
+ },
43
+ "required": ["project"],
44
+ },
45
+ },
46
+ {
47
+ "name": "harness_knowledge_auto",
48
+ "description": "Run the default automated knowledge maintenance workflow: create config when missing, sync, suggest validators, verify, and audit.",
49
+ "inputSchema": {
50
+ "type": "object",
51
+ "properties": {
52
+ "project": {"type": "string", "description": "Project root containing .harness/archive."},
53
+ "limit": {"type": "integer", "default": 20, "minimum": 1, "maximum": 100},
54
+ "suggest_statuses": {"type": "array", "items": {"type": "string"}, "default": []},
55
+ "apply_suggestions": {"type": "boolean", "default": False, "description": "Write validator suggestions into entry JSON files."},
56
+ "incremental": {"type": "boolean", "default": True, "description": "Reuse cached archive extraction results when refreshing."},
57
+ "audit_limit": {"type": "integer", "default": 10, "minimum": 1, "maximum": 100},
58
+ },
59
+ "required": ["project"],
60
+ },
61
+ },
62
+ {
63
+ "name": "harness_knowledge_audit",
64
+ "description": "Generate review lists for candidate, stale, superseded, and conflicted knowledge.",
65
+ "inputSchema": {
66
+ "type": "object",
67
+ "properties": {
68
+ "project": {"type": "string", "description": "Project root containing .harness/knowledge."},
69
+ "limit": {"type": "integer", "default": 10, "minimum": 1, "maximum": 100},
70
+ },
71
+ "required": ["project"],
72
+ },
73
+ },
74
+ {
75
+ "name": "harness_knowledge_verify",
76
+ "description": "Run configured validators against knowledge entries and refresh verification reports.",
77
+ "inputSchema": {
78
+ "type": "object",
79
+ "properties": {
80
+ "project": {"type": "string", "description": "Project root containing .harness/knowledge."},
81
+ },
82
+ "required": ["project"],
83
+ },
84
+ },
85
+ {
86
+ "name": "harness_knowledge_suggest_validators",
87
+ "description": "Suggest deterministic validators for knowledge entries, optionally applying them.",
88
+ "inputSchema": {
89
+ "type": "object",
90
+ "properties": {
91
+ "project": {"type": "string", "description": "Project root containing .harness/knowledge."},
92
+ "limit": {"type": "integer", "default": 20, "minimum": 1, "maximum": 100},
93
+ "statuses": {"type": "array", "items": {"type": "string"}, "default": []},
94
+ "apply": {"type": "boolean", "default": False, "description": "Write suggestions into entry JSON files."},
95
+ },
96
+ "required": ["project"],
97
+ },
98
+ },
99
+ {
100
+ "name": "harness_knowledge_query",
101
+ "description": "Search .harness/knowledge and generate a context pack for planning or implementation.",
102
+ "inputSchema": {
103
+ "type": "object",
104
+ "properties": {
105
+ "project": {"type": "string", "description": "Project root containing .harness/knowledge."},
106
+ "query": {"type": "string", "description": "Need, question, keyword, or file path to search."},
107
+ "limit": {"type": "integer", "default": 10, "minimum": 1, "maximum": 100},
108
+ "files": {"type": "array", "items": {"type": "string"}, "default": []},
109
+ "statuses": {"type": "array", "items": {"type": "string"}, "default": []},
110
+ "types": {"type": "array", "items": {"type": "string"}, "default": []},
111
+ },
112
+ "required": ["project", "query"],
113
+ },
114
+ },
115
+ {
116
+ "name": "harness_knowledge_promote",
117
+ "description": "Promote a candidate knowledge entry to active after manual confirmation.",
118
+ "inputSchema": {
119
+ "type": "object",
120
+ "properties": {
121
+ "project": {"type": "string", "description": "Project root containing .harness/knowledge."},
122
+ "entry_id": {"type": "string", "description": "Knowledge entry id to promote."},
123
+ "note": {"type": "string", "default": "", "description": "Manual verification note."},
124
+ "allow_stale": {"type": "boolean", "default": False, "description": "Allow promoting a stale entry after manual verification."},
125
+ },
126
+ "required": ["project", "entry_id"],
127
+ },
128
+ },
129
+ {
130
+ "name": "harness_knowledge_demote",
131
+ "description": "Demote an active knowledge entry to stale or candidate after manual review.",
132
+ "inputSchema": {
133
+ "type": "object",
134
+ "properties": {
135
+ "project": {"type": "string", "description": "Project root containing .harness/knowledge."},
136
+ "entry_id": {"type": "string", "description": "Active knowledge entry id to demote."},
137
+ "status": {"type": "string", "enum": ["candidate", "stale"], "description": "Target lifecycle status."},
138
+ "reason": {"type": "string", "description": "Manual demotion reason."},
139
+ },
140
+ "required": ["project", "entry_id", "status", "reason"],
141
+ },
142
+ },
143
+ ]
144
+
145
+
146
+ def describe_tools() -> dict[str, Any]:
147
+ return {
148
+ "server": "harness-knowledge",
149
+ "transport": "stdio",
150
+ "tools": TOOL_DESCRIPTIONS,
151
+ }
152
+
153
+
154
+ def create_server() -> Any:
155
+ try:
156
+ from mcp.server.fastmcp import FastMCP
157
+ except Exception as exc: # pragma: no cover - exercised when SDK is absent
158
+ raise RuntimeError(
159
+ "Python package 'mcp' with FastMCP support is required to run the MCP server. "
160
+ "Use --describe-tools for static tool metadata."
161
+ ) from exc
162
+
163
+ server = FastMCP(
164
+ "harness-knowledge",
165
+ instructions=(
166
+ "Use these tools to maintain and query project-local Harness knowledge. "
167
+ "Treat candidate and stale entries as historical context until verified."
168
+ ),
169
+ )
170
+
171
+ @server.tool(description=TOOL_DESCRIPTIONS[0]["description"])
172
+ def harness_knowledge_ingest(project: str, incremental: bool = True) -> dict[str, Any]:
173
+ return hk.summarize_index(hk.build_index(Path(project), incremental=incremental))
174
+
175
+ @server.tool(description=TOOL_DESCRIPTIONS[1]["description"])
176
+ def harness_knowledge_sync(project: str, update: bool = False, incremental: bool = True) -> dict[str, Any]:
177
+ return hk.sync_status(Path(project), update=update, incremental=incremental)
178
+
179
+ @server.tool(description=TOOL_DESCRIPTIONS[2]["description"])
180
+ def harness_knowledge_auto(
181
+ project: str,
182
+ limit: int = 20,
183
+ suggest_statuses: list[str] | None = None,
184
+ apply_suggestions: bool = False,
185
+ incremental: bool = True,
186
+ audit_limit: int = 10,
187
+ ) -> dict[str, Any]:
188
+ return hk.auto_knowledge(
189
+ Path(project),
190
+ limit=limit,
191
+ suggest_statuses=suggest_statuses or [],
192
+ apply_suggestions=apply_suggestions,
193
+ incremental=incremental,
194
+ audit_limit=audit_limit,
195
+ )
196
+
197
+ @server.tool(description=TOOL_DESCRIPTIONS[3]["description"])
198
+ def harness_knowledge_audit(project: str, limit: int = 10) -> dict[str, Any]:
199
+ return hk.audit_entries(Path(project), limit=limit)
200
+
201
+ @server.tool(description=TOOL_DESCRIPTIONS[4]["description"])
202
+ def harness_knowledge_verify(project: str) -> dict[str, Any]:
203
+ return hk.verify_knowledge(Path(project))
204
+
205
+ @server.tool(description=TOOL_DESCRIPTIONS[5]["description"])
206
+ def harness_knowledge_suggest_validators(
207
+ project: str,
208
+ limit: int = 20,
209
+ statuses: list[str] | None = None,
210
+ apply: bool = False,
211
+ ) -> dict[str, Any]:
212
+ return hk.suggest_validators(Path(project), limit=limit, statuses=statuses or [], apply=apply)
213
+
214
+ @server.tool(description=TOOL_DESCRIPTIONS[6]["description"])
215
+ def harness_knowledge_query(
216
+ project: str,
217
+ query: str,
218
+ limit: int = 10,
219
+ files: list[str] | None = None,
220
+ statuses: list[str] | None = None,
221
+ types: list[str] | None = None,
222
+ ) -> dict[str, Any]:
223
+ return hk.query_index(
224
+ Path(project),
225
+ query,
226
+ limit=limit,
227
+ file_filters=files or [],
228
+ statuses=statuses or [],
229
+ types=types or [],
230
+ )
231
+
232
+ @server.tool(description=TOOL_DESCRIPTIONS[7]["description"])
233
+ def harness_knowledge_promote(
234
+ project: str,
235
+ entry_id: str,
236
+ note: str = "",
237
+ allow_stale: bool = False,
238
+ ) -> dict[str, Any]:
239
+ return hk.promote_entry(Path(project), entry_id, note, allow_stale=allow_stale)
240
+
241
+ @server.tool(description=TOOL_DESCRIPTIONS[8]["description"])
242
+ def harness_knowledge_demote(
243
+ project: str,
244
+ entry_id: str,
245
+ status: str,
246
+ reason: str,
247
+ ) -> dict[str, Any]:
248
+ return hk.demote_entry(Path(project), entry_id, status, reason)
249
+
250
+ return server
251
+
252
+
253
+ def main(argv: list[str] | None = None) -> int:
254
+ parser = argparse.ArgumentParser(description="Run the Harness knowledge MCP server.")
255
+ parser.add_argument("--describe-tools", action="store_true", help="Print static MCP tool metadata as JSON and exit.")
256
+ parser.add_argument("--transport", choices=["stdio", "sse", "streamable-http"], default="stdio")
257
+ args = parser.parse_args(argv)
258
+
259
+ if args.describe_tools:
260
+ print(json.dumps(describe_tools(), ensure_ascii=False, indent=2))
261
+ return 0
262
+
263
+ try:
264
+ server = create_server()
265
+ except RuntimeError as exc:
266
+ print(str(exc), file=sys.stderr)
267
+ return 1
268
+ server.run(transport=args.transport)
269
+ return 0
270
+
271
+
272
+ if __name__ == "__main__":
273
+ raise SystemExit(main())
@@ -0,0 +1,147 @@
1
+ ---
2
+ name: harness-knowledge-query
3
+ description: 根据新需求、设计任务、代码修改请求或问题排查,在规划和编码前查询 .harness/knowledge
4
+ 历史上下文。适用场景:query knowledge、查找历史需求、根据归档理解需求、继续之前类似开发、生成需求上下文包。
5
+ ---
6
+ <!-- generated by harness_deploy.py; core=9a7af3c66acaad35; overlay=java; agent=codex; do not edit -->
7
+ # harness-knowledge-query
8
+
9
+ 根据用户的新需求或排查问题,从项目本地 `.harness/knowledge` 中检索历史需求、决策、实现、风险和测试证据,并生成 AI 可读的 context pack。
10
+
11
+ 此 skill 只负责查询和使用知识。整理、同步和 promote 条目由 `harness-knowledge-ingest` 负责。
12
+
13
+ ## Triggers
14
+
15
+ - query knowledge
16
+ - knowledge query
17
+ - 查找相关历史需求
18
+ - 根据历史归档理解这个需求
19
+ - 结合之前做过的内容
20
+ - 继续之前类似开发
21
+ - 生成需求上下文包
22
+ - 在规划前查历史
23
+
24
+ ## Automatic Use
25
+
26
+ 当用户提出新功能、改造、排查、设计方案、继续历史任务,且项目存在 `.harness/archive` 或 `.harness/knowledge` 时,AI 应主动运行本 skill,不需要等用户提醒。
27
+
28
+ 如果 `.harness/knowledge/index.json` 不存在或已过期,先运行:
29
+
30
+ ```powershell
31
+ powershell.exe -Command "python '<ingest-skill-dir>\scripts\harness_knowledge.py' sync --project '<project-root>' --update"
32
+ ```
33
+
34
+ 然后再查询。
35
+
36
+ ## Commands
37
+
38
+ `<ingest-skill-dir>` 指同级 `harness-knowledge-ingest/` 目录;查询逻辑复用其脚本。所有 python 脚本命令通过 `powershell.exe -Command "..."` 执行,避开 Bash 在 Windows 中文路径下的编码/参数问题。
39
+
40
+ ### Query by requirement
41
+
42
+ ```powershell
43
+ powershell.exe -Command "python '<ingest-skill-dir>\scripts\harness_knowledge.py' query --project '<project-root>' --query '<用户需求原文>'"
44
+ ```
45
+
46
+ ### Query with metadata filters
47
+
48
+ ```powershell
49
+ powershell.exe -Command "python '<ingest-skill-dir>\scripts\harness_knowledge.py' query --project '<project-root>' --query '<需求或关键词>' --file '<source-file>' --status active"
50
+ ```
51
+
52
+ 可重复使用:
53
+
54
+ - `--file <path>`:只返回关联到指定文件的知识。
55
+ - `--status active|candidate|stale|superseded|conflicted`:按生命周期过滤。
56
+ - `--type requirement|decision|implementation|risk|test-evidence|pitfall|api-contract`:按知识类型过滤。
57
+ - `--limit <n>`:限制返回数量。
58
+
59
+ ## Workflow
60
+
61
+ 1. 确认项目根目录。
62
+ 2. 运行 `sync --project <root>`。
63
+ 3. 如果 `upToDate=false`,运行 `sync --update`。
64
+ 4. 用用户原始需求作为 `--query` 查询。
65
+ 5. 如已知道相关文件,追加 `--file` 过滤。
66
+ 6. 读取 JSON 输出中的 `contextPack`。
67
+ 7. 在 `harness-plan`、设计、代码探索或实现前,把 context pack 当作必读输入。
68
+
69
+ ## Output Contract
70
+
71
+ 查询输出 JSON 包含:
72
+
73
+ - `matchCount`
74
+ - `contextPack`
75
+ - `filters`
76
+ - `planInput`
77
+ - `matches`
78
+
79
+ `planInput.kind` 必须为 `harness-knowledge-context-pack`。后续 `harness-plan` 应读取 `planInput.path`。
80
+
81
+ 每次查询还会更新稳定指针:
82
+
83
+ ```text
84
+ .harness/knowledge/context-packs/latest.json
85
+ ```
86
+
87
+ 该文件包含最新 query、context pack 路径和 `matchIds`,供后续流程快速读取最近一次知识上下文。
88
+
89
+ ## Interpretation Rules
90
+
91
+ - `active`:可优先采用,但仍要结合当前代码验证。
92
+ - `candidate`:有参考价值,不是当前事实。
93
+ - `stale`:只能作为历史线索,必须重新检查代码和归档。
94
+ - `superseded` / `conflicted`:必须显式提示风险,不得静默采用。
95
+
96
+ ## Forbidden Actions
97
+
98
+ - rebuild_index_without_need
99
+ - treat_candidate_as_current_fact
100
+ - treat_stale_as_current_fact
101
+ - skip_context_pack_before_planning
102
+ - copy_large_archive_content_into_prompt
103
+
104
+ ## Verification
105
+
106
+ ```powershell
107
+ powershell.exe -Command "python -m unittest '<ingest-skill-dir>\tests\test_harness_knowledge.py'"
108
+ powershell.exe -Command "python '<ingest-skill-dir>\scripts\harness_knowledge.py' query --project '<real-project-root>' --query '<真实需求>'"
109
+ ```
110
+
111
+ 确认输出中存在 `contextPack`、`planInput.kind=harness-knowledge-context-pack`,且 context pack 文件包含 `Before planning`。
112
+
113
+ ## P0 执行可信度规则
114
+
115
+ - 命令结果不得靠猜测;普通 Bash 被拒 → 立即改用等价 PowerShell 重试一次
116
+ - 仅 PowerShell 成功且有明确证据(构建/git/测试输出、文件存在、exit 0)时可标 ✅OK;否则 ❌FAIL 或 🟡WARN
117
+ - 禁止把 hook 拒绝、静态验证、无输出、用户跳过说成成功 → 详见 [[../protocols/powershell-protocol.md|powershell-protocol]]、[[../protocols/evidence-based-reporting-protocol.md|evidence-based-reporting-protocol]]
118
+
119
+ ## Output Format
120
+
121
+ 执行完成后展示:
122
+
123
+ - 用户需求原文与生效的过滤条件(`--file`/`--status`/`--type`/`--limit`)。
124
+ - `matchCount` 与按状态分组的命中数(active/candidate/stale/superseded/conflicted)。
125
+ - `contextPack` 路径与 `latest.json` 指针。
126
+ - 命中 stale/superseded/conflicted 时显式提示风险。
127
+ - 下一步建议(context pack 已就绪 → 进入 `/harness-plan`;索引过期 → 先 `sync --update`)。
128
+
129
+ ## 渐进披露
130
+
131
+ - 本 skill 暂无 `checklist.md` / `reference.md` 支持文件,规则全部在 SKILL.md。若 Output Contract / Interpretation Rules 后续扩展变重,应拆到 `reference.md`。
132
+
133
+ ## 交互白名单
134
+
135
+ **无** AskUserQuestion;`stale`/`conflicted` 命中记 `issue`,不阻断 query。
136
+
137
+ ## 执行日志
138
+
139
+ `events.ndjson` 为唯一事实源(schema_version 2,`note` 承载人类可读摘要);`logs/execution-log.md` 由 `harness_events.py` 渲染,**禁止手工 Edit**。结构 → [[../protocols/report-pipeline-protocol.md|report-pipeline-protocol]]
140
+
141
+ ```powershell
142
+ python <skills-root>/scripts/harness_events.py append --change-dir ".harness/changes/<change-name>" --phase <phase> --type phase.start --note "<触发指令>"
143
+ ```
144
+
145
+ > **脚本接线**:`harness_events.py append`;`harness_archive.py finalize`;`harness_preflight.py check`;`harness_ledger.py can-reuse`;`harness_service.py ensure/stop`(须 `--files`/`serviceStart.inputFiles`)。JSON 输出按 D13 护栏解读。
146
+
147
+ > **Task 4 §6.1 写入契约**:普通 `append` = 加锁 -> 追加一行 -> fsync -> 解锁,**不 load 历史、不渲染**(O(1),跨进程锁 `events.ndjson.lock`,UUID 用完整 `uuid4().hex` 无需去重扫描)。仅 `--type phase.end` append 在追加成功后渲染一次 `execution-log.md`;显式 `harness_events.py render` 随时从完整 events 重建;`harness_archive.py finalize` 在 collect 前强制 render 一次。高频 command append 期间 log 可能滞后,phase 边界保持最新。
@@ -0,0 +1,69 @@
1
+ ---
2
+ name: harness-package
3
+ description: 增量模块打包:拉取最新→编译验证→mvn package→汇总 jar/war。使用场景:打包、package、发版准备
4
+ ---
5
+ <!-- generated by harness_deploy.py; core=9a7af3c66acaad35; overlay=java; agent=codex; do not edit -->
6
+ # harness-package — 增量模块打包(Java overlay)
7
+
8
+ ## Purpose
9
+
10
+ 基于 final pushed commit 识别变更模块 → 增量 `mvn package` → 汇总 jar/war 路径与大小。
11
+
12
+ > 默认时序:`submit → package → archive`。test 已通过且 ledger 有效时可 `-DskipTests`。
13
+
14
+ ## When to Use
15
+
16
+ - submit 已推送,准备发版打包
17
+ - 触发语:"打包""package""发版准备"
18
+
19
+ ## 前置条件
20
+
21
+ - 推荐已完成 `/harness-submit`;`baseCommit` 以 submit 最终 hash 为准
22
+ - test 报告存在或 ledger 可复用;读 `meta/worktree.json` 决定 worktree 目录
23
+
24
+ ## 统一读取协议
25
+
26
+ 1. **`.harness/changes/<change-name>/` 是唯一真相源** — 所有输入从该目录读取,产物写入对应子目录
27
+ 2. **change-name 优先从 frontmatter 读取** — `spec/*-design.md`、`plans/*-plan.md` 的 YAML `change-name`
28
+ 3. **frontmatter 缺失时兼容旧格式** — 从路径推断,标记 `🟡 legacy-plan`,不失败
29
+ 4. **spec** — 设计真相源:`spec/<change>-design.md`
30
+ 5. **plan** — 任务真相源:`plans/<change>-plan.md`
31
+ 6. **implementation-detail** — 自适应执行参考;legacy 缺失 🟡WARN,不阻断
32
+ 7. **test-scenarios** — 测试真相源:`plans/<change>-test-scenarios.md`
33
+ 8. **禁止读取 `docs/superpowers/` 作为正式输入** — 旧草稿仅人工线索
34
+
35
+ 状态目录分层:新路径优先,旧路径兼容 → [[../protocols/state-layout-protocol.md|state-layout-protocol]]
36
+
37
+ ## Workflow
38
+
39
+ 1. 读 ledger + build-profile 的 `buildCommands.package`
40
+ 2. 识别变更模块(git diff + pom 结构)
41
+ 3. `mvn package -DskipTests`(ledger 不可复用时先跑必要测试)
42
+ 4. 写打包报告 + append 事件
43
+
44
+ ## P0 执行可信度规则
45
+
46
+ - 命令结果不得靠猜测;普通 Bash 被拒 → 立即改用等价 PowerShell 重试一次
47
+ - 仅 PowerShell 成功且有明确证据(构建/git/测试输出、文件存在、exit 0)时可标 ✅OK;否则 ❌FAIL 或 🟡WARN
48
+ - 禁止把 hook 拒绝、静态验证、无输出、用户跳过说成成功 → 详见 [[../protocols/powershell-protocol.md|powershell-protocol]]、[[../protocols/evidence-based-reporting-protocol.md|evidence-based-reporting-protocol]]
49
+
50
+ ## 渐进披露
51
+
52
+ - **Read `reference.md`** — 模块识别与报告格式
53
+ - **Read `checklist.md`** — 逐步勾选
54
+
55
+ ## 交互白名单
56
+
57
+ **无** AskUserQuestion;冲突/失败记 `issue`/`decision`。
58
+
59
+ ## 执行日志
60
+
61
+ `events.ndjson` 为唯一事实源(schema_version 2,`note` 承载人类可读摘要);`logs/execution-log.md` 由 `harness_events.py` 渲染,**禁止手工 Edit**。结构 → [[../protocols/report-pipeline-protocol.md|report-pipeline-protocol]]
62
+
63
+ ```powershell
64
+ python <skills-root>/scripts/harness_events.py append --change-dir ".harness/changes/<change-name>" --phase <phase> --type phase.start --note "<触发指令>"
65
+ ```
66
+
67
+ > **脚本接线**:`harness_events.py append`;`harness_archive.py finalize`;`harness_preflight.py check`;`harness_ledger.py can-reuse`;`harness_service.py ensure/stop`(须 `--files`/`serviceStart.inputFiles`)。JSON 输出按 D13 护栏解读。
68
+
69
+ > **Task 4 §6.1 写入契约**:普通 `append` = 加锁 -> 追加一行 -> fsync -> 解锁,**不 load 历史、不渲染**(O(1),跨进程锁 `events.ndjson.lock`,UUID 用完整 `uuid4().hex` 无需去重扫描)。仅 `--type phase.end` append 在追加成功后渲染一次 `execution-log.md`;显式 `harness_events.py render` 随时从完整 events 重建;`harness_archive.py finalize` 在 collect 前强制 render 一次。高频 command append 期间 log 可能滞后,phase 边界保持最新。