@dommaker/harness 0.8.3 → 0.10.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/README.md +138 -186
- package/bin/harness.js +123 -61
- package/dist/agents/index.d.ts +3 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/index.js +19 -0
- package/dist/agents/index.js.map +1 -0
- package/dist/agents/lifecycle.d.ts +68 -0
- package/dist/agents/lifecycle.d.ts.map +1 -0
- package/dist/agents/lifecycle.js +181 -0
- package/dist/agents/lifecycle.js.map +1 -0
- package/dist/agents/types.d.ts +42 -0
- package/dist/agents/types.d.ts.map +1 -0
- package/dist/agents/types.js +6 -0
- package/dist/agents/types.js.map +1 -0
- package/dist/architecture/constraint-engine.d.ts +18 -0
- package/dist/architecture/constraint-engine.d.ts.map +1 -1
- package/dist/architecture/constraint-engine.js +101 -9
- package/dist/architecture/constraint-engine.js.map +1 -1
- package/dist/architecture/cross-project-checker.d.ts +19 -1
- package/dist/architecture/cross-project-checker.d.ts.map +1 -1
- package/dist/architecture/cross-project-checker.js +242 -80
- package/dist/architecture/cross-project-checker.js.map +1 -1
- package/dist/cli/commands/acceptance.d.ts.map +1 -1
- package/dist/cli/commands/acceptance.js +1 -0
- package/dist/cli/commands/acceptance.js.map +1 -1
- package/dist/cli/commands/check.d.ts.map +1 -1
- package/dist/cli/commands/check.js +184 -75
- package/dist/cli/commands/check.js.map +1 -1
- package/dist/cli/commands/command.d.ts +10 -3
- package/dist/cli/commands/command.d.ts.map +1 -1
- package/dist/cli/commands/command.js +7 -71
- package/dist/cli/commands/command.js.map +1 -1
- package/dist/cli/commands/failure.d.ts +28 -0
- package/dist/cli/commands/failure.d.ts.map +1 -0
- package/dist/cli/commands/failure.js +132 -0
- package/dist/cli/commands/failure.js.map +1 -0
- package/dist/cli/commands/flow.d.ts +2 -0
- package/dist/cli/commands/flow.d.ts.map +1 -1
- package/dist/cli/commands/flow.js +38 -3
- package/dist/cli/commands/flow.js.map +1 -1
- package/dist/cli/commands/index.d.ts +4 -1
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +14 -3
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init.d.ts +2 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +251 -1
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/knowledge.d.ts +41 -0
- package/dist/cli/commands/knowledge.d.ts.map +1 -0
- package/dist/cli/commands/knowledge.js +195 -0
- package/dist/cli/commands/knowledge.js.map +1 -0
- package/dist/cli/commands/passes-gate.d.ts.map +1 -1
- package/dist/cli/commands/passes-gate.js +2 -4
- package/dist/cli/commands/passes-gate.js.map +1 -1
- package/dist/cli/commands/report.d.ts +1 -1
- package/dist/cli/commands/report.d.ts.map +1 -1
- package/dist/cli/commands/report.js +57 -70
- package/dist/cli/commands/report.js.map +1 -1
- package/dist/cli/commands/review.d.ts.map +1 -1
- package/dist/cli/commands/review.js +27 -63
- package/dist/cli/commands/review.js.map +1 -1
- package/dist/cli/commands/security.d.ts +1 -1
- package/dist/cli/commands/security.d.ts.map +1 -1
- package/dist/cli/commands/security.js +42 -82
- package/dist/cli/commands/security.js.map +1 -1
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +2 -2
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/commands/sync-docs.d.ts +21 -0
- package/dist/cli/commands/sync-docs.d.ts.map +1 -0
- package/dist/cli/commands/sync-docs.js +564 -0
- package/dist/cli/commands/sync-docs.js.map +1 -0
- package/dist/constraints/definitions.d.ts +39 -0
- package/dist/constraints/definitions.d.ts.map +1 -0
- package/dist/constraints/definitions.js +71 -0
- package/dist/constraints/definitions.js.map +1 -0
- package/dist/constraints/index.d.ts +4 -0
- package/dist/constraints/index.d.ts.map +1 -0
- package/dist/constraints/index.js +20 -0
- package/dist/constraints/index.js.map +1 -0
- package/dist/constraints/lifecycle-runner.d.ts +52 -0
- package/dist/constraints/lifecycle-runner.d.ts.map +1 -0
- package/dist/constraints/lifecycle-runner.js +151 -0
- package/dist/constraints/lifecycle-runner.js.map +1 -0
- package/dist/constraints/quality.d.ts +11 -0
- package/dist/constraints/quality.d.ts.map +1 -0
- package/dist/constraints/quality.js +257 -0
- package/dist/constraints/quality.js.map +1 -0
- package/dist/constraints/registry.d.ts +26 -0
- package/dist/constraints/registry.d.ts.map +1 -0
- package/dist/constraints/registry.js +128 -0
- package/dist/constraints/registry.js.map +1 -0
- package/dist/constraints/safety.d.ts +13 -0
- package/dist/constraints/safety.d.ts.map +1 -0
- package/dist/constraints/safety.js +103 -0
- package/dist/constraints/safety.js.map +1 -0
- package/dist/constraints/types.d.ts +53 -0
- package/dist/constraints/types.d.ts.map +1 -0
- package/dist/constraints/types.js +8 -0
- package/dist/constraints/types.js.map +1 -0
- package/dist/context/compaction.d.ts +57 -0
- package/dist/context/compaction.d.ts.map +1 -0
- package/dist/context/compaction.js +166 -0
- package/dist/context/compaction.js.map +1 -0
- package/dist/context/file-budget.d.ts +40 -0
- package/dist/context/file-budget.d.ts.map +1 -0
- package/dist/context/file-budget.js +147 -0
- package/dist/context/file-budget.js.map +1 -0
- package/dist/context/index.d.ts +15 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/context/index.js +31 -0
- package/dist/context/index.js.map +1 -0
- package/dist/context/knowledge-injector.d.ts +49 -0
- package/dist/context/knowledge-injector.d.ts.map +1 -0
- package/dist/context/knowledge-injector.js +122 -0
- package/dist/context/knowledge-injector.js.map +1 -0
- package/dist/context/progressive-loader.d.ts +0 -1
- package/dist/context/progressive-loader.d.ts.map +1 -1
- package/dist/context/progressive-loader.js +15 -32
- package/dist/context/progressive-loader.js.map +1 -1
- package/dist/context/session-manager.d.ts +67 -0
- package/dist/context/session-manager.d.ts.map +1 -0
- package/dist/context/session-manager.js +275 -0
- package/dist/context/session-manager.js.map +1 -0
- package/dist/context/token-pipeline.d.ts +55 -0
- package/dist/context/token-pipeline.d.ts.map +1 -0
- package/dist/context/token-pipeline.js +220 -0
- package/dist/context/token-pipeline.js.map +1 -0
- package/dist/context/tool-output-budget.d.ts +59 -0
- package/dist/context/tool-output-budget.d.ts.map +1 -0
- package/dist/context/tool-output-budget.js +177 -0
- package/dist/context/tool-output-budget.js.map +1 -0
- package/dist/context/types.d.ts +113 -0
- package/dist/context/types.d.ts.map +1 -0
- package/dist/context/types.js +30 -0
- package/dist/context/types.js.map +1 -0
- package/dist/core/constraints/checker.d.ts +25 -1
- package/dist/core/constraints/checker.d.ts.map +1 -1
- package/dist/core/constraints/checker.js +244 -162
- package/dist/core/constraints/checker.js.map +1 -1
- package/dist/core/constraints/default-executors.d.ts +10 -0
- package/dist/core/constraints/default-executors.d.ts.map +1 -0
- package/dist/core/constraints/default-executors.js +120 -0
- package/dist/core/constraints/default-executors.js.map +1 -0
- package/dist/core/constraints/definitions.d.ts.map +1 -1
- package/dist/core/constraints/definitions.js +92 -10
- package/dist/core/constraints/definitions.js.map +1 -1
- package/dist/core/constraints/interceptor.d.ts.map +1 -1
- package/dist/core/constraints/interceptor.js +5 -6
- package/dist/core/constraints/interceptor.js.map +1 -1
- package/dist/core/project-config-loader.d.ts.map +1 -1
- package/dist/core/project-config-loader.js +12 -30
- package/dist/core/project-config-loader.js.map +1 -1
- package/dist/core/session/clean-state.d.ts.map +1 -1
- package/dist/core/session/clean-state.js +9 -7
- package/dist/core/session/clean-state.js.map +1 -1
- package/dist/core/session/startup.d.ts.map +1 -1
- package/dist/core/session/startup.js +3 -5
- package/dist/core/session/startup.js.map +1 -1
- package/dist/core/spec/validator.d.ts.map +1 -1
- package/dist/core/spec/validator.js +2 -4
- package/dist/core/spec/validator.js.map +1 -1
- package/dist/core/validators/checkpoint.d.ts.map +1 -1
- package/dist/core/validators/checkpoint.js +3 -5
- package/dist/core/validators/checkpoint.js.map +1 -1
- package/dist/core/validators/passes-gate.d.ts +0 -4
- package/dist/core/validators/passes-gate.d.ts.map +1 -1
- package/dist/core/validators/passes-gate.js +5 -13
- package/dist/core/validators/passes-gate.js.map +1 -1
- package/dist/dashboard/data.d.ts +39 -0
- package/dist/dashboard/data.d.ts.map +1 -0
- package/dist/dashboard/data.js +89 -0
- package/dist/dashboard/data.js.map +1 -0
- package/dist/dashboard/index.d.ts +4 -0
- package/dist/dashboard/index.d.ts.map +1 -0
- package/dist/dashboard/index.js +20 -0
- package/dist/dashboard/index.js.map +1 -0
- package/dist/dashboard/stats.d.ts +20 -0
- package/dist/dashboard/stats.d.ts.map +1 -0
- package/dist/dashboard/stats.js +115 -0
- package/dist/dashboard/stats.js.map +1 -0
- package/dist/dashboard/types.d.ts +98 -0
- package/dist/dashboard/types.d.ts.map +1 -0
- package/dist/dashboard/types.js +8 -0
- package/dist/dashboard/types.js.map +1 -0
- package/dist/failure/recorder.d.ts +4 -0
- package/dist/failure/recorder.d.ts.map +1 -1
- package/dist/failure/recorder.js +9 -11
- package/dist/failure/recorder.js.map +1 -1
- package/dist/gates/acceptance.d.ts.map +1 -1
- package/dist/gates/acceptance.js +2 -4
- package/dist/gates/acceptance.js.map +1 -1
- package/dist/gates/contract.d.ts.map +1 -1
- package/dist/gates/contract.js +0 -3
- package/dist/gates/contract.js.map +1 -1
- package/dist/gates/performance.d.ts.map +1 -1
- package/dist/gates/performance.js +3 -5
- package/dist/gates/performance.js.map +1 -1
- package/dist/gates/review.d.ts.map +1 -1
- package/dist/gates/review.js +4 -6
- package/dist/gates/review.js.map +1 -1
- package/dist/gates/security.d.ts.map +1 -1
- package/dist/gates/security.js +2 -4
- package/dist/gates/security.js.map +1 -1
- package/dist/governance/executor.d.ts +45 -0
- package/dist/governance/executor.d.ts.map +1 -0
- package/dist/governance/executor.js +237 -0
- package/dist/governance/executor.js.map +1 -0
- package/dist/governance/index.d.ts +9 -0
- package/dist/governance/index.d.ts.map +1 -0
- package/dist/governance/index.js +13 -0
- package/dist/governance/index.js.map +1 -0
- package/dist/governance/types.d.ts +46 -0
- package/dist/governance/types.d.ts.map +1 -0
- package/dist/governance/types.js +9 -0
- package/dist/governance/types.js.map +1 -0
- package/dist/index.d.ts +28 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +56 -14
- package/dist/index.js.map +1 -1
- package/dist/knowledge/import.d.ts +95 -0
- package/dist/knowledge/import.d.ts.map +1 -0
- package/dist/knowledge/import.js +429 -0
- package/dist/knowledge/import.js.map +1 -0
- package/dist/knowledge/index.d.ts +15 -0
- package/dist/knowledge/index.d.ts.map +1 -0
- package/dist/knowledge/index.js +40 -0
- package/dist/knowledge/index.js.map +1 -0
- package/dist/knowledge/ingest.d.ts +30 -0
- package/dist/knowledge/ingest.d.ts.map +1 -0
- package/dist/knowledge/ingest.js +94 -0
- package/dist/knowledge/ingest.js.map +1 -0
- package/dist/knowledge/lifecycle-hooks.d.ts +62 -0
- package/dist/knowledge/lifecycle-hooks.d.ts.map +1 -0
- package/dist/knowledge/lifecycle-hooks.js +140 -0
- package/dist/knowledge/lifecycle-hooks.js.map +1 -0
- package/dist/knowledge/lifecycle.d.ts +43 -0
- package/dist/knowledge/lifecycle.d.ts.map +1 -0
- package/dist/knowledge/lifecycle.js +141 -0
- package/dist/knowledge/lifecycle.js.map +1 -0
- package/dist/knowledge/lint.d.ts +57 -0
- package/dist/knowledge/lint.d.ts.map +1 -0
- package/dist/knowledge/lint.js +235 -0
- package/dist/knowledge/lint.js.map +1 -0
- package/dist/knowledge/query.d.ts +33 -0
- package/dist/knowledge/query.d.ts.map +1 -0
- package/dist/knowledge/query.js +107 -0
- package/dist/knowledge/query.js.map +1 -0
- package/dist/knowledge/reference-tracker.d.ts +31 -0
- package/dist/knowledge/reference-tracker.d.ts.map +1 -0
- package/dist/knowledge/reference-tracker.js +124 -0
- package/dist/knowledge/reference-tracker.js.map +1 -0
- package/dist/knowledge/store.d.ts +42 -0
- package/dist/knowledge/store.d.ts.map +1 -0
- package/dist/knowledge/store.js +280 -0
- package/dist/knowledge/store.js.map +1 -0
- package/dist/knowledge/types.d.ts +103 -0
- package/dist/knowledge/types.d.ts.map +1 -0
- package/dist/knowledge/types.js +17 -0
- package/dist/knowledge/types.js.map +1 -0
- package/dist/llm/adapter.d.ts +36 -0
- package/dist/llm/adapter.d.ts.map +1 -0
- package/dist/llm/adapter.js +118 -0
- package/dist/llm/adapter.js.map +1 -0
- package/dist/llm/index.d.ts +3 -0
- package/dist/llm/index.d.ts.map +1 -0
- package/dist/llm/index.js +19 -0
- package/dist/llm/index.js.map +1 -0
- package/dist/llm/types.d.ts +62 -0
- package/dist/llm/types.d.ts.map +1 -0
- package/dist/llm/types.js +8 -0
- package/dist/llm/types.js.map +1 -0
- package/dist/monitoring/constraint-doctor.d.ts +16 -3
- package/dist/monitoring/constraint-doctor.d.ts.map +1 -1
- package/dist/monitoring/constraint-doctor.js +84 -9
- package/dist/monitoring/constraint-doctor.js.map +1 -1
- package/dist/monitoring/context-tracker.d.ts +38 -0
- package/dist/monitoring/context-tracker.d.ts.map +1 -0
- package/dist/monitoring/context-tracker.js +162 -0
- package/dist/monitoring/context-tracker.js.map +1 -0
- package/dist/monitoring/index.d.ts +3 -0
- package/dist/monitoring/index.d.ts.map +1 -1
- package/dist/monitoring/index.js +6 -0
- package/dist/monitoring/index.js.map +1 -1
- package/dist/monitoring/knowledge-doctor.d.ts +78 -0
- package/dist/monitoring/knowledge-doctor.d.ts.map +1 -0
- package/dist/monitoring/knowledge-doctor.js +266 -0
- package/dist/monitoring/knowledge-doctor.js.map +1 -0
- package/dist/monitoring/knowledge-evolver.d.ts +72 -0
- package/dist/monitoring/knowledge-evolver.d.ts.map +1 -0
- package/dist/monitoring/knowledge-evolver.js +205 -0
- package/dist/monitoring/knowledge-evolver.js.map +1 -0
- package/dist/monitoring/performance-analyzer.d.ts.map +1 -1
- package/dist/monitoring/performance-analyzer.js +10 -4
- package/dist/monitoring/performance-analyzer.js.map +1 -1
- package/dist/monitoring/trace-analyzer.d.ts.map +1 -1
- package/dist/monitoring/trace-analyzer.js +12 -5
- package/dist/monitoring/trace-analyzer.js.map +1 -1
- package/dist/safety/index.d.ts +6 -0
- package/dist/safety/index.d.ts.map +1 -0
- package/dist/safety/index.js +22 -0
- package/dist/safety/index.js.map +1 -0
- package/dist/safety/input-guardrail.d.ts +36 -0
- package/dist/safety/input-guardrail.d.ts.map +1 -0
- package/dist/safety/input-guardrail.js +118 -0
- package/dist/safety/input-guardrail.js.map +1 -0
- package/dist/safety/output-guardrail.d.ts +40 -0
- package/dist/safety/output-guardrail.d.ts.map +1 -0
- package/dist/safety/output-guardrail.js +150 -0
- package/dist/safety/output-guardrail.js.map +1 -0
- package/dist/safety/sandbox.d.ts +45 -0
- package/dist/safety/sandbox.d.ts.map +1 -0
- package/dist/safety/sandbox.js +134 -0
- package/dist/safety/sandbox.js.map +1 -0
- package/dist/safety/tool-guardrail.d.ts +51 -0
- package/dist/safety/tool-guardrail.d.ts.map +1 -0
- package/dist/safety/tool-guardrail.js +147 -0
- package/dist/safety/tool-guardrail.js.map +1 -0
- package/dist/safety/types.d.ts +104 -0
- package/dist/safety/types.d.ts.map +1 -0
- package/dist/safety/types.js +6 -0
- package/dist/safety/types.js.map +1 -0
- package/dist/tools/core/index.d.ts +13 -0
- package/dist/tools/core/index.d.ts.map +1 -0
- package/dist/tools/core/index.js +198 -0
- package/dist/tools/core/index.js.map +1 -0
- package/dist/tools/definitions/core/code/fingerprint.sh +273 -0
- package/dist/tools/definitions/core/code/fingerprint.yml +72 -0
- package/dist/tools/definitions/core/code/parse.yml +68 -0
- package/dist/tools/definitions/core/code/register-language.sh +475 -0
- package/dist/tools/definitions/core/code/register-language.yml +74 -0
- package/dist/tools/definitions/core/docker/build.yml +73 -0
- package/dist/tools/definitions/core/docker/run.yml +81 -0
- package/dist/tools/definitions/core/file/copy.yml +88 -0
- package/dist/tools/definitions/core/file/read.yml +69 -0
- package/dist/tools/definitions/core/file/write.yml +75 -0
- package/dist/tools/definitions/core/git/branch.yml +61 -0
- package/dist/tools/definitions/core/git/cleanup-worktree.yml +50 -0
- package/dist/tools/definitions/core/git/clone.yml +69 -0
- package/dist/tools/definitions/core/git/commit.yml +65 -0
- package/dist/tools/definitions/core/git/push.yml +79 -0
- package/dist/tools/definitions/core/git/worktree.yml +96 -0
- package/dist/tools/definitions/core/notification/notify.sh +152 -0
- package/dist/tools/definitions/core/notification/notify.yml +60 -0
- package/dist/tools/definitions/core/npm/build.yml +75 -0
- package/dist/tools/definitions/core/npm/install.yml +58 -0
- package/dist/tools/definitions/core/npm/test.yml +75 -0
- package/dist/tools/definitions/core/validation/check-reuse.yml +170 -0
- package/dist/tools/definitions/core/validation/validate-handlers.yml +118 -0
- package/dist/tools/definitions/core/validation/validate-readme-stats.yml +155 -0
- package/dist/tools/definitions/core/validation/validate-yaml-syntax.yml +134 -0
- package/dist/tools/definitions/definitions/core/code/fingerprint.sh +273 -0
- package/dist/tools/definitions/definitions/core/code/fingerprint.yml +72 -0
- package/dist/tools/definitions/definitions/core/code/parse.yml +68 -0
- package/dist/tools/definitions/definitions/core/code/register-language.sh +475 -0
- package/dist/tools/definitions/definitions/core/code/register-language.yml +74 -0
- package/dist/tools/definitions/definitions/core/docker/build.yml +73 -0
- package/dist/tools/definitions/definitions/core/docker/run.yml +81 -0
- package/dist/tools/definitions/definitions/core/file/copy.yml +88 -0
- package/dist/tools/definitions/definitions/core/file/read.yml +69 -0
- package/dist/tools/definitions/definitions/core/file/write.yml +75 -0
- package/dist/tools/definitions/definitions/core/git/branch.yml +61 -0
- package/dist/tools/definitions/definitions/core/git/cleanup-worktree.yml +50 -0
- package/dist/tools/definitions/definitions/core/git/clone.yml +69 -0
- package/dist/tools/definitions/definitions/core/git/commit.yml +65 -0
- package/dist/tools/definitions/definitions/core/git/push.yml +79 -0
- package/dist/tools/definitions/definitions/core/git/worktree.yml +96 -0
- package/dist/tools/definitions/definitions/core/notification/notify.sh +152 -0
- package/dist/tools/definitions/definitions/core/notification/notify.yml +60 -0
- package/dist/tools/definitions/definitions/core/npm/build.yml +75 -0
- package/dist/tools/definitions/definitions/core/npm/install.yml +58 -0
- package/dist/tools/definitions/definitions/core/npm/test.yml +75 -0
- package/dist/tools/definitions/definitions/core/validation/check-reuse.yml +170 -0
- package/dist/tools/definitions/definitions/core/validation/validate-handlers.yml +118 -0
- package/dist/tools/definitions/definitions/core/validation/validate-readme-stats.yml +155 -0
- package/dist/tools/definitions/definitions/core/validation/validate-yaml-syntax.yml +134 -0
- package/dist/tools/definitions/definitions/ext/browser/browser-automate.sh +255 -0
- package/dist/tools/definitions/definitions/ext/browser/browser-automate.yml +166 -0
- package/dist/tools/definitions/definitions/ext/browser/browser-close.sh +104 -0
- package/dist/tools/definitions/definitions/ext/browser/browser-close.yml +55 -0
- package/dist/tools/definitions/definitions/ext/browser/browser-mcp-debug.sh +682 -0
- package/dist/tools/definitions/definitions/ext/browser/browser-mcp-debug.yml +167 -0
- package/dist/tools/definitions/definitions/ext/browser/browser-start.sh +101 -0
- package/dist/tools/definitions/definitions/ext/browser/browser-start.yml +62 -0
- package/dist/tools/definitions/definitions/registry.json +795 -0
- package/dist/tools/definitions/definitions/std/README.md +350 -0
- package/dist/tools/definitions/definitions/std/analysis/analyze-codebase.yml +72 -0
- package/dist/tools/definitions/definitions/std/analysis/analyze-diff.yml +182 -0
- package/dist/tools/definitions/definitions/std/analysis/analyze-git-diff.yml +70 -0
- package/dist/tools/definitions/definitions/std/analysis/analyze-impact.yml +78 -0
- package/dist/tools/definitions/definitions/std/analysis/analyze-requirements.yml +105 -0
- package/dist/tools/definitions/definitions/std/analysis/brainstorm-options.yml +106 -0
- package/dist/tools/definitions/definitions/std/analysis/build-graph.yml +154 -0
- package/dist/tools/definitions/definitions/std/analysis/clarify-requirements.yml +90 -0
- package/dist/tools/definitions/definitions/std/analysis/detect-context.yml +109 -0
- package/dist/tools/definitions/definitions/std/analysis/detect-layers.yml +125 -0
- package/dist/tools/definitions/definitions/std/analysis/generate-tour.yml +102 -0
- package/dist/tools/definitions/definitions/std/analysis/search-enhance.yml +105 -0
- package/dist/tools/definitions/definitions/std/backlog/add.yml +51 -0
- package/dist/tools/definitions/definitions/std/backlog/decide.yml +39 -0
- package/dist/tools/definitions/definitions/std/backlog/github-sync.yml +161 -0
- package/dist/tools/definitions/definitions/std/backlog/list.yml +53 -0
- package/dist/tools/definitions/definitions/std/backlog/load.yml +46 -0
- package/dist/tools/definitions/definitions/std/backlog/resolve.yml +37 -0
- package/dist/tools/definitions/definitions/std/backlog/update.yml +42 -0
- package/dist/tools/definitions/definitions/std/bugfix/diagnose.yml +68 -0
- package/dist/tools/definitions/definitions/std/bugfix/fix.yml +66 -0
- package/dist/tools/definitions/definitions/std/bugfix/verify.yml +69 -0
- package/dist/tools/definitions/definitions/std/constraint/check-decomposition.yml +103 -0
- package/dist/tools/definitions/definitions/std/constraint/check-feature-list.yml +77 -0
- package/dist/tools/definitions/definitions/std/constraint/check-progress.yml +97 -0
- package/dist/tools/definitions/definitions/std/constraint/generate-report.yml +147 -0
- package/dist/tools/definitions/definitions/std/deploy/commit-push.yml +33 -0
- package/dist/tools/definitions/definitions/std/deploy/deploy-backend.yml +37 -0
- package/dist/tools/definitions/definitions/std/deploy/deploy-frontend.yml +37 -0
- package/dist/tools/definitions/definitions/std/deploy/rollback.yml +148 -0
- package/dist/tools/definitions/definitions/std/design/analyze-architecture-impact.yml +113 -0
- package/dist/tools/definitions/definitions/std/design/design-api.yml +55 -0
- package/dist/tools/definitions/definitions/std/design/design-architecture.yml +97 -0
- package/dist/tools/definitions/definitions/std/design/design-db.yml +81 -0
- package/dist/tools/definitions/definitions/std/design/generate-spec.yml +182 -0
- package/dist/tools/definitions/definitions/std/development/develop-api.yml +85 -0
- package/dist/tools/definitions/definitions/std/development/develop-backend.yml +88 -0
- package/dist/tools/definitions/definitions/std/development/develop-frontend.yml +87 -0
- package/dist/tools/definitions/definitions/std/development/develop-shared-types.yml +74 -0
- package/dist/tools/definitions/definitions/std/development/develop-task.yml +122 -0
- package/dist/tools/definitions/definitions/std/development/develop-tests.yml +76 -0
- package/dist/tools/definitions/definitions/std/development/execute-batch.yml +152 -0
- package/dist/tools/definitions/definitions/std/development/fix-issues.yml +100 -0
- package/dist/tools/definitions/definitions/std/development/implement-task.yml +124 -0
- package/dist/tools/definitions/definitions/std/development/review-fix-cycle.yml +232 -0
- package/dist/tools/definitions/definitions/std/evolution/implement.yml +125 -0
- package/dist/tools/definitions/definitions/std/evolution/prioritize.yml +112 -0
- package/dist/tools/definitions/definitions/std/evolution/report-gap.yml +166 -0
- package/dist/tools/definitions/definitions/std/file/read.yml +21 -0
- package/dist/tools/definitions/definitions/std/governance/aggregate-opinions.sh +201 -0
- package/dist/tools/definitions/definitions/std/governance/aggregate-opinions.yml +79 -0
- package/dist/tools/definitions/definitions/std/governance/audit-task.yml +178 -0
- package/dist/tools/definitions/definitions/std/governance/cast-vote.yml +129 -0
- package/dist/tools/definitions/definitions/std/governance/collect-issues.yml +16 -0
- package/dist/tools/definitions/definitions/std/governance/create-signed-document.yml +23 -0
- package/dist/tools/definitions/definitions/std/governance/create-voting-session.yml +101 -0
- package/dist/tools/definitions/definitions/std/governance/define-stance.sh +243 -0
- package/dist/tools/definitions/definitions/std/governance/define-stance.yml +82 -0
- package/dist/tools/definitions/definitions/std/governance/generate-review-report.yml +23 -0
- package/dist/tools/definitions/definitions/std/governance/impeach.yml +179 -0
- package/dist/tools/definitions/definitions/std/governance/multi-stance-review.yml +154 -0
- package/dist/tools/definitions/definitions/std/governance/prepare-artifact.yml +20 -0
- package/dist/tools/definitions/definitions/std/governance/review-spec-approval.yml +262 -0
- package/dist/tools/definitions/definitions/std/governance/rollback.yml +186 -0
- package/dist/tools/definitions/definitions/std/governance/stance-review.yml +149 -0
- package/dist/tools/definitions/definitions/std/governance/track-effect.yml +199 -0
- package/dist/tools/definitions/definitions/std/governance/vote-tally.yml +144 -0
- package/dist/tools/definitions/definitions/std/patch/execute.yml +51 -0
- package/dist/tools/definitions/definitions/std/planning/generate-tasks.yml +36 -0
- package/dist/tools/definitions/definitions/std/planning/load-tasks.yml +44 -0
- package/dist/tools/definitions/definitions/std/planning/split-batch.yml +481 -0
- package/dist/tools/definitions/definitions/std/planning/split-tasks.yml +359 -0
- package/dist/tools/definitions/definitions/std/planning/update-tasks.yml +51 -0
- package/dist/tools/definitions/definitions/std/planning/validate-tasks.yml +46 -0
- package/dist/tools/definitions/definitions/std/project/decide-next-workflow.yml +38 -0
- package/dist/tools/definitions/definitions/std/project/load-state.yml +31 -0
- package/dist/tools/definitions/definitions/std/project/save-state.yml +32 -0
- package/dist/tools/definitions/definitions/std/quality/check-quality.yml +241 -0
- package/dist/tools/definitions/definitions/std/quality/debug-systematic.yml +163 -0
- package/dist/tools/definitions/definitions/std/quality/handle-feedback.yml +108 -0
- package/dist/tools/definitions/definitions/std/quality/review-code.yml +128 -0
- package/dist/tools/definitions/definitions/std/quality/review-spec.yml +140 -0
- package/dist/tools/definitions/definitions/std/quality/review-task.yml +190 -0
- package/dist/tools/definitions/definitions/std/quality/run-tests.yml +80 -0
- package/dist/tools/definitions/definitions/std/quick/analyze.yml +56 -0
- package/dist/tools/definitions/definitions/std/quick/implement.yml +67 -0
- package/dist/tools/definitions/definitions/std/quick/verify.yml +71 -0
- package/dist/tools/definitions/definitions/std/verification/verify_completion.yml +113 -0
- package/dist/tools/definitions/definitions/std/verification/wait-condition.yml +107 -0
- package/dist/tools/definitions/ext/browser/browser-automate.sh +255 -0
- package/dist/tools/definitions/ext/browser/browser-automate.yml +166 -0
- package/dist/tools/definitions/ext/browser/browser-close.sh +104 -0
- package/dist/tools/definitions/ext/browser/browser-close.yml +55 -0
- package/dist/tools/definitions/ext/browser/browser-mcp-debug.sh +682 -0
- package/dist/tools/definitions/ext/browser/browser-mcp-debug.yml +167 -0
- package/dist/tools/definitions/ext/browser/browser-start.sh +101 -0
- package/dist/tools/definitions/ext/browser/browser-start.yml +62 -0
- package/dist/tools/definitions/registry.json +795 -0
- package/dist/tools/definitions/std/README.md +350 -0
- package/dist/tools/definitions/std/analysis/analyze-codebase.yml +72 -0
- package/dist/tools/definitions/std/analysis/analyze-diff.yml +182 -0
- package/dist/tools/definitions/std/analysis/analyze-git-diff.yml +70 -0
- package/dist/tools/definitions/std/analysis/analyze-impact.yml +78 -0
- package/dist/tools/definitions/std/analysis/analyze-requirements.yml +105 -0
- package/dist/tools/definitions/std/analysis/brainstorm-options.yml +106 -0
- package/dist/tools/definitions/std/analysis/build-graph.yml +154 -0
- package/dist/tools/definitions/std/analysis/clarify-requirements.yml +90 -0
- package/dist/tools/definitions/std/analysis/detect-context.yml +109 -0
- package/dist/tools/definitions/std/analysis/detect-layers.yml +125 -0
- package/dist/tools/definitions/std/analysis/generate-tour.yml +102 -0
- package/dist/tools/definitions/std/analysis/search-enhance.yml +105 -0
- package/dist/tools/definitions/std/backlog/add.yml +51 -0
- package/dist/tools/definitions/std/backlog/decide.yml +39 -0
- package/dist/tools/definitions/std/backlog/github-sync.yml +161 -0
- package/dist/tools/definitions/std/backlog/list.yml +53 -0
- package/dist/tools/definitions/std/backlog/load.yml +46 -0
- package/dist/tools/definitions/std/backlog/resolve.yml +37 -0
- package/dist/tools/definitions/std/backlog/update.yml +42 -0
- package/dist/tools/definitions/std/bugfix/diagnose.yml +68 -0
- package/dist/tools/definitions/std/bugfix/fix.yml +66 -0
- package/dist/tools/definitions/std/bugfix/verify.yml +69 -0
- package/dist/tools/definitions/std/constraint/check-decomposition.yml +103 -0
- package/dist/tools/definitions/std/constraint/check-feature-list.yml +77 -0
- package/dist/tools/definitions/std/constraint/check-progress.yml +97 -0
- package/dist/tools/definitions/std/constraint/generate-report.yml +147 -0
- package/dist/tools/definitions/std/deploy/commit-push.yml +33 -0
- package/dist/tools/definitions/std/deploy/deploy-backend.yml +37 -0
- package/dist/tools/definitions/std/deploy/deploy-frontend.yml +37 -0
- package/dist/tools/definitions/std/deploy/rollback.yml +148 -0
- package/dist/tools/definitions/std/design/analyze-architecture-impact.yml +113 -0
- package/dist/tools/definitions/std/design/design-api.yml +55 -0
- package/dist/tools/definitions/std/design/design-architecture.yml +97 -0
- package/dist/tools/definitions/std/design/design-db.yml +81 -0
- package/dist/tools/definitions/std/design/generate-spec.yml +182 -0
- package/dist/tools/definitions/std/development/develop-api.yml +85 -0
- package/dist/tools/definitions/std/development/develop-backend.yml +88 -0
- package/dist/tools/definitions/std/development/develop-frontend.yml +87 -0
- package/dist/tools/definitions/std/development/develop-shared-types.yml +74 -0
- package/dist/tools/definitions/std/development/develop-task.yml +122 -0
- package/dist/tools/definitions/std/development/develop-tests.yml +76 -0
- package/dist/tools/definitions/std/development/execute-batch.yml +152 -0
- package/dist/tools/definitions/std/development/fix-issues.yml +100 -0
- package/dist/tools/definitions/std/development/implement-task.yml +124 -0
- package/dist/tools/definitions/std/development/review-fix-cycle.yml +232 -0
- package/dist/tools/definitions/std/evolution/implement.yml +125 -0
- package/dist/tools/definitions/std/evolution/prioritize.yml +112 -0
- package/dist/tools/definitions/std/evolution/report-gap.yml +166 -0
- package/dist/tools/definitions/std/file/read.yml +21 -0
- package/dist/tools/definitions/std/governance/aggregate-opinions.sh +201 -0
- package/dist/tools/definitions/std/governance/aggregate-opinions.yml +79 -0
- package/dist/tools/definitions/std/governance/audit-task.yml +178 -0
- package/dist/tools/definitions/std/governance/cast-vote.yml +129 -0
- package/dist/tools/definitions/std/governance/collect-issues.yml +16 -0
- package/dist/tools/definitions/std/governance/create-signed-document.yml +23 -0
- package/dist/tools/definitions/std/governance/create-voting-session.yml +101 -0
- package/dist/tools/definitions/std/governance/define-stance.sh +243 -0
- package/dist/tools/definitions/std/governance/define-stance.yml +82 -0
- package/dist/tools/definitions/std/governance/generate-review-report.yml +23 -0
- package/dist/tools/definitions/std/governance/impeach.yml +179 -0
- package/dist/tools/definitions/std/governance/multi-stance-review.yml +154 -0
- package/dist/tools/definitions/std/governance/prepare-artifact.yml +20 -0
- package/dist/tools/definitions/std/governance/review-spec-approval.yml +262 -0
- package/dist/tools/definitions/std/governance/rollback.yml +186 -0
- package/dist/tools/definitions/std/governance/stance-review.yml +149 -0
- package/dist/tools/definitions/std/governance/track-effect.yml +199 -0
- package/dist/tools/definitions/std/governance/vote-tally.yml +144 -0
- package/dist/tools/definitions/std/patch/execute.yml +51 -0
- package/dist/tools/definitions/std/planning/generate-tasks.yml +36 -0
- package/dist/tools/definitions/std/planning/load-tasks.yml +44 -0
- package/dist/tools/definitions/std/planning/split-batch.yml +481 -0
- package/dist/tools/definitions/std/planning/split-tasks.yml +359 -0
- package/dist/tools/definitions/std/planning/update-tasks.yml +51 -0
- package/dist/tools/definitions/std/planning/validate-tasks.yml +46 -0
- package/dist/tools/definitions/std/project/decide-next-workflow.yml +38 -0
- package/dist/tools/definitions/std/project/load-state.yml +31 -0
- package/dist/tools/definitions/std/project/save-state.yml +32 -0
- package/dist/tools/definitions/std/quality/check-quality.yml +241 -0
- package/dist/tools/definitions/std/quality/debug-systematic.yml +163 -0
- package/dist/tools/definitions/std/quality/handle-feedback.yml +108 -0
- package/dist/tools/definitions/std/quality/review-code.yml +128 -0
- package/dist/tools/definitions/std/quality/review-spec.yml +140 -0
- package/dist/tools/definitions/std/quality/review-task.yml +190 -0
- package/dist/tools/definitions/std/quality/run-tests.yml +80 -0
- package/dist/tools/definitions/std/quick/analyze.yml +56 -0
- package/dist/tools/definitions/std/quick/implement.yml +67 -0
- package/dist/tools/definitions/std/quick/verify.yml +71 -0
- package/dist/tools/definitions/std/verification/verify_completion.yml +113 -0
- package/dist/tools/definitions/std/verification/wait-condition.yml +107 -0
- package/dist/tools/index.d.ts +6 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +22 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/loader.d.ts +21 -0
- package/dist/tools/loader.d.ts.map +1 -0
- package/dist/tools/loader.js +199 -0
- package/dist/tools/loader.js.map +1 -0
- package/dist/tools/paths.d.ts +9 -0
- package/dist/tools/paths.d.ts.map +1 -0
- package/dist/tools/paths.js +51 -0
- package/dist/tools/paths.js.map +1 -0
- package/dist/tools/registry.d.ts +59 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/registry.js +115 -0
- package/dist/tools/registry.js.map +1 -0
- package/dist/tools/types.d.ts +38 -0
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/types.js +6 -0
- package/dist/tools/types.js.map +1 -0
- package/dist/types/constraint.d.ts +8 -0
- package/dist/types/constraint.d.ts.map +1 -1
- package/dist/types/constraint.js.map +1 -1
- package/dist/types/project-config.d.ts +57 -0
- package/dist/types/project-config.d.ts.map +1 -1
- package/dist/types/session.d.ts +6 -0
- package/dist/types/session.d.ts.map +1 -1
- package/dist/utils/exec.d.ts +11 -1
- package/dist/utils/exec.d.ts.map +1 -1
- package/dist/utils/exec.js +56 -2
- package/dist/utils/exec.js.map +1 -1
- package/dist/verification/index.d.ts +4 -0
- package/dist/verification/index.d.ts.map +1 -0
- package/dist/verification/index.js +20 -0
- package/dist/verification/index.js.map +1 -0
- package/dist/verification/loop.d.ts +30 -0
- package/dist/verification/loop.d.ts.map +1 -0
- package/dist/verification/loop.js +114 -0
- package/dist/verification/loop.js.map +1 -0
- package/dist/verification/rules-based.d.ts +40 -0
- package/dist/verification/rules-based.d.ts.map +1 -0
- package/dist/verification/rules-based.js +130 -0
- package/dist/verification/rules-based.js.map +1 -0
- package/dist/verification/types.d.ts +69 -0
- package/dist/verification/types.d.ts.map +1 -0
- package/dist/verification/types.js +6 -0
- package/dist/verification/types.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
# check-quality.yml - 代码质量检查
|
|
2
|
+
# ============================================================================
|
|
3
|
+
# 类型: 质量类步骤
|
|
4
|
+
# 执行方式: 调用 Agent
|
|
5
|
+
# 用途: 执行代码质量检查,包括 lint、安全漏洞、性能问题
|
|
6
|
+
# ============================================================================
|
|
7
|
+
|
|
8
|
+
name: check-quality
|
|
9
|
+
stage: verify
|
|
10
|
+
description: 代码质量检查(lint + 安全 + 性能)
|
|
11
|
+
category: quality
|
|
12
|
+
version: 2.0.0
|
|
13
|
+
|
|
14
|
+
# Agent 配置
|
|
15
|
+
agent: codex
|
|
16
|
+
temperature: 0.2
|
|
17
|
+
|
|
18
|
+
# 可用工具
|
|
19
|
+
tools:
|
|
20
|
+
- file-read
|
|
21
|
+
- npm-lint
|
|
22
|
+
- npm-audit
|
|
23
|
+
|
|
24
|
+
# 输入定义
|
|
25
|
+
inputs:
|
|
26
|
+
- name: project_path
|
|
27
|
+
type: string
|
|
28
|
+
required: true
|
|
29
|
+
description: 项目路径
|
|
30
|
+
|
|
31
|
+
- name: checks
|
|
32
|
+
type: array
|
|
33
|
+
default: ["lint", "security", "performance"]
|
|
34
|
+
description: 检查项目
|
|
35
|
+
|
|
36
|
+
- name: files
|
|
37
|
+
type: array
|
|
38
|
+
description: 要检查的文件列表(可选,默认检查全部)
|
|
39
|
+
|
|
40
|
+
# 输出定义
|
|
41
|
+
outputs:
|
|
42
|
+
- name: score
|
|
43
|
+
type: number
|
|
44
|
+
description: 质量评分(0-100)
|
|
45
|
+
|
|
46
|
+
- name: issues
|
|
47
|
+
type: array
|
|
48
|
+
description: 发现的问题列表
|
|
49
|
+
|
|
50
|
+
- name: report
|
|
51
|
+
type: object
|
|
52
|
+
description: 详细报告
|
|
53
|
+
|
|
54
|
+
- name: report_file
|
|
55
|
+
type: string
|
|
56
|
+
description: 报告文件路径
|
|
57
|
+
|
|
58
|
+
# Prompt 模板
|
|
59
|
+
prompt: |
|
|
60
|
+
你是代码质量检查专家。对项目进行质量检查并生成报告。
|
|
61
|
+
|
|
62
|
+
## 📁 项目路径
|
|
63
|
+
{{project_path}}
|
|
64
|
+
|
|
65
|
+
## 🔍 检查项目
|
|
66
|
+
{{checks}}
|
|
67
|
+
|
|
68
|
+
{{#if files}}
|
|
69
|
+
## 📄 检查文件
|
|
70
|
+
{{#each files}}
|
|
71
|
+
- {{this}}
|
|
72
|
+
{{/each}}
|
|
73
|
+
{{/if}}
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## 🛠️ 检查流程
|
|
78
|
+
|
|
79
|
+
### Step 1: Lint 检查
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
cd {{project_path}}
|
|
83
|
+
npm run lint 2>&1 || echo "Lint check completed with issues"
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
分析 lint 输出,识别:
|
|
87
|
+
- 错误数量
|
|
88
|
+
- 警告数量
|
|
89
|
+
- 具体问题列表
|
|
90
|
+
|
|
91
|
+
### Step 2: 安全检查
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
npm audit --json 2>&1 || echo "{}"
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
分析安全审计结果,识别:
|
|
98
|
+
- 高危漏洞
|
|
99
|
+
- 中危漏洞
|
|
100
|
+
- 低危漏洞
|
|
101
|
+
- 建议修复方案
|
|
102
|
+
|
|
103
|
+
### Step 3: 性能问题检查
|
|
104
|
+
|
|
105
|
+
静态分析代码,识别常见性能问题:
|
|
106
|
+
- 未使用的依赖
|
|
107
|
+
- 大文件/大函数
|
|
108
|
+
- 同步阻塞操作
|
|
109
|
+
- 内存泄漏风险
|
|
110
|
+
- N+1 查询问题
|
|
111
|
+
|
|
112
|
+
### Step 4: 计算质量评分
|
|
113
|
+
|
|
114
|
+
```javascript
|
|
115
|
+
// 评分算法
|
|
116
|
+
let score = 100;
|
|
117
|
+
|
|
118
|
+
// Lint 问题扣分
|
|
119
|
+
score -= lintErrors * 5; // 每个错误 -5
|
|
120
|
+
score -= lintWarnings * 1; // 每个警告 -1
|
|
121
|
+
|
|
122
|
+
// 安全漏洞扣分
|
|
123
|
+
score -= criticalVulns * 20; // 每个高危 -20
|
|
124
|
+
score -= highVulns * 10; // 每个中危 -10
|
|
125
|
+
score -= moderateVulns * 5; // 每个低危 -5
|
|
126
|
+
|
|
127
|
+
// 性能问题扣分
|
|
128
|
+
score -= perfIssues * 3; // 每个问题 -3
|
|
129
|
+
|
|
130
|
+
score = Math.max(0, score); // 最低 0 分
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### Step 5: 生成报告
|
|
134
|
+
|
|
135
|
+
创建 `quality-report.md`:
|
|
136
|
+
|
|
137
|
+
```markdown
|
|
138
|
+
# 代码质量检查报告
|
|
139
|
+
|
|
140
|
+
**项目**: {{project_path}}
|
|
141
|
+
**检查时间**: <timestamp>
|
|
142
|
+
**质量评分**: <score>/100
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## 📊 评分明细
|
|
147
|
+
|
|
148
|
+
| 检查项 | 问题数 | 扣分 |
|
|
149
|
+
|--------|--------|------|
|
|
150
|
+
| Lint 错误 | X | -X*5 |
|
|
151
|
+
| Lint 警告 | X | -X*1 |
|
|
152
|
+
| 高危漏洞 | X | -X*20 |
|
|
153
|
+
| 中危漏洞 | X | -X*10 |
|
|
154
|
+
| 低危漏洞 | X | -X*5 |
|
|
155
|
+
| 性能问题 | X | -X*3 |
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## 🔴 严重问题
|
|
160
|
+
|
|
161
|
+
### Lint 错误
|
|
162
|
+
|
|
163
|
+
| 文件 | 行号 | 规则 | 描述 |
|
|
164
|
+
|------|------|------|------|
|
|
165
|
+
| ... | ... | ... | ... |
|
|
166
|
+
|
|
167
|
+
### 高危漏洞
|
|
168
|
+
|
|
169
|
+
| 漏洞 | 依赖 | 描述 | 修复方案 |
|
|
170
|
+
|------|------|------|---------|
|
|
171
|
+
| ... | ... | ... | ... |
|
|
172
|
+
|
|
173
|
+
---
|
|
174
|
+
|
|
175
|
+
## 🟡 中等问题
|
|
176
|
+
|
|
177
|
+
### Lint 警告
|
|
178
|
+
|
|
179
|
+
...
|
|
180
|
+
|
|
181
|
+
### 中危漏洞
|
|
182
|
+
|
|
183
|
+
...
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
## 🟢 性能建议
|
|
188
|
+
|
|
189
|
+
1. ...
|
|
190
|
+
2. ...
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## 📝 总结
|
|
195
|
+
|
|
196
|
+
<总结内容>
|
|
197
|
+
|
|
198
|
+
## 🎯 建议行动
|
|
199
|
+
|
|
200
|
+
1. **立即修复**: 高危漏洞、严重 lint 错误
|
|
201
|
+
2. **尽快修复**: 中危漏洞、lint 警告
|
|
202
|
+
3. **建议优化**: 性能问题
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
|
|
207
|
+
## 📤 输出格式
|
|
208
|
+
|
|
209
|
+
```json
|
|
210
|
+
{
|
|
211
|
+
"score": 85,
|
|
212
|
+
"issues": {
|
|
213
|
+
"lint_errors": [...],
|
|
214
|
+
"lint_warnings": [...],
|
|
215
|
+
"security_vulnerabilities": [...],
|
|
216
|
+
"performance_issues": [...]
|
|
217
|
+
},
|
|
218
|
+
"summary": {
|
|
219
|
+
"total_issues": 15,
|
|
220
|
+
"critical": 2,
|
|
221
|
+
"high": 3,
|
|
222
|
+
"medium": 5,
|
|
223
|
+
"low": 5
|
|
224
|
+
},
|
|
225
|
+
"report_file": "quality-report.md"
|
|
226
|
+
}
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
# 执行配置
|
|
230
|
+
execute:
|
|
231
|
+
type: agent
|
|
232
|
+
agent: codex
|
|
233
|
+
temperature: 0.2
|
|
234
|
+
output:
|
|
235
|
+
content:
|
|
236
|
+
score: score
|
|
237
|
+
issues: issues
|
|
238
|
+
report: report
|
|
239
|
+
file:
|
|
240
|
+
path: "{{project_path}}/quality-report.md"
|
|
241
|
+
content: report_file
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
# debug-systematic.yml - 系统性调试
|
|
2
|
+
# ============================================================================
|
|
3
|
+
# 能力类型: quality(步骤型)
|
|
4
|
+
# 来源: Superpowers - systematic-debugging
|
|
5
|
+
# 版本: 2026-03-28 (需手动同步)
|
|
6
|
+
# 执行方式: 调用 Agent 进行系统性调试
|
|
7
|
+
# 铁律: NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST
|
|
8
|
+
# 用途: 系统性地定位和修复问题
|
|
9
|
+
# ============================================================================
|
|
10
|
+
|
|
11
|
+
name: debug-systematic
|
|
12
|
+
stage: verify
|
|
13
|
+
description: |
|
|
14
|
+
Systematic debugging workflow - find root cause before fixing
|
|
15
|
+
|
|
16
|
+
category: quality
|
|
17
|
+
version: 1.0.0
|
|
18
|
+
|
|
19
|
+
iron_law:
|
|
20
|
+
rule: "NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST"
|
|
21
|
+
message: "在修复问题之前,必须先找到根本原因"
|
|
22
|
+
|
|
23
|
+
inputs:
|
|
24
|
+
- name: error_message
|
|
25
|
+
type: string
|
|
26
|
+
required: true
|
|
27
|
+
description: 错误信息
|
|
28
|
+
|
|
29
|
+
- name: code_path
|
|
30
|
+
type: path
|
|
31
|
+
required: true
|
|
32
|
+
description: 代码路径
|
|
33
|
+
|
|
34
|
+
- name: context
|
|
35
|
+
type: ProjectContext
|
|
36
|
+
description: 项目上下文
|
|
37
|
+
|
|
38
|
+
- name: reproduction_steps
|
|
39
|
+
type: array
|
|
40
|
+
required: false
|
|
41
|
+
description: 重现步骤
|
|
42
|
+
default: []
|
|
43
|
+
|
|
44
|
+
outputs:
|
|
45
|
+
- name: root_cause
|
|
46
|
+
type: object
|
|
47
|
+
description: 根本原因分析
|
|
48
|
+
|
|
49
|
+
- name: fix_suggestion
|
|
50
|
+
type: object
|
|
51
|
+
description: 修复建议
|
|
52
|
+
|
|
53
|
+
- name: verification_steps
|
|
54
|
+
type: array
|
|
55
|
+
description: 验证步骤
|
|
56
|
+
|
|
57
|
+
execute:
|
|
58
|
+
type: agent
|
|
59
|
+
prompt: |
|
|
60
|
+
你是一个系统性调试专家。
|
|
61
|
+
|
|
62
|
+
## 任务
|
|
63
|
+
系统性地分析问题,找到根本原因后再提出修复方案。
|
|
64
|
+
|
|
65
|
+
## 错误信息
|
|
66
|
+
```
|
|
67
|
+
{{inputs.error_message}}
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## 代码路径
|
|
71
|
+
{{inputs.code_path}}
|
|
72
|
+
|
|
73
|
+
## 重现步骤
|
|
74
|
+
{{inputs.reproduction_steps}}
|
|
75
|
+
|
|
76
|
+
## 调试流程(必须严格按顺序执行)
|
|
77
|
+
|
|
78
|
+
### Phase 1: 根本原因调查
|
|
79
|
+
1. **仔细阅读错误消息**
|
|
80
|
+
- 提取关键信息:错误类型、位置、相关变量
|
|
81
|
+
- 不要跳过任何细节
|
|
82
|
+
|
|
83
|
+
2. **稳定重现问题**
|
|
84
|
+
- 确认重现步骤
|
|
85
|
+
- 记录每次重现的条件
|
|
86
|
+
|
|
87
|
+
3. **检查最近的更改**
|
|
88
|
+
- 查看 git log
|
|
89
|
+
- 找到引入问题的 commit
|
|
90
|
+
|
|
91
|
+
4. **跟踪数据流**
|
|
92
|
+
- 从错误位置向上追踪
|
|
93
|
+
- 找到数据的来源和变化
|
|
94
|
+
|
|
95
|
+
### Phase 2: 模式分析
|
|
96
|
+
1. **找到工作的例子**
|
|
97
|
+
- 搜索类似的正常工作代码
|
|
98
|
+
- 对比差异
|
|
99
|
+
|
|
100
|
+
2. **对比差异**
|
|
101
|
+
- 逐行比较工作代码和问题代码
|
|
102
|
+
- 找出关键差异点
|
|
103
|
+
|
|
104
|
+
### Phase 3: 假设测试
|
|
105
|
+
1. **形成一个清晰的假设**
|
|
106
|
+
- "问题是因为 X 导致 Y"
|
|
107
|
+
- 假设必须可验证
|
|
108
|
+
|
|
109
|
+
2. **设计最小测试验证/证伪**
|
|
110
|
+
- 编写最小测试用例
|
|
111
|
+
- 确认假设正确或错误
|
|
112
|
+
|
|
113
|
+
### Phase 4: 修复验证
|
|
114
|
+
1. **修复根本原因,不是症状**
|
|
115
|
+
- 不要只是修复错误消息
|
|
116
|
+
- 解决导致错误的根本原因
|
|
117
|
+
|
|
118
|
+
2. **写测试覆盖此 bug**
|
|
119
|
+
- 防止回归
|
|
120
|
+
- 文档化问题
|
|
121
|
+
|
|
122
|
+
3. **验证无回归**
|
|
123
|
+
- 运行所有相关测试
|
|
124
|
+
- 确认没有引入新问题
|
|
125
|
+
|
|
126
|
+
## 铁律
|
|
127
|
+
⚠️ **NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST**
|
|
128
|
+
|
|
129
|
+
- 禁止在没有找到根本原因的情况下修复问题
|
|
130
|
+
- 禁止只修复症状而不解决根本原因
|
|
131
|
+
- 禁止跳过测试验证
|
|
132
|
+
|
|
133
|
+
## 输出格式
|
|
134
|
+
|
|
135
|
+
```json
|
|
136
|
+
{
|
|
137
|
+
"root_cause": {
|
|
138
|
+
"type": "数据流错误",
|
|
139
|
+
"location": "src/utils/parser.ts:42",
|
|
140
|
+
"description": "变量 X 在条件 Y 下未正确初始化",
|
|
141
|
+
"evidence": [
|
|
142
|
+
"日志显示 X 为 undefined",
|
|
143
|
+
"条件 Y 在步骤 3 触发"
|
|
144
|
+
]
|
|
145
|
+
},
|
|
146
|
+
"fix_suggestion": {
|
|
147
|
+
"file": "src/utils/parser.ts",
|
|
148
|
+
"line": 42,
|
|
149
|
+
"before": "const result = process(data);",
|
|
150
|
+
"after": "const result = data ? process(data) : defaultValue;",
|
|
151
|
+
"explanation": "在调用 process 前检查 data 是否存在"
|
|
152
|
+
},
|
|
153
|
+
"verification_steps": [
|
|
154
|
+
"npm test",
|
|
155
|
+
"手动重现原问题,确认已修复",
|
|
156
|
+
"检查边界情况"
|
|
157
|
+
]
|
|
158
|
+
}
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
开始系统性调试。记住:先找根本原因,再修复!
|
|
162
|
+
|
|
163
|
+
temperature: 0.3
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
# handle-feedback.yml - 处理审查反馈
|
|
2
|
+
# ============================================================================
|
|
3
|
+
# 能力类型: quality(步骤型)
|
|
4
|
+
# 来源: Superpowers - receiving-code-review
|
|
5
|
+
# 版本: 2026-03-28 (需手动同步)
|
|
6
|
+
# 执行方式: 调用 Agent 处理代码审查反馈
|
|
7
|
+
# 用途: 处理代码审查反馈,修改代码并回复
|
|
8
|
+
# ============================================================================
|
|
9
|
+
|
|
10
|
+
name: handle-feedback
|
|
11
|
+
stage: verify
|
|
12
|
+
description: |
|
|
13
|
+
Handle code review feedback - process comments and make necessary changes
|
|
14
|
+
|
|
15
|
+
category: quality
|
|
16
|
+
version: 1.0.0
|
|
17
|
+
|
|
18
|
+
inputs:
|
|
19
|
+
- name: feedback
|
|
20
|
+
type: object
|
|
21
|
+
required: true
|
|
22
|
+
description: 审查反馈(包含 comments, suggestions)
|
|
23
|
+
|
|
24
|
+
- name: code_path
|
|
25
|
+
type: path
|
|
26
|
+
required: true
|
|
27
|
+
description: 代码路径
|
|
28
|
+
|
|
29
|
+
- name: context
|
|
30
|
+
type: ProjectContext
|
|
31
|
+
description: 项目上下文
|
|
32
|
+
|
|
33
|
+
outputs:
|
|
34
|
+
- name: changes
|
|
35
|
+
type: array
|
|
36
|
+
description: 修改列表
|
|
37
|
+
|
|
38
|
+
- name: replies
|
|
39
|
+
type: array
|
|
40
|
+
description: 回复列表
|
|
41
|
+
|
|
42
|
+
- name: resolved_count
|
|
43
|
+
type: number
|
|
44
|
+
description: 已解决的反馈数
|
|
45
|
+
|
|
46
|
+
execute:
|
|
47
|
+
type: agent
|
|
48
|
+
prompt: |
|
|
49
|
+
你是一个代码审查反馈处理专家。
|
|
50
|
+
|
|
51
|
+
## 任务
|
|
52
|
+
处理以下代码审查反馈,做出必要的修改并回复。
|
|
53
|
+
|
|
54
|
+
## 审查反馈
|
|
55
|
+
{{inputs.feedback}}
|
|
56
|
+
|
|
57
|
+
## 代码路径
|
|
58
|
+
{{inputs.code_path}}
|
|
59
|
+
|
|
60
|
+
## 处理原则
|
|
61
|
+
|
|
62
|
+
### 1. 优先级判断
|
|
63
|
+
- 🔴 **必须修改**: 安全问题、性能问题、严重 bug
|
|
64
|
+
- 🟡 **建议修改**: 代码风格、可读性、最佳实践
|
|
65
|
+
- 🟢 **可选修改**: 个人偏好、微小优化
|
|
66
|
+
|
|
67
|
+
### 2. 回复策略
|
|
68
|
+
- 明确说明修改内容和原因
|
|
69
|
+
- 如果不修改,解释原因
|
|
70
|
+
- 感谢审查者的建议
|
|
71
|
+
|
|
72
|
+
### 3. 修改原则
|
|
73
|
+
- **最小化修改**: 只修改必要的部分
|
|
74
|
+
- **保持一致**: 与现有代码风格保持一致
|
|
75
|
+
- **测试验证**: 修改后运行相关测试
|
|
76
|
+
|
|
77
|
+
## 铁律
|
|
78
|
+
- NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST
|
|
79
|
+
- 修改前必须理解问题根本原因
|
|
80
|
+
- 修改后必须验证测试通过
|
|
81
|
+
|
|
82
|
+
## 输出格式
|
|
83
|
+
|
|
84
|
+
```json
|
|
85
|
+
{
|
|
86
|
+
"changes": [
|
|
87
|
+
{
|
|
88
|
+
"file": "path/to/file",
|
|
89
|
+
"line": 42,
|
|
90
|
+
"type": "modify",
|
|
91
|
+
"before": "原代码",
|
|
92
|
+
"after": "修改后代码",
|
|
93
|
+
"reason": "修改原因"
|
|
94
|
+
}
|
|
95
|
+
],
|
|
96
|
+
"replies": [
|
|
97
|
+
{
|
|
98
|
+
"comment_id": "xxx",
|
|
99
|
+
"reply": "感谢建议,已在 xxx 中修改"
|
|
100
|
+
}
|
|
101
|
+
],
|
|
102
|
+
"resolved_count": 5
|
|
103
|
+
}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
开始处理反馈。
|
|
107
|
+
|
|
108
|
+
temperature: 0.3
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
# review-code.yml
|
|
2
|
+
name: review-code
|
|
3
|
+
stage: verify
|
|
4
|
+
description: |
|
|
5
|
+
代码审查(智能版本)。
|
|
6
|
+
|
|
7
|
+
通过 fingerprint 工具区分变更级别:
|
|
8
|
+
- STRUCTURAL: 深度审查(架构、依赖、测试)
|
|
9
|
+
- COSMETIC: 快速审查(格式、注释)
|
|
10
|
+
- NONE: 跳过
|
|
11
|
+
|
|
12
|
+
节省审查时间 30-50%。
|
|
13
|
+
category: quality
|
|
14
|
+
version: 3.0.0
|
|
15
|
+
|
|
16
|
+
# Agent 配置
|
|
17
|
+
agent: codex
|
|
18
|
+
temperature: 0.3
|
|
19
|
+
|
|
20
|
+
# 可用工具
|
|
21
|
+
tools:
|
|
22
|
+
- file-read
|
|
23
|
+
- file-write
|
|
24
|
+
- code/fingerprint
|
|
25
|
+
- npm-build
|
|
26
|
+
- npm-test
|
|
27
|
+
|
|
28
|
+
# Prompt
|
|
29
|
+
prompt: |
|
|
30
|
+
你是代码审查专家。使用智能策略审查代码。
|
|
31
|
+
|
|
32
|
+
## 输入
|
|
33
|
+
|
|
34
|
+
项目目录:{{input}}
|
|
35
|
+
|
|
36
|
+
## Step 0: 智能变更检测
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# 获取最近的变更
|
|
40
|
+
CHANGED_FILES=$(git diff --name-only HEAD~1 2>/dev/null || find . -name "*.ts" -o -name "*.tsx" | head -20)
|
|
41
|
+
|
|
42
|
+
# 对每个文件检测变更级别
|
|
43
|
+
for FILE in $CHANGED_FILES; do
|
|
44
|
+
fingerprint.sh "$FILE" "." "previous"
|
|
45
|
+
done
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
根据变更级别选择审查策略:
|
|
49
|
+
|
|
50
|
+
| 变更级别 | 审查策略 | 检查项 |
|
|
51
|
+
|---------|---------|--------|
|
|
52
|
+
| STRUCTURAL | 深度审查 | 架构、依赖、安全、测试 |
|
|
53
|
+
| COSMETIC | 快速审查 | 格式、注释、文档 |
|
|
54
|
+
| NONE | 跳过 | - |
|
|
55
|
+
|
|
56
|
+
## Step 1: 扫描代码
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
# 扫描所有代码文件
|
|
60
|
+
find . -name "*.ts" -o -name "*.tsx" -o -name "*.js" -o -name "*.jsx" | head -50
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Step 2: 运行 Lint
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
# 如果有 ESLint
|
|
67
|
+
npm run lint 2>/dev/null || npx eslint . --ext .ts,.tsx 2>/dev/null || echo "No ESLint"
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Step 3: 安全扫描
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
# 检查敏感信息
|
|
74
|
+
grep -r "password\|secret\|api_key\|token" --include="*.ts" --include="*.js" . | grep -v ".env.example" || echo "No secrets found"
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## Step 4: 自动修复
|
|
78
|
+
|
|
79
|
+
对于发现的问题,直接修复代码:
|
|
80
|
+
- 代码风格问题:运行 `npm run lint -- --fix`
|
|
81
|
+
- 简单 Bug:直接修改代码
|
|
82
|
+
- 复杂问题:记录到 review.md
|
|
83
|
+
|
|
84
|
+
## Step 5: 输出报告
|
|
85
|
+
|
|
86
|
+
创建 `review.md`:
|
|
87
|
+
```markdown
|
|
88
|
+
# 代码审查报告
|
|
89
|
+
|
|
90
|
+
## 变更级别统计
|
|
91
|
+
|
|
92
|
+
| 级别 | 文件数 | 审查策略 |
|
|
93
|
+
|------|--------|---------|
|
|
94
|
+
| STRUCTURAL | X | 深度审查 |
|
|
95
|
+
| COSMETIC | Y | 快速审查 |
|
|
96
|
+
| NONE | Z | 跳过 |
|
|
97
|
+
|
|
98
|
+
## 总体评分: X/10
|
|
99
|
+
|
|
100
|
+
## 已修复问题
|
|
101
|
+
- [x] 问题1
|
|
102
|
+
- [x] 问题2
|
|
103
|
+
|
|
104
|
+
## 需人工处理
|
|
105
|
+
- [ ] 复杂问题1(原因:xxx)
|
|
106
|
+
|
|
107
|
+
## 建议
|
|
108
|
+
- 建议1
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## 输出标准
|
|
112
|
+
|
|
113
|
+
- 修复所有可自动修复的问题
|
|
114
|
+
- 记录无法自动修复的问题
|
|
115
|
+
- 输出 review.md
|
|
116
|
+
|
|
117
|
+
# 输入参数
|
|
118
|
+
inputs:
|
|
119
|
+
- name: project_path
|
|
120
|
+
type: path
|
|
121
|
+
required: true
|
|
122
|
+
description: 项目路径
|
|
123
|
+
|
|
124
|
+
# 输出
|
|
125
|
+
outputs:
|
|
126
|
+
- name: review.md
|
|
127
|
+
type: file
|
|
128
|
+
description: 审查报告
|