peaks-loop 4.1.3 → 4.1.4
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/.claude-plugin/marketplace.json +2 -2
- package/CHANGELOG.md +56 -0
- package/README-en.md +1 -1
- package/README.md +1 -1
- package/dist/cli/commands/asset-command-shared.d.ts +12 -0
- package/dist/cli/commands/asset-command-shared.js +45 -0
- package/dist/cli/commands/asset-commands.d.ts +6 -1
- package/dist/cli/commands/asset-commands.js +11 -372
- package/dist/cli/commands/asset-crystallize-command.d.ts +3 -0
- package/dist/cli/commands/asset-crystallize-command.js +60 -0
- package/dist/cli/commands/asset-crystallize-payload.d.ts +47 -0
- package/dist/cli/commands/asset-crystallize-payload.js +85 -0
- package/dist/cli/commands/asset-crystallize-runner.d.ts +3 -0
- package/dist/cli/commands/asset-crystallize-runner.js +133 -0
- package/dist/cli/commands/asset-dispose-command.d.ts +3 -0
- package/dist/cli/commands/asset-dispose-command.js +99 -0
- package/dist/cli/commands/asset-status-command.d.ts +3 -0
- package/dist/cli/commands/asset-status-command.js +100 -0
- package/dist/cli/commands/baseline-audit-command.d.ts +3 -0
- package/dist/cli/commands/baseline-audit-command.js +64 -0
- package/dist/cli/commands/baseline-command-shared.d.ts +23 -0
- package/dist/cli/commands/baseline-command-shared.js +39 -0
- package/dist/cli/commands/baseline-commands.js +33 -313
- package/dist/cli/commands/baseline-freeze-commands.d.ts +4 -0
- package/dist/cli/commands/baseline-freeze-commands.js +81 -0
- package/dist/cli/commands/baseline-guard-command.d.ts +3 -0
- package/dist/cli/commands/baseline-guard-command.js +52 -0
- package/dist/cli/commands/baseline-read-commands.d.ts +5 -0
- package/dist/cli/commands/baseline-read-commands.js +72 -0
- package/dist/cli/commands/baseline-rollback-commands.d.ts +4 -0
- package/dist/cli/commands/baseline-rollback-commands.js +88 -0
- package/dist/cli/commands/classify-downgrade-command.d.ts +9 -0
- package/dist/cli/commands/classify-downgrade-command.js +21 -0
- package/dist/cli/commands/classify-run-command.d.ts +9 -0
- package/dist/cli/commands/classify-run-command.js +73 -0
- package/dist/cli/commands/classify-signals.d.ts +5 -0
- package/dist/cli/commands/classify-signals.js +104 -0
- package/dist/cli/commands/code-emit-handoff-command.js +40 -3
- package/dist/cli/commands/code-gate-step-08-command.js +25 -9
- package/dist/cli/commands/codegraph-command-options.d.ts +22 -0
- package/dist/cli/commands/codegraph-command-options.js +22 -0
- package/dist/cli/commands/codegraph-commands.d.ts +2 -2
- package/dist/cli/commands/codegraph-commands.js +14 -397
- package/dist/cli/commands/codegraph-config-restore-command.d.ts +3 -0
- package/dist/cli/commands/codegraph-config-restore-command.js +200 -0
- package/dist/cli/commands/codegraph-proxy-commands.d.ts +10 -0
- package/dist/cli/commands/codegraph-proxy-commands.js +159 -0
- package/dist/cli/commands/codegraph-repair-commands.d.ts +3 -0
- package/dist/cli/commands/codegraph-repair-commands.js +94 -0
- package/dist/cli/commands/codegraph-status-command.d.ts +1 -1
- package/dist/cli/commands/codegraph-status-command.js +27 -214
- package/dist/cli/commands/codegraph-status-integrity.d.ts +44 -0
- package/dist/cli/commands/codegraph-status-integrity.js +121 -0
- package/dist/cli/commands/codegraph-status-json.d.ts +5 -0
- package/dist/cli/commands/codegraph-status-json.js +127 -0
- package/dist/cli/commands/container-command-shared.d.ts +60 -0
- package/dist/cli/commands/container-command-shared.js +52 -0
- package/dist/cli/commands/container-commands.d.ts +1 -1
- package/dist/cli/commands/container-commands.js +4 -216
- package/dist/cli/commands/container-release-command.d.ts +3 -0
- package/dist/cli/commands/container-release-command.js +105 -0
- package/dist/cli/commands/container-spawn-command.d.ts +3 -0
- package/dist/cli/commands/container-spawn-command.js +148 -0
- package/dist/cli/commands/context-check-command.d.ts +3 -0
- package/dist/cli/commands/context-check-command.js +81 -0
- package/dist/cli/commands/context-commands.d.ts +2 -7
- package/dist/cli/commands/context-commands.js +6 -276
- package/dist/cli/commands/context-layer-command.d.ts +3 -0
- package/dist/cli/commands/context-layer-command.js +34 -0
- package/dist/cli/commands/context-layer-fetchers.d.ts +15 -0
- package/dist/cli/commands/context-layer-fetchers.js +162 -0
- package/dist/cli/commands/context-status-command.d.ts +17 -0
- package/dist/cli/commands/context-status-command.js +41 -0
- package/dist/cli/commands/contract-write-command.d.ts +3 -0
- package/dist/cli/commands/contract-write-command.js +144 -0
- package/dist/cli/commands/core/doctor-bindings.d.ts +17 -0
- package/dist/cli/commands/core/doctor-bindings.js +30 -0
- package/dist/cli/commands/core/doctor-command.d.ts +4 -18
- package/dist/cli/commands/core/doctor-command.js +2 -323
- package/dist/cli/commands/core/doctor-logs.d.ts +8 -0
- package/dist/cli/commands/core/doctor-logs.js +32 -0
- package/dist/cli/commands/core/doctor-probes.d.ts +3 -0
- package/dist/cli/commands/core/doctor-probes.js +55 -0
- package/dist/cli/commands/core/doctor-run-command.d.ts +12 -0
- package/dist/cli/commands/core/doctor-run-command.js +172 -0
- package/dist/cli/commands/core/doctor-summary.d.ts +7 -0
- package/dist/cli/commands/core/doctor-summary.js +39 -0
- package/dist/cli/commands/core/memory-command-shared.d.ts +25 -0
- package/dist/cli/commands/core/memory-command-shared.js +20 -0
- package/dist/cli/commands/core/memory-command.d.ts +1 -1
- package/dist/cli/commands/core/memory-command.js +6 -227
- package/dist/cli/commands/core/memory-delegated-verbs.d.ts +4 -0
- package/dist/cli/commands/core/memory-delegated-verbs.js +178 -0
- package/dist/cli/commands/core/memory-extract-command.d.ts +3 -0
- package/dist/cli/commands/core/memory-extract-command.js +90 -0
- package/dist/cli/commands/core/memory-sync-command.d.ts +3 -0
- package/dist/cli/commands/core/memory-sync-command.js +38 -0
- package/dist/cli/commands/core/session-command.d.ts +1 -1
- package/dist/cli/commands/core/session-command.js +12 -206
- package/dist/cli/commands/core/session-info-command.d.ts +3 -0
- package/dist/cli/commands/core/session-info-command.js +142 -0
- package/dist/cli/commands/core/session-verb-commands.d.ts +5 -0
- package/dist/cli/commands/core/session-verb-commands.js +58 -0
- package/dist/cli/commands/core/standards-command.d.ts +1 -24
- package/dist/cli/commands/core/standards-command.js +33 -201
- package/dist/cli/commands/core/standards-init-command.d.ts +3 -0
- package/dist/cli/commands/core/standards-init-command.js +87 -0
- package/dist/cli/commands/core/standards-lint.d.ts +24 -0
- package/dist/cli/commands/core/standards-lint.js +57 -0
- package/dist/cli/commands/core/standards-migrate-command.d.ts +3 -0
- package/dist/cli/commands/core/standards-migrate-command.js +57 -0
- package/dist/cli/commands/cron-scheduler-commands.d.ts +5 -1
- package/dist/cli/commands/cron-scheduler-commands.js +36 -206
- package/dist/cli/commands/cron-scheduler-run-once-command.d.ts +7 -0
- package/dist/cli/commands/cron-scheduler-run-once-command.js +35 -0
- package/dist/cli/commands/cron-scheduler-shared.d.ts +6 -0
- package/dist/cli/commands/cron-scheduler-shared.js +48 -0
- package/dist/cli/commands/cron-scheduler-start-command.d.ts +7 -0
- package/dist/cli/commands/cron-scheduler-start-command.js +65 -0
- package/dist/cli/commands/cron-scheduler-status-command.d.ts +7 -0
- package/dist/cli/commands/cron-scheduler-status-command.js +46 -0
- package/dist/cli/commands/cron-scheduler-stop-command.d.ts +7 -0
- package/dist/cli/commands/cron-scheduler-stop-command.js +61 -0
- package/dist/cli/commands/dispatch-dag-envelope.d.ts +41 -0
- package/dist/cli/commands/dispatch-dag-envelope.js +49 -0
- package/dist/cli/commands/dispatch-dag-failure.d.ts +18 -0
- package/dist/cli/commands/dispatch-dag-failure.js +16 -0
- package/dist/cli/commands/dispatch-dag-preflight.d.ts +51 -0
- package/dist/cli/commands/dispatch-dag-preflight.js +105 -0
- package/dist/cli/commands/dispatch-dag-runners.d.ts +48 -0
- package/dist/cli/commands/dispatch-dag-runners.js +73 -0
- package/dist/cli/commands/dispatch-from-dag.d.ts +27 -0
- package/dist/cli/commands/dispatch-from-dag.js +87 -257
- package/dist/cli/commands/final-review-command-envelopes.d.ts +44 -0
- package/dist/cli/commands/final-review-command-envelopes.js +100 -0
- package/dist/cli/commands/final-review-command-shared.d.ts +52 -0
- package/dist/cli/commands/final-review-command-shared.js +35 -0
- package/dist/cli/commands/final-review-commands.d.ts +7 -27
- package/dist/cli/commands/final-review-commands.js +13 -240
- package/dist/cli/commands/final-review-prepare-command.d.ts +3 -0
- package/dist/cli/commands/final-review-prepare-command.js +200 -0
- package/dist/cli/commands/governance-classify-contract-commands.d.ts +23 -9
- package/dist/cli/commands/governance-classify-contract-commands.js +26 -269
- package/dist/cli/commands/hooks-command-shared.d.ts +42 -0
- package/dist/cli/commands/hooks-command-shared.js +32 -0
- package/dist/cli/commands/hooks-commands.d.ts +20 -0
- package/dist/cli/commands/hooks-commands.js +75 -309
- package/dist/cli/commands/hooks-install-envelopes.d.ts +6 -0
- package/dist/cli/commands/hooks-install-envelopes.js +144 -0
- package/dist/cli/commands/hooks-status-command.d.ts +3 -0
- package/dist/cli/commands/hooks-status-command.js +93 -0
- package/dist/cli/commands/hooks-uninstall-command.d.ts +3 -0
- package/dist/cli/commands/hooks-uninstall-command.js +43 -0
- package/dist/cli/commands/loop-command-shared.d.ts +31 -0
- package/dist/cli/commands/loop-command-shared.js +15 -0
- package/dist/cli/commands/loop-commands.d.ts +12 -17
- package/dist/cli/commands/loop-commands.js +56 -238
- package/dist/cli/commands/loop-export-command.d.ts +3 -0
- package/dist/cli/commands/loop-export-command.js +73 -0
- package/dist/cli/commands/loop-goal-compose-command.d.ts +3 -0
- package/dist/cli/commands/loop-goal-compose-command.js +36 -0
- package/dist/cli/commands/loop-import-command.d.ts +3 -0
- package/dist/cli/commands/loop-import-command.js +86 -0
- package/dist/cli/commands/loop-placeholder-commands.d.ts +3 -0
- package/dist/cli/commands/loop-placeholder-commands.js +52 -0
- package/dist/cli/commands/memory-command-shared.d.ts +59 -0
- package/dist/cli/commands/memory-command-shared.js +39 -0
- package/dist/cli/commands/memory-commands.d.ts +6 -79
- package/dist/cli/commands/memory-commands.js +19 -309
- package/dist/cli/commands/memory-ingest-command.d.ts +3 -0
- package/dist/cli/commands/memory-ingest-command.js +50 -0
- package/dist/cli/commands/memory-list-command.d.ts +16 -0
- package/dist/cli/commands/memory-list-command.js +129 -0
- package/dist/cli/commands/memory-reindex-command.d.ts +9 -0
- package/dist/cli/commands/memory-reindex-command.js +78 -0
- package/dist/cli/commands/memory-rotate-command.d.ts +3 -0
- package/dist/cli/commands/memory-rotate-command.js +55 -0
- package/dist/cli/commands/memory-search-command.d.ts +7 -0
- package/dist/cli/commands/memory-search-command.js +46 -0
- package/dist/cli/commands/openspec-archive-command.d.ts +3 -0
- package/dist/cli/commands/openspec-archive-command.js +55 -0
- package/dist/cli/commands/openspec-command-shared.d.ts +62 -0
- package/dist/cli/commands/openspec-command-shared.js +135 -0
- package/dist/cli/commands/openspec-commands.d.ts +1 -1
- package/dist/cli/commands/openspec-commands.js +33 -306
- package/dist/cli/commands/openspec-from-doctor-command.d.ts +3 -0
- package/dist/cli/commands/openspec-from-doctor-command.js +66 -0
- package/dist/cli/commands/openspec-init-command.d.ts +3 -0
- package/dist/cli/commands/openspec-init-command.js +49 -0
- package/dist/cli/commands/openspec-list-command.d.ts +3 -0
- package/dist/cli/commands/openspec-list-command.js +27 -0
- package/dist/cli/commands/openspec-render-command.d.ts +3 -0
- package/dist/cli/commands/openspec-render-command.js +33 -0
- package/dist/cli/commands/openspec-show-command.d.ts +3 -0
- package/dist/cli/commands/openspec-show-command.js +33 -0
- package/dist/cli/commands/openspec-to-rd-command.d.ts +3 -0
- package/dist/cli/commands/openspec-to-rd-command.js +33 -0
- package/dist/cli/commands/openspec-validate-command.d.ts +3 -0
- package/dist/cli/commands/openspec-validate-command.js +45 -0
- package/dist/cli/commands/playwright-browser-command.d.ts +8 -0
- package/dist/cli/commands/playwright-browser-command.js +61 -0
- package/dist/cli/commands/playwright-commands.d.ts +10 -62
- package/dist/cli/commands/playwright-commands.js +77 -400
- package/dist/cli/commands/playwright-envelope.d.ts +8 -0
- package/dist/cli/commands/playwright-envelope.js +29 -0
- package/dist/cli/commands/playwright-ls-stop-commands.d.ts +4 -0
- package/dist/cli/commands/playwright-ls-stop-commands.js +74 -0
- package/dist/cli/commands/playwright-session-store.d.ts +65 -0
- package/dist/cli/commands/playwright-session-store.js +189 -0
- package/dist/cli/commands/project-commands.d.ts +19 -0
- package/dist/cli/commands/project-commands.js +98 -259
- package/dist/cli/commands/project-context-command.d.ts +3 -0
- package/dist/cli/commands/project-context-command.js +44 -0
- package/dist/cli/commands/project-dashboard-command.d.ts +3 -0
- package/dist/cli/commands/project-dashboard-command.js +74 -0
- package/dist/cli/commands/project-knowledge-command.d.ts +3 -0
- package/dist/cli/commands/project-knowledge-command.js +48 -0
- package/dist/cli/commands/project-memories-show-command.d.ts +3 -0
- package/dist/cli/commands/project-memories-show-command.js +87 -0
- package/dist/cli/commands/project-memory-index-command.d.ts +3 -0
- package/dist/cli/commands/project-memory-index-command.js +31 -0
- package/dist/cli/commands/qa-archive-screenshots-command.d.ts +3 -0
- package/dist/cli/commands/qa-archive-screenshots-command.js +53 -0
- package/dist/cli/commands/qa-commands.d.ts +14 -87
- package/dist/cli/commands/qa-commands.js +17 -315
- package/dist/cli/commands/qa-context-prestep.d.ts +1 -0
- package/dist/cli/commands/qa-context-prestep.js +34 -0
- package/dist/cli/commands/qa-run-command.d.ts +3 -0
- package/dist/cli/commands/qa-run-command.js +105 -0
- package/dist/cli/commands/qa-run-options.d.ts +23 -0
- package/dist/cli/commands/qa-run-options.js +31 -0
- package/dist/cli/commands/qa-run-slice.d.ts +41 -0
- package/dist/cli/commands/qa-run-slice.js +145 -0
- package/dist/cli/commands/release-canary-command.d.ts +28 -0
- package/dist/cli/commands/release-canary-command.js +129 -0
- package/dist/cli/commands/release-command-shared.d.ts +13 -0
- package/dist/cli/commands/release-command-shared.js +18 -0
- package/dist/cli/commands/release-commands.d.ts +10 -18
- package/dist/cli/commands/release-commands.js +25 -298
- package/dist/cli/commands/release-done-command.d.ts +3 -0
- package/dist/cli/commands/release-done-command.js +64 -0
- package/dist/cli/commands/release-hotfix-command.d.ts +3 -0
- package/dist/cli/commands/release-hotfix-command.js +50 -0
- package/dist/cli/commands/release-plan-command.d.ts +3 -0
- package/dist/cli/commands/release-plan-command.js +33 -0
- package/dist/cli/commands/release-precheck-command.d.ts +3 -0
- package/dist/cli/commands/release-precheck-command.js +28 -0
- package/dist/cli/commands/release-promote-command.d.ts +3 -0
- package/dist/cli/commands/release-promote-command.js +34 -0
- package/dist/cli/commands/release-rollback-command.d.ts +3 -0
- package/dist/cli/commands/release-rollback-command.js +33 -0
- package/dist/cli/commands/release-watch-command.d.ts +3 -0
- package/dist/cli/commands/release-watch-command.js +44 -0
- package/dist/cli/commands/sediment-argv-flags.d.ts +54 -0
- package/dist/cli/commands/sediment-argv-flags.js +116 -0
- package/dist/cli/commands/sediment-command-shared.d.ts +15 -0
- package/dist/cli/commands/sediment-command-shared.js +5 -0
- package/dist/cli/commands/sediment-commands.d.ts +35 -59
- package/dist/cli/commands/sediment-commands.js +36 -590
- package/dist/cli/commands/sediment-pool-commands.d.ts +9 -0
- package/dist/cli/commands/sediment-pool-commands.js +185 -0
- package/dist/cli/commands/sediment-query-commands.d.ts +4 -0
- package/dist/cli/commands/sediment-query-commands.js +94 -0
- package/dist/cli/commands/sediment-release-commands.d.ts +8 -0
- package/dist/cli/commands/sediment-release-commands.js +232 -0
- package/dist/cli/commands/sop-advance-command.d.ts +3 -0
- package/dist/cli/commands/sop-advance-command.js +160 -0
- package/dist/cli/commands/sop-check-command.d.ts +3 -0
- package/dist/cli/commands/sop-check-command.js +44 -0
- package/dist/cli/commands/sop-command-shared.d.ts +23 -0
- package/dist/cli/commands/sop-command-shared.js +18 -0
- package/dist/cli/commands/sop-commands.d.ts +15 -1
- package/dist/cli/commands/sop-commands.js +26 -240
- package/dist/cli/commands/sop-init-command.d.ts +3 -0
- package/dist/cli/commands/sop-init-command.js +51 -0
- package/dist/cli/commands/sop-lint-command.d.ts +3 -0
- package/dist/cli/commands/sop-lint-command.js +64 -0
- package/dist/cli/commands/sop-register-command.d.ts +3 -0
- package/dist/cli/commands/sop-register-command.js +48 -0
- package/dist/cli/commands/sop-registry-command.d.ts +3 -0
- package/dist/cli/commands/sop-registry-command.js +30 -0
- package/dist/cli/commands/statusline-command-shared.d.ts +73 -0
- package/dist/cli/commands/statusline-command-shared.js +90 -0
- package/dist/cli/commands/statusline-commands.d.ts +1 -19
- package/dist/cli/commands/statusline-commands.js +48 -287
- package/dist/cli/commands/statusline-compact-command.d.ts +4 -0
- package/dist/cli/commands/statusline-compact-command.js +54 -0
- package/dist/cli/commands/statusline-install-command.d.ts +3 -0
- package/dist/cli/commands/statusline-install-command.js +48 -0
- package/dist/cli/commands/statusline-render-command.d.ts +9 -0
- package/dist/cli/commands/statusline-render-command.js +55 -0
- package/dist/cli/commands/statusline-status-command.d.ts +3 -0
- package/dist/cli/commands/statusline-status-command.js +23 -0
- package/dist/cli/commands/statusline-uninstall-command.d.ts +3 -0
- package/dist/cli/commands/statusline-uninstall-command.js +23 -0
- package/dist/cli/commands/test-command-run-helpers.d.ts +27 -0
- package/dist/cli/commands/test-command-run-helpers.js +73 -0
- package/dist/cli/commands/test-command-runner-resolution.d.ts +57 -0
- package/dist/cli/commands/test-command-runner-resolution.js +183 -0
- package/dist/cli/commands/test-commands.d.ts +8 -56
- package/dist/cli/commands/test-commands.js +26 -249
- package/dist/cli/commands/vm-command-shared.d.ts +23 -0
- package/dist/cli/commands/vm-command-shared.js +23 -0
- package/dist/cli/commands/vm-commands.d.ts +1 -28
- package/dist/cli/commands/vm-commands.js +36 -270
- package/dist/cli/commands/vm-hypervisor-runtime.d.ts +15 -0
- package/dist/cli/commands/vm-hypervisor-runtime.js +64 -0
- package/dist/cli/commands/vm-release-command.d.ts +5 -0
- package/dist/cli/commands/vm-release-command.js +101 -0
- package/dist/cli/commands/vm-spawn-command.d.ts +5 -0
- package/dist/cli/commands/vm-spawn-command.js +177 -0
- package/dist/cli/commands/web-command-shared.d.ts +12 -0
- package/dist/cli/commands/web-command-shared.js +30 -0
- package/dist/cli/commands/web-commands.d.ts +7 -14
- package/dist/cli/commands/web-commands.js +6 -314
- package/dist/cli/commands/web-install-command.d.ts +10 -0
- package/dist/cli/commands/web-install-command.js +116 -0
- package/dist/cli/commands/web-lifecycle-commands.d.ts +9 -30
- package/dist/cli/commands/web-lifecycle-commands.js +14 -322
- package/dist/cli/commands/web-login-command.d.ts +14 -0
- package/dist/cli/commands/web-login-command.js +189 -0
- package/dist/cli/commands/web-op-payload.d.ts +22 -0
- package/dist/cli/commands/web-op-payload.js +89 -0
- package/dist/cli/commands/web-op-refusals.d.ts +37 -0
- package/dist/cli/commands/web-op-refusals.js +73 -0
- package/dist/cli/commands/web-op-runner.d.ts +14 -0
- package/dist/cli/commands/web-op-runner.js +166 -0
- package/dist/cli/commands/web-status-command.d.ts +4 -0
- package/dist/cli/commands/web-status-command.js +32 -0
- package/dist/cli/commands/web-stop-command.d.ts +10 -0
- package/dist/cli/commands/web-stop-command.js +59 -0
- package/dist/cli/commands/web-verb-specs.d.ts +18 -0
- package/dist/cli/commands/web-verb-specs.js +66 -0
- package/dist/cli/commands/workflow-command-shared.d.ts +102 -0
- package/dist/cli/commands/workflow-command-shared.js +74 -0
- package/dist/cli/commands/workflow-graph-commands.d.ts +3 -0
- package/dist/cli/commands/workflow-graph-commands.js +73 -0
- package/dist/cli/commands/workflow-init-command.d.ts +3 -0
- package/dist/cli/commands/workflow-init-command.js +68 -0
- package/dist/cli/commands/workflow-lifecycle-commands.d.ts +9 -59
- package/dist/cli/commands/workflow-lifecycle-commands.js +14 -348
- package/dist/cli/commands/workflow-node-commands.d.ts +3 -0
- package/dist/cli/commands/workflow-node-commands.js +154 -0
- package/dist/cli/commands/workflow-terminalize-command.d.ts +3 -0
- package/dist/cli/commands/workflow-terminalize-command.js +56 -0
- package/dist/services/code/auto-compact-artifacts.d.ts +54 -0
- package/dist/services/code/auto-compact-artifacts.js +135 -0
- package/dist/services/code/auto-compact-attempt.d.ts +46 -0
- package/dist/services/code/auto-compact-attempt.js +88 -0
- package/dist/services/code/auto-compact-decision.d.ts +74 -0
- package/dist/services/code/auto-compact-decision.js +149 -0
- package/dist/services/code/auto-compact-dispatch-gate.d.ts +36 -0
- package/dist/services/code/auto-compact-dispatch-gate.js +86 -0
- package/dist/services/code/auto-compact-envelopes.d.ts +33 -0
- package/dist/services/code/auto-compact-envelopes.js +134 -0
- package/dist/services/code/auto-compact-history.d.ts +46 -0
- package/dist/services/code/auto-compact-history.js +17 -0
- package/dist/services/code/auto-compact-orchestrator.d.ts +11 -240
- package/dist/services/code/auto-compact-orchestrator.js +165 -686
- package/dist/services/code/auto-compact-run-types.d.ts +123 -0
- package/dist/services/code/auto-compact-run-types.js +1 -0
- package/dist/services/code/emit-handoff.d.ts +35 -1
- package/dist/services/code/emit-handoff.js +128 -7
- package/dist/services/code/step-08-gate.d.ts +28 -19
- package/dist/services/code/step-08-gate.js +92 -35
- package/dist/services/config/config-coercion.d.ts +7 -0
- package/dist/services/config/config-coercion.js +156 -0
- package/dist/services/config/config-file-io.d.ts +11 -0
- package/dist/services/config/config-file-io.js +61 -0
- package/dist/services/config/config-get.d.ts +2 -0
- package/dist/services/config/config-get.js +36 -0
- package/dist/services/config/config-global-loader.d.ts +15 -0
- package/dist/services/config/config-global-loader.js +111 -0
- package/dist/services/config/config-nested-path.d.ts +3 -0
- package/dist/services/config/config-nested-path.js +53 -0
- package/dist/services/config/config-primitives.d.ts +16 -0
- package/dist/services/config/config-primitives.js +24 -0
- package/dist/services/config/config-service.d.ts +9 -33
- package/dist/services/config/config-service.js +16 -665
- package/dist/services/config/config-validation.d.ts +19 -0
- package/dist/services/config/config-validation.js +152 -0
- package/dist/services/config/config-workspace.d.ts +10 -0
- package/dist/services/config/config-workspace.js +158 -0
- package/dist/services/skills/hooks-settings-deny-list.d.ts +61 -0
- package/dist/services/skills/hooks-settings-deny-list.js +173 -0
- package/dist/services/skills/hooks-settings-envelopes.d.ts +20 -0
- package/dist/services/skills/hooks-settings-envelopes.js +79 -0
- package/dist/services/skills/hooks-settings-file-shape.d.ts +43 -0
- package/dist/services/skills/hooks-settings-file-shape.js +207 -0
- package/dist/services/skills/hooks-settings-paths.d.ts +34 -0
- package/dist/services/skills/hooks-settings-paths.js +75 -0
- package/dist/services/skills/hooks-settings-read-installed.d.ts +39 -0
- package/dist/services/skills/hooks-settings-read-installed.js +60 -0
- package/dist/services/skills/hooks-settings-service.d.ts +12 -212
- package/dist/services/skills/hooks-settings-service.js +71 -657
- package/dist/services/skills/hooks-settings-types.d.ts +139 -0
- package/dist/services/skills/hooks-settings-types.js +1 -0
- package/dist/services/workspace/claude-settings-template-merge.d.ts +89 -0
- package/dist/services/workspace/claude-settings-template-merge.js +243 -0
- package/dist/services/workspace/claude-settings-template.d.ts +29 -87
- package/dist/services/workspace/claude-settings-template.js +81 -236
- package/package.json +5 -5
|
@@ -1,228 +1,28 @@
|
|
|
1
|
-
import type { IdeId } from '../ide/ide-types.js';
|
|
2
1
|
import type { HookScope } from '../ide/shared/safe-path.js';
|
|
3
2
|
import { type PeaksHookEntry } from './hooks-codegate-superpowers.js';
|
|
4
3
|
export { HOOK_ENFORCE_SENTINEL, HOOK_CODE_GATE_SENTINEL, HOOK_CODE_GATE_MATCHER, HOOK_CODE_GATE_EVENT, HOOK_CODE_GATE_COMMAND, SUPERPOWERS_DENIED_SKILLS, type PeaksHookEntry } from './hooks-codegate-superpowers.js';
|
|
5
4
|
/**
|
|
6
5
|
* Install (and remove) the Peaks-managed hooks in an IDE's settings.json.
|
|
7
6
|
*
|
|
8
|
-
* The hook runs `peaks gate enforce`
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* tool call BEFORE the IDE's permission checks — making the gate
|
|
12
|
-
* un-bypassable by the agent.
|
|
7
|
+
* The hook runs `peaks gate enforce` before every relevant tool call; when a SOP
|
|
8
|
+
* guard's gates fail it returns the adapter-specific deny shape, which blocks the
|
|
9
|
+
* tool call BEFORE the IDE's permission checks — making the gate un-bypassable.
|
|
13
10
|
*
|
|
14
|
-
*
|
|
15
|
-
* `
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
* Slice #3 refactor (this commit): the service is now per-IDE aware via an
|
|
19
|
-
* optional `options.ide` parameter. The CLI command is responsible for
|
|
20
|
-
* resolving the IDE (env → stdin shape → cwd → fallback to 'claude-code')
|
|
21
|
-
* via `detectIdeFromContext` and passing the result here. When `ide` is
|
|
22
|
-
* omitted, the service defaults to `'claude-code'` so existing tests and
|
|
23
|
-
* downstream callers continue to work without modification.
|
|
24
|
-
*
|
|
25
|
-
* Installation is an EXPLICIT user command (never postinstall): skills describe,
|
|
26
|
-
* the CLI performs side effects. Writes preserve all other settings keys and
|
|
27
|
-
* any other hooks, reject symlinked targets, and use an atomic rename so a
|
|
28
|
-
* partial write can never corrupt the settings file. Our entry is merged into
|
|
29
|
-
* (not replacing) the existing `hooks.<event>` array and is identified by a
|
|
30
|
-
* sentinel substring in its command, so install is idempotent and uninstall
|
|
31
|
-
* removes only our own entry.
|
|
11
|
+
* This file owns the policy and the four operations; the mechanisms live in the
|
|
12
|
+
* `hooks-settings-*` siblings. Installation is an EXPLICIT user command (never
|
|
13
|
+
* postinstall): skills describe, the CLI performs side effects. Writes preserve every
|
|
14
|
+
* other key and hook, reject symlinked targets, and use an atomic rename.
|
|
32
15
|
*/
|
|
33
16
|
export type { HookScope } from '../ide/shared/safe-path.js';
|
|
34
|
-
export type HookInstallOptions
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
* Throws if the IDE is not registered in the adapter registry.
|
|
40
|
-
*/
|
|
41
|
-
readonly ide?: IdeId;
|
|
42
|
-
/**
|
|
43
|
-
* Slice #013 (bugfix — peaks hooks install --no-progress): when `true`,
|
|
44
|
-
* skip emitting the progress-start PreToolUse hook entry while still
|
|
45
|
-
* installing the gate-enforce entry. The progress-start hook auto-spawns
|
|
46
|
-
* a new terminal running `peaks progress watch`; with dispatch +
|
|
47
|
-
* heartbeat (slice #009 + #010) that auto-spawn is dead weight. Default
|
|
48
|
-
* `false` preserves the pre-slice install shape (both entries). The
|
|
49
|
-
* sentinel-based install is idempotent: re-running with `skipProgress:
|
|
50
|
-
* true` over a settings.json that previously had the progress entry
|
|
51
|
-
* installed will remove that entry. `uninstall` honors the same flag
|
|
52
|
-
* so it can find and remove both entries when both are present and
|
|
53
|
-
* only the gate-enforce entry when only the gate-enforce is present.
|
|
54
|
-
*
|
|
55
|
-
* Slice #014 (refactor — full removal of legacy progress-start surface):
|
|
56
|
-
* the field is preserved for API stability, but the underlying
|
|
57
|
-
* install only ever emits the gate-enforce entry. The progress-start
|
|
58
|
-
* entry is no longer installed regardless of this flag's value. The
|
|
59
|
-
* legacy `peaks progress start|watch|close` CLI surface is gone
|
|
60
|
-
* (replaced by `peaks sub-agent dispatch|heartbeat|share`); the hook
|
|
61
|
-
* entry would have been pointing at a `peaks progress start` that no
|
|
62
|
-
* longer exists. The sentinel `peaks progress start` constant is still
|
|
63
|
-
* exported (some tests + back-compat reads rely on it) but no new
|
|
64
|
-
* hook entries use it.
|
|
65
|
-
*/
|
|
66
|
-
readonly skipProgress?: boolean;
|
|
67
|
-
};
|
|
68
|
-
/** Default (claude-code) hook command — kept as a stable export for tests. */
|
|
17
|
+
export type { HookEntryTarget, HookInstallOptions, HookInstallPlan, HookInstallResult, HookRemoveResult, HookStatus } from './hooks-settings-types.js';
|
|
18
|
+
export { readInstalledEntriesFromSettings } from './hooks-settings-read-installed.js';
|
|
19
|
+
export { TRIGGER_PHRASES, listSuperpowersDenyEntries, withSuperpowersSkillDenylist, withTriggeredDenyList, withoutSuperpowersSkillDenylist, withoutTriggeredDenyList } from './hooks-settings-deny-list.js';
|
|
20
|
+
import type { HookInstallOptions, HookInstallPlan, HookInstallResult, HookRemoveResult, HookStatus } from './hooks-settings-types.js';
|
|
21
|
+
/** Default (claude-code) hook command. */
|
|
69
22
|
export declare const HOOK_ENFORCE_COMMAND = "peaks gate enforce --project \"${CLAUDE_PROJECT_DIR}\" --json";
|
|
70
|
-
/**
|
|
71
|
-
* One peaks-managed entry paired with the settings file it is (or will be)
|
|
72
|
-
* written to.
|
|
73
|
-
*
|
|
74
|
-
* `entries` is a flat list of the same matcher/sentinel pairs, which reads as
|
|
75
|
-
* "written to `settingsPath`" even when the entry is routed to the other file
|
|
76
|
-
* (see `resolveHookTargets`). This carries the routing explicitly so the
|
|
77
|
-
* dry-run can name the real target without a real run.
|
|
78
|
-
*/
|
|
79
|
-
export type HookEntryTarget = {
|
|
80
|
-
matcher: string;
|
|
81
|
-
sentinel: string;
|
|
82
|
-
settingsPath: string;
|
|
83
|
-
};
|
|
84
|
-
export type HookInstallPlan = {
|
|
85
|
-
scope: HookScope;
|
|
86
|
-
settingsPath: string;
|
|
87
|
-
exists: boolean;
|
|
88
|
-
alreadyInstalled: boolean;
|
|
89
|
-
desiredCommand: string;
|
|
90
|
-
sentinel: string;
|
|
91
|
-
matcher: string;
|
|
92
|
-
/**
|
|
93
|
-
* Machine-local, gitignored settings file that the gate-enforce entry is
|
|
94
|
-
* written to instead of `settingsPath`. Undefined when the IDE has no such
|
|
95
|
-
* file (or the scope is global, where the settings file is already
|
|
96
|
-
* machine-local). See `resolveHookTargets`.
|
|
97
|
-
*/
|
|
98
|
-
localSettingsPath?: string;
|
|
99
|
-
/** Every entry the install writes, paired with its target file. */
|
|
100
|
-
entryTargets: ReadonlyArray<HookEntryTarget>;
|
|
101
|
-
};
|
|
102
|
-
export type HookInstallResult = HookInstallPlan & {
|
|
103
|
-
applied: boolean;
|
|
104
|
-
};
|
|
105
|
-
export type HookRemoveResult = {
|
|
106
|
-
scope: HookScope;
|
|
107
|
-
settingsPath: string;
|
|
108
|
-
localSettingsPath?: string;
|
|
109
|
-
removed: boolean;
|
|
110
|
-
};
|
|
111
|
-
export type HookStatus = {
|
|
112
|
-
scope: HookScope;
|
|
113
|
-
settingsPath: string;
|
|
114
|
-
exists: boolean;
|
|
115
|
-
localSettingsPath?: string;
|
|
116
|
-
localExists?: boolean;
|
|
117
|
-
installed: boolean;
|
|
118
|
-
/**
|
|
119
|
-
* Whether this IDE can host a peaks hook AT ALL (`hasHookSpec`).
|
|
120
|
-
*
|
|
121
|
-
* `status` answers "what is on disk", and for an IDE with no
|
|
122
|
-
* `HOOK_COMMAND_BY_IDE` entry the answer is "nothing, and nothing ever will
|
|
123
|
-
* be" — which is a successful query returning a negative fact, not a failed
|
|
124
|
-
* one. The exit code says the query succeeded; this field says what it found.
|
|
125
|
-
* Without it `installed: false` would be indistinguishable from a supported
|
|
126
|
-
* IDE that simply has no hook installed yet, which is a state the user can
|
|
127
|
-
* act on.
|
|
128
|
-
*/
|
|
129
|
-
supportsHooks: boolean;
|
|
130
|
-
};
|
|
131
|
-
/**
|
|
132
|
-
* Slice #014: read the *actually-installed* peaks-managed hook entries
|
|
133
|
-
* from a settings object. Replaces the pre-#014 `listInstalledEntriesForIde`
|
|
134
|
-
* helper in `hooks-commands.ts`, which returned the IDE-EXPECTED list
|
|
135
|
-
* (a hardcoded 2-entry array per adapter) rather than what was on disk.
|
|
136
|
-
* That bug surfaced when slice #013's local cleanup installed
|
|
137
|
-
* `peaks hooks install --no-progress` (gate-enforce only), but the
|
|
138
|
-
* status command still reported `entries: [Bash, Task]` because the
|
|
139
|
-
* helper didn't read the file.
|
|
140
|
-
*
|
|
141
|
-
* The new helper:
|
|
142
|
-
* 1. reads each `hooks.<event>` array,
|
|
143
|
-
* 2. filters to entries that are peaks-managed for the given IDE
|
|
144
|
-
* (matches the legacy sentinel set: gate-enforce + the no-longer-
|
|
145
|
-
* installed progress-start),
|
|
146
|
-
* 3. returns one `{ matcher, sentinel }` row per entry, taking the
|
|
147
|
-
* FIRST matching sentinel per entry (entries have a single command
|
|
148
|
-
* handler in practice, but the loop tolerates multi-handler
|
|
149
|
-
* entries by taking the first match).
|
|
150
|
-
*
|
|
151
|
-
* Pre-#014 settings.json files that have a stale progress-start entry
|
|
152
|
-
* will see it surface in the result. This is intentional: the status
|
|
153
|
-
* command is the user's tool for "what is on disk right now", and
|
|
154
|
-
* surfacing a stale entry is the only way the user can know to run
|
|
155
|
-
* `peaks hooks install` (which now strips it) or `peaks hooks
|
|
156
|
-
* uninstall` (which removes it).
|
|
157
|
-
*/
|
|
158
|
-
export declare function readInstalledEntriesFromSettings(settings: Record<string, unknown>, ide: IdeId): ReadonlyArray<{
|
|
159
|
-
matcher: string;
|
|
160
|
-
sentinel: string;
|
|
161
|
-
}>;
|
|
162
|
-
/**
|
|
163
|
-
* Merge the peaks-managed Skill denylist into the existing settings object.
|
|
164
|
-
* Preserves every other `permissions.deny` entry the user (or another tool)
|
|
165
|
-
* has written so the install is additive, not destructive. The output is
|
|
166
|
-
* always deterministic: the same input always yields the same output,
|
|
167
|
-
* regardless of insertion order in the source array.
|
|
168
|
-
*
|
|
169
|
-
* Defensive behavior:
|
|
170
|
-
* - `settings.permissions` is missing or non-object → install creates a
|
|
171
|
-
* fresh `permissions: { deny: [...our entries] }` object.
|
|
172
|
-
* - `settings.permissions.deny` is missing or non-array → install replaces
|
|
173
|
-
* the field with a fresh array containing only our entries.
|
|
174
|
-
* - Duplicate entries (any source) are collapsed to one via `new Set`.
|
|
175
|
-
*
|
|
176
|
-
* The function is pure: it does not mutate the input. Atomic write happens
|
|
177
|
-
* at the call site (`applyHookInstall`).
|
|
178
|
-
*/
|
|
179
|
-
export declare function withSuperpowersSkillDenylist(settings: Record<string, unknown>): Record<string, unknown>;
|
|
180
|
-
/**
|
|
181
|
-
* Inverse of `withSuperpowersSkillDenylist`. Removes every peaks-managed
|
|
182
|
-
* `UseSkill(...)` entry from the deny list. If the resulting deny list is
|
|
183
|
-
* empty, the `deny` field itself is deleted; if the `permissions` object
|
|
184
|
-
* becomes empty, the `permissions` field itself is deleted. This is the
|
|
185
|
-
* uninstall path: every field we wrote must be removed exactly, and no
|
|
186
|
-
* other field may be touched.
|
|
187
|
-
*
|
|
188
|
-
* Pure (no mutation).
|
|
189
|
-
*/
|
|
190
|
-
export declare function withoutSuperpowersSkillDenylist(settings: Record<string, unknown>): Record<string, unknown>;
|
|
191
|
-
/**
|
|
192
|
-
* Read-only introspection. Returns the deny entries that `peaks hooks
|
|
193
|
-
* install` would write today. Useful for `peaks hooks status` and the
|
|
194
|
-
* dry-run envelope.
|
|
195
|
-
*/
|
|
196
|
-
export declare function listSuperpowersDenyEntries(): ReadonlyArray<string>;
|
|
197
23
|
/** Default (claude-code) peaks-managed hook entries — kept as a stable export for tests. Slice #014: only the gate-enforce entry. */
|
|
198
24
|
export declare const PEAKS_HOOK_ENTRIES: ReadonlyArray<PeaksHookEntry>;
|
|
199
25
|
export declare function planHookInstall(scope: HookScope, projectRoot?: string, options?: HookInstallOptions): HookInstallPlan;
|
|
200
26
|
export declare function applyHookInstall(scope: HookScope, projectRoot?: string, options?: HookInstallOptions): HookInstallResult;
|
|
201
27
|
export declare function removeHookInstall(scope: HookScope, projectRoot?: string, options?: HookInstallOptions): HookRemoveResult;
|
|
202
28
|
export declare function readHookStatus(scope: HookScope, projectRoot?: string, options?: HookInstallOptions): HookStatus;
|
|
203
|
-
/**
|
|
204
|
-
*
|
|
205
|
-
* In addition to the static SUPERPOWERS_DENIED_SKILLS list, peaks
|
|
206
|
-
* scans the existing settings file for "trigger phrases" that
|
|
207
|
-
* indicate the user has configured the superpowers chain (or
|
|
208
|
-
* any other auto-run worktree-creating tool) and appends a
|
|
209
|
-
* defensive deny to prevent the chain from running raw
|
|
210
|
-
* `git worktree add` (or `podman run`) directly.
|
|
211
|
-
*
|
|
212
|
-
* Triggers detected (substring match on the existing
|
|
213
|
-
* permissions.deny / permissions.allow list):
|
|
214
|
-
*
|
|
215
|
-
* - `superpowers:using-git-worktrees` — the chain's ground zero
|
|
216
|
-
* - `superpowers:brainstorming` etc. — the upstream skill
|
|
217
|
-
* - `Bash(git worktree add` — the user has explicitly
|
|
218
|
-
* allowed raw git worktree, which our L2 lease-aware gate
|
|
219
|
-
* would also intercept (defense in depth)
|
|
220
|
-
*
|
|
221
|
-
* Append-only — never replaces, never re-orders, never removes
|
|
222
|
-
* existing entries. Idempotent: re-running the install with
|
|
223
|
-
* the same input yields the same output.
|
|
224
|
-
*/
|
|
225
|
-
export declare const TRIGGER_PHRASES: ReadonlyArray<string>;
|
|
226
|
-
export declare function withTriggeredDenyList(settings: Record<string, unknown>): Record<string, unknown>;
|
|
227
|
-
/** Inverse of withTriggeredDenyList: strip every deny-trigger entry. */
|
|
228
|
-
export declare function withoutTriggeredDenyList(settings: Record<string, unknown>): Record<string, unknown>;
|