kuzushi 0.17.2 → 0.20.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 +127 -15
- package/dist/agent-runtime/claude.d.ts +44 -3
- package/dist/agent-runtime/claude.js +354 -1
- package/dist/agent-runtime/claude.js.map +1 -1
- package/dist/agent-runtime/context-compactor.d.ts +70 -0
- package/dist/agent-runtime/context-compactor.js +67 -0
- package/dist/agent-runtime/context-compactor.js.map +1 -0
- package/dist/agent-runtime/execution.d.ts +15 -1
- package/dist/agent-runtime/execution.js +3 -0
- package/dist/agent-runtime/execution.js.map +1 -1
- package/dist/agent-runtime/index.js +11 -6
- package/dist/agent-runtime/index.js.map +1 -1
- package/dist/agent-runtime/logging-runtime.d.ts +3 -8
- package/dist/agent-runtime/logging-runtime.js +34 -26
- package/dist/agent-runtime/logging-runtime.js.map +1 -1
- package/dist/agent-runtime/model-validation.d.ts +3 -0
- package/dist/agent-runtime/model-validation.js +36 -0
- package/dist/agent-runtime/model-validation.js.map +1 -0
- package/dist/agent-runtime/pi-ai.d.ts +4 -3
- package/dist/agent-runtime/pi-ai.js +718 -338
- package/dist/agent-runtime/pi-ai.js.map +1 -1
- package/dist/agent-runtime/sdk-hooks.d.ts +22 -0
- package/dist/agent-runtime/sdk-hooks.js +84 -0
- package/dist/agent-runtime/sdk-hooks.js.map +1 -0
- package/dist/agent-runtime/tool-input-normalizer.d.ts +18 -0
- package/dist/agent-runtime/tool-input-normalizer.js +85 -0
- package/dist/agent-runtime/tool-input-normalizer.js.map +1 -0
- package/dist/agent-runtime/tool-summary.d.ts +24 -0
- package/dist/agent-runtime/tool-summary.js +280 -0
- package/dist/agent-runtime/tool-summary.js.map +1 -0
- package/dist/agent-runtime/tools.js +29 -8
- package/dist/agent-runtime/tools.js.map +1 -1
- package/dist/agent-runtime/types.d.ts +61 -1
- package/dist/agents/index.d.ts +18 -2
- package/dist/agents/index.js +48 -173
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/registry.d.ts +9 -8
- package/dist/agents/registry.js +15 -22
- package/dist/agents/registry.js.map +1 -1
- package/dist/agents/tasks/app-model-build.js +4 -0
- package/dist/agents/tasks/app-model-build.js.map +1 -1
- package/dist/agents/tasks/approval-gate.d.ts +1 -1
- package/dist/agents/tasks/call-graph-assist.js.map +1 -1
- package/dist/agents/tasks/chain-analysis.js +6 -5
- package/dist/agents/tasks/chain-analysis.js.map +1 -1
- package/dist/agents/tasks/code-graph/store.js +74 -7
- package/dist/agents/tasks/code-graph/store.js.map +1 -1
- package/dist/agents/tasks/context-enricher.js +15 -1
- package/dist/agents/tasks/context-enricher.js.map +1 -1
- package/dist/agents/tasks/context-gatherer.d.ts +52 -1
- package/dist/agents/tasks/context-gatherer.js +171 -16
- package/dist/agents/tasks/context-gatherer.js.map +1 -1
- package/dist/agents/tasks/diff-review.js +1 -9
- package/dist/agents/tasks/diff-review.js.map +1 -1
- package/dist/agents/tasks/forward-subagent-output.d.ts +35 -0
- package/dist/agents/tasks/forward-subagent-output.js +161 -0
- package/dist/agents/tasks/forward-subagent-output.js.map +1 -0
- package/dist/agents/tasks/plugin-finding-scanner.d.ts +7 -0
- package/dist/agents/tasks/plugin-finding-scanner.js +5 -0
- package/dist/agents/tasks/plugin-finding-scanner.js.map +1 -1
- package/dist/agents/tasks/taint-analysis/cross-service/analyze.js +16 -5
- package/dist/agents/tasks/taint-analysis/cross-service/analyze.js.map +1 -1
- package/dist/agents/tasks/taint-analysis/cross-service/boundary-agent.js +3 -17
- package/dist/agents/tasks/taint-analysis/cross-service/boundary-agent.js.map +1 -1
- package/dist/agents/tasks/taint-analysis/cross-service/discover.js +4 -1
- package/dist/agents/tasks/taint-analysis/cross-service/discover.js.map +1 -1
- package/dist/agents/tasks/taint-analysis/cross-service/stitch.js +2 -12
- package/dist/agents/tasks/taint-analysis/cross-service/stitch.js.map +1 -1
- package/dist/agents/tasks/taint-analysis/extraction-agent.js +1 -5
- package/dist/agents/tasks/taint-analysis/extraction-agent.js.map +1 -1
- package/dist/agents/tasks/taint-analysis/label.js +4 -16
- package/dist/agents/tasks/taint-analysis/label.js.map +1 -1
- package/dist/agents/tasks/threat-modeling/config.d.ts +5 -0
- package/dist/agents/tasks/threat-modeling/config.js +71 -0
- package/dist/agents/tasks/threat-modeling/config.js.map +1 -0
- package/dist/agents/tasks/threat-modeling/randori-runner.d.ts +50 -5
- package/dist/agents/tasks/threat-modeling/randori-runner.js +346 -97
- package/dist/agents/tasks/threat-modeling/randori-runner.js.map +1 -1
- package/dist/agents/tasks/threat-modeling/randori.d.ts +1 -1
- package/dist/agents/tasks/threat-modeling/randori.js +15 -1
- package/dist/agents/tasks/threat-modeling/randori.js.map +1 -1
- package/dist/agents/tasks/threat-modeling/types.d.ts +12 -3
- package/dist/agents/tasks/threat-modeling/types.js +2 -52
- package/dist/agents/tasks/threat-modeling/types.js.map +1 -1
- package/dist/agents/tasks/threat-scenario-build.js +1 -0
- package/dist/agents/tasks/threat-scenario-build.js.map +1 -1
- package/dist/agents/types.d.ts +17 -4
- package/dist/attack-surface-dfd.d.ts +73 -0
- package/dist/attack-surface-dfd.js +323 -0
- package/dist/attack-surface-dfd.js.map +1 -0
- package/dist/bus/activity.d.ts +55 -0
- package/dist/bus/activity.js +109 -0
- package/dist/bus/activity.js.map +1 -0
- package/dist/bus/adapters/in-process.d.ts +2 -2
- package/dist/bus/adapters/in-process.js.map +1 -1
- package/dist/bus/events.d.ts +109 -38
- package/dist/bus/helpers.d.ts +10 -1
- package/dist/bus/helpers.js.map +1 -1
- package/dist/bus/index.js +5 -1
- package/dist/bus/index.js.map +1 -1
- package/dist/bus/module-events.d.ts +66 -0
- package/dist/bus/module-events.js +106 -0
- package/dist/bus/module-events.js.map +1 -0
- package/dist/bus/orchestrator/cheap-verify.d.ts +1 -0
- package/dist/bus/orchestrator/cheap-verify.js +1 -1
- package/dist/bus/orchestrator/cheap-verify.js.map +1 -1
- package/dist/bus/orchestrator/patch-dispatcher.js.map +1 -1
- package/dist/bus/orchestrator/task-policy.d.ts +7 -1
- package/dist/bus/orchestrator/task-policy.js +31 -7
- package/dist/bus/orchestrator/task-policy.js.map +1 -1
- package/dist/bus/orchestrator/triage-dispatcher.js +7 -0
- package/dist/bus/orchestrator/triage-dispatcher.js.map +1 -1
- package/dist/bus/orchestrator/verification-dispatcher.js +5 -0
- package/dist/bus/orchestrator/verification-dispatcher.js.map +1 -1
- package/dist/bus/orchestrator.d.ts +13 -1
- package/dist/bus/orchestrator.js +160 -86
- package/dist/bus/orchestrator.js.map +1 -1
- package/dist/bus/run-abort.d.ts +8 -0
- package/dist/bus/run-abort.js +26 -0
- package/dist/bus/run-abort.js.map +1 -0
- package/dist/bus/run-context.d.ts +7 -1
- package/dist/bus/run-context.js +0 -6
- package/dist/bus/run-context.js.map +1 -1
- package/dist/bus/run-signals.d.ts +29 -0
- package/dist/bus/run-signals.js +39 -0
- package/dist/bus/run-signals.js.map +1 -0
- package/dist/bus/runtime-forwarding.d.ts +33 -0
- package/dist/bus/runtime-forwarding.js +219 -0
- package/dist/bus/runtime-forwarding.js.map +1 -0
- package/dist/bus/task-findings.d.ts +12 -0
- package/dist/bus/{task-execution.js → task-findings.js} +11 -28
- package/dist/bus/task-findings.js.map +1 -0
- package/dist/bus/types.d.ts +7 -1
- package/dist/bus/workers/audit-worker.d.ts +9 -0
- package/dist/bus/workers/audit-worker.js +38 -0
- package/dist/bus/workers/audit-worker.js.map +1 -1
- package/dist/bus/workers/dynamic-analysis-worker.js.map +1 -1
- package/dist/bus/workers/patch-verify-worker.js +6 -2
- package/dist/bus/workers/patch-verify-worker.js.map +1 -1
- package/dist/bus/workers/poc-harness-worker.js.map +1 -1
- package/dist/bus/workers/report-worker.js +307 -24
- package/dist/bus/workers/report-worker.js.map +1 -1
- package/dist/bus/workers/scan-worker.js +34 -5
- package/dist/bus/workers/scan-worker.js.map +1 -1
- package/dist/bus/workers/store-worker.js +19 -6
- package/dist/bus/workers/store-worker.js.map +1 -1
- package/dist/bus/workers/taint-analysis-refinement-worker.js +4 -3
- package/dist/bus/workers/taint-analysis-refinement-worker.js.map +1 -1
- package/dist/cli/commands/monorepo-scan.js +1 -1
- package/dist/cli/commands/monorepo-scan.js.map +1 -1
- package/dist/cli/commands/scan-pipeline.d.ts +56 -0
- package/dist/cli/commands/scan-pipeline.js +469 -0
- package/dist/cli/commands/scan-pipeline.js.map +1 -0
- package/dist/cli/commands/scan.d.ts +2 -49
- package/dist/cli/commands/scan.js +70 -462
- package/dist/cli/commands/scan.js.map +1 -1
- package/dist/cli/create-module.d.ts +21 -8
- package/dist/cli/create-module.js +142 -52
- package/dist/cli/create-module.js.map +1 -1
- package/dist/cli/preflight.js +45 -10
- package/dist/cli/preflight.js.map +1 -1
- package/dist/cli/scan-config.d.ts +5 -1
- package/dist/cli/scan-config.js +7 -7
- package/dist/cli/scan-config.js.map +1 -1
- package/dist/cli/shared.d.ts +13 -0
- package/dist/cli/shared.js +31 -3
- package/dist/cli/shared.js.map +1 -1
- package/dist/cli.js +182 -115
- package/dist/cli.js.map +1 -1
- package/dist/config/defaults.js +1 -3
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/docs.js +6 -12
- package/dist/config/docs.js.map +1 -1
- package/dist/config/validation.js +0 -8
- package/dist/config/validation.js.map +1 -1
- package/dist/config.d.ts +72 -1
- package/dist/config.js +394 -442
- package/dist/config.js.map +1 -1
- package/dist/contracts.d.ts +53 -0
- package/dist/contracts.js +79 -0
- package/dist/contracts.js.map +1 -0
- package/dist/copilot/context-build-runner.d.ts +18 -0
- package/dist/copilot/context-build-runner.js +498 -0
- package/dist/copilot/context-build-runner.js.map +1 -0
- package/dist/copilot/core.d.ts +41 -2
- package/dist/copilot/core.js +355 -89
- package/dist/copilot/core.js.map +1 -1
- package/dist/copilot/diff-scope.d.ts +39 -0
- package/dist/copilot/diff-scope.js +65 -0
- package/dist/copilot/diff-scope.js.map +1 -0
- package/dist/copilot/dispatch/resolve-tool.d.ts +91 -0
- package/dist/copilot/dispatch/resolve-tool.js +120 -0
- package/dist/copilot/dispatch/resolve-tool.js.map +1 -0
- package/dist/copilot/dispatcher/core-dispatcher.d.ts +179 -0
- package/dist/copilot/dispatcher/core-dispatcher.js +1214 -0
- package/dist/copilot/dispatcher/core-dispatcher.js.map +1 -0
- package/dist/copilot/dispatcher/driver.d.ts +107 -0
- package/dist/copilot/dispatcher/driver.js +533 -0
- package/dist/copilot/dispatcher/driver.js.map +1 -0
- package/dist/copilot/dispatcher/index.d.ts +5 -0
- package/dist/copilot/dispatcher/index.js +5 -0
- package/dist/copilot/dispatcher/index.js.map +1 -0
- package/dist/copilot/dispatcher/module-dispatcher.d.ts +71 -0
- package/dist/copilot/dispatcher/module-dispatcher.js +449 -0
- package/dist/copilot/dispatcher/module-dispatcher.js.map +1 -0
- package/dist/copilot/dispatcher/session-repl.d.ts +21 -0
- package/dist/copilot/dispatcher/session-repl.js +61 -0
- package/dist/copilot/dispatcher/session-repl.js.map +1 -0
- package/dist/copilot/dispatcher/types.d.ts +105 -0
- package/dist/copilot/dispatcher/types.js +15 -0
- package/dist/copilot/dispatcher/types.js.map +1 -0
- package/dist/copilot/dispatcher/workspace-dispatcher.d.ts +36 -0
- package/dist/copilot/dispatcher/workspace-dispatcher.js +535 -0
- package/dist/copilot/dispatcher/workspace-dispatcher.js.map +1 -0
- package/dist/copilot/editor.d.ts +21 -0
- package/dist/copilot/editor.js +38 -0
- package/dist/copilot/editor.js.map +1 -0
- package/dist/copilot/finding-alias.d.ts +55 -0
- package/dist/copilot/finding-alias.js +157 -0
- package/dist/copilot/finding-alias.js.map +1 -0
- package/dist/copilot/local-analytics.d.ts +17 -0
- package/dist/copilot/local-analytics.js +34 -0
- package/dist/copilot/local-analytics.js.map +1 -0
- package/dist/copilot/mock-tui/index.d.ts +76 -0
- package/dist/copilot/mock-tui/index.js +101 -0
- package/dist/copilot/mock-tui/index.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/actor-detail.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/actor-detail.js +22 -0
- package/dist/copilot/mock-tui/scenarios/actor-detail.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/catalog.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/catalog.js +19 -0
- package/dist/copilot/mock-tui/scenarios/catalog.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/finding.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/finding.js +22 -0
- package/dist/copilot/mock-tui/scenarios/finding.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/findings-empty.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/findings-empty.js +20 -0
- package/dist/copilot/mock-tui/scenarios/findings-empty.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/findings-many.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/findings-many.js +21 -0
- package/dist/copilot/mock-tui/scenarios/findings-many.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/index.d.ts +22 -0
- package/dist/copilot/mock-tui/scenarios/index.js +23 -0
- package/dist/copilot/mock-tui/scenarios/index.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/module-run-active.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/module-run-active.js +74 -0
- package/dist/copilot/mock-tui/scenarios/module-run-active.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/module-run-done.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/module-run-done.js +28 -0
- package/dist/copilot/mock-tui/scenarios/module-run-done.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/module-sast.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/module-sast.js +19 -0
- package/dist/copilot/mock-tui/scenarios/module-sast.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/prompts-editor.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/prompts-editor.js +20 -0
- package/dist/copilot/mock-tui/scenarios/prompts-editor.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/sast-tasks.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/sast-tasks.js +33 -0
- package/dist/copilot/mock-tui/scenarios/sast-tasks.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/task-story.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/task-story.js +68 -0
- package/dist/copilot/mock-tui/scenarios/task-story.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/threats-dfd.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/threats-dfd.js +20 -0
- package/dist/copilot/mock-tui/scenarios/threats-dfd.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/threats-scope.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/threats-scope.js +20 -0
- package/dist/copilot/mock-tui/scenarios/threats-scope.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/threats-stories.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/threats-stories.js +20 -0
- package/dist/copilot/mock-tui/scenarios/threats-stories.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/threats-stride.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/threats-stride.js +20 -0
- package/dist/copilot/mock-tui/scenarios/threats-stride.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/threats-summary.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/threats-summary.js +20 -0
- package/dist/copilot/mock-tui/scenarios/threats-summary.js.map +1 -0
- package/dist/copilot/mock-tui/scenarios/tune.d.ts +1 -0
- package/dist/copilot/mock-tui/scenarios/tune.js +20 -0
- package/dist/copilot/mock-tui/scenarios/tune.js.map +1 -0
- package/dist/copilot/mock-tui/slash-commands.d.ts +36 -0
- package/dist/copilot/mock-tui/slash-commands.js +248 -0
- package/dist/copilot/mock-tui/slash-commands.js.map +1 -0
- package/dist/copilot/nl-planner.d.ts +83 -0
- package/dist/copilot/nl-planner.js +213 -0
- package/dist/copilot/nl-planner.js.map +1 -0
- package/dist/copilot/options.d.ts +117 -0
- package/dist/copilot/options.js +333 -0
- package/dist/copilot/options.js.map +1 -0
- package/dist/copilot/print.d.ts +42 -0
- package/dist/copilot/print.js +102 -0
- package/dist/copilot/print.js.map +1 -0
- package/dist/copilot/prompt-edit.d.ts +104 -0
- package/dist/copilot/prompt-edit.js +236 -0
- package/dist/copilot/prompt-edit.js.map +1 -0
- package/dist/copilot/recipes.d.ts +21 -0
- package/dist/copilot/recipes.js +96 -0
- package/dist/copilot/recipes.js.map +1 -0
- package/dist/copilot/repl.d.ts +26 -0
- package/dist/copilot/repl.js +46 -0
- package/dist/copilot/repl.js.map +1 -0
- package/dist/copilot/replay.d.ts +33 -0
- package/dist/copilot/replay.js +280 -0
- package/dist/copilot/replay.js.map +1 -0
- package/dist/copilot/resource.d.ts +56 -0
- package/dist/copilot/resource.js +122 -0
- package/dist/copilot/resource.js.map +1 -0
- package/dist/copilot/resume.d.ts +15 -0
- package/dist/copilot/resume.js +125 -0
- package/dist/copilot/resume.js.map +1 -0
- package/dist/copilot/run.d.ts +1 -8
- package/dist/copilot/run.js +26 -2
- package/dist/copilot/run.js.map +1 -1
- package/dist/copilot/sast-task-selection.d.ts +59 -0
- package/dist/copilot/sast-task-selection.js +326 -0
- package/dist/copilot/sast-task-selection.js.map +1 -0
- package/dist/copilot/search.d.ts +46 -0
- package/dist/copilot/search.js +188 -0
- package/dist/copilot/search.js.map +1 -0
- package/dist/copilot/shell-commands.d.ts +34 -0
- package/dist/copilot/shell-commands.js +372 -0
- package/dist/copilot/shell-commands.js.map +1 -0
- package/dist/copilot/shell.d.ts +326 -18
- package/dist/copilot/shell.js +6001 -669
- package/dist/copilot/shell.js.map +1 -1
- package/dist/copilot/spool.d.ts +35 -0
- package/dist/copilot/spool.js +81 -0
- package/dist/copilot/spool.js.map +1 -0
- package/dist/copilot/threat-model-loader.d.ts +33 -0
- package/dist/copilot/threat-model-loader.js +75 -0
- package/dist/copilot/threat-model-loader.js.map +1 -0
- package/dist/copilot/tips.d.ts +10 -0
- package/dist/copilot/tips.js +35 -0
- package/dist/copilot/tips.js.map +1 -0
- package/dist/crypto-behavioral/types.d.ts +2 -1
- package/dist/governance/enforcer.d.ts +14 -2
- package/dist/governance/enforcer.js +33 -4
- package/dist/governance/enforcer.js.map +1 -1
- package/dist/http-error-response.d.ts +33 -0
- package/dist/http-error-response.js +137 -0
- package/dist/http-error-response.js.map +1 -0
- package/dist/jobs/manager.d.ts +82 -0
- package/dist/jobs/manager.js +150 -0
- package/dist/jobs/manager.js.map +1 -0
- package/dist/migrations/100_schema_reset.js +4 -1
- package/dist/migrations/100_schema_reset.js.map +1 -1
- package/dist/migrations/101_workspace_entities.d.ts +19 -0
- package/dist/migrations/101_workspace_entities.js +205 -0
- package/dist/migrations/101_workspace_entities.js.map +1 -0
- package/dist/migrations/102_session_aliases.d.ts +17 -0
- package/dist/migrations/102_session_aliases.js +26 -0
- package/dist/migrations/102_session_aliases.js.map +1 -0
- package/dist/migrations/103_schedules.d.ts +13 -0
- package/dist/migrations/103_schedules.js +28 -0
- package/dist/migrations/103_schedules.js.map +1 -0
- package/dist/migrations/104_workspace_integrity_guards.d.ts +9 -0
- package/dist/migrations/104_workspace_integrity_guards.js +349 -0
- package/dist/migrations/104_workspace_integrity_guards.js.map +1 -0
- package/dist/migrations/105_finding_actor_fingerprint.d.ts +15 -0
- package/dist/migrations/105_finding_actor_fingerprint.js +42 -0
- package/dist/migrations/105_finding_actor_fingerprint.js.map +1 -0
- package/dist/migrations/106_pipeline_resume_metadata.d.ts +7 -0
- package/dist/migrations/106_pipeline_resume_metadata.js +79 -0
- package/dist/migrations/106_pipeline_resume_metadata.js.map +1 -0
- package/dist/migrations/index.js +15 -1
- package/dist/migrations/index.js.map +1 -1
- package/dist/modules/agentic-sast/agentic-sast.d.ts +27 -0
- package/dist/modules/agentic-sast/agentic-sast.js +103 -0
- package/dist/modules/agentic-sast/agentic-sast.js.map +1 -0
- package/dist/modules/cache.d.ts +94 -0
- package/dist/modules/cache.js +143 -0
- package/dist/modules/cache.js.map +1 -0
- package/dist/modules/codeql/codeql.d.ts +10 -0
- package/dist/modules/codeql/codeql.js +39 -0
- package/dist/modules/codeql/codeql.js.map +1 -0
- package/dist/modules/context/context.d.ts +18 -0
- package/dist/modules/context/context.js +263 -0
- package/dist/modules/context/context.js.map +1 -0
- package/dist/modules/core-sast.d.ts +18 -7
- package/dist/modules/core-sast.js +74 -869
- package/dist/modules/core-sast.js.map +1 -1
- package/dist/modules/dag-bridge.d.ts +93 -0
- package/dist/modules/dag-bridge.js +245 -0
- package/dist/modules/dag-bridge.js.map +1 -0
- package/dist/modules/dag-execute.d.ts +15 -0
- package/dist/modules/dag-execute.js +38 -0
- package/dist/modules/dag-execute.js.map +1 -0
- package/dist/modules/define.d.ts +81 -0
- package/dist/modules/define.js +77 -0
- package/dist/modules/define.js.map +1 -0
- package/dist/modules/docs.d.ts +25 -0
- package/dist/modules/docs.js +184 -0
- package/dist/modules/docs.js.map +1 -0
- package/dist/modules/errors.d.ts +24 -0
- package/dist/modules/errors.js +28 -0
- package/dist/modules/errors.js.map +1 -0
- package/dist/modules/findings/findings.d.ts +9 -0
- package/dist/modules/findings/findings.js +142 -0
- package/dist/modules/findings/findings.js.map +1 -0
- package/dist/modules/host-handles.d.ts +188 -0
- package/dist/modules/host-handles.js +16 -0
- package/dist/modules/host-handles.js.map +1 -0
- package/dist/modules/index.d.ts +14 -1
- package/dist/modules/index.js +15 -0
- package/dist/modules/index.js.map +1 -1
- package/dist/modules/input-validation.d.ts +13 -0
- package/dist/modules/input-validation.js +283 -0
- package/dist/modules/input-validation.js.map +1 -0
- package/dist/modules/loader.d.ts +21 -2
- package/dist/modules/loader.js +130 -32
- package/dist/modules/loader.js.map +1 -1
- package/dist/modules/mcp-bridge.d.ts +119 -5
- package/dist/modules/mcp-bridge.js +295 -46
- package/dist/modules/mcp-bridge.js.map +1 -1
- package/dist/modules/n-day-diff-hunter.d.ts +2 -2
- package/dist/modules/n-day-diff-hunter.js +36 -1
- package/dist/modules/n-day-diff-hunter.js.map +1 -1
- package/dist/modules/patch/patch.d.ts +11 -0
- package/dist/modules/patch/patch.js +145 -0
- package/dist/modules/patch/patch.js.map +1 -0
- package/dist/modules/pipeline/pipeline.d.ts +11 -0
- package/dist/modules/pipeline/pipeline.js +44 -0
- package/dist/modules/pipeline/pipeline.js.map +1 -0
- package/dist/modules/problem-details.d.ts +30 -0
- package/dist/modules/problem-details.js +28 -0
- package/dist/modules/problem-details.js.map +1 -0
- package/dist/modules/{core-prompt-armor.d.ts → prompt-armor/prompt-armor.d.ts} +3 -3
- package/dist/modules/{core-prompt-armor.js → prompt-armor/prompt-armor.js} +22 -5
- package/dist/modules/prompt-armor/prompt-armor.js.map +1 -0
- package/dist/modules/{core-randori.d.ts → randori/randori.d.ts} +3 -3
- package/dist/modules/{core-randori.js → randori/randori.js} +37 -9
- package/dist/modules/randori/randori.js.map +1 -0
- package/dist/modules/recon/core-recon.d.ts +16 -0
- package/dist/modules/recon/core-recon.js +271 -0
- package/dist/modules/recon/core-recon.js.map +1 -0
- package/dist/modules/reference.d.ts +5 -0
- package/dist/modules/reference.js +2 -0
- package/dist/modules/reference.js.map +1 -0
- package/dist/modules/registry.d.ts +38 -10
- package/dist/modules/registry.js +137 -31
- package/dist/modules/registry.js.map +1 -1
- package/dist/modules/sast/context-persist.d.ts +14 -0
- package/dist/modules/sast/context-persist.js +76 -0
- package/dist/modules/sast/context-persist.js.map +1 -0
- package/dist/modules/sast/findings-bridge.d.ts +18 -0
- package/dist/modules/sast/findings-bridge.js +45 -0
- package/dist/modules/sast/findings-bridge.js.map +1 -0
- package/dist/modules/sast/pipeline-runner.d.ts +13 -0
- package/dist/modules/sast/pipeline-runner.js +174 -0
- package/dist/modules/sast/pipeline-runner.js.map +1 -0
- package/dist/modules/sast/pipeline-summary.d.ts +8 -0
- package/dist/modules/sast/pipeline-summary.js +58 -0
- package/dist/modules/sast/pipeline-summary.js.map +1 -0
- package/dist/modules/sast/prompts.d.ts +25 -0
- package/dist/modules/sast/prompts.js +45 -0
- package/dist/modules/sast/prompts.js.map +1 -0
- package/dist/modules/sast/schema-fragments.d.ts +12 -0
- package/dist/modules/sast/schema-fragments.js +10 -0
- package/dist/modules/sast/schema-fragments.js.map +1 -0
- package/dist/modules/sast/shared.d.ts +56 -0
- package/dist/modules/sast/shared.js +415 -0
- package/dist/modules/sast/shared.js.map +1 -0
- package/dist/modules/scanner-adapter.d.ts +34 -0
- package/dist/modules/scanner-adapter.js +92 -0
- package/dist/modules/scanner-adapter.js.map +1 -0
- package/dist/modules/schema.d.ts +59 -0
- package/dist/modules/schema.js +72 -0
- package/dist/modules/schema.js.map +1 -0
- package/dist/modules/semgrep/semgrep.d.ts +17 -0
- package/dist/modules/semgrep/semgrep.js +46 -0
- package/dist/modules/semgrep/semgrep.js.map +1 -0
- package/dist/modules/{core-shinsa.d.ts → shinsa/shinsa.d.ts} +3 -3
- package/dist/modules/{core-shinsa.js → shinsa/shinsa.js} +10 -5
- package/dist/modules/shinsa/shinsa.js.map +1 -0
- package/dist/modules/systems-hunt/systems-hunt.d.ts +19 -0
- package/dist/modules/systems-hunt/systems-hunt.js +57 -0
- package/dist/modules/systems-hunt/systems-hunt.js.map +1 -0
- package/dist/modules/taint-iris/taint-iris.d.ts +20 -0
- package/dist/modules/taint-iris/taint-iris.js +93 -0
- package/dist/modules/taint-iris/taint-iris.js.map +1 -0
- package/dist/modules/threat-hunt/selectors.d.ts +35 -0
- package/dist/modules/threat-hunt/selectors.js +61 -0
- package/dist/modules/threat-hunt/selectors.js.map +1 -0
- package/dist/modules/threat-hunt/threat-hunt.d.ts +57 -0
- package/dist/modules/threat-hunt/threat-hunt.js +540 -0
- package/dist/modules/threat-hunt/threat-hunt.js.map +1 -0
- package/dist/modules/{core-tob.d.ts → tob/tob.d.ts} +4 -4
- package/dist/modules/{core-tob.js → tob/tob.js} +27 -7
- package/dist/modules/tob/tob.js.map +1 -0
- package/dist/modules/triage/triage.d.ts +10 -0
- package/dist/modules/triage/triage.js +162 -0
- package/dist/modules/triage/triage.js.map +1 -0
- package/dist/modules/types.d.ts +442 -8
- package/dist/modules/types.js +31 -1
- package/dist/modules/types.js.map +1 -1
- package/dist/modules/variant-hunter.d.ts +2 -2
- package/dist/modules/variant-hunter.js +25 -1
- package/dist/modules/variant-hunter.js.map +1 -1
- package/dist/modules/verify/verify.d.ts +13 -0
- package/dist/modules/verify/verify.js +131 -0
- package/dist/modules/verify/verify.js.map +1 -0
- package/dist/modules/{core-vuln-scout.d.ts → vuln-scout/vuln-scout.d.ts} +4 -4
- package/dist/modules/{core-vuln-scout.js → vuln-scout/vuln-scout.js} +55 -15
- package/dist/modules/vuln-scout/vuln-scout.js.map +1 -0
- package/dist/multi-agent-triage.js +12 -2
- package/dist/multi-agent-triage.js.map +1 -1
- package/dist/operator-context.d.ts +1 -0
- package/dist/operator-context.js +1 -1
- package/dist/operator-context.js.map +1 -1
- package/dist/poc-executor/types.d.ts +3 -2
- package/dist/poc-executor/types.js +0 -4
- package/dist/poc-executor/types.js.map +1 -1
- package/dist/poc-harness.js +11 -1
- package/dist/poc-harness.js.map +1 -1
- package/dist/prompts/context.d.ts +5 -4
- package/dist/prompts/context.js.map +1 -1
- package/dist/report-pr-comment.d.ts +29 -0
- package/dist/report-pr-comment.js +113 -0
- package/dist/report-pr-comment.js.map +1 -0
- package/dist/scan-opts.d.ts +2 -0
- package/dist/scanners/normalize-findings.d.ts +5 -0
- package/dist/scanners/normalize-findings.js +5 -15
- package/dist/scanners/normalize-findings.js.map +1 -1
- package/dist/scanners/run-semgrep.d.ts +3 -1
- package/dist/scanners/run-semgrep.js +43 -1
- package/dist/scanners/run-semgrep.js.map +1 -1
- package/dist/scanners/semgrep.d.ts +3 -2
- package/dist/scanners/semgrep.js +4 -2
- package/dist/scanners/semgrep.js.map +1 -1
- package/dist/scanners/types.d.ts +11 -2
- package/dist/scheduler/core.d.ts +73 -0
- package/dist/scheduler/core.js +139 -0
- package/dist/scheduler/core.js.map +1 -0
- package/dist/scheduler/store.d.ts +13 -0
- package/dist/scheduler/store.js +39 -0
- package/dist/scheduler/store.js.map +1 -0
- package/dist/schemas.d.ts +68 -9
- package/dist/schemas.js +40 -43
- package/dist/schemas.js.map +1 -1
- package/dist/security-profiles.d.ts +2 -6
- package/dist/security-profiles.js.map +1 -1
- package/dist/sessions/manager.d.ts +46 -0
- package/dist/sessions/manager.js +63 -0
- package/dist/sessions/manager.js.map +1 -0
- package/dist/store/dynamic-analysis.js +2 -9
- package/dist/store/dynamic-analysis.js.map +1 -1
- package/dist/store/patch-results.js +2 -12
- package/dist/store/patch-results.js.map +1 -1
- package/dist/store.d.ts +43 -6
- package/dist/store.js +138 -131
- package/dist/store.js.map +1 -1
- package/dist/streaming.d.ts +3 -0
- package/dist/streaming.js +29 -7
- package/dist/streaming.js.map +1 -1
- package/dist/testing/assertions.d.ts +36 -0
- package/dist/testing/assertions.js +78 -0
- package/dist/testing/assertions.js.map +1 -0
- package/dist/testing/index.d.ts +72 -15
- package/dist/testing/index.js +150 -19
- package/dist/testing/index.js.map +1 -1
- package/dist/testing/mocks/datastore.d.ts +28 -0
- package/dist/testing/mocks/datastore.js +44 -0
- package/dist/testing/mocks/datastore.js.map +1 -0
- package/dist/testing/mocks/event-scope.d.ts +34 -0
- package/dist/testing/mocks/event-scope.js +79 -0
- package/dist/testing/mocks/event-scope.js.map +1 -0
- package/dist/testing/mocks/logger.d.ts +32 -0
- package/dist/testing/mocks/logger.js +45 -0
- package/dist/testing/mocks/logger.js.map +1 -0
- package/dist/testing/mocks/print-sink.d.ts +31 -0
- package/dist/testing/mocks/print-sink.js +55 -0
- package/dist/testing/mocks/print-sink.js.map +1 -0
- package/dist/testing/mocks/runtime.d.ts +57 -0
- package/dist/testing/mocks/runtime.js +77 -0
- package/dist/testing/mocks/runtime.js.map +1 -0
- package/dist/testing/mocks/ui-store.d.ts +29 -0
- package/dist/testing/mocks/ui-store.js +43 -0
- package/dist/testing/mocks/ui-store.js.map +1 -0
- package/dist/testing/mocks/workspace.d.ts +35 -0
- package/dist/testing/mocks/workspace.js +76 -0
- package/dist/testing/mocks/workspace.js.map +1 -0
- package/dist/testing/module-shape.d.ts +33 -0
- package/dist/testing/module-shape.js +72 -0
- package/dist/testing/module-shape.js.map +1 -0
- package/dist/testing/prompt-regression.d.ts +36 -0
- package/dist/testing/prompt-regression.js +47 -0
- package/dist/testing/prompt-regression.js.map +1 -0
- package/dist/threat-model-patch.d.ts +38 -0
- package/dist/threat-model-patch.js +384 -0
- package/dist/threat-model-patch.js.map +1 -0
- package/dist/threat-model-renderer.d.ts +1 -0
- package/dist/threat-model-renderer.js +43 -0
- package/dist/threat-model-renderer.js.map +1 -1
- package/dist/triage/checkcode.d.ts +51 -0
- package/dist/triage/checkcode.js +98 -0
- package/dist/triage/checkcode.js.map +1 -0
- package/dist/triage.js +23 -3
- package/dist/triage.js.map +1 -1
- package/dist/types.d.ts +50 -290
- package/dist/types.js.map +1 -1
- package/dist/ui/App.js +207 -28
- package/dist/ui/App.js.map +1 -1
- package/dist/ui/ci-stream.d.ts +33 -0
- package/dist/ui/ci-stream.js +101 -0
- package/dist/ui/ci-stream.js.map +1 -0
- package/dist/ui/clock.d.ts +16 -0
- package/dist/ui/clock.js +77 -0
- package/dist/ui/clock.js.map +1 -0
- package/dist/ui/components/ActorTranscriptView.d.ts +46 -0
- package/dist/ui/components/ActorTranscriptView.js +94 -0
- package/dist/ui/components/ActorTranscriptView.js.map +1 -0
- package/dist/ui/components/AgentActivity.d.ts +15 -1
- package/dist/ui/components/AgentActivity.js +80 -4
- package/dist/ui/components/AgentActivity.js.map +1 -1
- package/dist/ui/components/AppLayout.d.ts +10 -0
- package/dist/ui/components/AppLayout.js +16 -0
- package/dist/ui/components/AppLayout.js.map +1 -0
- package/dist/ui/components/AttackChainDiagram.d.ts +2 -1
- package/dist/ui/components/AttackChainDiagram.js +5 -4
- package/dist/ui/components/AttackChainDiagram.js.map +1 -1
- package/dist/ui/components/AttackerStoriesView.d.ts +23 -0
- package/dist/ui/components/AttackerStoriesView.js +105 -0
- package/dist/ui/components/AttackerStoriesView.js.map +1 -0
- package/dist/ui/components/Banner.d.ts +4 -2
- package/dist/ui/components/Banner.js +5 -3
- package/dist/ui/components/Banner.js.map +1 -1
- package/dist/ui/components/BannerSplash.d.ts +29 -0
- package/dist/ui/components/BannerSplash.js +64 -0
- package/dist/ui/components/BannerSplash.js.map +1 -0
- package/dist/ui/components/ChainGroup.d.ts +21 -0
- package/dist/ui/components/ChainGroup.js +62 -0
- package/dist/ui/components/ChainGroup.js.map +1 -0
- package/dist/ui/components/CodePreview.d.ts +3 -2
- package/dist/ui/components/CodePreview.js +5 -3
- package/dist/ui/components/CodePreview.js.map +1 -1
- package/dist/ui/components/CommandInput.js +3 -3
- package/dist/ui/components/CommandInput.js.map +1 -1
- package/dist/ui/components/CompactHeader.d.ts +3 -2
- package/dist/ui/components/CompactHeader.js +5 -3
- package/dist/ui/components/CompactHeader.js.map +1 -1
- package/dist/ui/components/ConfigBanner.js +5 -3
- package/dist/ui/components/ConfigBanner.js.map +1 -1
- package/dist/ui/components/ConfigConfirm.d.ts +2 -11
- package/dist/ui/components/ConfigConfirm.js +5 -4
- package/dist/ui/components/ConfigConfirm.js.map +1 -1
- package/dist/ui/components/ConfigEditor.d.ts +11 -0
- package/dist/ui/components/ConfigEditor.fields.d.ts +50 -0
- package/dist/ui/components/ConfigEditor.fields.js +797 -0
- package/dist/ui/components/ConfigEditor.fields.js.map +1 -0
- package/dist/ui/components/ConfigEditor.js +445 -0
- package/dist/ui/components/ConfigEditor.js.map +1 -0
- package/dist/ui/components/ConfigEditor.valueEditors.d.ts +28 -0
- package/dist/ui/components/ConfigEditor.valueEditors.js +226 -0
- package/dist/ui/components/ConfigEditor.valueEditors.js.map +1 -0
- package/dist/ui/components/ContextBuildView.d.ts +39 -0
- package/dist/ui/components/ContextBuildView.js +422 -0
- package/dist/ui/components/ContextBuildView.js.map +1 -0
- package/dist/ui/components/ContextIntake.js +8 -7
- package/dist/ui/components/ContextIntake.js.map +1 -1
- package/dist/ui/components/ContextStrip.d.ts +15 -0
- package/dist/ui/components/ContextStrip.js +22 -0
- package/dist/ui/components/ContextStrip.js.map +1 -0
- package/dist/ui/components/CopilotShell.d.ts +3 -3
- package/dist/ui/components/CopilotShell.js +770 -50
- package/dist/ui/components/CopilotShell.js.map +1 -1
- package/dist/ui/components/CostCapHalt.d.ts +22 -0
- package/dist/ui/components/CostCapHalt.js +35 -0
- package/dist/ui/components/CostCapHalt.js.map +1 -0
- package/dist/ui/components/CostView.d.ts +24 -0
- package/dist/ui/components/CostView.js +49 -0
- package/dist/ui/components/CostView.js.map +1 -0
- package/dist/ui/components/CredentialPrompt.d.ts +12 -15
- package/dist/ui/components/CredentialPrompt.js +241 -49
- package/dist/ui/components/CredentialPrompt.js.map +1 -1
- package/dist/ui/components/DiffSinceView.d.ts +27 -0
- package/dist/ui/components/DiffSinceView.js +115 -0
- package/dist/ui/components/DiffSinceView.js.map +1 -0
- package/dist/ui/components/DiffView.js +2 -2
- package/dist/ui/components/DiffView.js.map +1 -1
- package/dist/ui/components/EmptyState.d.ts +30 -0
- package/dist/ui/components/EmptyState.js +37 -0
- package/dist/ui/components/EmptyState.js.map +1 -0
- package/dist/ui/components/ErrorCard.d.ts +32 -3
- package/dist/ui/components/ErrorCard.js +19 -6
- package/dist/ui/components/ErrorCard.js.map +1 -1
- package/dist/ui/components/ErrorMessage.d.ts +27 -0
- package/dist/ui/components/ErrorMessage.js +73 -0
- package/dist/ui/components/ErrorMessage.js.map +1 -0
- package/dist/ui/components/ExportActions.js +5 -4
- package/dist/ui/components/ExportActions.js.map +1 -1
- package/dist/ui/components/FilterChips.d.ts +21 -0
- package/dist/ui/components/FilterChips.js +24 -0
- package/dist/ui/components/FilterChips.js.map +1 -0
- package/dist/ui/components/FindingCard.d.ts +9 -2
- package/dist/ui/components/FindingCard.js +62 -6
- package/dist/ui/components/FindingCard.js.map +1 -1
- package/dist/ui/components/FindingsView.d.ts +57 -0
- package/dist/ui/components/FindingsView.js +198 -0
- package/dist/ui/components/FindingsView.js.map +1 -0
- package/dist/ui/components/HouseRules.d.ts +16 -0
- package/dist/ui/components/HouseRules.js +54 -0
- package/dist/ui/components/HouseRules.js.map +1 -0
- package/dist/ui/components/InteractiveReview.js +6 -5
- package/dist/ui/components/InteractiveReview.js.map +1 -1
- package/dist/ui/components/ModuleCatalog.d.ts +19 -0
- package/dist/ui/components/ModuleCatalog.js +82 -0
- package/dist/ui/components/ModuleCatalog.js.map +1 -0
- package/dist/ui/components/ModuleHome.d.ts +16 -0
- package/dist/ui/components/ModuleHome.js +90 -0
- package/dist/ui/components/ModuleHome.js.map +1 -0
- package/dist/ui/components/ModuleRunView.d.ts +48 -0
- package/dist/ui/components/ModuleRunView.js +282 -0
- package/dist/ui/components/ModuleRunView.js.map +1 -0
- package/dist/ui/components/MonorepoProgress.d.ts +3 -2
- package/dist/ui/components/MonorepoProgress.js +7 -5
- package/dist/ui/components/MonorepoProgress.js.map +1 -1
- package/dist/ui/components/NoticeRail.d.ts +20 -2
- package/dist/ui/components/NoticeRail.js +58 -3
- package/dist/ui/components/NoticeRail.js.map +1 -1
- package/dist/ui/components/OptionsView.d.ts +13 -0
- package/dist/ui/components/OptionsView.js +47 -0
- package/dist/ui/components/OptionsView.js.map +1 -0
- package/dist/ui/components/PipelineIndicator.d.ts +3 -1
- package/dist/ui/components/PipelineIndicator.js +96 -32
- package/dist/ui/components/PipelineIndicator.js.map +1 -1
- package/dist/ui/components/PlanCard.d.ts +21 -0
- package/dist/ui/components/PlanCard.js +67 -0
- package/dist/ui/components/PlanCard.js.map +1 -0
- package/dist/ui/components/ProgressBar.js +25 -3
- package/dist/ui/components/ProgressBar.js.map +1 -1
- package/dist/ui/components/PromptsEditorView.d.ts +29 -0
- package/dist/ui/components/PromptsEditorView.js +77 -0
- package/dist/ui/components/PromptsEditorView.js.map +1 -0
- package/dist/ui/components/PulseDot.d.ts +18 -0
- package/dist/ui/components/PulseDot.js +43 -0
- package/dist/ui/components/PulseDot.js.map +1 -0
- package/dist/ui/components/QualityGate.js +2 -2
- package/dist/ui/components/QualityGate.js.map +1 -1
- package/dist/ui/components/RateLimitBanner.d.ts +33 -0
- package/dist/ui/components/RateLimitBanner.js +45 -0
- package/dist/ui/components/RateLimitBanner.js.map +1 -0
- package/dist/ui/components/ResumeDiff.d.ts +2 -15
- package/dist/ui/components/ResumeDiff.js +6 -5
- package/dist/ui/components/ResumeDiff.js.map +1 -1
- package/dist/ui/components/RuleHeader.d.ts +13 -0
- package/dist/ui/components/RuleHeader.js +20 -0
- package/dist/ui/components/RuleHeader.js.map +1 -0
- package/dist/ui/components/RunningView.d.ts +17 -0
- package/dist/ui/components/RunningView.js +153 -0
- package/dist/ui/components/RunningView.js.map +1 -0
- package/dist/ui/components/SastTasksView.d.ts +7 -0
- package/dist/ui/components/SastTasksView.js +39 -0
- package/dist/ui/components/SastTasksView.js.map +1 -0
- package/dist/ui/components/ScanSummary.d.ts +3 -2
- package/dist/ui/components/ScanSummary.js +19 -9
- package/dist/ui/components/ScanSummary.js.map +1 -1
- package/dist/ui/components/ScopeAndCriticalityView.d.ts +27 -0
- package/dist/ui/components/ScopeAndCriticalityView.js +88 -0
- package/dist/ui/components/ScopeAndCriticalityView.js.map +1 -0
- package/dist/ui/components/ScreenContent.d.ts +18 -0
- package/dist/ui/components/ScreenContent.js +21 -0
- package/dist/ui/components/ScreenContent.js.map +1 -0
- package/dist/ui/components/SectionBox.d.ts +5 -2
- package/dist/ui/components/SectionBox.js +4 -4
- package/dist/ui/components/SectionBox.js.map +1 -1
- package/dist/ui/components/SetupWizard.d.ts +2 -9
- package/dist/ui/components/SetupWizard.js +59 -10
- package/dist/ui/components/SetupWizard.js.map +1 -1
- package/dist/ui/components/Spinner.d.ts +6 -3
- package/dist/ui/components/Spinner.js +13 -15
- package/dist/ui/components/Spinner.js.map +1 -1
- package/dist/ui/components/StageHeader.js +2 -2
- package/dist/ui/components/StageHeader.js.map +1 -1
- package/dist/ui/components/StatusFooter.d.ts +2 -2
- package/dist/ui/components/StatusFooter.js +12 -17
- package/dist/ui/components/StatusFooter.js.map +1 -1
- package/dist/ui/components/ThreatDfdView.d.ts +15 -0
- package/dist/ui/components/ThreatDfdView.js +167 -0
- package/dist/ui/components/ThreatDfdView.js.map +1 -0
- package/dist/ui/components/ThreatModelEditor.js +8 -7
- package/dist/ui/components/ThreatModelEditor.js.map +1 -1
- package/dist/ui/components/ThreatStrideMatrix.d.ts +39 -0
- package/dist/ui/components/ThreatStrideMatrix.js +166 -0
- package/dist/ui/components/ThreatStrideMatrix.js.map +1 -0
- package/dist/ui/components/ThreatSummaryExport.d.ts +26 -0
- package/dist/ui/components/ThreatSummaryExport.js +154 -0
- package/dist/ui/components/ThreatSummaryExport.js.map +1 -0
- package/dist/ui/components/ToolRunningStatus.d.ts +24 -0
- package/dist/ui/components/ToolRunningStatus.js +86 -0
- package/dist/ui/components/ToolRunningStatus.js.map +1 -0
- package/dist/ui/components/TrophyScreen.d.ts +3 -2
- package/dist/ui/components/TrophyScreen.js +6 -3
- package/dist/ui/components/TrophyScreen.js.map +1 -1
- package/dist/ui/components/TuneView.d.ts +19 -0
- package/dist/ui/components/TuneView.js +47 -0
- package/dist/ui/components/TuneView.js.map +1 -0
- package/dist/ui/components/module-home/context-home.d.ts +19 -0
- package/dist/ui/components/module-home/context-home.js +105 -0
- package/dist/ui/components/module-home/context-home.js.map +1 -0
- package/dist/ui/components/module-home/registry.d.ts +3 -0
- package/dist/ui/components/module-home/registry.js +20 -0
- package/dist/ui/components/module-home/registry.js.map +1 -0
- package/dist/ui/components/module-home/threat-hunt-home.d.ts +11 -0
- package/dist/ui/components/module-home/threat-hunt-home.js +76 -0
- package/dist/ui/components/module-home/threat-hunt-home.js.map +1 -0
- package/dist/ui/components/module-home/types.d.ts +17 -0
- package/dist/ui/components/module-home/types.js +2 -0
- package/dist/ui/components/module-home/types.js.map +1 -0
- package/dist/ui/demo.js +332 -3
- package/dist/ui/demo.js.map +1 -1
- package/dist/ui/error-format.d.ts +55 -1
- package/dist/ui/error-format.js +189 -5
- package/dist/ui/error-format.js.map +1 -1
- package/dist/ui/format.d.ts +47 -4
- package/dist/ui/format.js +121 -31
- package/dist/ui/format.js.map +1 -1
- package/dist/ui/glyphs.d.ts +45 -0
- package/dist/ui/glyphs.js +58 -0
- package/dist/ui/glyphs.js.map +1 -0
- package/dist/ui/hooks/text-edit-actions.d.ts +21 -0
- package/dist/ui/hooks/text-edit-actions.js +34 -0
- package/dist/ui/hooks/text-edit-actions.js.map +1 -0
- package/dist/ui/hooks/useRawModeWatchdog.d.ts +28 -0
- package/dist/ui/hooks/useRawModeWatchdog.js +53 -0
- package/dist/ui/hooks/useRawModeWatchdog.js.map +1 -0
- package/dist/ui/hooks/useTerminalSize.js +4 -8
- package/dist/ui/hooks/useTerminalSize.js.map +1 -1
- package/dist/ui/hooks/useTextEditor.d.ts +26 -0
- package/dist/ui/hooks/useTextEditor.js +74 -0
- package/dist/ui/hooks/useTextEditor.js.map +1 -0
- package/dist/ui/hooks/useVisibleSlice.d.ts +41 -0
- package/dist/ui/hooks/useVisibleSlice.js +56 -0
- package/dist/ui/hooks/useVisibleSlice.js.map +1 -0
- package/dist/ui/hooks.d.ts +61 -0
- package/dist/ui/hooks.js +126 -9
- package/dist/ui/hooks.js.map +1 -1
- package/dist/ui/icons.d.ts +2 -2
- package/dist/ui/icons.js +2 -2
- package/dist/ui/layout-context.d.ts +61 -0
- package/dist/ui/layout-context.js +142 -0
- package/dist/ui/layout-context.js.map +1 -0
- package/dist/ui/mock-fixtures.d.ts +81 -0
- package/dist/ui/mock-fixtures.js +620 -0
- package/dist/ui/mock-fixtures.js.map +1 -0
- package/dist/ui/perf.d.ts +25 -0
- package/dist/ui/perf.js +79 -0
- package/dist/ui/perf.js.map +1 -0
- package/dist/ui/plain-renderer.d.ts +10 -2
- package/dist/ui/plain-renderer.js +863 -52
- package/dist/ui/plain-renderer.js.map +1 -1
- package/dist/ui/preflight-types.d.ts +36 -0
- package/dist/ui/preflight-types.js +2 -0
- package/dist/ui/preflight-types.js.map +1 -0
- package/dist/ui/primitives/ConfirmDialog.js +3 -3
- package/dist/ui/primitives/ConfirmDialog.js.map +1 -1
- package/dist/ui/primitives/Divider.js +7 -5
- package/dist/ui/primitives/Divider.js.map +1 -1
- package/dist/ui/primitives/ExpandableSection.js +2 -2
- package/dist/ui/primitives/ExpandableSection.js.map +1 -1
- package/dist/ui/primitives/Gutter.d.ts +21 -0
- package/dist/ui/primitives/Gutter.js +18 -0
- package/dist/ui/primitives/Gutter.js.map +1 -0
- package/dist/ui/primitives/KeybindFooter.js +6 -6
- package/dist/ui/primitives/KeybindFooter.js.map +1 -1
- package/dist/ui/primitives/Markdown.d.ts +24 -0
- package/dist/ui/primitives/Markdown.js +134 -0
- package/dist/ui/primitives/Markdown.js.map +1 -0
- package/dist/ui/primitives/Ratchet.d.ts +29 -0
- package/dist/ui/primitives/Ratchet.js +60 -0
- package/dist/ui/primitives/Ratchet.js.map +1 -0
- package/dist/ui/primitives/SelectList.js +3 -3
- package/dist/ui/primitives/SelectList.js.map +1 -1
- package/dist/ui/primitives/SpinnerClock.d.ts +25 -0
- package/dist/ui/primitives/SpinnerClock.js +67 -0
- package/dist/ui/primitives/SpinnerClock.js.map +1 -0
- package/dist/ui/primitives/TabBar.d.ts +23 -0
- package/dist/ui/primitives/TabBar.js +22 -0
- package/dist/ui/primitives/TabBar.js.map +1 -0
- package/dist/ui/primitives/Table.d.ts +2 -1
- package/dist/ui/primitives/Table.js +10 -54
- package/dist/ui/primitives/Table.js.map +1 -1
- package/dist/ui/primitives/TextInput.js +17 -27
- package/dist/ui/primitives/TextInput.js.map +1 -1
- package/dist/ui/render.d.ts +10 -1
- package/dist/ui/render.js +22 -2
- package/dist/ui/render.js.map +1 -1
- package/dist/ui/resume-types.d.ts +14 -0
- package/dist/ui/resume-types.js +2 -0
- package/dist/ui/resume-types.js.map +1 -0
- package/dist/ui/review.js +1 -0
- package/dist/ui/review.js.map +1 -1
- package/dist/ui/setup.d.ts +33 -2
- package/dist/ui/setup.js +198 -0
- package/dist/ui/setup.js.map +1 -1
- package/dist/ui/severity.d.ts +96 -0
- package/dist/ui/severity.js +196 -0
- package/dist/ui/severity.js.map +1 -0
- package/dist/ui/shell-input-line.d.ts +21 -0
- package/dist/ui/shell-input-line.js +54 -0
- package/dist/ui/shell-input-line.js.map +1 -0
- package/dist/ui/shell-keybinds.d.ts +134 -0
- package/dist/ui/shell-keybinds.js +204 -0
- package/dist/ui/shell-keybinds.js.map +1 -0
- package/dist/ui/shell-log-events.d.ts +23 -0
- package/dist/ui/shell-log-events.js +162 -0
- package/dist/ui/shell-log-events.js.map +1 -0
- package/dist/ui/slack.d.ts +27 -0
- package/dist/ui/slack.js +35 -0
- package/dist/ui/slack.js.map +1 -0
- package/dist/ui/state.d.ts +670 -11
- package/dist/ui/state.js +172 -6
- package/dist/ui/state.js.map +1 -1
- package/dist/ui/summary-data.js +1 -0
- package/dist/ui/summary-data.js.map +1 -1
- package/dist/ui/sync-output.d.ts +33 -0
- package/dist/ui/sync-output.js +80 -0
- package/dist/ui/sync-output.js.map +1 -0
- package/dist/ui/task-story.d.ts +56 -0
- package/dist/ui/task-story.js +154 -0
- package/dist/ui/task-story.js.map +1 -0
- package/dist/ui/terminal.d.ts +13 -0
- package/dist/ui/terminal.js +28 -0
- package/dist/ui/terminal.js.map +1 -0
- package/dist/ui/tokens.d.ts +36 -2
- package/dist/ui/tokens.js +54 -11
- package/dist/ui/tokens.js.map +1 -1
- package/dist/ui/transcript-format.d.ts +59 -0
- package/dist/ui/transcript-format.js +170 -0
- package/dist/ui/transcript-format.js.map +1 -0
- package/dist/utils/safe-json.js +8 -3
- package/dist/utils/safe-json.js.map +1 -1
- package/dist/utils.d.ts +5 -0
- package/dist/utils.js +15 -0
- package/dist/utils.js.map +1 -1
- package/dist/verify.js +16 -2
- package/dist/verify.js.map +1 -1
- package/dist/workspace/creds-export.d.ts +9 -0
- package/dist/workspace/creds-export.js +62 -0
- package/dist/workspace/creds-export.js.map +1 -0
- package/dist/workspace/entities.d.ts +208 -0
- package/dist/workspace/entities.js +482 -0
- package/dist/workspace/entities.js.map +1 -0
- package/dist/workspace/io/export.d.ts +28 -0
- package/dist/workspace/io/export.js +304 -0
- package/dist/workspace/io/export.js.map +1 -0
- package/dist/workspace/io/github.d.ts +48 -0
- package/dist/workspace/io/github.js +121 -0
- package/dist/workspace/io/github.js.map +1 -0
- package/dist/workspace/io/import.d.ts +61 -0
- package/dist/workspace/io/import.js +268 -0
- package/dist/workspace/io/import.js.map +1 -0
- package/dist/workspace/manager.d.ts +24 -0
- package/dist/workspace/manager.js +33 -0
- package/dist/workspace/manager.js.map +1 -1
- package/package.json +12 -5
- package/dist/agents/task-loader.d.ts +0 -42
- package/dist/agents/task-loader.js +0 -148
- package/dist/agents/task-loader.js.map +0 -1
- package/dist/agents/task-manifest.d.ts +0 -81
- package/dist/agents/task-manifest.js +0 -158
- package/dist/agents/task-manifest.js.map +0 -1
- package/dist/agents/tasks/threat-hunt.d.ts +0 -38
- package/dist/agents/tasks/threat-hunt.js +0 -262
- package/dist/agents/tasks/threat-hunt.js.map +0 -1
- package/dist/bus/task-execution.d.ts +0 -17
- package/dist/bus/task-execution.js.map +0 -1
- package/dist/modules/core-prompt-armor.js.map +0 -1
- package/dist/modules/core-randori.js.map +0 -1
- package/dist/modules/core-shinsa.js.map +0 -1
- package/dist/modules/core-tob.js.map +0 -1
- package/dist/modules/core-vuln-scout.js.map +0 -1
|
@@ -1,8 +1,178 @@
|
|
|
1
|
+
import { spawn as childSpawn } from "node:child_process";
|
|
1
2
|
import { query as claudeQuery, } from "@anthropic-ai/claude-agent-sdk";
|
|
2
3
|
import Anthropic from "@anthropic-ai/sdk";
|
|
4
|
+
import { publishAgentActivity, publishTaskActivity } from "../bus/activity.js";
|
|
3
5
|
import { getLogger } from "../logger.js";
|
|
4
6
|
import { normalizeCostUsd, toErrorMessage } from "../utils.js";
|
|
7
|
+
import { buildSdkHooks } from "./sdk-hooks.js";
|
|
5
8
|
const log = getLogger("claude-runtime");
|
|
9
|
+
function isAbortRequested(options) {
|
|
10
|
+
return options.abortController?.signal.aborted === true;
|
|
11
|
+
}
|
|
12
|
+
function abortResult(durationMs, numTurns, totalCostUsd) {
|
|
13
|
+
return {
|
|
14
|
+
type: "result",
|
|
15
|
+
subtype: "error_aborted",
|
|
16
|
+
errors: ["Aborted by operator"],
|
|
17
|
+
durationMs,
|
|
18
|
+
numTurns,
|
|
19
|
+
totalCostUsd,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Build a `spawnClaudeCodeProcess` hook that tracks each spawned Claude Code
|
|
24
|
+
* subprocess in the provided Set. Auto-removes entries when a process exits.
|
|
25
|
+
*
|
|
26
|
+
* Why this exists: the SDK's `abortController` option is supposed to terminate
|
|
27
|
+
* the subprocess when the signal fires, but in practice `context:build` with
|
|
28
|
+
* randori stays stuck: the subprocess keeps running (and holding the terminal's
|
|
29
|
+
* stdin state, breaking raw mode) long after `abort()` is called. Tracking the
|
|
30
|
+
* handles lets the caller send SIGTERM/SIGKILL directly on abort or session
|
|
31
|
+
* close — the one reliable way to stop the subprocess.
|
|
32
|
+
*
|
|
33
|
+
* Wraps node's `child_process.spawn` because `ChildProcess` already satisfies
|
|
34
|
+
* the SDK's `SpawnedProcess` interface (per sdk.d.ts:3985 — "ChildProcess
|
|
35
|
+
* already satisfies this interface").
|
|
36
|
+
*/
|
|
37
|
+
/**
|
|
38
|
+
* Process-wide registry of every Claude Code subprocess spawned by this
|
|
39
|
+
* runtime — across all sessions AND one-shot queries. Exists so the
|
|
40
|
+
* shell's SIGINT handler has a single "kill everything" switch it can
|
|
41
|
+
* pull without having to chase individual per-session sets through the
|
|
42
|
+
* abort-controller plumbing. Belt-and-suspenders: if anything goes
|
|
43
|
+
* wrong between controller.abort() and the per-scope listener, this
|
|
44
|
+
* still makes Ctrl+C actually stop a hung subprocess.
|
|
45
|
+
*/
|
|
46
|
+
const globalTrackedProcesses = new Set();
|
|
47
|
+
function createTrackedSpawn(tracked) {
|
|
48
|
+
return (options) => {
|
|
49
|
+
// `detached: true` puts the Claude subprocess in its own process
|
|
50
|
+
// group via setsid(). Without this, the subprocess shares our pgrp
|
|
51
|
+
// — and once it opens /dev/tty and issues TCSETA/TIOCSPGRP, the
|
|
52
|
+
// kernel delivers terminal Ctrl+C SIGINT to the subprocess group
|
|
53
|
+
// only. Our parent node process never sees Ctrl+C and the
|
|
54
|
+
// onAbort chain never runs, which is exactly the "spinner keeps
|
|
55
|
+
// spinning after Ctrl+C" symptom. Isolating the pgrp keeps terminal
|
|
56
|
+
// signals aimed at us.
|
|
57
|
+
//
|
|
58
|
+
// Keep every child stdio stream off the real TTY. A process can flip
|
|
59
|
+
// terminal mode through any inherited terminal fd, not just stdin; an
|
|
60
|
+
// inherited stderr was enough for long context builds to put the parent
|
|
61
|
+
// TUI back into cooked mode, where Ctrl+C is echoed as "^C" and Ink never
|
|
62
|
+
// sees the byte. Pipe stderr and drain it instead.
|
|
63
|
+
//
|
|
64
|
+
// We intentionally do NOT call `proc.unref()` — we want the parent
|
|
65
|
+
// to stay informed of 'exit' so the tracked set stays honest.
|
|
66
|
+
const proc = childSpawn(options.command, options.args, {
|
|
67
|
+
cwd: options.cwd,
|
|
68
|
+
env: options.env,
|
|
69
|
+
signal: options.signal,
|
|
70
|
+
stdio: ["pipe", "pipe", "pipe"],
|
|
71
|
+
detached: true,
|
|
72
|
+
});
|
|
73
|
+
const stderr = proc.stderr;
|
|
74
|
+
stderr?.on("data", (chunk) => {
|
|
75
|
+
if (!process.env.KUZUSHI_ABORT_DEBUG)
|
|
76
|
+
return;
|
|
77
|
+
try {
|
|
78
|
+
process.stderr.write(String(chunk));
|
|
79
|
+
}
|
|
80
|
+
catch {
|
|
81
|
+
/* best-effort debug forwarding */
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
tracked.add(proc);
|
|
85
|
+
globalTrackedProcesses.add(proc);
|
|
86
|
+
// child_process emits 'exit' once the process is gone — drop it from
|
|
87
|
+
// both tracked sets so `killTrackedProcesses` doesn't try to kill a
|
|
88
|
+
// ghost.
|
|
89
|
+
proc.once("exit", () => {
|
|
90
|
+
tracked.delete(proc);
|
|
91
|
+
globalTrackedProcesses.delete(proc);
|
|
92
|
+
});
|
|
93
|
+
return proc;
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Nuclear option for Ctrl+C — SIGTERM every tracked Claude subprocess
|
|
98
|
+
* regardless of which session/query spawned it, then escalate survivors
|
|
99
|
+
* to SIGKILL after the normal grace window. Called from the shell's
|
|
100
|
+
* SIGINT handler BEFORE the abort-controller chain runs, so the
|
|
101
|
+
* subprocess is guaranteed to stop even if an abort listener was never
|
|
102
|
+
* installed, raced with the spawn, or was blocked by a stuck await.
|
|
103
|
+
*
|
|
104
|
+
* Returns the number of processes that received SIGTERM, so callers
|
|
105
|
+
* can log / diagnose.
|
|
106
|
+
*/
|
|
107
|
+
export function killAllClaudeSubprocesses() {
|
|
108
|
+
const count = globalTrackedProcesses.size;
|
|
109
|
+
if (count === 0)
|
|
110
|
+
return 0;
|
|
111
|
+
killTrackedProcesses(globalTrackedProcesses);
|
|
112
|
+
return count;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Send SIGTERM to every tracked subprocess, then after `graceMs` escalate
|
|
116
|
+
* survivors to SIGKILL. Returns once the escalation timer is scheduled — does
|
|
117
|
+
* not block on exit.
|
|
118
|
+
*/
|
|
119
|
+
function killTrackedProcesses(tracked, graceMs = 500) {
|
|
120
|
+
if (tracked.size === 0)
|
|
121
|
+
return;
|
|
122
|
+
const survivors = [];
|
|
123
|
+
for (const proc of tracked) {
|
|
124
|
+
if (proc.killed || proc.exitCode !== null)
|
|
125
|
+
continue;
|
|
126
|
+
try {
|
|
127
|
+
// We spawn with `detached: true`, so `proc.pid` is the leader of
|
|
128
|
+
// its own pgrp. Signalling the negative pid delivers to every
|
|
129
|
+
// process in that group, killing any grandchildren the Claude
|
|
130
|
+
// subprocess forked (e.g. ripgrep workers) in one shot. Falls
|
|
131
|
+
// back to signalling the single proc if the pgrp kill fails.
|
|
132
|
+
const pid = proc.pid;
|
|
133
|
+
if (typeof pid === "number" && pid > 0) {
|
|
134
|
+
try {
|
|
135
|
+
process.kill(-pid, "SIGTERM");
|
|
136
|
+
}
|
|
137
|
+
catch {
|
|
138
|
+
proc.kill("SIGTERM");
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
proc.kill("SIGTERM");
|
|
143
|
+
}
|
|
144
|
+
survivors.push(proc);
|
|
145
|
+
}
|
|
146
|
+
catch {
|
|
147
|
+
/* process already gone */
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
if (survivors.length === 0)
|
|
151
|
+
return;
|
|
152
|
+
setTimeout(() => {
|
|
153
|
+
for (const proc of survivors) {
|
|
154
|
+
if (proc.killed || proc.exitCode !== null)
|
|
155
|
+
continue;
|
|
156
|
+
try {
|
|
157
|
+
const pid = proc.pid;
|
|
158
|
+
if (typeof pid === "number" && pid > 0) {
|
|
159
|
+
try {
|
|
160
|
+
process.kill(-pid, "SIGKILL");
|
|
161
|
+
}
|
|
162
|
+
catch {
|
|
163
|
+
proc.kill("SIGKILL");
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
else {
|
|
167
|
+
proc.kill("SIGKILL");
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
catch {
|
|
171
|
+
/* already gone */
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}, graceMs).unref();
|
|
175
|
+
}
|
|
6
176
|
// Prevent EPIPE from crashing the process when Claude SDK subprocesses die.
|
|
7
177
|
// Multiple concurrent query() calls each spawn a Claude Code subprocess;
|
|
8
178
|
// if one exits early the parent may write to a closed pipe.
|
|
@@ -13,6 +183,45 @@ for (const stream of [process.stdout, process.stderr]) {
|
|
|
13
183
|
throw err;
|
|
14
184
|
});
|
|
15
185
|
}
|
|
186
|
+
/**
|
|
187
|
+
* Emit `task:activity` (always — drives the spinner subtitle) and
|
|
188
|
+
* `${phase}:agent-activity` (only when both `phase` and `fingerprint` are
|
|
189
|
+
* set — drives the "N agents active" counter) for any tool-use blocks
|
|
190
|
+
* inside an SDK assistant message.
|
|
191
|
+
*
|
|
192
|
+
* Best-effort: every publish is wrapped in the helpers' own try/catch so a
|
|
193
|
+
* broken subscriber never takes down the SDK loop.
|
|
194
|
+
*/
|
|
195
|
+
function emitActivityForAssistant(bus, contentBlocks, ctx) {
|
|
196
|
+
if (!bus || !Array.isArray(contentBlocks))
|
|
197
|
+
return;
|
|
198
|
+
const taskId = ctx.taskId ?? "agent-runtime";
|
|
199
|
+
const runId = ctx.runId ?? undefined;
|
|
200
|
+
for (const raw of contentBlocks) {
|
|
201
|
+
if (!raw || raw.type !== "tool_use")
|
|
202
|
+
continue;
|
|
203
|
+
const toolName = typeof raw.name === "string" && raw.name.length > 0 ? raw.name : "tool";
|
|
204
|
+
publishTaskActivity(bus, taskId, `Calling ${toolName}…`, { runId });
|
|
205
|
+
if (ctx.phase && ctx.fingerprint) {
|
|
206
|
+
publishAgentActivity(bus, ctx.phase, ctx.fingerprint, "tool-start", {
|
|
207
|
+
toolName,
|
|
208
|
+
toolInput: isPlainObject(raw.input) ? raw.input : undefined,
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Emit a terminal `${phase}:agent-activity` envelope so the report-worker
|
|
215
|
+
* clears the fingerprint from the agents-active map (`done: true`).
|
|
216
|
+
*/
|
|
217
|
+
function emitActivityDone(bus, ctx) {
|
|
218
|
+
if (!bus || !ctx.phase || !ctx.fingerprint)
|
|
219
|
+
return;
|
|
220
|
+
publishAgentActivity(bus, ctx.phase, ctx.fingerprint, "tool-complete", { done: true });
|
|
221
|
+
}
|
|
222
|
+
function isPlainObject(value) {
|
|
223
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
224
|
+
}
|
|
16
225
|
/**
|
|
17
226
|
* Agent runtime backed by the Claude Agent SDK (@anthropic-ai/claude-agent-sdk).
|
|
18
227
|
*
|
|
@@ -84,6 +293,11 @@ function releaseSlot() {
|
|
|
84
293
|
export function __getSemaphoreState() {
|
|
85
294
|
return { active: activeQueries, leaked: leakedSlots, waiting: waitQueue.length };
|
|
86
295
|
}
|
|
296
|
+
/** Exported for tests only — direct access to the SDK-message activity helpers. */
|
|
297
|
+
export const __activityInternals = {
|
|
298
|
+
emitActivityForAssistant,
|
|
299
|
+
emitActivityDone,
|
|
300
|
+
};
|
|
87
301
|
export class ClaudeAgentRuntime {
|
|
88
302
|
id = "claude";
|
|
89
303
|
config;
|
|
@@ -369,6 +583,10 @@ export class ClaudeAgentRuntime {
|
|
|
369
583
|
catch (error) {
|
|
370
584
|
const durationMs = Date.now() - startedAtMs;
|
|
371
585
|
const retryable = error instanceof Anthropic.RateLimitError || error instanceof Anthropic.InternalServerError;
|
|
586
|
+
if (isAbortRequested(request.options)) {
|
|
587
|
+
yield abortResult(durationMs, 0, 0);
|
|
588
|
+
return;
|
|
589
|
+
}
|
|
372
590
|
log.error(`Direct API query failed (${durationMs}ms, retryable=${retryable}): ${toErrorMessage(error)}`);
|
|
373
591
|
if (this.bus) {
|
|
374
592
|
try {
|
|
@@ -473,10 +691,36 @@ export class ClaudeAgentRuntime {
|
|
|
473
691
|
if (request.options.plugins && request.options.plugins.length > 0) {
|
|
474
692
|
options.plugins = request.options.plugins;
|
|
475
693
|
}
|
|
694
|
+
// PreToolUse input normalizer — rewrites camelCase aliases
|
|
695
|
+
// (filePath → file_path, text → content, etc.) so the SDK's Zod
|
|
696
|
+
// validation doesn't reject perfectly reasonable tool calls. Without
|
|
697
|
+
// this, weaker sub-Claude models burn phases in a retry loop on
|
|
698
|
+
// "Validation failed for tool Write".
|
|
699
|
+
options.hooks = buildSdkHooks({
|
|
700
|
+
onNormalize: (toolName, renames) => {
|
|
701
|
+
log.debug(`${toolName} input normalized: ${renames.join(", ")}`);
|
|
702
|
+
},
|
|
703
|
+
canUseTool: request.options.canUseTool,
|
|
704
|
+
});
|
|
476
705
|
// Abort controller
|
|
477
706
|
if (request.options.abortController) {
|
|
478
707
|
options.abortController = request.options.abortController;
|
|
479
708
|
}
|
|
709
|
+
// Track the subprocess so we can directly SIGTERM/SIGKILL it when the
|
|
710
|
+
// caller's abort signal fires. The SDK's own abort-on-signal handling
|
|
711
|
+
// has proven unreliable for long-running phases (randori S2/S3 can
|
|
712
|
+
// ignore the signal for 5+ minutes).
|
|
713
|
+
const trackedProcesses = new Set();
|
|
714
|
+
options.spawnClaudeCodeProcess = createTrackedSpawn(trackedProcesses);
|
|
715
|
+
// When the caller's abortController fires, escalate to process kill.
|
|
716
|
+
if (request.options.abortController) {
|
|
717
|
+
const controllerSignal = request.options.abortController.signal;
|
|
718
|
+
const onAbort = () => killTrackedProcesses(trackedProcesses);
|
|
719
|
+
if (controllerSignal.aborted)
|
|
720
|
+
onAbort();
|
|
721
|
+
else
|
|
722
|
+
controllerSignal.addEventListener("abort", onAbort, { once: true });
|
|
723
|
+
}
|
|
480
724
|
// Fallback model
|
|
481
725
|
if (request.options.fallbackModel) {
|
|
482
726
|
const fallback = request.options.fallbackModel.includes(":")
|
|
@@ -519,7 +763,21 @@ export class ClaudeAgentRuntime {
|
|
|
519
763
|
prompt: request.prompt,
|
|
520
764
|
options,
|
|
521
765
|
});
|
|
766
|
+
const activityCtx = {
|
|
767
|
+
runId: this.runId,
|
|
768
|
+
taskId: request.options.taskId,
|
|
769
|
+
fingerprint: request.options.fingerprint,
|
|
770
|
+
phase: request.options.phase,
|
|
771
|
+
};
|
|
522
772
|
for await (const message of queryResult) {
|
|
773
|
+
// Surface tool-use activity to the bus BEFORE filtering through
|
|
774
|
+
// mapMessage — assistant messages with tool-use blocks drive the
|
|
775
|
+
// spinner subtitle and the "agents active" counter regardless of
|
|
776
|
+
// whether the caller consumes the mapped form.
|
|
777
|
+
if (message.type === "assistant") {
|
|
778
|
+
const sdkAssistant = message;
|
|
779
|
+
emitActivityForAssistant(this.bus, sdkAssistant.message?.content, activityCtx);
|
|
780
|
+
}
|
|
523
781
|
const mapped = mapMessage(message);
|
|
524
782
|
if (!mapped)
|
|
525
783
|
continue;
|
|
@@ -529,6 +787,9 @@ export class ClaudeAgentRuntime {
|
|
|
529
787
|
totalCostUsd = normalizeCostUsd(sdkResult.total_cost_usd);
|
|
530
788
|
numTurns = sdkResult.num_turns ?? 0;
|
|
531
789
|
const durationMs = Date.now() - startedAtMs;
|
|
790
|
+
// Clear the per-fingerprint agents-active row before yielding the
|
|
791
|
+
// result so the UI counter drops as soon as the work is done.
|
|
792
|
+
emitActivityDone(this.bus, activityCtx);
|
|
532
793
|
if (sdkResult.subtype === "success" && "result" in mapped) {
|
|
533
794
|
yield {
|
|
534
795
|
type: "result",
|
|
@@ -581,7 +842,20 @@ export class ClaudeAgentRuntime {
|
|
|
581
842
|
}
|
|
582
843
|
catch (error) {
|
|
583
844
|
const durationMs = Date.now() - startedAtMs;
|
|
584
|
-
|
|
845
|
+
const wasAborted = isAbortRequested(request.options);
|
|
846
|
+
if (!wasAborted) {
|
|
847
|
+
log.error(`Claude SDK query failed (${durationMs}ms): ${toErrorMessage(error)}`);
|
|
848
|
+
}
|
|
849
|
+
// Make sure the agents-active counter doesn't get stuck when the
|
|
850
|
+
// SDK throws (subprocess crash, invalid auth, etc.).
|
|
851
|
+
emitActivityDone(this.bus, {
|
|
852
|
+
fingerprint: request.options.fingerprint,
|
|
853
|
+
phase: request.options.phase,
|
|
854
|
+
});
|
|
855
|
+
if (wasAborted) {
|
|
856
|
+
yield abortResult(durationMs, numTurns, totalCostUsd);
|
|
857
|
+
return;
|
|
858
|
+
}
|
|
585
859
|
// Emit llm:call-error
|
|
586
860
|
if (this.bus) {
|
|
587
861
|
try {
|
|
@@ -614,6 +888,9 @@ export class ClaudeAgentRuntime {
|
|
|
614
888
|
};
|
|
615
889
|
}
|
|
616
890
|
finally {
|
|
891
|
+
// Defensive reap — normally the SDK's for-await exit cleans up, but
|
|
892
|
+
// a thrown error path may leave survivors.
|
|
893
|
+
killTrackedProcesses(trackedProcesses);
|
|
617
894
|
releaseSlot();
|
|
618
895
|
}
|
|
619
896
|
}
|
|
@@ -677,6 +954,10 @@ class ClaudeSession {
|
|
|
677
954
|
closed = false;
|
|
678
955
|
slotAcquired = false;
|
|
679
956
|
queryInFlight = false; // Mutex: prevent concurrent query() calls
|
|
957
|
+
// Tracks every Claude Code subprocess spawned by this session so close()
|
|
958
|
+
// can directly kill them. The SDK's internal abort handling is unreliable
|
|
959
|
+
// — context:build kept running for 5+ minutes past Ctrl+C without this.
|
|
960
|
+
trackedProcesses = new Set();
|
|
680
961
|
constructor(baseOptions, config, _bus, _runId) {
|
|
681
962
|
this.baseOptions = baseOptions;
|
|
682
963
|
this.config = config;
|
|
@@ -753,6 +1034,16 @@ class ClaudeSession {
|
|
|
753
1034
|
if (this.baseOptions.plugins && this.baseOptions.plugins.length > 0) {
|
|
754
1035
|
options.plugins = this.baseOptions.plugins;
|
|
755
1036
|
}
|
|
1037
|
+
// Same PreToolUse normalizer the one-shot query() uses — shared hook
|
|
1038
|
+
// set defined in sdk-hooks.ts. See rationale there.
|
|
1039
|
+
options.hooks = buildSdkHooks({
|
|
1040
|
+
onNormalize: (toolName, renames) => {
|
|
1041
|
+
log.debug(`session ${toolName} input normalized: ${renames.join(", ")}`);
|
|
1042
|
+
},
|
|
1043
|
+
canUseTool: this.baseOptions.canUseTool,
|
|
1044
|
+
});
|
|
1045
|
+
// Intercept subprocess spawn so close() can SIGTERM/SIGKILL directly.
|
|
1046
|
+
options.spawnClaudeCodeProcess = createTrackedSpawn(this.trackedProcesses);
|
|
756
1047
|
// Pass the async message queue as prompt — SDK keeps one subprocess alive
|
|
757
1048
|
const queryResult = claudeQuery({
|
|
758
1049
|
prompt: this.messageQueue,
|
|
@@ -781,6 +1072,12 @@ class ClaudeSession {
|
|
|
781
1072
|
parent_tool_use_id: null,
|
|
782
1073
|
};
|
|
783
1074
|
this.messageQueue.enqueue(userMessage);
|
|
1075
|
+
const activityCtx = {
|
|
1076
|
+
runId: this._runId,
|
|
1077
|
+
taskId: this.baseOptions.taskId,
|
|
1078
|
+
fingerprint: this.baseOptions.fingerprint,
|
|
1079
|
+
phase: this.baseOptions.phase,
|
|
1080
|
+
};
|
|
784
1081
|
// Read messages from the subprocess until we get a result for this turn
|
|
785
1082
|
const iter = this.queryIterator;
|
|
786
1083
|
while (true) {
|
|
@@ -793,7 +1090,12 @@ class ClaudeSession {
|
|
|
793
1090
|
}
|
|
794
1091
|
catch (error) {
|
|
795
1092
|
// Subprocess crashed — self-close to release the semaphore slot, then yield error.
|
|
1093
|
+
emitActivityDone(this._bus, activityCtx);
|
|
796
1094
|
await this.close();
|
|
1095
|
+
if (isAbortRequested(this.baseOptions)) {
|
|
1096
|
+
yield abortResult(0, 0, 0);
|
|
1097
|
+
return;
|
|
1098
|
+
}
|
|
797
1099
|
yield {
|
|
798
1100
|
type: "result",
|
|
799
1101
|
subtype: "error_runtime",
|
|
@@ -804,7 +1106,12 @@ class ClaudeSession {
|
|
|
804
1106
|
}
|
|
805
1107
|
if (done) {
|
|
806
1108
|
// Subprocess exited unexpectedly — self-close to release the semaphore slot.
|
|
1109
|
+
emitActivityDone(this._bus, activityCtx);
|
|
807
1110
|
await this.close();
|
|
1111
|
+
if (isAbortRequested(this.baseOptions)) {
|
|
1112
|
+
yield abortResult(0, 0, 0);
|
|
1113
|
+
return;
|
|
1114
|
+
}
|
|
808
1115
|
yield {
|
|
809
1116
|
type: "result",
|
|
810
1117
|
subtype: "error_runtime",
|
|
@@ -813,6 +1120,10 @@ class ClaudeSession {
|
|
|
813
1120
|
};
|
|
814
1121
|
return;
|
|
815
1122
|
}
|
|
1123
|
+
if (value.type === "assistant") {
|
|
1124
|
+
const sdkAssistant = value;
|
|
1125
|
+
emitActivityForAssistant(this._bus, sdkAssistant.message?.content, activityCtx);
|
|
1126
|
+
}
|
|
816
1127
|
const mapped = mapMessage(value);
|
|
817
1128
|
if (!mapped)
|
|
818
1129
|
continue;
|
|
@@ -820,6 +1131,7 @@ class ClaudeSession {
|
|
|
820
1131
|
const sdkResult = value;
|
|
821
1132
|
const totalCostUsd = normalizeCostUsd(sdkResult.total_cost_usd);
|
|
822
1133
|
const numTurns = sdkResult.num_turns ?? 0;
|
|
1134
|
+
emitActivityDone(this._bus, activityCtx);
|
|
823
1135
|
if (sdkResult.subtype === "success" && "result" in mapped) {
|
|
824
1136
|
yield {
|
|
825
1137
|
type: "result",
|
|
@@ -853,6 +1165,11 @@ class ClaudeSession {
|
|
|
853
1165
|
return;
|
|
854
1166
|
this.closed = true;
|
|
855
1167
|
this.messageQueue.done();
|
|
1168
|
+
// Kill every tracked subprocess immediately. SDK's abort-on-signal is
|
|
1169
|
+
// unreliable — closing the messageQueue sends EOF on stdin but the
|
|
1170
|
+
// subprocess can keep running (context:build reproducer was stuck 5+
|
|
1171
|
+
// minutes post-abort). SIGTERM → SIGKILL after 500ms.
|
|
1172
|
+
killTrackedProcesses(this.trackedProcesses);
|
|
856
1173
|
if (this.slotAcquired) {
|
|
857
1174
|
releaseSlot();
|
|
858
1175
|
}
|
|
@@ -925,6 +1242,42 @@ function mapMessage(msg) {
|
|
|
925
1242
|
: [],
|
|
926
1243
|
};
|
|
927
1244
|
}
|
|
1245
|
+
case "user": {
|
|
1246
|
+
// User messages carry tool_result blocks back to the model. Surface
|
|
1247
|
+
// the first tool_result so callers (e.g. randori's runPhase) can
|
|
1248
|
+
// detect retry loops on "Validation failed for tool X" and break
|
|
1249
|
+
// out instead of burning the full phase on a doomed tool call.
|
|
1250
|
+
const sdkUser = msg;
|
|
1251
|
+
const content = sdkUser.message?.content;
|
|
1252
|
+
if (!Array.isArray(content))
|
|
1253
|
+
return null;
|
|
1254
|
+
for (const block of content) {
|
|
1255
|
+
if (block?.["type"] !== "tool_result")
|
|
1256
|
+
continue;
|
|
1257
|
+
const toolUseId = typeof block["tool_use_id"] === "string" ? block["tool_use_id"] : "";
|
|
1258
|
+
const isError = block["is_error"] === true;
|
|
1259
|
+
const blockContent = block["content"];
|
|
1260
|
+
let text = "";
|
|
1261
|
+
if (typeof blockContent === "string") {
|
|
1262
|
+
text = blockContent;
|
|
1263
|
+
}
|
|
1264
|
+
else if (Array.isArray(blockContent)) {
|
|
1265
|
+
const parts = [];
|
|
1266
|
+
for (const p of blockContent) {
|
|
1267
|
+
if (typeof p?.["text"] === "string")
|
|
1268
|
+
parts.push(p["text"]);
|
|
1269
|
+
}
|
|
1270
|
+
text = parts.join("\n");
|
|
1271
|
+
}
|
|
1272
|
+
return {
|
|
1273
|
+
type: "tool-result",
|
|
1274
|
+
toolUseId,
|
|
1275
|
+
isError,
|
|
1276
|
+
content: text,
|
|
1277
|
+
};
|
|
1278
|
+
}
|
|
1279
|
+
return null;
|
|
1280
|
+
}
|
|
928
1281
|
default:
|
|
929
1282
|
// Skip system messages, auth status, stream events, etc.
|
|
930
1283
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/agent-runtime/claude.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/agent-runtime/claude.ts"],"names":[],"mappings":"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"}
|