@paths.design/caws-cli 10.1.0 → 11.0.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 +125 -374
- package/dist/index.js +43 -756
- package/dist/shell/binding/resolve-binding.d.ts +4 -0
- package/dist/shell/binding/resolve-binding.d.ts.map +1 -0
- package/dist/shell/binding/resolve-binding.js +228 -0
- package/dist/shell/binding/resolve-binding.js.map +1 -0
- package/dist/shell/binding/types.d.ts +42 -0
- package/dist/shell/binding/types.d.ts.map +1 -0
- package/dist/shell/binding/types.js +21 -0
- package/dist/shell/binding/types.js.map +1 -0
- package/dist/shell/commands/claim.d.ts +14 -0
- package/dist/shell/commands/claim.d.ts.map +1 -0
- package/dist/shell/commands/claim.js +197 -0
- package/dist/shell/commands/claim.js.map +1 -0
- package/dist/shell/commands/doctor.d.ts +13 -0
- package/dist/shell/commands/doctor.d.ts.map +1 -0
- package/dist/shell/commands/doctor.js +97 -0
- package/dist/shell/commands/doctor.js.map +1 -0
- package/dist/shell/commands/evidence.d.ts +28 -0
- package/dist/shell/commands/evidence.d.ts.map +1 -0
- package/dist/shell/commands/evidence.js +166 -0
- package/dist/shell/commands/evidence.js.map +1 -0
- package/dist/shell/commands/gates.d.ts +19 -0
- package/dist/shell/commands/gates.d.ts.map +1 -0
- package/dist/shell/commands/gates.js +181 -0
- package/dist/shell/commands/gates.js.map +1 -0
- package/dist/shell/commands/init.d.ts +8 -0
- package/dist/shell/commands/init.d.ts.map +1 -0
- package/dist/shell/commands/init.js +64 -0
- package/dist/shell/commands/init.js.map +1 -0
- package/dist/shell/commands/scope.d.ts +11 -0
- package/dist/shell/commands/scope.d.ts.map +1 -0
- package/dist/shell/commands/scope.js +92 -0
- package/dist/shell/commands/scope.js.map +1 -0
- package/dist/shell/commands/status.d.ts +15 -0
- package/dist/shell/commands/status.d.ts.map +1 -0
- package/dist/shell/commands/status.js +106 -0
- package/dist/shell/commands/status.js.map +1 -0
- package/dist/shell/commands/waiver.d.ts +38 -0
- package/dist/shell/commands/waiver.d.ts.map +1 -0
- package/dist/shell/commands/waiver.js +240 -0
- package/dist/shell/commands/waiver.js.map +1 -0
- package/dist/shell/gates/disposition.d.ts +23 -0
- package/dist/shell/gates/disposition.d.ts.map +1 -0
- package/dist/shell/gates/disposition.js +87 -0
- package/dist/shell/gates/disposition.js.map +1 -0
- package/dist/shell/gates/gate-result-contract.d.ts +39 -0
- package/dist/shell/gates/gate-result-contract.d.ts.map +1 -0
- package/dist/shell/gates/gate-result-contract.js +150 -0
- package/dist/shell/gates/gate-result-contract.js.map +1 -0
- package/dist/shell/gates/quality-gates-adapter.d.ts +55 -0
- package/dist/shell/gates/quality-gates-adapter.d.ts.map +1 -0
- package/dist/shell/gates/quality-gates-adapter.js +161 -0
- package/dist/shell/gates/quality-gates-adapter.js.map +1 -0
- package/dist/shell/gates/waiver-filter.d.ts +58 -0
- package/dist/shell/gates/waiver-filter.d.ts.map +1 -0
- package/dist/shell/gates/waiver-filter.js +119 -0
- package/dist/shell/gates/waiver-filter.js.map +1 -0
- package/dist/shell/index.d.ts +50 -0
- package/dist/shell/index.d.ts.map +1 -0
- package/dist/shell/index.js +73 -0
- package/dist/shell/index.js.map +1 -0
- package/dist/shell/register.d.ts +11 -0
- package/dist/shell/register.d.ts.map +1 -0
- package/dist/shell/register.js +274 -0
- package/dist/shell/register.js.map +1 -0
- package/dist/shell/render/claim.d.ts +22 -0
- package/dist/shell/render/claim.d.ts.map +1 -0
- package/dist/shell/render/claim.js +75 -0
- package/dist/shell/render/claim.js.map +1 -0
- package/dist/shell/render/decision.d.ts +15 -0
- package/dist/shell/render/decision.d.ts.map +1 -0
- package/dist/shell/render/decision.js +66 -0
- package/dist/shell/render/decision.js.map +1 -0
- package/dist/shell/render/diagnostic.d.ts +19 -0
- package/dist/shell/render/diagnostic.d.ts.map +1 -0
- package/dist/shell/render/diagnostic.js +76 -0
- package/dist/shell/render/diagnostic.js.map +1 -0
- package/dist/shell/render/finding.d.ts +15 -0
- package/dist/shell/render/finding.d.ts.map +1 -0
- package/dist/shell/render/finding.js +57 -0
- package/dist/shell/render/finding.js.map +1 -0
- package/dist/shell/render/gates.d.ts +3 -0
- package/dist/shell/render/gates.d.ts.map +1 -0
- package/dist/shell/render/gates.js +56 -0
- package/dist/shell/render/gates.js.map +1 -0
- package/dist/shell/render/init.d.ts +11 -0
- package/dist/shell/render/init.d.ts.map +1 -0
- package/dist/shell/render/init.js +32 -0
- package/dist/shell/render/init.js.map +1 -0
- package/dist/shell/render/status.d.ts +26 -0
- package/dist/shell/render/status.d.ts.map +1 -0
- package/dist/shell/render/status.js +143 -0
- package/dist/shell/render/status.js.map +1 -0
- package/dist/shell/render/waiver.d.ts +21 -0
- package/dist/shell/render/waiver.d.ts.map +1 -0
- package/dist/shell/render/waiver.js +94 -0
- package/dist/shell/render/waiver.js.map +1 -0
- package/dist/shell/rules.d.ts +37 -0
- package/dist/shell/rules.d.ts.map +1 -0
- package/dist/shell/rules.js +51 -0
- package/dist/shell/rules.js.map +1 -0
- package/dist/shell/session/actor.d.ts +14 -0
- package/dist/shell/session/actor.d.ts.map +1 -0
- package/dist/shell/session/actor.js +34 -0
- package/dist/shell/session/actor.js.map +1 -0
- package/dist/shell/session/resolve-session.d.ts +5 -0
- package/dist/shell/session/resolve-session.d.ts.map +1 -0
- package/dist/shell/session/resolve-session.js +239 -0
- package/dist/shell/session/resolve-session.js.map +1 -0
- package/dist/shell/session/types.d.ts +56 -0
- package/dist/shell/session/types.d.ts.map +1 -0
- package/dist/shell/session/types.js +15 -0
- package/dist/shell/session/types.js.map +1 -0
- package/dist/store/agents-store.d.ts +3 -0
- package/dist/store/agents-store.d.ts.map +1 -0
- package/dist/store/agents-store.js +63 -0
- package/dist/store/agents-store.js.map +1 -0
- package/dist/store/apply-patch.d.ts +16 -0
- package/dist/store/apply-patch.d.ts.map +1 -0
- package/dist/store/apply-patch.js +191 -0
- package/dist/store/apply-patch.js.map +1 -0
- package/dist/store/atomic-write.d.ts +16 -0
- package/dist/store/atomic-write.d.ts.map +1 -0
- package/dist/store/atomic-write.js +132 -0
- package/dist/store/atomic-write.js.map +1 -0
- package/dist/store/doctor-snapshot.d.ts +20 -0
- package/dist/store/doctor-snapshot.d.ts.map +1 -0
- package/dist/store/doctor-snapshot.js +176 -0
- package/dist/store/doctor-snapshot.js.map +1 -0
- package/dist/store/events-store.d.ts +33 -0
- package/dist/store/events-store.d.ts.map +1 -0
- package/dist/store/events-store.js +297 -0
- package/dist/store/events-store.js.map +1 -0
- package/dist/store/index.d.ts +21 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/index.js +47 -0
- package/dist/store/index.js.map +1 -0
- package/dist/store/init-store.d.ts +21 -0
- package/dist/store/init-store.d.ts.map +1 -0
- package/dist/store/init-store.js +295 -0
- package/dist/store/init-store.js.map +1 -0
- package/dist/store/json-store.d.ts +3 -0
- package/dist/store/json-store.d.ts.map +1 -0
- package/dist/store/json-store.js +65 -0
- package/dist/store/json-store.js.map +1 -0
- package/dist/store/policy-store.d.ts +3 -0
- package/dist/store/policy-store.d.ts.map +1 -0
- package/dist/store/policy-store.js +65 -0
- package/dist/store/policy-store.js.map +1 -0
- package/dist/store/repo-root.d.ts +46 -0
- package/dist/store/repo-root.d.ts.map +1 -0
- package/dist/store/repo-root.js +145 -0
- package/dist/store/repo-root.js.map +1 -0
- package/dist/store/rules.d.ts +53 -0
- package/dist/store/rules.d.ts.map +1 -0
- package/dist/store/rules.js +78 -0
- package/dist/store/rules.js.map +1 -0
- package/dist/store/specs-store.d.ts +3 -0
- package/dist/store/specs-store.d.ts.map +1 -0
- package/dist/store/specs-store.js +131 -0
- package/dist/store/specs-store.js.map +1 -0
- package/dist/store/types.d.ts +84 -0
- package/dist/store/types.d.ts.map +1 -0
- package/dist/store/types.js +14 -0
- package/dist/store/types.js.map +1 -0
- package/dist/store/waivers-store.d.ts +25 -0
- package/dist/store/waivers-store.d.ts.map +1 -0
- package/dist/store/waivers-store.js +232 -0
- package/dist/store/waivers-store.js.map +1 -0
- package/dist/store/worktrees-store.d.ts +3 -0
- package/dist/store/worktrees-store.d.ts.map +1 -0
- package/dist/store/worktrees-store.js +62 -0
- package/dist/store/worktrees-store.js.map +1 -0
- package/dist/store/yaml-store.d.ts +9 -0
- package/dist/store/yaml-store.d.ts.map +1 -0
- package/dist/store/yaml-store.js +121 -0
- package/dist/store/yaml-store.js.map +1 -0
- package/package.json +15 -13
- package/dist/budget-derivation.js +0 -751
- package/dist/cicd-optimizer.js +0 -504
- package/dist/commands/archive.js +0 -500
- package/dist/commands/burnup.js +0 -198
- package/dist/commands/diagnose.js +0 -525
- package/dist/commands/evaluate.js +0 -314
- package/dist/commands/gates.js +0 -149
- package/dist/commands/init.js +0 -857
- package/dist/commands/iterate.js +0 -417
- package/dist/commands/mode.js +0 -269
- package/dist/commands/parallel.js +0 -242
- package/dist/commands/plan.js +0 -438
- package/dist/commands/provenance.js +0 -1143
- package/dist/commands/quality-monitor.js +0 -284
- package/dist/commands/scope.js +0 -264
- package/dist/commands/session.js +0 -312
- package/dist/commands/sidecar.js +0 -74
- package/dist/commands/specs.js +0 -1448
- package/dist/commands/status.js +0 -1151
- package/dist/commands/templates.js +0 -237
- package/dist/commands/tool.js +0 -136
- package/dist/commands/tutorial.js +0 -480
- package/dist/commands/validate.js +0 -357
- package/dist/commands/verify-acs.js +0 -443
- package/dist/commands/waivers.js +0 -599
- package/dist/commands/workflow.js +0 -243
- package/dist/commands/worktree.js +0 -386
- package/dist/config/lite-scope.js +0 -158
- package/dist/config/modes.js +0 -347
- package/dist/constants/spec-types.js +0 -65
- package/dist/gates/budget-limit.js +0 -121
- package/dist/gates/feedback.js +0 -260
- package/dist/gates/format.js +0 -179
- package/dist/gates/god-object.js +0 -117
- package/dist/gates/pipeline.js +0 -167
- package/dist/gates/scope-boundary.js +0 -93
- package/dist/gates/spec-completeness.js +0 -109
- package/dist/gates/todo-detection.js +0 -205
- package/dist/generators/jest-config-generator.js +0 -242
- package/dist/generators/working-spec.js +0 -237
- package/dist/minimal-cli.js +0 -88
- package/dist/parallel/parallel-manager.js +0 -433
- package/dist/policy/PolicyManager.js +0 -465
- package/dist/scaffold/claude-hooks.js +0 -443
- package/dist/scaffold/cursor-hooks.js +0 -177
- package/dist/scaffold/git-hooks.js +0 -928
- package/dist/scaffold/index.js +0 -794
- package/dist/session/session-manager.js +0 -653
- package/dist/sidecars/index.js +0 -33
- package/dist/sidecars/listeners.js +0 -40
- package/dist/sidecars/provenance-summary.js +0 -238
- package/dist/sidecars/quality-gaps.js +0 -258
- package/dist/sidecars/schema.js +0 -149
- package/dist/sidecars/spec-drift.js +0 -151
- package/dist/sidecars/waiver-draft.js +0 -176
- package/dist/spec/SpecFileManager.js +0 -419
- package/dist/templates/.caws/schemas/policy.schema.json +0 -112
- package/dist/templates/.caws/schemas/scope.schema.json +0 -52
- package/dist/templates/.caws/schemas/waivers.schema.json +0 -106
- package/dist/templates/.caws/schemas/working-spec.schema.json +0 -340
- package/dist/templates/.caws/schemas/worktrees.schema.json +0 -38
- package/dist/templates/.caws/templates/working-spec.template.yml +0 -80
- package/dist/templates/.caws/tools/README.md +0 -18
- package/dist/templates/.caws/tools/scope-guard.js +0 -203
- package/dist/templates/.caws/tools-allow.json +0 -331
- package/dist/templates/.caws/waivers.yml +0 -19
- package/dist/templates/.claude/README.md +0 -190
- package/dist/templates/.claude/hooks/audit.sh +0 -121
- package/dist/templates/.claude/hooks/block-dangerous.sh +0 -203
- package/dist/templates/.claude/hooks/classify_command.py +0 -592
- package/dist/templates/.claude/hooks/doc-frontmatter-check.sh +0 -173
- package/dist/templates/.claude/hooks/lite-sprawl-check.sh +0 -145
- package/dist/templates/.claude/hooks/naming-check.sh +0 -100
- package/dist/templates/.claude/hooks/protected-paths.sh +0 -39
- package/dist/templates/.claude/hooks/quality-check.sh +0 -81
- package/dist/templates/.claude/hooks/scan-secrets.sh +0 -85
- package/dist/templates/.claude/hooks/scope-guard.sh +0 -381
- package/dist/templates/.claude/hooks/session-caws-status.sh +0 -117
- package/dist/templates/.claude/hooks/session-log.sh +0 -634
- package/dist/templates/.claude/hooks/simplification-guard.sh +0 -92
- package/dist/templates/.claude/hooks/stop-worktree-check.sh +0 -46
- package/dist/templates/.claude/hooks/test_classify_command.py +0 -370
- package/dist/templates/.claude/hooks/test_wrapper_smoke.sh +0 -96
- package/dist/templates/.claude/hooks/validate-spec.sh +0 -76
- package/dist/templates/.claude/hooks/worktree-guard.sh +0 -220
- package/dist/templates/.claude/hooks/worktree-write-guard.sh +0 -190
- package/dist/templates/.claude/rules/git-safety.md +0 -26
- package/dist/templates/.claude/rules/worktree-isolation.md +0 -83
- package/dist/templates/.claude/settings.json +0 -141
- package/dist/templates/.cursor/README.md +0 -299
- package/dist/templates/.cursor/hooks/audit.sh +0 -55
- package/dist/templates/.cursor/hooks/block-dangerous.sh +0 -84
- package/dist/templates/.cursor/hooks/caws-quality-check.sh +0 -52
- package/dist/templates/.cursor/hooks/caws-scope-guard.sh +0 -130
- package/dist/templates/.cursor/hooks/format.sh +0 -38
- package/dist/templates/.cursor/hooks/naming-check.sh +0 -64
- package/dist/templates/.cursor/hooks/scan-secrets.sh +0 -51
- package/dist/templates/.cursor/hooks/scope-guard.sh +0 -52
- package/dist/templates/.cursor/hooks/session-log.sh +0 -924
- package/dist/templates/.cursor/hooks/validate-spec.sh +0 -83
- package/dist/templates/.cursor/hooks.json +0 -76
- package/dist/templates/.cursor/rules/00-claims-verification.mdc +0 -144
- package/dist/templates/.cursor/rules/01-working-style.mdc +0 -50
- package/dist/templates/.cursor/rules/02-quality-gates.mdc +0 -368
- package/dist/templates/.cursor/rules/03-naming-and-refactor.mdc +0 -33
- package/dist/templates/.cursor/rules/04-logging-language-style.mdc +0 -23
- package/dist/templates/.cursor/rules/05-safe-defaults-guards.mdc +0 -23
- package/dist/templates/.cursor/rules/06-typescript-conventions.mdc +0 -36
- package/dist/templates/.cursor/rules/07-process-ops.mdc +0 -20
- package/dist/templates/.cursor/rules/08-solid-and-architecture.mdc +0 -16
- package/dist/templates/.cursor/rules/09-docstrings.mdc +0 -89
- package/dist/templates/.cursor/rules/10-documentation-quality-standards.mdc +0 -385
- package/dist/templates/.cursor/rules/11-scope-management-waivers.mdc +0 -381
- package/dist/templates/.cursor/rules/12-implementation-completeness.mdc +0 -516
- package/dist/templates/.cursor/rules/13-language-agnostic-standards.mdc +0 -578
- package/dist/templates/.cursor/rules/README.md +0 -148
- package/dist/templates/.github/copilot-instructions.md +0 -82
- package/dist/templates/.idea/runConfigurations/CAWS_Evaluate.xml +0 -5
- package/dist/templates/.idea/runConfigurations/CAWS_Validate.xml +0 -5
- package/dist/templates/.junie/guidelines.md +0 -73
- package/dist/templates/.vscode/launch.json +0 -17
- package/dist/templates/.vscode/settings.json +0 -95
- package/dist/templates/.windsurf/rules/caws-quality-standards.md +0 -54
- package/dist/templates/.windsurf/workflows/caws-guided-development.md +0 -92
- package/dist/templates/CLAUDE.md +0 -174
- package/dist/templates/COMMIT_CONVENTIONS.md +0 -86
- package/dist/templates/OIDC_SETUP.md +0 -300
- package/dist/templates/agents.md +0 -145
- package/dist/templates/codemod/README.md +0 -1
- package/dist/templates/codemod/test.js +0 -93
- package/dist/templates/docs/README.md +0 -151
- package/dist/templates/scripts/new_feature.sh +0 -80
- package/dist/templates/scripts/quality-gates/check-god-objects.js +0 -146
- package/dist/templates/scripts/quality-gates/run-quality-gates.js +0 -50
- package/dist/templates/scripts/v3/analysis/todo_analyzer.py +0 -1997
- package/dist/test-analysis.js +0 -786
- package/dist/tool-interface.js +0 -314
- package/dist/tool-loader.js +0 -303
- package/dist/tool-validator.js +0 -393
- package/dist/utils/agent-session.js +0 -202
- package/dist/utils/async-utils.js +0 -188
- package/dist/utils/command-wrapper.js +0 -200
- package/dist/utils/event-log.js +0 -584
- package/dist/utils/event-renderer.js +0 -521
- package/dist/utils/finalization.js +0 -230
- package/dist/utils/git-lock.js +0 -119
- package/dist/utils/gitignore-updater.js +0 -158
- package/dist/utils/ide-detection.js +0 -133
- package/dist/utils/lifecycle-events.js +0 -94
- package/dist/utils/project-analysis.js +0 -367
- package/dist/utils/promise-utils.js +0 -72
- package/dist/utils/quality-gates-errors.js +0 -520
- package/dist/utils/quality-gates-utils.js +0 -387
- package/dist/utils/schema-validator.js +0 -50
- package/dist/utils/spec-resolver.js +0 -711
- package/dist/utils/typescript-detector.js +0 -369
- package/dist/utils/working-state.js +0 -530
- package/dist/utils/yaml-validation.js +0 -156
- package/dist/validation/spec-validation.js +0 -921
- package/dist/waivers-manager.js +0 -732
- package/dist/worktree/worktree-manager.js +0 -1374
- package/templates/.caws/schemas/policy.schema.json +0 -112
- package/templates/.caws/schemas/scope.schema.json +0 -52
- package/templates/.caws/schemas/waivers.schema.json +0 -106
- package/templates/.caws/schemas/working-spec.schema.json +0 -340
- package/templates/.caws/schemas/worktrees.schema.json +0 -38
- package/templates/.caws/templates/working-spec.template.yml +0 -80
- package/templates/.caws/tools/README.md +0 -18
- package/templates/.caws/tools/scope-guard.js +0 -203
- package/templates/.caws/tools-allow.json +0 -331
- package/templates/.caws/waivers.yml +0 -19
- package/templates/.claude/README.md +0 -190
- package/templates/.claude/hooks/audit.sh +0 -121
- package/templates/.claude/hooks/block-dangerous.sh +0 -203
- package/templates/.claude/hooks/classify_command.py +0 -592
- package/templates/.claude/hooks/doc-frontmatter-check.sh +0 -173
- package/templates/.claude/hooks/lite-sprawl-check.sh +0 -145
- package/templates/.claude/hooks/naming-check.sh +0 -100
- package/templates/.claude/hooks/protected-paths.sh +0 -39
- package/templates/.claude/hooks/quality-check.sh +0 -81
- package/templates/.claude/hooks/scan-secrets.sh +0 -85
- package/templates/.claude/hooks/scope-guard.sh +0 -381
- package/templates/.claude/hooks/session-caws-status.sh +0 -117
- package/templates/.claude/hooks/session-log.sh +0 -634
- package/templates/.claude/hooks/simplification-guard.sh +0 -92
- package/templates/.claude/hooks/stop-worktree-check.sh +0 -46
- package/templates/.claude/hooks/test_classify_command.py +0 -370
- package/templates/.claude/hooks/test_wrapper_smoke.sh +0 -96
- package/templates/.claude/hooks/validate-spec.sh +0 -76
- package/templates/.claude/hooks/worktree-guard.sh +0 -220
- package/templates/.claude/hooks/worktree-write-guard.sh +0 -190
- package/templates/.claude/rules/git-safety.md +0 -26
- package/templates/.claude/rules/worktree-isolation.md +0 -83
- package/templates/.claude/settings.json +0 -141
- package/templates/.cursor/README.md +0 -299
- package/templates/.cursor/hooks/audit.sh +0 -55
- package/templates/.cursor/hooks/block-dangerous.sh +0 -84
- package/templates/.cursor/hooks/caws-quality-check.sh +0 -52
- package/templates/.cursor/hooks/caws-scope-guard.sh +0 -130
- package/templates/.cursor/hooks/format.sh +0 -38
- package/templates/.cursor/hooks/naming-check.sh +0 -64
- package/templates/.cursor/hooks/scan-secrets.sh +0 -51
- package/templates/.cursor/hooks/scope-guard.sh +0 -52
- package/templates/.cursor/hooks/session-log.sh +0 -924
- package/templates/.cursor/hooks/validate-spec.sh +0 -83
- package/templates/.cursor/hooks.json +0 -76
- package/templates/.cursor/rules/00-claims-verification.mdc +0 -144
- package/templates/.cursor/rules/01-working-style.mdc +0 -50
- package/templates/.cursor/rules/02-quality-gates.mdc +0 -368
- package/templates/.cursor/rules/03-naming-and-refactor.mdc +0 -33
- package/templates/.cursor/rules/04-logging-language-style.mdc +0 -23
- package/templates/.cursor/rules/05-safe-defaults-guards.mdc +0 -23
- package/templates/.cursor/rules/06-typescript-conventions.mdc +0 -36
- package/templates/.cursor/rules/07-process-ops.mdc +0 -20
- package/templates/.cursor/rules/08-solid-and-architecture.mdc +0 -16
- package/templates/.cursor/rules/09-docstrings.mdc +0 -89
- package/templates/.cursor/rules/10-documentation-quality-standards.mdc +0 -385
- package/templates/.cursor/rules/11-scope-management-waivers.mdc +0 -381
- package/templates/.cursor/rules/12-implementation-completeness.mdc +0 -516
- package/templates/.cursor/rules/13-language-agnostic-standards.mdc +0 -578
- package/templates/.cursor/rules/README.md +0 -148
- package/templates/.github/copilot-instructions.md +0 -82
- package/templates/.idea/runConfigurations/CAWS_Evaluate.xml +0 -5
- package/templates/.idea/runConfigurations/CAWS_Validate.xml +0 -5
- package/templates/.junie/guidelines.md +0 -73
- package/templates/.vscode/launch.json +0 -17
- package/templates/.vscode/settings.json +0 -95
- package/templates/.windsurf/rules/caws-quality-standards.md +0 -54
- package/templates/.windsurf/workflows/caws-guided-development.md +0 -92
- package/templates/CLAUDE.md +0 -174
- package/templates/COMMIT_CONVENTIONS.md +0 -86
- package/templates/OIDC_SETUP.md +0 -300
- package/templates/agents.md +0 -145
- package/templates/codemod/README.md +0 -1
- package/templates/codemod/test.js +0 -93
- package/templates/docs/README.md +0 -151
- package/templates/scripts/new_feature.sh +0 -80
- package/templates/scripts/quality-gates/check-god-objects.js +0 -146
- package/templates/scripts/quality-gates/run-quality-gates.js +0 -50
- package/templates/scripts/v3/analysis/todo_analyzer.py +0 -1997
package/README.md
CHANGED
|
@@ -1,408 +1,159 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
**
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
1
|
+
# @paths.design/caws-cli
|
|
2
|
+
|
|
3
|
+
**CAWS CLI v11.0.0 — the governed core for the Coding Agent Workflow System.**
|
|
4
|
+
|
|
5
|
+
CAWS (Coding Agent Workflow System) gives coding agents a deterministic
|
|
6
|
+
substrate for project state, scope, claims, gates, waivers, and audit
|
|
7
|
+
evidence. v11.0.0 is a ground-up rewrite around a pure kernel, an I/O
|
|
8
|
+
store, and a thin shell. It replaces v10.x.
|
|
9
|
+
|
|
10
|
+
## What v11 ships
|
|
11
|
+
|
|
12
|
+
Exactly eight command groups. Nothing else.
|
|
13
|
+
|
|
14
|
+
| Command | What it does |
|
|
15
|
+
|---|---|
|
|
16
|
+
| `caws init` | Bootstrap the canonical `.caws/` project state. Idempotent. Refuses to overwrite legacy single-spec layout. |
|
|
17
|
+
| `caws doctor` | Drift detection over `.caws/` state. Exits 0 (clean) / 1 (findings or load errors) / 2 (composition failure). |
|
|
18
|
+
| `caws status` | Read-only dashboard: project, current context, claim, doctor findings. Always exits 0; never mutates `.caws/`. |
|
|
19
|
+
| `caws scope show <path>` | Explain the scope decision for `<path>`. Always exits 0. |
|
|
20
|
+
| `caws scope check <path>` | Enforce the scope decision for `<path>`. Exits 0 on admit, 1 on refuse. |
|
|
21
|
+
| `caws claim [--takeover]` | Surface or take ownership of the current worktree. Writes a `prior_owners` audit on takeover. |
|
|
22
|
+
| `caws gates run --spec <id>` | Run quality gates against current changes. Policy decides block/warn/skip. Appends one `gate_evaluated` event per policy-declared gate. |
|
|
23
|
+
| `caws evidence record --type <kind> --spec <id> --data <json>` | Append a typed evidence event (`test`/`gate`/`ac`) to `.caws/events.jsonl`. |
|
|
24
|
+
| `caws waiver create/list/show/revoke` | Manage waiver records that filter matching gate violations. Singular surface — no plural alias. |
|
|
25
|
+
|
|
26
|
+
Run `caws <group> --help` for full options.
|
|
27
|
+
|
|
28
|
+
## Posture: what v11 does NOT ship
|
|
29
|
+
|
|
30
|
+
v11.0.0 is the **governed core**. It is not a complete lifecycle CLI.
|
|
31
|
+
The following commands existed in v10.2.x and are **removed** in v11:
|
|
32
|
+
|
|
33
|
+
- `caws scaffold` — installed legacy templates and git hooks.
|
|
34
|
+
- `caws validate`, `caws verify-acs`, `caws evaluate`, `caws iterate`,
|
|
35
|
+
`caws diagnose`, `caws burnup` — used legacy spec resolution
|
|
36
|
+
(`working-spec.yaml` fallback) and a parallel event-log writer.
|
|
37
|
+
- `caws specs`, `caws worktree`, `caws archive`, `caws parallel` —
|
|
38
|
+
spec/worktree lifecycle (returns in v11.1).
|
|
39
|
+
- `caws provenance`, `caws hooks` — superseded by `.caws/events.jsonl`
|
|
40
|
+
and `caws gates run`. Generated git hooks called the removed
|
|
41
|
+
commands.
|
|
42
|
+
- `caws sidecar`, `caws mode`, `caws tutorial`, `caws plan`,
|
|
43
|
+
`caws agents`, `caws session`, `caws templates`, `caws workflow`,
|
|
44
|
+
`caws quality-monitor`, `caws tool`, `caws test-analysis` —
|
|
45
|
+
peripherals not part of the governed core under A1.
|
|
46
|
+
|
|
47
|
+
If your project depends on the legacy spec or worktree lifecycle
|
|
48
|
+
commands, **pin to `caws-cli@^10.2.x` until v11.1 ships** vNext
|
|
49
|
+
lifecycle commands. The two CLIs cannot coexist on the same project —
|
|
50
|
+
they write to overlapping state.
|
|
51
|
+
|
|
52
|
+
See `docs/architecture/caws-vnext-command-surface.md` in the repo for
|
|
53
|
+
the complete cutover doctrine, removal table, and architectural
|
|
54
|
+
invariants.
|
|
17
55
|
|
|
18
56
|
## Installation
|
|
19
57
|
|
|
20
|
-
### Global Installation (Recommended)
|
|
21
|
-
|
|
22
58
|
```bash
|
|
23
|
-
npm install -g @paths.design/caws-cli
|
|
59
|
+
npm install -g @paths.design/caws-cli@^11.0.0
|
|
24
60
|
```
|
|
25
61
|
|
|
26
|
-
|
|
62
|
+
The package depends on `@paths.design/caws-kernel@^1.0.0` (the pure
|
|
63
|
+
governance primitives). Both are published independently; the kernel
|
|
64
|
+
is published first and the CLI second.
|
|
27
65
|
|
|
28
|
-
|
|
29
|
-
# Clone the CAWS monorepo
|
|
30
|
-
git clone https://github.com/paths-design/caws.git
|
|
31
|
-
cd caws
|
|
66
|
+
Requires Node.js >= 18.
|
|
32
67
|
|
|
33
|
-
|
|
34
|
-
npm install
|
|
68
|
+
## Quickstart
|
|
35
69
|
|
|
36
|
-
|
|
37
|
-
npm run build
|
|
38
|
-
|
|
39
|
-
# Use locally
|
|
40
|
-
node packages/caws-cli/dist/index.js --help
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
## Core Commands
|
|
44
|
-
|
|
45
|
-
### Project Management
|
|
70
|
+
In a fresh repo:
|
|
46
71
|
|
|
47
72
|
```bash
|
|
48
|
-
|
|
49
|
-
caws init
|
|
50
|
-
|
|
51
|
-
# Add CAWS to existing project
|
|
52
|
-
caws scaffold
|
|
53
|
-
|
|
54
|
-
# Validate working specification
|
|
55
|
-
caws validate
|
|
56
|
-
|
|
57
|
-
# Get help
|
|
58
|
-
caws --help
|
|
73
|
+
git init
|
|
74
|
+
caws init
|
|
59
75
|
```
|
|
60
76
|
|
|
61
|
-
|
|
77
|
+
`caws init` creates the canonical vNext layout:
|
|
62
78
|
|
|
63
|
-
```bash
|
|
64
|
-
# Evaluate work quality (JSON output for agents)
|
|
65
|
-
caws agent evaluate .caws/working-spec.yaml
|
|
66
|
-
|
|
67
|
-
# Get iterative development guidance
|
|
68
|
-
caws agent iterate --current-state "Started implementation" .caws/working-spec.yaml
|
|
69
79
|
```
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
#
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
--reason emergency_hotfix \
|
|
78
|
-
--gates coverage_threshold \
|
|
79
|
-
--expires-at "2025-11-01T00:00:00Z" \
|
|
80
|
-
--approved-by "security-team"
|
|
81
|
-
|
|
82
|
-
# List active waivers
|
|
83
|
-
caws waivers list
|
|
84
|
-
|
|
85
|
-
# Revoke a waiver
|
|
86
|
-
caws waivers revoke WV-0001
|
|
80
|
+
.caws/
|
|
81
|
+
specs/ # per-feature specs (.caws/specs/<id>.yaml)
|
|
82
|
+
waivers/ # waiver records (.caws/waivers/<id>.yaml)
|
|
83
|
+
policy.yaml # gate block/warn/skip policy
|
|
84
|
+
worktrees.json # worktree registry
|
|
85
|
+
agents.json # agent session registry
|
|
86
|
+
# events.jsonl is created on first append; never required at rest.
|
|
87
87
|
```
|
|
88
88
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
# Run quality gates v2 pipeline
|
|
93
|
-
caws gates run
|
|
94
|
-
|
|
95
|
-
# Run legacy quality gates
|
|
96
|
-
caws quality-gates
|
|
97
|
-
```
|
|
89
|
+
It refuses to run if legacy `.caws/working-spec.yaml` is present.
|
|
90
|
+
Migrate that file into per-feature `.caws/specs/<id>.yaml` first (or
|
|
91
|
+
do the migration on `caws-cli@10.2.x` and then upgrade).
|
|
98
92
|
|
|
99
|
-
|
|
93
|
+
Then:
|
|
100
94
|
|
|
101
95
|
```bash
|
|
102
|
-
#
|
|
103
|
-
caws
|
|
104
|
-
|
|
105
|
-
#
|
|
106
|
-
caws
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
caws
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
caws worktree bind <spec-id>
|
|
116
|
-
|
|
117
|
-
# Repair registry inconsistencies
|
|
118
|
-
caws worktree repair
|
|
96
|
+
caws doctor # health check (exit 0/1/2)
|
|
97
|
+
caws status # dashboard
|
|
98
|
+
caws scope show src/foo.ts # what scope says about src/foo.ts
|
|
99
|
+
caws gates run --spec FEAT-1 # run policy-driven gates
|
|
100
|
+
caws waiver create FOO-1 \
|
|
101
|
+
--title "Temporary waiver for X" \
|
|
102
|
+
--gate budget_limit \
|
|
103
|
+
--reason "..." \
|
|
104
|
+
--approved-by "team-lead" \
|
|
105
|
+
--expires-at "2026-12-01T00:00:00Z"
|
|
106
|
+
caws evidence record \
|
|
107
|
+
--type test --spec FEAT-1 \
|
|
108
|
+
--data '{"name":"unit","status":"pass"}'
|
|
119
109
|
```
|
|
120
110
|
|
|
121
|
-
|
|
111
|
+
## Architecture (v11)
|
|
122
112
|
|
|
123
|
-
|
|
124
|
-
# Inspect effective scope boundaries, mode, and binding health
|
|
125
|
-
caws scope show
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
### Session Management
|
|
129
|
-
|
|
130
|
-
```bash
|
|
131
|
-
# Start a tracked session
|
|
132
|
-
caws session start
|
|
133
|
-
|
|
134
|
-
# Create a session checkpoint
|
|
135
|
-
caws session checkpoint
|
|
136
|
-
|
|
137
|
-
# End a session
|
|
138
|
-
caws session end
|
|
139
|
-
|
|
140
|
-
# List past sessions
|
|
141
|
-
caws session list
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
### Spec Management
|
|
145
|
-
|
|
146
|
-
```bash
|
|
147
|
-
# List all specs (project + feature)
|
|
148
|
-
caws specs list
|
|
149
|
-
|
|
150
|
-
# Create a feature spec
|
|
151
|
-
caws specs create FEAT-001 --type feature --title "description"
|
|
152
|
-
|
|
153
|
-
# Show a spec
|
|
154
|
-
caws specs show FEAT-001
|
|
155
|
-
|
|
156
|
-
# Check for scope conflicts between specs
|
|
157
|
-
caws specs conflicts
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
### Tool Management
|
|
161
|
-
|
|
162
|
-
```bash
|
|
163
|
-
# Run the CAWS tool interface
|
|
164
|
-
caws tool
|
|
165
|
-
```
|
|
166
|
-
|
|
167
|
-
## Architecture
|
|
168
|
-
|
|
169
|
-
The CLI is built with a modular architecture:
|
|
113
|
+
Three layers:
|
|
170
114
|
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
### Key Components
|
|
183
|
-
|
|
184
|
-
- **Command Parser**: Commander.js-based CLI with subcommands
|
|
185
|
-
- **Tool System**: Dynamic loading of quality gate tools
|
|
186
|
-
- **Waiver Manager**: Fast-lane escape hatch management
|
|
187
|
-
- **Quality Gates v2**: Modular gate pipeline with configurable modules
|
|
188
|
-
- **Agent Interface**: JSON APIs for programmatic agent integration
|
|
115
|
+
1. **Kernel** (`@paths.design/caws-kernel`) — pure TypeScript. Spec
|
|
116
|
+
parsing, policy validation, scope evaluation, doctor inspection,
|
|
117
|
+
waiver effectiveness, hash-chained event verification. No `fs`,
|
|
118
|
+
`path`, `process.env`, `Date.now()`, or `new Date()` in executable
|
|
119
|
+
code; all time is injected.
|
|
120
|
+
2. **Store** — Node I/O. Atomic writes via `writeFileAtomic`,
|
|
121
|
+
hash-chained `events.jsonl` via lock + `prepareAppend`,
|
|
122
|
+
snapshot composition for the doctor, `working-spec.yaml` residue
|
|
123
|
+
detection.
|
|
124
|
+
3. **Shell** — Commander commands and renderers. Composes store
|
|
125
|
+
snapshots, calls kernel functions, prints diagnostics.
|
|
189
126
|
|
|
190
|
-
|
|
127
|
+
### Architectural invariants
|
|
191
128
|
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
129
|
+
1. `events.jsonl` is written ONLY through the store's `appendEvent`.
|
|
130
|
+
2. `policy.yaml` owns gate `mode` (block/warn/skip). Waivers filter
|
|
131
|
+
violations out of the disposition; they do not change gate mode.
|
|
132
|
+
3. Doctor is pure (kernel-side). The store composes the snapshot;
|
|
133
|
+
doctor inspects it.
|
|
134
|
+
4. Missing != malformed. Diagnostics distinguish absence from
|
|
135
|
+
corruption.
|
|
136
|
+
5. `events.jsonl` is never required at rest. The first `appendEvent`
|
|
137
|
+
creates it.
|
|
138
|
+
6. `caws init` is idempotent and non-destructive. It refuses legacy
|
|
139
|
+
residue. There is no `--force`.
|
|
140
|
+
7. `caws status` is observability. Running it any number of times
|
|
141
|
+
produces no `.caws/` byte changes.
|
|
203
142
|
|
|
204
|
-
|
|
143
|
+
## Exit codes
|
|
205
144
|
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
2. **Security Scanning**: Runs security checks and secret detection
|
|
212
|
-
3. **Scope Enforcement**: Verifies changes stay within spec-defined boundaries
|
|
213
|
-
4. **Test & Coverage**: Runs tests and validates coverage thresholds per risk tier
|
|
214
|
-
5. **Performance Checks**: Validates performance budgets and metrics
|
|
215
|
-
|
|
216
|
-
Gates can be configured per-spec with `mode` (block/warn/skip) and custom `thresholds` in policy.yaml.
|
|
217
|
-
|
|
218
|
-
### Agent Workflow Integration
|
|
219
|
-
|
|
220
|
-
The CLI provides structured APIs for agents:
|
|
221
|
-
|
|
222
|
-
```javascript
|
|
223
|
-
// Agent can evaluate work quality
|
|
224
|
-
const result = await runCommand('caws agent evaluate spec.yaml');
|
|
225
|
-
// Returns: { success: true, evaluation: { quality_score: 0.85, ... } }
|
|
226
|
-
|
|
227
|
-
// Agent can get guidance for next steps
|
|
228
|
-
const guidance = await runCommand('caws agent iterate --current-state "..." spec.yaml');
|
|
229
|
-
// Returns: { guidance: "...", next_steps: [...], confidence: 0.8 }
|
|
230
|
-
```
|
|
231
|
-
|
|
232
|
-
## Configuration
|
|
233
|
-
|
|
234
|
-
### Working Specifications
|
|
235
|
-
|
|
236
|
-
Projects use `.caws/working-spec.yaml` files:
|
|
237
|
-
|
|
238
|
-
```yaml
|
|
239
|
-
id: PROJ-001
|
|
240
|
-
title: 'Feature implementation'
|
|
241
|
-
risk_tier: 2
|
|
242
|
-
mode: feature
|
|
243
|
-
change_budget:
|
|
244
|
-
max_files: 25
|
|
245
|
-
max_loc: 1000
|
|
246
|
-
acceptance:
|
|
247
|
-
- id: 'A1'
|
|
248
|
-
given: 'Current state'
|
|
249
|
-
when: 'Feature implemented'
|
|
250
|
-
then: 'Expected behavior'
|
|
251
|
-
```
|
|
252
|
-
|
|
253
|
-
### Tool Configuration
|
|
254
|
-
|
|
255
|
-
Tools are configured in `apps/tools/caws/` directory with metadata:
|
|
256
|
-
|
|
257
|
-
```javascript
|
|
258
|
-
// Tool metadata
|
|
259
|
-
{
|
|
260
|
-
id: 'validate',
|
|
261
|
-
name: 'Working Spec Validator',
|
|
262
|
-
capabilities: ['validation', 'quality-gates'],
|
|
263
|
-
version: '1.0.0'
|
|
264
|
-
}
|
|
265
|
-
```
|
|
266
|
-
|
|
267
|
-
## Development
|
|
268
|
-
|
|
269
|
-
### Building
|
|
270
|
-
|
|
271
|
-
```bash
|
|
272
|
-
cd packages/caws-cli
|
|
273
|
-
npm run build # Compile TypeScript
|
|
274
|
-
npm run dev # Development with watch
|
|
275
|
-
npm run lint # Run ESLint
|
|
276
|
-
npm run test # Run tests
|
|
277
|
-
```
|
|
278
|
-
|
|
279
|
-
### Adding New Commands
|
|
280
|
-
|
|
281
|
-
1. Add command implementation in `src/index.js`
|
|
282
|
-
2. Update help text and option parsing
|
|
283
|
-
3. Add integration tests
|
|
284
|
-
4. Update documentation
|
|
285
|
-
|
|
286
|
-
### Tool Development
|
|
287
|
-
|
|
288
|
-
Tools follow a standardized interface:
|
|
289
|
-
|
|
290
|
-
```javascript
|
|
291
|
-
class MyTool extends BaseTool {
|
|
292
|
-
getMetadata() {
|
|
293
|
-
return {
|
|
294
|
-
id: 'my-tool',
|
|
295
|
-
name: 'My Custom Tool',
|
|
296
|
-
capabilities: ['validation'],
|
|
297
|
-
version: '1.0.0',
|
|
298
|
-
};
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
async executeImpl(parameters, context) {
|
|
302
|
-
// Tool logic here
|
|
303
|
-
return { success: true, output: result };
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
```
|
|
307
|
-
|
|
308
|
-
## Testing
|
|
309
|
-
|
|
310
|
-
### Test Categories
|
|
311
|
-
|
|
312
|
-
- **Unit Tests**: Individual command and component testing
|
|
313
|
-
- **Integration Tests**: End-to-end command workflows
|
|
314
|
-
- **Contract Tests**: API compatibility testing
|
|
315
|
-
- **Quality Gate Tests**: Tool execution and validation
|
|
316
|
-
|
|
317
|
-
### Running Tests
|
|
318
|
-
|
|
319
|
-
```bash
|
|
320
|
-
npm run test # All tests
|
|
321
|
-
npm run test:unit # Unit tests only
|
|
322
|
-
npm run test:integration # Integration tests
|
|
323
|
-
npm run test:contract # Contract tests
|
|
324
|
-
```
|
|
325
|
-
|
|
326
|
-
## Security
|
|
327
|
-
|
|
328
|
-
### Tool Validation
|
|
329
|
-
|
|
330
|
-
- All tools are validated against allowlists
|
|
331
|
-
- Security scanning prevents malicious tool execution
|
|
332
|
-
- Sandboxed execution environment
|
|
333
|
-
- Audit trails for all tool usage
|
|
334
|
-
|
|
335
|
-
### Waiver Security
|
|
336
|
-
|
|
337
|
-
- Waivers require explicit approval and justification
|
|
338
|
-
- Time-limited validity prevents permanent bypasses
|
|
339
|
-
- Audit logs track all waiver usage
|
|
340
|
-
- High-risk waivers trigger review processes
|
|
341
|
-
|
|
342
|
-
## Troubleshooting
|
|
343
|
-
|
|
344
|
-
### Common Issues
|
|
345
|
-
|
|
346
|
-
**Command not found**
|
|
347
|
-
|
|
348
|
-
```bash
|
|
349
|
-
# Ensure global installation
|
|
350
|
-
npm install -g @paths.design/caws-cli
|
|
351
|
-
caws --version
|
|
352
|
-
|
|
353
|
-
# Or use local installation
|
|
354
|
-
node packages/caws-cli/dist/index.js --help
|
|
355
|
-
```
|
|
356
|
-
|
|
357
|
-
**Tool loading errors**
|
|
358
|
-
|
|
359
|
-
```bash
|
|
360
|
-
# Check tool directory structure
|
|
361
|
-
ls -la apps/tools/caws/
|
|
362
|
-
|
|
363
|
-
# Validate tool metadata
|
|
364
|
-
caws tools list
|
|
365
|
-
|
|
366
|
-
# Check tool permissions
|
|
367
|
-
chmod +x apps/tools/caws/*.js
|
|
368
|
-
```
|
|
369
|
-
|
|
370
|
-
**Validation failures**
|
|
371
|
-
|
|
372
|
-
```bash
|
|
373
|
-
# Check working spec syntax
|
|
374
|
-
caws validate --suggestions .caws/working-spec.yaml
|
|
375
|
-
|
|
376
|
-
# Auto-fix common issues
|
|
377
|
-
caws validate --auto-fix .caws/working-spec.yaml
|
|
378
|
-
```
|
|
145
|
+
- `0` — success / observation.
|
|
146
|
+
- `1` — domain failure (gate failed, doctor finding, validation
|
|
147
|
+
rejected, scope refused).
|
|
148
|
+
- `2` — composition failure (not a git repo, can't read `.caws/`,
|
|
149
|
+
missing required tooling).
|
|
379
150
|
|
|
380
151
|
## Contributing
|
|
381
152
|
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
- Provide comprehensive error handling
|
|
386
|
-
- Include detailed help text for all commands
|
|
387
|
-
- Write tests for new functionality
|
|
388
|
-
- Update documentation for API changes
|
|
389
|
-
|
|
390
|
-
### Pull Request Process
|
|
391
|
-
|
|
392
|
-
1. Fork the repository
|
|
393
|
-
2. Create a feature branch
|
|
394
|
-
3. Add tests for new functionality
|
|
395
|
-
4. Ensure all tests pass
|
|
396
|
-
5. Update documentation
|
|
397
|
-
6. Submit pull request with working spec
|
|
153
|
+
The CAWS repo self-hosts: `.caws/` drives real quality gates on this
|
|
154
|
+
codebase. See the project repository for contributing guidelines and
|
|
155
|
+
the agent workflow guide.
|
|
398
156
|
|
|
399
157
|
## License
|
|
400
158
|
|
|
401
|
-
MIT
|
|
402
|
-
|
|
403
|
-
## Links
|
|
404
|
-
|
|
405
|
-
- **Main Project**: https://github.com/Paths-Design/coding-agent-working-standard
|
|
406
|
-
- **Documentation**: https://docs.paths.design
|
|
407
|
-
- **Issues**: https://github.com/Paths-Design/coding-agent-working-standard/issues
|
|
408
|
-
- **Discussions**: https://github.com/Paths-Design/coding-agent-working-standard/discussions
|
|
159
|
+
MIT
|