@harness-engineering/cli 1.13.0 → 1.14.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.
- package/dist/agents/skills/claude-code/add-harness-component/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/align-documentation/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/check-mechanical-constraints/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/cleanup-dead-code/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/detect-doc-drift/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/enforce-architecture/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-accessibility/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-api-design/SKILL.md +304 -0
- package/dist/agents/skills/claude-code/harness-api-design/skill.yaml +74 -0
- package/dist/agents/skills/claude-code/harness-architecture-advisor/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-auth/SKILL.md +279 -0
- package/dist/agents/skills/claude-code/harness-auth/skill.yaml +81 -0
- package/dist/agents/skills/claude-code/harness-autopilot/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-brainstorming/SKILL.md +39 -0
- package/dist/agents/skills/claude-code/harness-brainstorming/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-caching/SKILL.md +309 -0
- package/dist/agents/skills/claude-code/harness-caching/skill.yaml +73 -0
- package/dist/agents/skills/claude-code/harness-chaos/SKILL.md +295 -0
- package/dist/agents/skills/claude-code/harness-chaos/skill.yaml +72 -0
- package/dist/agents/skills/claude-code/harness-code-review/SKILL.md +44 -0
- package/dist/agents/skills/claude-code/harness-code-review/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-codebase-cleanup/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-compliance/SKILL.md +303 -0
- package/dist/agents/skills/claude-code/harness-compliance/skill.yaml +78 -0
- package/dist/agents/skills/claude-code/harness-containerization/SKILL.md +284 -0
- package/dist/agents/skills/claude-code/harness-containerization/skill.yaml +80 -0
- package/dist/agents/skills/claude-code/harness-data-pipeline/SKILL.md +274 -0
- package/dist/agents/skills/claude-code/harness-data-pipeline/skill.yaml +81 -0
- package/dist/agents/skills/claude-code/harness-data-validation/SKILL.md +343 -0
- package/dist/agents/skills/claude-code/harness-data-validation/skill.yaml +75 -0
- package/dist/agents/skills/claude-code/harness-database/SKILL.md +258 -0
- package/dist/agents/skills/claude-code/harness-database/skill.yaml +80 -0
- package/dist/agents/skills/claude-code/harness-debugging/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-dependency-health/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-deployment/SKILL.md +255 -0
- package/dist/agents/skills/claude-code/harness-deployment/skill.yaml +77 -0
- package/dist/agents/skills/claude-code/harness-design/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-design-mobile/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-design-system/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-design-web/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-diagnostics/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-docs-pipeline/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-dx/SKILL.md +276 -0
- package/dist/agents/skills/claude-code/harness-dx/skill.yaml +76 -0
- package/dist/agents/skills/claude-code/harness-e2e/SKILL.md +245 -0
- package/dist/agents/skills/claude-code/harness-e2e/skill.yaml +78 -0
- package/dist/agents/skills/claude-code/harness-event-driven/SKILL.md +280 -0
- package/dist/agents/skills/claude-code/harness-event-driven/skill.yaml +77 -0
- package/dist/agents/skills/claude-code/harness-execution/SKILL.md +44 -0
- package/dist/agents/skills/claude-code/harness-execution/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-feature-flags/SKILL.md +287 -0
- package/dist/agents/skills/claude-code/harness-feature-flags/skill.yaml +74 -0
- package/dist/agents/skills/claude-code/harness-git-workflow/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-hotspot-detector/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-i18n/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-i18n-process/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-i18n-workflow/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-impact-analysis/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-incident-response/SKILL.md +223 -0
- package/dist/agents/skills/claude-code/harness-incident-response/skill.yaml +78 -0
- package/dist/agents/skills/claude-code/harness-infrastructure-as-code/SKILL.md +279 -0
- package/dist/agents/skills/claude-code/harness-infrastructure-as-code/skill.yaml +80 -0
- package/dist/agents/skills/claude-code/harness-integration-test/SKILL.md +271 -0
- package/dist/agents/skills/claude-code/harness-integration-test/skill.yaml +73 -0
- package/dist/agents/skills/claude-code/harness-integrity/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-knowledge-mapper/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-load-testing/SKILL.md +274 -0
- package/dist/agents/skills/claude-code/harness-load-testing/skill.yaml +79 -0
- package/dist/agents/skills/claude-code/harness-ml-ops/SKILL.md +341 -0
- package/dist/agents/skills/claude-code/harness-ml-ops/skill.yaml +79 -0
- package/dist/agents/skills/claude-code/harness-mobile-patterns/SKILL.md +326 -0
- package/dist/agents/skills/claude-code/harness-mobile-patterns/skill.yaml +82 -0
- package/dist/agents/skills/claude-code/harness-mutation-test/SKILL.md +251 -0
- package/dist/agents/skills/claude-code/harness-mutation-test/skill.yaml +70 -0
- package/dist/agents/skills/claude-code/harness-observability/SKILL.md +283 -0
- package/dist/agents/skills/claude-code/harness-observability/skill.yaml +78 -0
- package/dist/agents/skills/claude-code/harness-onboarding/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-parallel-agents/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-perf/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-perf-tdd/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-planning/SKILL.md +39 -0
- package/dist/agents/skills/claude-code/harness-planning/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-pre-commit-review/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-product-spec/SKILL.md +285 -0
- package/dist/agents/skills/claude-code/harness-product-spec/skill.yaml +72 -0
- package/dist/agents/skills/claude-code/harness-property-test/SKILL.md +281 -0
- package/dist/agents/skills/claude-code/harness-property-test/skill.yaml +71 -0
- package/dist/agents/skills/claude-code/harness-refactoring/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-release-readiness/SKILL.md +3 -3
- package/dist/agents/skills/claude-code/harness-release-readiness/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-resilience/SKILL.md +255 -0
- package/dist/agents/skills/claude-code/harness-resilience/skill.yaml +76 -0
- package/dist/agents/skills/claude-code/harness-roadmap/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-secrets/SKILL.md +293 -0
- package/dist/agents/skills/claude-code/harness-secrets/skill.yaml +76 -0
- package/dist/agents/skills/claude-code/harness-security-review/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-security-scan/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-skill-authoring/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-soundness-review/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-sql-review/SKILL.md +315 -0
- package/dist/agents/skills/claude-code/harness-sql-review/skill.yaml +74 -0
- package/dist/agents/skills/claude-code/harness-state-management/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-tdd/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-test-advisor/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-test-data/SKILL.md +268 -0
- package/dist/agents/skills/claude-code/harness-test-data/skill.yaml +74 -0
- package/dist/agents/skills/claude-code/harness-ux-copy/SKILL.md +271 -0
- package/dist/agents/skills/claude-code/harness-ux-copy/skill.yaml +77 -0
- package/dist/agents/skills/claude-code/harness-verification/SKILL.md +35 -0
- package/dist/agents/skills/claude-code/harness-verification/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-verify/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/harness-visual-regression/SKILL.md +257 -0
- package/dist/agents/skills/claude-code/harness-visual-regression/skill.yaml +74 -0
- package/dist/agents/skills/claude-code/initialize-harness-project/SKILL.md +11 -3
- package/dist/agents/skills/claude-code/initialize-harness-project/skill.yaml +1 -0
- package/dist/agents/skills/claude-code/validate-context-engineering/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/add-harness-component/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/align-documentation/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/check-mechanical-constraints/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/cleanup-dead-code/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/detect-doc-drift/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/enforce-architecture/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-accessibility/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-api-design/SKILL.md +304 -0
- package/dist/agents/skills/gemini-cli/harness-api-design/skill.yaml +74 -0
- package/dist/agents/skills/gemini-cli/harness-architecture-advisor/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-auth/SKILL.md +279 -0
- package/dist/agents/skills/gemini-cli/harness-auth/skill.yaml +81 -0
- package/dist/agents/skills/gemini-cli/harness-autopilot/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-brainstorming/SKILL.md +39 -0
- package/dist/agents/skills/gemini-cli/harness-brainstorming/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-caching/SKILL.md +309 -0
- package/dist/agents/skills/gemini-cli/harness-caching/skill.yaml +73 -0
- package/dist/agents/skills/gemini-cli/harness-chaos/SKILL.md +295 -0
- package/dist/agents/skills/gemini-cli/harness-chaos/skill.yaml +72 -0
- package/dist/agents/skills/gemini-cli/harness-code-review/SKILL.md +44 -0
- package/dist/agents/skills/gemini-cli/harness-code-review/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-codebase-cleanup/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-compliance/SKILL.md +303 -0
- package/dist/agents/skills/gemini-cli/harness-compliance/skill.yaml +78 -0
- package/dist/agents/skills/gemini-cli/harness-containerization/SKILL.md +284 -0
- package/dist/agents/skills/gemini-cli/harness-containerization/skill.yaml +80 -0
- package/dist/agents/skills/gemini-cli/harness-data-pipeline/SKILL.md +274 -0
- package/dist/agents/skills/gemini-cli/harness-data-pipeline/skill.yaml +81 -0
- package/dist/agents/skills/gemini-cli/harness-data-validation/SKILL.md +343 -0
- package/dist/agents/skills/gemini-cli/harness-data-validation/skill.yaml +75 -0
- package/dist/agents/skills/gemini-cli/harness-database/SKILL.md +258 -0
- package/dist/agents/skills/gemini-cli/harness-database/skill.yaml +80 -0
- package/dist/agents/skills/gemini-cli/harness-debugging/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-dependency-health/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-deployment/SKILL.md +255 -0
- package/dist/agents/skills/gemini-cli/harness-deployment/skill.yaml +77 -0
- package/dist/agents/skills/gemini-cli/harness-design/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-design-mobile/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-design-system/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-design-web/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-diagnostics/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-docs-pipeline/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-dx/SKILL.md +276 -0
- package/dist/agents/skills/gemini-cli/harness-dx/skill.yaml +76 -0
- package/dist/agents/skills/gemini-cli/harness-e2e/SKILL.md +245 -0
- package/dist/agents/skills/gemini-cli/harness-e2e/skill.yaml +78 -0
- package/dist/agents/skills/gemini-cli/harness-event-driven/SKILL.md +280 -0
- package/dist/agents/skills/gemini-cli/harness-event-driven/skill.yaml +77 -0
- package/dist/agents/skills/gemini-cli/harness-execution/SKILL.md +44 -0
- package/dist/agents/skills/gemini-cli/harness-execution/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-feature-flags/SKILL.md +287 -0
- package/dist/agents/skills/gemini-cli/harness-feature-flags/skill.yaml +74 -0
- package/dist/agents/skills/gemini-cli/harness-git-workflow/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-hotspot-detector/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-i18n/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-i18n-process/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-i18n-workflow/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-impact-analysis/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-incident-response/SKILL.md +223 -0
- package/dist/agents/skills/gemini-cli/harness-incident-response/skill.yaml +78 -0
- package/dist/agents/skills/gemini-cli/harness-infrastructure-as-code/SKILL.md +279 -0
- package/dist/agents/skills/gemini-cli/harness-infrastructure-as-code/skill.yaml +80 -0
- package/dist/agents/skills/gemini-cli/harness-integration-test/SKILL.md +271 -0
- package/dist/agents/skills/gemini-cli/harness-integration-test/skill.yaml +73 -0
- package/dist/agents/skills/gemini-cli/harness-integrity/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-knowledge-mapper/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-load-testing/SKILL.md +274 -0
- package/dist/agents/skills/gemini-cli/harness-load-testing/skill.yaml +79 -0
- package/dist/agents/skills/gemini-cli/harness-ml-ops/SKILL.md +341 -0
- package/dist/agents/skills/gemini-cli/harness-ml-ops/skill.yaml +79 -0
- package/dist/agents/skills/gemini-cli/harness-mobile-patterns/SKILL.md +326 -0
- package/dist/agents/skills/gemini-cli/harness-mobile-patterns/skill.yaml +82 -0
- package/dist/agents/skills/gemini-cli/harness-mutation-test/SKILL.md +251 -0
- package/dist/agents/skills/gemini-cli/harness-mutation-test/skill.yaml +70 -0
- package/dist/agents/skills/gemini-cli/harness-observability/SKILL.md +283 -0
- package/dist/agents/skills/gemini-cli/harness-observability/skill.yaml +78 -0
- package/dist/agents/skills/gemini-cli/harness-onboarding/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-parallel-agents/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-perf/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-perf-tdd/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-planning/SKILL.md +39 -0
- package/dist/agents/skills/gemini-cli/harness-planning/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-pre-commit-review/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-product-spec/SKILL.md +285 -0
- package/dist/agents/skills/gemini-cli/harness-product-spec/skill.yaml +72 -0
- package/dist/agents/skills/gemini-cli/harness-property-test/SKILL.md +281 -0
- package/dist/agents/skills/gemini-cli/harness-property-test/skill.yaml +71 -0
- package/dist/agents/skills/gemini-cli/harness-refactoring/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-release-readiness/SKILL.md +3 -3
- package/dist/agents/skills/gemini-cli/harness-release-readiness/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-resilience/SKILL.md +255 -0
- package/dist/agents/skills/gemini-cli/harness-resilience/skill.yaml +76 -0
- package/dist/agents/skills/gemini-cli/harness-roadmap/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-secrets/SKILL.md +293 -0
- package/dist/agents/skills/gemini-cli/harness-secrets/skill.yaml +76 -0
- package/dist/agents/skills/gemini-cli/harness-security-review/SKILL.md +240 -0
- package/dist/agents/skills/gemini-cli/harness-security-review/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-security-scan/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-skill-authoring/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-soundness-review/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-sql-review/SKILL.md +315 -0
- package/dist/agents/skills/gemini-cli/harness-sql-review/skill.yaml +74 -0
- package/dist/agents/skills/gemini-cli/harness-state-management/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-tdd/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-test-advisor/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-test-data/SKILL.md +268 -0
- package/dist/agents/skills/gemini-cli/harness-test-data/skill.yaml +74 -0
- package/dist/agents/skills/gemini-cli/harness-ux-copy/SKILL.md +271 -0
- package/dist/agents/skills/gemini-cli/harness-ux-copy/skill.yaml +77 -0
- package/dist/agents/skills/gemini-cli/harness-verification/SKILL.md +35 -0
- package/dist/agents/skills/gemini-cli/harness-verification/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-verify/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/harness-visual-regression/SKILL.md +257 -0
- package/dist/agents/skills/gemini-cli/harness-visual-regression/skill.yaml +74 -0
- package/dist/agents/skills/gemini-cli/initialize-harness-project/SKILL.md +11 -3
- package/dist/agents/skills/gemini-cli/initialize-harness-project/skill.yaml +1 -0
- package/dist/agents/skills/gemini-cli/validate-context-engineering/skill.yaml +1 -0
- package/dist/agents-md-YTYQDA3P.js +8 -0
- package/dist/{architecture-ESOOE26S.js → architecture-JQZYM4US.js} +4 -4
- package/dist/bin/harness-mcp.js +16 -15
- package/dist/bin/harness.js +31 -30
- package/dist/{check-phase-gate-S2MZKLFQ.js → check-phase-gate-L3RADYWO.js} +4 -3
- package/dist/{chunk-WPPDRIJL.js → chunk-3C2MLBPJ.js} +4 -4
- package/dist/chunk-6KTUUFRN.js +217 -0
- package/dist/{chunk-MI5XJQDY.js → chunk-7IP4JIFL.js} +24 -10
- package/dist/{chunk-C2ERUR3L.js → chunk-7MJAPE3Z.js} +165 -49
- package/dist/{chunk-KELT6K6M.js → chunk-ABQHQ6I5.js} +1861 -1418
- package/dist/{chunk-L2KLU56K.js → chunk-AOZRDOIP.js} +2 -2
- package/dist/{chunk-QPEH2QPG.js → chunk-DBSOCI3G.js} +53 -54
- package/dist/{chunk-MHBMTPW7.js → chunk-ERS5EVUZ.js} +9 -0
- package/dist/{chunk-JSTQ3AWB.js → chunk-FIAPHX37.js} +1 -1
- package/dist/{chunk-2YPZKGAG.js → chunk-FTMXDOR6.js} +1 -1
- package/dist/{chunk-72GHBOL2.js → chunk-GZKSBLQL.js} +1 -1
- package/dist/{chunk-K6XAPGML.js → chunk-H7Y5CKTM.js} +1 -1
- package/dist/{chunk-HD4IBGLA.js → chunk-N5G5QMS3.js} +24 -1
- package/dist/{chunk-LD3DKUK5.js → chunk-NLVUVUGD.js} +1 -1
- package/dist/{chunk-3KOLLWWE.js → chunk-O5OJVPL6.js} +26 -211
- package/dist/{chunk-NKDM3FMH.js → chunk-OD3S2NHN.js} +1 -1
- package/dist/{chunk-5VY23YK3.js → chunk-OSXBPAMK.js} +2 -2
- package/dist/{chunk-MACVXDZK.js → chunk-OXLLOSSR.js} +45 -47
- package/dist/{chunk-GNGELAXY.js → chunk-RCWZBSK5.js} +2 -2
- package/dist/{chunk-PSNN4LWX.js → chunk-S2FXOWOR.js} +3 -3
- package/dist/{chunk-VUCPTQ6G.js → chunk-SD3SQOZ2.js} +1 -1
- package/dist/{chunk-7PZWR4LI.js → chunk-TPOTOBR7.js} +9 -9
- package/dist/{chunk-RZSUJBZZ.js → chunk-XKECDXJS.js} +452 -353
- package/dist/{chunk-VRFZWGMS.js → chunk-XYLGHKG6.js} +5 -1
- package/dist/{chunk-6N4R6FVX.js → chunk-YBJ262QL.js} +1 -1
- package/dist/{chunk-2VU4MFM3.js → chunk-YPYGXRDR.js} +7 -7
- package/dist/{chunk-Q6AB7W5Z.js → chunk-YQ6KC6TE.js} +1 -1
- package/dist/{chunk-7KQSUZVG.js → chunk-YZD2MRNQ.js} +1528 -1010
- package/dist/ci-workflow-EQZFVX3P.js +8 -0
- package/dist/{create-skill-WPXHSLX2.js → create-skill-XSWHMSM5.js} +2 -2
- package/dist/{dist-M6BQODWC.js → dist-B26DFXMP.js} +573 -480
- package/dist/{dist-L7LAAQAS.js → dist-DZ63LLUD.js} +1 -1
- package/dist/{dist-WF4C7A4A.js → dist-HWXF2C3R.js} +18 -2
- package/dist/{dist-D4RYGUZE.js → dist-USY2C5JL.js} +3 -1
- package/dist/{docs-BPYCN2DR.js → docs-7ECGYMAV.js} +5 -3
- package/dist/engine-EG4EH4IX.js +8 -0
- package/dist/{entropy-4VDVV5CR.js → entropy-5USWKLVS.js} +3 -3
- package/dist/{feedback-63QB5RCA.js → feedback-UTBXZZHF.js} +1 -1
- package/dist/{generate-agent-definitions-QABOJG56.js → generate-agent-definitions-3PM5EU7V.js} +5 -5
- package/dist/{glob-helper-5OHBUQAI.js → glob-helper-R5FXNUPS.js} +1 -1
- package/dist/{graph-loader-KO4GJ5N2.js → graph-loader-2M2HXDQI.js} +1 -1
- package/dist/index.d.ts +183 -17
- package/dist/index.js +32 -30
- package/dist/loader-ZPALXIVR.js +10 -0
- package/dist/mcp-362EZHF4.js +35 -0
- package/dist/{performance-26BH47O4.js → performance-OQAFMJUD.js} +3 -3
- package/dist/{review-pipeline-GHR3WFBI.js → review-pipeline-C4GCFVGP.js} +1 -1
- package/dist/runtime-7YLVK453.js +9 -0
- package/dist/{security-UQFUZXEN.js → security-PZOX7AQS.js} +1 -1
- package/dist/skill-executor-XZLYZYAK.js +8 -0
- package/dist/templates/axum/Cargo.toml.hbs +8 -0
- package/dist/templates/axum/src/main.rs +12 -0
- package/dist/templates/axum/template.json +16 -0
- package/dist/templates/django/manage.py.hbs +19 -0
- package/dist/templates/django/requirements.txt.hbs +1 -0
- package/dist/templates/django/src/settings.py.hbs +44 -0
- package/dist/templates/django/src/urls.py +6 -0
- package/dist/templates/django/src/wsgi.py.hbs +9 -0
- package/dist/templates/django/template.json +21 -0
- package/dist/templates/express/package.json.hbs +15 -0
- package/dist/templates/express/src/app.ts +12 -0
- package/dist/templates/express/src/lib/.gitkeep +0 -0
- package/dist/templates/express/template.json +16 -0
- package/dist/templates/fastapi/requirements.txt.hbs +2 -0
- package/dist/templates/fastapi/src/main.py +8 -0
- package/dist/templates/fastapi/template.json +20 -0
- package/dist/templates/gin/go.mod.hbs +5 -0
- package/dist/templates/gin/main.go +15 -0
- package/dist/templates/gin/template.json +19 -0
- package/dist/templates/go-base/.golangci.yml +16 -0
- package/dist/templates/go-base/AGENTS.md.hbs +35 -0
- package/dist/templates/go-base/go.mod.hbs +3 -0
- package/dist/templates/go-base/harness.config.json.hbs +17 -0
- package/dist/templates/go-base/main.go +7 -0
- package/dist/templates/go-base/template.json +14 -0
- package/dist/templates/java-base/AGENTS.md.hbs +35 -0
- package/dist/templates/java-base/checkstyle.xml +20 -0
- package/dist/templates/java-base/harness.config.json.hbs +16 -0
- package/dist/templates/java-base/pom.xml.hbs +39 -0
- package/dist/templates/java-base/src/main/java/App.java.hbs +5 -0
- package/dist/templates/java-base/template.json +13 -0
- package/dist/templates/nestjs/nest-cli.json +5 -0
- package/dist/templates/nestjs/package.json.hbs +18 -0
- package/dist/templates/nestjs/src/app.module.ts +8 -0
- package/dist/templates/nestjs/src/lib/.gitkeep +0 -0
- package/dist/templates/nestjs/src/main.ts +11 -0
- package/dist/templates/nestjs/template.json +16 -0
- package/dist/templates/nextjs/template.json +15 -1
- package/dist/templates/python-base/.python-version +1 -0
- package/dist/templates/python-base/AGENTS.md.hbs +32 -0
- package/dist/templates/python-base/harness.config.json.hbs +16 -0
- package/dist/templates/python-base/pyproject.toml.hbs +18 -0
- package/dist/templates/python-base/ruff.toml +5 -0
- package/dist/templates/python-base/src/__init__.py +0 -0
- package/dist/templates/python-base/template.json +13 -0
- package/dist/templates/react-vite/index.html +12 -0
- package/dist/templates/react-vite/package.json.hbs +18 -0
- package/dist/templates/react-vite/src/App.tsx +7 -0
- package/dist/templates/react-vite/src/lib/.gitkeep +0 -0
- package/dist/templates/react-vite/src/main.tsx +9 -0
- package/dist/templates/react-vite/template.json +19 -0
- package/dist/templates/react-vite/vite.config.ts +6 -0
- package/dist/templates/rust-base/AGENTS.md.hbs +35 -0
- package/dist/templates/rust-base/Cargo.toml.hbs +6 -0
- package/dist/templates/rust-base/clippy.toml +2 -0
- package/dist/templates/rust-base/harness.config.json.hbs +17 -0
- package/dist/templates/rust-base/src/main.rs +3 -0
- package/dist/templates/rust-base/template.json +14 -0
- package/dist/templates/spring-boot/pom.xml.hbs +50 -0
- package/dist/templates/spring-boot/src/main/java/Application.java.hbs +19 -0
- package/dist/templates/spring-boot/template.json +15 -0
- package/dist/templates/vue/index.html +12 -0
- package/dist/templates/vue/package.json.hbs +16 -0
- package/dist/templates/vue/src/App.vue +7 -0
- package/dist/templates/vue/src/lib/.gitkeep +0 -0
- package/dist/templates/vue/src/main.ts +4 -0
- package/dist/templates/vue/template.json +19 -0
- package/dist/templates/vue/vite.config.ts +6 -0
- package/dist/{validate-N7QJOKFZ.js → validate-FD3Z6VJD.js} +4 -4
- package/dist/validate-cross-check-WNJM6H2D.js +8 -0
- package/package.json +6 -6
- package/dist/agents-md-P2RHSUV7.js +0 -8
- package/dist/ci-workflow-4NYBUG6R.js +0 -8
- package/dist/engine-LXLIWQQ3.js +0 -8
- package/dist/loader-Z2IT7QX3.js +0 -10
- package/dist/mcp-KQHEL5IF.js +0 -34
- package/dist/runtime-PDWD7UIK.js +0 -9
- package/dist/skill-executor-RG45LUO5.js +0 -8
- package/dist/validate-cross-check-EDQ5QGTM.js +0 -8
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createHarnessServer,
|
|
3
|
+
getToolDefinitions,
|
|
4
|
+
startServer
|
|
5
|
+
} from "./chunk-YZD2MRNQ.js";
|
|
6
|
+
import "./chunk-OXLLOSSR.js";
|
|
7
|
+
import "./chunk-YPYGXRDR.js";
|
|
8
|
+
import "./chunk-TPOTOBR7.js";
|
|
9
|
+
import "./chunk-OSXBPAMK.js";
|
|
10
|
+
import "./chunk-NLVUVUGD.js";
|
|
11
|
+
import "./chunk-ZOAWBDWU.js";
|
|
12
|
+
import "./chunk-S2FXOWOR.js";
|
|
13
|
+
import "./chunk-FTMXDOR6.js";
|
|
14
|
+
import "./chunk-3C2MLBPJ.js";
|
|
15
|
+
import {
|
|
16
|
+
resolveProjectConfig
|
|
17
|
+
} from "./chunk-H7Y5CKTM.js";
|
|
18
|
+
import "./chunk-7IP4JIFL.js";
|
|
19
|
+
import "./chunk-O5OJVPL6.js";
|
|
20
|
+
import {
|
|
21
|
+
resultToMcpResponse
|
|
22
|
+
} from "./chunk-IDZNPTYD.js";
|
|
23
|
+
import "./chunk-W6Y7ZW3Y.js";
|
|
24
|
+
import "./chunk-N5G5QMS3.js";
|
|
25
|
+
import "./chunk-3WGJMBKH.js";
|
|
26
|
+
import "./chunk-XYLGHKG6.js";
|
|
27
|
+
import "./chunk-ABQHQ6I5.js";
|
|
28
|
+
import "./chunk-ERS5EVUZ.js";
|
|
29
|
+
export {
|
|
30
|
+
createHarnessServer,
|
|
31
|
+
getToolDefinitions,
|
|
32
|
+
resolveProjectConfig,
|
|
33
|
+
resultToMcpResponse,
|
|
34
|
+
startServer
|
|
35
|
+
};
|
|
@@ -7,11 +7,11 @@ import {
|
|
|
7
7
|
handleGetPerfBaselines,
|
|
8
8
|
handleUpdatePerfBaselines,
|
|
9
9
|
updatePerfBaselinesDefinition
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-YPYGXRDR.js";
|
|
11
11
|
import "./chunk-IDZNPTYD.js";
|
|
12
12
|
import "./chunk-W6Y7ZW3Y.js";
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-ABQHQ6I5.js";
|
|
14
|
+
import "./chunk-ERS5EVUZ.js";
|
|
15
15
|
export {
|
|
16
16
|
checkPerformanceDefinition,
|
|
17
17
|
getCriticalPathsDefinition,
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
use axum::{routing::get, Router};
|
|
2
|
+
|
|
3
|
+
async fn root() -> &'static str {
|
|
4
|
+
"Hello, world!"
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
#[tokio::main]
|
|
8
|
+
async fn main() {
|
|
9
|
+
let app = Router::new().route("/", get(root));
|
|
10
|
+
let listener = tokio::net::TcpListener::bind("127.0.0.1:3000").await.unwrap();
|
|
11
|
+
axum::serve(listener, app).await.unwrap();
|
|
12
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "axum",
|
|
3
|
+
"description": "Axum web framework scaffold",
|
|
4
|
+
"version": 1,
|
|
5
|
+
"language": "rust",
|
|
6
|
+
"framework": "axum",
|
|
7
|
+
"extends": "rust-base",
|
|
8
|
+
"tooling": {
|
|
9
|
+
"packageManager": "cargo",
|
|
10
|
+
"linter": "clippy",
|
|
11
|
+
"formatter": "rustfmt",
|
|
12
|
+
"buildTool": "cargo",
|
|
13
|
+
"testRunner": "cargo test"
|
|
14
|
+
},
|
|
15
|
+
"detect": [{ "file": "Cargo.toml", "contains": "axum" }]
|
|
16
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
"""Django's command-line utility for administrative tasks."""
|
|
3
|
+
import os
|
|
4
|
+
import sys
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
def main():
|
|
8
|
+
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "{{projectName}}.settings")
|
|
9
|
+
try:
|
|
10
|
+
from django.core.management import execute_from_command_line
|
|
11
|
+
except ImportError as exc:
|
|
12
|
+
raise ImportError(
|
|
13
|
+
"Couldn't import Django. Are you sure it's installed?"
|
|
14
|
+
) from exc
|
|
15
|
+
execute_from_command_line(sys.argv)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
if __name__ == "__main__":
|
|
19
|
+
main()
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
django>=4.2
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"""Django settings for {{projectName}} project."""
|
|
2
|
+
|
|
3
|
+
import os
|
|
4
|
+
from pathlib import Path
|
|
5
|
+
|
|
6
|
+
BASE_DIR = Path(__file__).resolve().parent.parent
|
|
7
|
+
|
|
8
|
+
SECRET_KEY = os.environ.get("DJANGO_SECRET_KEY", "dev-only-insecure-key-change-in-production")
|
|
9
|
+
|
|
10
|
+
DEBUG = True
|
|
11
|
+
|
|
12
|
+
ALLOWED_HOSTS = []
|
|
13
|
+
|
|
14
|
+
INSTALLED_APPS = [
|
|
15
|
+
"django.contrib.admin",
|
|
16
|
+
"django.contrib.auth",
|
|
17
|
+
"django.contrib.contenttypes",
|
|
18
|
+
"django.contrib.sessions",
|
|
19
|
+
"django.contrib.messages",
|
|
20
|
+
"django.contrib.staticfiles",
|
|
21
|
+
]
|
|
22
|
+
|
|
23
|
+
MIDDLEWARE = [
|
|
24
|
+
"django.middleware.security.SecurityMiddleware",
|
|
25
|
+
"django.contrib.sessions.middleware.SessionMiddleware",
|
|
26
|
+
"django.middleware.common.CommonMiddleware",
|
|
27
|
+
"django.middleware.csrf.CsrfViewMiddleware",
|
|
28
|
+
"django.contrib.auth.middleware.AuthenticationMiddleware",
|
|
29
|
+
"django.contrib.messages.middleware.MessageMiddleware",
|
|
30
|
+
"django.middleware.clickjacking.XFrameOptionsMiddleware",
|
|
31
|
+
]
|
|
32
|
+
|
|
33
|
+
ROOT_URLCONF = "{{projectName}}.urls"
|
|
34
|
+
|
|
35
|
+
WSGI_APPLICATION = "{{projectName}}.wsgi.application"
|
|
36
|
+
|
|
37
|
+
DATABASES = {
|
|
38
|
+
"default": {
|
|
39
|
+
"ENGINE": "django.db.backends.sqlite3",
|
|
40
|
+
"NAME": BASE_DIR / "db.sqlite3",
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField"
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "django",
|
|
3
|
+
"description": "Django web framework scaffold",
|
|
4
|
+
"version": 1,
|
|
5
|
+
"language": "python",
|
|
6
|
+
"framework": "django",
|
|
7
|
+
"extends": "python-base",
|
|
8
|
+
"tooling": {
|
|
9
|
+
"packageManager": "pip",
|
|
10
|
+
"linter": "ruff",
|
|
11
|
+
"formatter": "ruff",
|
|
12
|
+
"buildTool": "setuptools",
|
|
13
|
+
"testRunner": "pytest",
|
|
14
|
+
"lockFile": "requirements.txt"
|
|
15
|
+
},
|
|
16
|
+
"detect": [
|
|
17
|
+
{ "file": "requirements.txt", "contains": "django" },
|
|
18
|
+
{ "file": "pyproject.toml", "contains": "django" },
|
|
19
|
+
{ "file": "manage.py", "contains": "django" }
|
|
20
|
+
]
|
|
21
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "{{projectName}}",
|
|
3
|
+
"scripts": {
|
|
4
|
+
"dev": "tsx watch src/app.ts",
|
|
5
|
+
"build": "tsc",
|
|
6
|
+
"start": "node dist/app.js"
|
|
7
|
+
},
|
|
8
|
+
"dependencies": {
|
|
9
|
+
"express": "^4.0.0"
|
|
10
|
+
},
|
|
11
|
+
"devDependencies": {
|
|
12
|
+
"@types/express": "^4.0.0",
|
|
13
|
+
"tsx": "^4.0.0"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import express from 'express';
|
|
2
|
+
|
|
3
|
+
const app = express();
|
|
4
|
+
const port = process.env.PORT || 3000;
|
|
5
|
+
|
|
6
|
+
app.get('/', (_req, res) => {
|
|
7
|
+
res.json({ message: 'Welcome to your Harness Engineering project' });
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
app.listen(port, () => {
|
|
11
|
+
console.log(`Server running on port ${port}`);
|
|
12
|
+
});
|
|
File without changes
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "express",
|
|
3
|
+
"description": "Express.js framework overlay",
|
|
4
|
+
"framework": "express",
|
|
5
|
+
"version": 1,
|
|
6
|
+
"language": "typescript",
|
|
7
|
+
"tooling": {
|
|
8
|
+
"packageManager": "npm",
|
|
9
|
+
"linter": "eslint",
|
|
10
|
+
"formatter": "prettier",
|
|
11
|
+
"buildTool": "tsc",
|
|
12
|
+
"testRunner": "vitest",
|
|
13
|
+
"lockFile": "package-lock.json"
|
|
14
|
+
},
|
|
15
|
+
"detect": [{ "file": "package.json", "contains": "express" }]
|
|
16
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "fastapi",
|
|
3
|
+
"description": "FastAPI web framework scaffold",
|
|
4
|
+
"version": 1,
|
|
5
|
+
"language": "python",
|
|
6
|
+
"framework": "fastapi",
|
|
7
|
+
"extends": "python-base",
|
|
8
|
+
"tooling": {
|
|
9
|
+
"packageManager": "pip",
|
|
10
|
+
"linter": "ruff",
|
|
11
|
+
"formatter": "ruff",
|
|
12
|
+
"buildTool": "setuptools",
|
|
13
|
+
"testRunner": "pytest",
|
|
14
|
+
"lockFile": "requirements.txt"
|
|
15
|
+
},
|
|
16
|
+
"detect": [
|
|
17
|
+
{ "file": "requirements.txt", "contains": "fastapi" },
|
|
18
|
+
{ "file": "pyproject.toml", "contains": "fastapi" }
|
|
19
|
+
]
|
|
20
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "gin",
|
|
3
|
+
"description": "Gin web framework scaffold",
|
|
4
|
+
"version": 1,
|
|
5
|
+
"language": "go",
|
|
6
|
+
"framework": "gin",
|
|
7
|
+
"extends": "go-base",
|
|
8
|
+
"tooling": {
|
|
9
|
+
"packageManager": "go",
|
|
10
|
+
"linter": "golangci-lint",
|
|
11
|
+
"formatter": "gofmt",
|
|
12
|
+
"buildTool": "go",
|
|
13
|
+
"testRunner": "go test"
|
|
14
|
+
},
|
|
15
|
+
"detect": [
|
|
16
|
+
{ "file": "go.mod", "contains": "gin-gonic" },
|
|
17
|
+
{ "file": "go.sum", "contains": "gin-gonic" }
|
|
18
|
+
]
|
|
19
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# {{projectName}} Knowledge Map
|
|
2
|
+
|
|
3
|
+
## About This Project
|
|
4
|
+
|
|
5
|
+
{{projectName}} -- A Go project managed with Harness Engineering practices.
|
|
6
|
+
|
|
7
|
+
## Language & Tooling
|
|
8
|
+
|
|
9
|
+
- **Language:** Go
|
|
10
|
+
- **Module:** {{goModulePath}}
|
|
11
|
+
- **Linter:** golangci-lint
|
|
12
|
+
- **Formatter:** gofmt
|
|
13
|
+
- **Test runner:** go test
|
|
14
|
+
|
|
15
|
+
## Directory Structure
|
|
16
|
+
|
|
17
|
+
- `main.go` -- Application entry point
|
|
18
|
+
- `go.mod` -- Module definition and dependencies
|
|
19
|
+
- `internal/` -- Private application packages (by convention)
|
|
20
|
+
- `pkg/` -- Public library packages (by convention)
|
|
21
|
+
|
|
22
|
+
## Conventions
|
|
23
|
+
|
|
24
|
+
- Follow Effective Go guidelines
|
|
25
|
+
- Use `gofmt` for formatting (enforced by golangci-lint)
|
|
26
|
+
- Tests live alongside source files as `_test.go` suffix
|
|
27
|
+
- Error handling: always check returned errors, never discard
|
|
28
|
+
- Package names are lowercase, single-word, no underscores
|
|
29
|
+
|
|
30
|
+
## Harness Skills
|
|
31
|
+
|
|
32
|
+
- Use `harness-brainstorming` for design exploration
|
|
33
|
+
- Use `harness-planning` to break features into atomic tasks
|
|
34
|
+
- Use `harness-execution` to implement tasks with TDD
|
|
35
|
+
- Refer to `harness.config.json` for project tooling configuration
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 1,
|
|
3
|
+
"name": "{{projectName}}",
|
|
4
|
+
"agentsMapPath": "./AGENTS.md",
|
|
5
|
+
"docsDir": "./docs",
|
|
6
|
+
"template": {
|
|
7
|
+
"language": "go",
|
|
8
|
+
"version": 1
|
|
9
|
+
},
|
|
10
|
+
"tooling": {
|
|
11
|
+
"packageManager": "go",
|
|
12
|
+
"linter": "golangci-lint",
|
|
13
|
+
"formatter": "gofmt",
|
|
14
|
+
"buildTool": "go",
|
|
15
|
+
"testRunner": "go test"
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "go-base",
|
|
3
|
+
"description": "Go language base scaffold with golangci-lint",
|
|
4
|
+
"version": 1,
|
|
5
|
+
"language": "go",
|
|
6
|
+
"tooling": {
|
|
7
|
+
"packageManager": "go",
|
|
8
|
+
"linter": "golangci-lint",
|
|
9
|
+
"formatter": "gofmt",
|
|
10
|
+
"buildTool": "go",
|
|
11
|
+
"testRunner": "go test"
|
|
12
|
+
},
|
|
13
|
+
"mergeStrategy": { "json": "deep-merge", "files": "overlay-wins" }
|
|
14
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# {{projectName}} Knowledge Map
|
|
2
|
+
|
|
3
|
+
## About This Project
|
|
4
|
+
|
|
5
|
+
{{projectName}} -- A Java project managed with Harness Engineering practices.
|
|
6
|
+
|
|
7
|
+
## Language & Tooling
|
|
8
|
+
|
|
9
|
+
- **Language:** Java 17
|
|
10
|
+
- **Build tool:** Maven
|
|
11
|
+
- **Linter:** Checkstyle
|
|
12
|
+
- **Test runner:** JUnit 5
|
|
13
|
+
- **Group ID:** {{javaGroupId}}
|
|
14
|
+
|
|
15
|
+
## Directory Structure
|
|
16
|
+
|
|
17
|
+
- `src/main/java/` -- Application source code
|
|
18
|
+
- `src/test/java/` -- Test files (JUnit 5)
|
|
19
|
+
- `pom.xml` -- Maven project configuration
|
|
20
|
+
- `checkstyle.xml` -- Code style rules
|
|
21
|
+
|
|
22
|
+
## Conventions
|
|
23
|
+
|
|
24
|
+
- Follow Google Java Style Guide (Checkstyle enforced)
|
|
25
|
+
- Use Java 17 language features
|
|
26
|
+
- Tests live in `src/test/java/` mirroring `src/main/java/` structure
|
|
27
|
+
- Use JUnit 5 assertions and lifecycle annotations
|
|
28
|
+
- Prefer dependency injection over static methods
|
|
29
|
+
|
|
30
|
+
## Harness Skills
|
|
31
|
+
|
|
32
|
+
- Use `harness-brainstorming` for design exploration
|
|
33
|
+
- Use `harness-planning` to break features into atomic tasks
|
|
34
|
+
- Use `harness-execution` to implement tasks with TDD
|
|
35
|
+
- Refer to `harness.config.json` for project tooling configuration
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<?xml version="1.0"?>
|
|
2
|
+
<!DOCTYPE module PUBLIC
|
|
3
|
+
"-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
|
|
4
|
+
"https://checkstyle.org/dtds/configuration_1_3.dtd">
|
|
5
|
+
<module name="Checker">
|
|
6
|
+
<property name="charset" value="UTF-8"/>
|
|
7
|
+
<module name="TreeWalker">
|
|
8
|
+
<module name="WhitespaceAround"/>
|
|
9
|
+
<module name="NeedBraces"/>
|
|
10
|
+
<module name="LeftCurly"/>
|
|
11
|
+
<module name="RightCurly"/>
|
|
12
|
+
<module name="EmptyBlock"/>
|
|
13
|
+
<module name="AvoidStarImport"/>
|
|
14
|
+
<module name="UnusedImports"/>
|
|
15
|
+
</module>
|
|
16
|
+
<module name="FileLength">
|
|
17
|
+
<property name="max" value="500"/>
|
|
18
|
+
</module>
|
|
19
|
+
<module name="NewlineAtEndOfFile"/>
|
|
20
|
+
</module>
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 1,
|
|
3
|
+
"name": "{{projectName}}",
|
|
4
|
+
"agentsMapPath": "./AGENTS.md",
|
|
5
|
+
"docsDir": "./docs",
|
|
6
|
+
"template": {
|
|
7
|
+
"language": "java",
|
|
8
|
+
"version": 1
|
|
9
|
+
},
|
|
10
|
+
"tooling": {
|
|
11
|
+
"packageManager": "maven",
|
|
12
|
+
"linter": "checkstyle",
|
|
13
|
+
"buildTool": "maven",
|
|
14
|
+
"testRunner": "junit"
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
3
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
4
|
+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
5
|
+
<modelVersion>4.0.0</modelVersion>
|
|
6
|
+
|
|
7
|
+
<groupId>{{javaGroupId}}</groupId>
|
|
8
|
+
<artifactId>{{projectName}}</artifactId>
|
|
9
|
+
<version>0.1.0</version>
|
|
10
|
+
<packaging>jar</packaging>
|
|
11
|
+
|
|
12
|
+
<properties>
|
|
13
|
+
<maven.compiler.source>17</maven.compiler.source>
|
|
14
|
+
<maven.compiler.target>17</maven.compiler.target>
|
|
15
|
+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
16
|
+
</properties>
|
|
17
|
+
|
|
18
|
+
<dependencies>
|
|
19
|
+
<dependency>
|
|
20
|
+
<groupId>org.junit.jupiter</groupId>
|
|
21
|
+
<artifactId>junit-jupiter</artifactId>
|
|
22
|
+
<version>5.10.0</version>
|
|
23
|
+
<scope>test</scope>
|
|
24
|
+
</dependency>
|
|
25
|
+
</dependencies>
|
|
26
|
+
|
|
27
|
+
<build>
|
|
28
|
+
<plugins>
|
|
29
|
+
<plugin>
|
|
30
|
+
<groupId>org.apache.maven.plugins</groupId>
|
|
31
|
+
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
32
|
+
<version>3.3.0</version>
|
|
33
|
+
<configuration>
|
|
34
|
+
<configLocation>checkstyle.xml</configLocation>
|
|
35
|
+
</configuration>
|
|
36
|
+
</plugin>
|
|
37
|
+
</plugins>
|
|
38
|
+
</build>
|
|
39
|
+
</project>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "java-base",
|
|
3
|
+
"description": "Java language base scaffold with Checkstyle and Maven",
|
|
4
|
+
"version": 1,
|
|
5
|
+
"language": "java",
|
|
6
|
+
"tooling": {
|
|
7
|
+
"packageManager": "maven",
|
|
8
|
+
"linter": "checkstyle",
|
|
9
|
+
"buildTool": "maven",
|
|
10
|
+
"testRunner": "junit"
|
|
11
|
+
},
|
|
12
|
+
"mergeStrategy": { "json": "deep-merge", "files": "overlay-wins" }
|
|
13
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "{{projectName}}",
|
|
3
|
+
"scripts": {
|
|
4
|
+
"dev": "nest start --watch",
|
|
5
|
+
"build": "nest build",
|
|
6
|
+
"start": "node dist/main.js"
|
|
7
|
+
},
|
|
8
|
+
"dependencies": {
|
|
9
|
+
"@nestjs/common": "^10.0.0",
|
|
10
|
+
"@nestjs/core": "^10.0.0",
|
|
11
|
+
"@nestjs/platform-express": "^10.0.0",
|
|
12
|
+
"reflect-metadata": "^0.2.0",
|
|
13
|
+
"rxjs": "^7.0.0"
|
|
14
|
+
},
|
|
15
|
+
"devDependencies": {
|
|
16
|
+
"@nestjs/cli": "^10.0.0"
|
|
17
|
+
}
|
|
18
|
+
}
|
|
File without changes
|