@red-codes/agentguard 1.0.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/args.d.ts.map +1 -0
- package/dist/args.js.map +1 -0
- package/dist/bin.d.ts.map +1 -0
- package/dist/bin.js +29190 -0
- package/dist/bin.js.map +7 -0
- package/dist/colors.d.ts.map +1 -0
- package/dist/colors.js.map +1 -0
- package/dist/commands/adoption.d.ts +2 -0
- package/dist/commands/adoption.d.ts.map +1 -0
- package/dist/commands/adoption.js +172 -0
- package/dist/commands/adoption.js.map +1 -0
- package/dist/commands/analytics.d.ts +3 -0
- package/dist/commands/analytics.d.ts.map +1 -0
- package/dist/commands/analytics.js +7 -0
- package/dist/commands/analytics.js.map +1 -0
- package/dist/commands/audit-verify.d.ts +3 -0
- package/dist/commands/audit-verify.d.ts.map +1 -0
- package/dist/commands/audit-verify.js +94 -0
- package/dist/commands/audit-verify.js.map +1 -0
- package/dist/commands/auto-setup.d.ts +28 -0
- package/dist/commands/auto-setup.d.ts.map +1 -0
- package/dist/commands/auto-setup.js +146 -0
- package/dist/commands/auto-setup.js.map +1 -0
- package/dist/commands/ci-check.d.ts +13 -0
- package/dist/commands/ci-check.d.ts.map +1 -0
- package/dist/commands/ci-check.js +286 -0
- package/dist/commands/ci-check.js.map +1 -0
- package/dist/commands/claude-hook.d.ts +2 -0
- package/dist/commands/claude-hook.d.ts.map +1 -0
- package/dist/commands/claude-hook.js +254 -0
- package/dist/commands/claude-hook.js.map +1 -0
- package/dist/commands/claude-init.d.ts.map +1 -0
- package/dist/commands/claude-init.js +401 -0
- package/dist/commands/claude-init.js.map +1 -0
- package/dist/commands/config.d.ts +39 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +368 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/demo.d.ts +2 -0
- package/dist/commands/demo.d.ts.map +1 -0
- package/dist/commands/demo.js +100 -0
- package/dist/commands/demo.js.map +1 -0
- package/dist/commands/diff.d.ts +3 -0
- package/dist/commands/diff.d.ts.map +1 -0
- package/dist/commands/diff.js +364 -0
- package/dist/commands/diff.js.map +1 -0
- package/dist/commands/evidence-pr.d.ts +3 -0
- package/dist/commands/evidence-pr.d.ts.map +1 -0
- package/dist/commands/evidence-pr.js +162 -0
- package/dist/commands/evidence-pr.js.map +1 -0
- package/dist/commands/export.d.ts +22 -0
- package/dist/commands/export.d.ts.map +1 -0
- package/dist/commands/export.js +92 -0
- package/dist/commands/export.js.map +1 -0
- package/dist/commands/guard.d.ts +21 -0
- package/dist/commands/guard.d.ts.map +1 -0
- package/dist/commands/guard.js +272 -0
- package/dist/commands/guard.js.map +1 -0
- package/dist/commands/import.d.ts +3 -0
- package/dist/commands/import.d.ts.map +1 -0
- package/dist/{cli/commands → commands}/import.js +25 -26
- package/dist/commands/import.js.map +1 -0
- package/dist/commands/init.d.ts +5 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +1288 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/inspect.d.ts +4 -0
- package/dist/commands/inspect.d.ts.map +1 -0
- package/dist/{cli/commands → commands}/inspect.js +97 -70
- package/dist/commands/inspect.js.map +1 -0
- package/dist/commands/learn.d.ts +2 -0
- package/dist/commands/learn.d.ts.map +1 -0
- package/dist/commands/learn.js +264 -0
- package/dist/commands/learn.js.map +1 -0
- package/dist/commands/migrate.d.ts +3 -0
- package/dist/commands/migrate.d.ts.map +1 -0
- package/dist/commands/migrate.js +270 -0
- package/dist/commands/migrate.js.map +1 -0
- package/dist/commands/plugin.d.ts.map +1 -0
- package/dist/{cli/commands → commands}/plugin.js +2 -2
- package/dist/commands/plugin.js.map +1 -0
- package/dist/commands/policy-verify.d.ts +46 -0
- package/dist/commands/policy-verify.d.ts.map +1 -0
- package/dist/commands/policy-verify.js +173 -0
- package/dist/commands/policy-verify.js.map +1 -0
- package/dist/commands/policy.d.ts +27 -0
- package/dist/commands/policy.d.ts.map +1 -0
- package/dist/commands/policy.js +590 -0
- package/dist/commands/policy.js.map +1 -0
- package/dist/{cli/commands → commands}/replay.d.ts +2 -1
- package/dist/commands/replay.d.ts.map +1 -0
- package/dist/{cli/commands → commands}/replay.js +78 -12
- package/dist/commands/replay.js.map +1 -0
- package/dist/commands/session-viewer.d.ts +5 -0
- package/dist/commands/session-viewer.d.ts.map +1 -0
- package/dist/commands/session-viewer.js +462 -0
- package/dist/commands/session-viewer.js.map +1 -0
- package/dist/commands/simulate.d.ts +7 -0
- package/dist/commands/simulate.d.ts.map +1 -0
- package/dist/commands/simulate.js +505 -0
- package/dist/commands/simulate.js.map +1 -0
- package/dist/commands/status.d.ts +2 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +212 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/traces.d.ts +24 -0
- package/dist/commands/traces.d.ts.map +1 -0
- package/dist/commands/traces.js +282 -0
- package/dist/commands/traces.js.map +1 -0
- package/dist/commands/trust.d.ts +6 -0
- package/dist/commands/trust.d.ts.map +1 -0
- package/dist/commands/trust.js +129 -0
- package/dist/commands/trust.js.map +1 -0
- package/dist/evidence-summary.d.ts +35 -0
- package/dist/evidence-summary.d.ts.map +1 -0
- package/dist/evidence-summary.js +202 -0
- package/dist/evidence-summary.js.map +1 -0
- package/dist/{cli/file-event-store.d.ts → file-event-store.d.ts} +1 -1
- package/dist/file-event-store.d.ts.map +1 -0
- package/dist/{cli/file-event-store.js → file-event-store.js} +1 -1
- package/dist/file-event-store.js.map +1 -0
- package/{hooks → dist/hooks}/post-commit +3 -1
- package/{hooks → dist/hooks}/post-merge +3 -1
- package/dist/hooks/pre-commit +29 -0
- package/dist/policy-resolver.d.ts +32 -0
- package/dist/policy-resolver.d.ts.map +1 -0
- package/dist/policy-resolver.js +171 -0
- package/dist/policy-resolver.js.map +1 -0
- package/dist/{cli/recorder.d.ts → recorder.d.ts} +1 -1
- package/dist/recorder.d.ts.map +1 -0
- package/dist/{cli/recorder.js → recorder.js} +1 -1
- package/dist/recorder.js.map +1 -0
- package/dist/replay-timeline-html.d.ts +21 -0
- package/dist/replay-timeline-html.d.ts.map +1 -0
- package/dist/replay-timeline-html.js +414 -0
- package/dist/replay-timeline-html.js.map +1 -0
- package/dist/replay.d.ts.map +1 -0
- package/dist/{cli/replay.js → replay.js} +92 -1
- package/dist/replay.js.map +1 -0
- package/dist/{cli/session-store.d.ts → session-store.d.ts} +5 -0
- package/dist/session-store.d.ts.map +1 -0
- package/dist/{cli/session-store.js → session-store.js} +1 -0
- package/dist/session-store.js.map +1 -0
- package/dist/session-viewer-html.d.ts +10 -0
- package/dist/session-viewer-html.d.ts.map +1 -0
- package/dist/session-viewer-html.js +737 -0
- package/dist/session-viewer-html.js.map +1 -0
- package/dist/templates/ci-only.yaml +103 -0
- package/dist/templates/development.yaml +107 -0
- package/dist/templates/permissive.yaml +87 -0
- package/dist/templates/strict.yaml +112 -0
- package/dist/tui.d.ts +3 -0
- package/dist/tui.d.ts.map +1 -0
- package/dist/tui.js +2 -0
- package/dist/tui.js.map +1 -0
- package/package.json +42 -53
- package/README.md +0 -298
- package/dist/adapters/claude-code.d.ts +0 -24
- package/dist/adapters/claude-code.d.ts.map +0 -1
- package/dist/adapters/claude-code.js +0 -99
- package/dist/adapters/claude-code.js.map +0 -1
- package/dist/adapters/file.d.ts +0 -3
- package/dist/adapters/file.d.ts.map +0 -1
- package/dist/adapters/file.js +0 -35
- package/dist/adapters/file.js.map +0 -1
- package/dist/adapters/git.d.ts +0 -3
- package/dist/adapters/git.d.ts.map +0 -1
- package/dist/adapters/git.js +0 -61
- package/dist/adapters/git.js.map +0 -1
- package/dist/adapters/registry.d.ts +0 -5
- package/dist/adapters/registry.d.ts.map +0 -1
- package/dist/adapters/registry.js +0 -15
- package/dist/adapters/registry.js.map +0 -1
- package/dist/adapters/shell.d.ts +0 -8
- package/dist/adapters/shell.d.ts.map +0 -1
- package/dist/adapters/shell.js +0 -27
- package/dist/adapters/shell.js.map +0 -1
- package/dist/cli/args.d.ts.map +0 -1
- package/dist/cli/args.js.map +0 -1
- package/dist/cli/bin.d.ts.map +0 -1
- package/dist/cli/bin.js +0 -5769
- package/dist/cli/bin.js.map +0 -7
- package/dist/cli/colors.d.ts.map +0 -1
- package/dist/cli/colors.js.map +0 -1
- package/dist/cli/commands/claude-hook.d.ts +0 -2
- package/dist/cli/commands/claude-hook.d.ts.map +0 -1
- package/dist/cli/commands/claude-hook.js +0 -110
- package/dist/cli/commands/claude-hook.js.map +0 -1
- package/dist/cli/commands/claude-init.d.ts.map +0 -1
- package/dist/cli/commands/claude-init.js +0 -150
- package/dist/cli/commands/claude-init.js.map +0 -1
- package/dist/cli/commands/export.d.ts +0 -11
- package/dist/cli/commands/export.d.ts.map +0 -1
- package/dist/cli/commands/export.js +0 -113
- package/dist/cli/commands/export.js.map +0 -1
- package/dist/cli/commands/guard.d.ts +0 -12
- package/dist/cli/commands/guard.d.ts.map +0 -1
- package/dist/cli/commands/guard.js +0 -145
- package/dist/cli/commands/guard.js.map +0 -1
- package/dist/cli/commands/import.d.ts +0 -2
- package/dist/cli/commands/import.d.ts.map +0 -1
- package/dist/cli/commands/import.js.map +0 -1
- package/dist/cli/commands/inspect.d.ts +0 -3
- package/dist/cli/commands/inspect.d.ts.map +0 -1
- package/dist/cli/commands/inspect.js.map +0 -1
- package/dist/cli/commands/plugin.d.ts.map +0 -1
- package/dist/cli/commands/plugin.js.map +0 -1
- package/dist/cli/commands/replay.d.ts.map +0 -1
- package/dist/cli/commands/replay.js.map +0 -1
- package/dist/cli/file-event-store.d.ts.map +0 -1
- package/dist/cli/file-event-store.js.map +0 -1
- package/dist/cli/policy-resolver.d.ts +0 -4
- package/dist/cli/policy-resolver.d.ts.map +0 -1
- package/dist/cli/policy-resolver.js +0 -62
- package/dist/cli/policy-resolver.js.map +0 -1
- package/dist/cli/recorder.d.ts.map +0 -1
- package/dist/cli/recorder.js.map +0 -1
- package/dist/cli/replay.d.ts.map +0 -1
- package/dist/cli/replay.js.map +0 -1
- package/dist/cli/session-store.d.ts.map +0 -1
- package/dist/cli/session-store.js.map +0 -1
- package/dist/cli/tui.d.ts +0 -24
- package/dist/cli/tui.d.ts.map +0 -1
- package/dist/cli/tui.js +0 -197
- package/dist/cli/tui.js.map +0 -1
- package/dist/core/actions.d.ts +0 -11
- package/dist/core/actions.d.ts.map +0 -1
- package/dist/core/actions.js +0 -112
- package/dist/core/actions.js.map +0 -1
- package/dist/core/adapters.d.ts +0 -19
- package/dist/core/adapters.d.ts.map +0 -1
- package/dist/core/adapters.js +0 -85
- package/dist/core/adapters.js.map +0 -1
- package/dist/core/execution-log/bridge.d.ts +0 -12
- package/dist/core/execution-log/bridge.d.ts.map +0 -1
- package/dist/core/execution-log/bridge.js +0 -112
- package/dist/core/execution-log/bridge.js.map +0 -1
- package/dist/core/execution-log/event-log.d.ts +0 -7
- package/dist/core/execution-log/event-log.d.ts.map +0 -1
- package/dist/core/execution-log/event-log.js +0 -103
- package/dist/core/execution-log/event-log.js.map +0 -1
- package/dist/core/execution-log/event-projections.d.ts +0 -28
- package/dist/core/execution-log/event-projections.d.ts.map +0 -1
- package/dist/core/execution-log/event-projections.js +0 -272
- package/dist/core/execution-log/event-projections.js.map +0 -1
- package/dist/core/execution-log/event-schema.d.ts +0 -56
- package/dist/core/execution-log/event-schema.d.ts.map +0 -1
- package/dist/core/execution-log/event-schema.js +0 -160
- package/dist/core/execution-log/event-schema.js.map +0 -1
- package/dist/core/execution-log/index.d.ts +0 -7
- package/dist/core/execution-log/index.d.ts.map +0 -1
- package/dist/core/execution-log/index.js +0 -13
- package/dist/core/execution-log/index.js.map +0 -1
- package/dist/core/hash.d.ts +0 -5
- package/dist/core/hash.d.ts.map +0 -1
- package/dist/core/hash.js +0 -13
- package/dist/core/hash.js.map +0 -1
- package/dist/core/rng.d.ts +0 -29
- package/dist/core/rng.d.ts.map +0 -1
- package/dist/core/rng.js +0 -48
- package/dist/core/rng.js.map +0 -1
- package/dist/core/types.d.ts +0 -746
- package/dist/core/types.d.ts.map +0 -1
- package/dist/core/types.js +0 -8
- package/dist/core/types.js.map +0 -1
- package/dist/events/bus.d.ts +0 -24
- package/dist/events/bus.d.ts.map +0 -1
- package/dist/events/bus.js +0 -64
- package/dist/events/bus.js.map +0 -1
- package/dist/events/decision-jsonl.d.ts +0 -8
- package/dist/events/decision-jsonl.d.ts.map +0 -1
- package/dist/events/decision-jsonl.js +0 -44
- package/dist/events/decision-jsonl.js.map +0 -1
- package/dist/events/jsonl.d.ts +0 -8
- package/dist/events/jsonl.d.ts.map +0 -1
- package/dist/events/jsonl.js +0 -46
- package/dist/events/jsonl.js.map +0 -1
- package/dist/events/schema.d.ts +0 -59
- package/dist/events/schema.d.ts.map +0 -1
- package/dist/events/schema.js +0 -296
- package/dist/events/schema.js.map +0 -1
- package/dist/events/store.d.ts +0 -7
- package/dist/events/store.d.ts.map +0 -1
- package/dist/events/store.js +0 -64
- package/dist/events/store.js.map +0 -1
- package/dist/invariants/checker.d.ts +0 -15
- package/dist/invariants/checker.d.ts.map +0 -1
- package/dist/invariants/checker.js +0 -52
- package/dist/invariants/checker.js.map +0 -1
- package/dist/invariants/definitions.d.ts +0 -33
- package/dist/invariants/definitions.d.ts.map +0 -1
- package/dist/invariants/definitions.js +0 -168
- package/dist/invariants/definitions.js.map +0 -1
- package/dist/kernel/aab.d.ts +0 -26
- package/dist/kernel/aab.d.ts.map +0 -1
- package/dist/kernel/aab.js +0 -149
- package/dist/kernel/aab.js.map +0 -1
- package/dist/kernel/blast-radius.d.ts +0 -60
- package/dist/kernel/blast-radius.d.ts.map +0 -1
- package/dist/kernel/blast-radius.js +0 -146
- package/dist/kernel/blast-radius.js.map +0 -1
- package/dist/kernel/decision.d.ts +0 -40
- package/dist/kernel/decision.d.ts.map +0 -1
- package/dist/kernel/decision.js +0 -92
- package/dist/kernel/decision.js.map +0 -1
- package/dist/kernel/decisions/factory.d.ts +0 -12
- package/dist/kernel/decisions/factory.d.ts.map +0 -1
- package/dist/kernel/decisions/factory.js +0 -56
- package/dist/kernel/decisions/factory.js.map +0 -1
- package/dist/kernel/decisions/types.d.ts +0 -70
- package/dist/kernel/decisions/types.d.ts.map +0 -1
- package/dist/kernel/decisions/types.js +0 -5
- package/dist/kernel/decisions/types.js.map +0 -1
- package/dist/kernel/evidence.d.ts +0 -29
- package/dist/kernel/evidence.d.ts.map +0 -1
- package/dist/kernel/evidence.js +0 -61
- package/dist/kernel/evidence.js.map +0 -1
- package/dist/kernel/kernel.d.ts +0 -47
- package/dist/kernel/kernel.d.ts.map +0 -1
- package/dist/kernel/kernel.js +0 -377
- package/dist/kernel/kernel.js.map +0 -1
- package/dist/kernel/monitor.d.ts +0 -35
- package/dist/kernel/monitor.d.ts.map +0 -1
- package/dist/kernel/monitor.js +0 -144
- package/dist/kernel/monitor.js.map +0 -1
- package/dist/kernel/replay-comparator.d.ts +0 -72
- package/dist/kernel/replay-comparator.d.ts.map +0 -1
- package/dist/kernel/replay-comparator.js +0 -251
- package/dist/kernel/replay-comparator.js.map +0 -1
- package/dist/kernel/replay-engine.d.ts +0 -108
- package/dist/kernel/replay-engine.d.ts.map +0 -1
- package/dist/kernel/replay-engine.js +0 -241
- package/dist/kernel/replay-engine.js.map +0 -1
- package/dist/kernel/replay-processor.d.ts +0 -109
- package/dist/kernel/replay-processor.d.ts.map +0 -1
- package/dist/kernel/replay-processor.js +0 -118
- package/dist/kernel/replay-processor.js.map +0 -1
- package/dist/kernel/simulation/filesystem-simulator.d.ts +0 -3
- package/dist/kernel/simulation/filesystem-simulator.d.ts.map +0 -1
- package/dist/kernel/simulation/filesystem-simulator.js +0 -81
- package/dist/kernel/simulation/filesystem-simulator.js.map +0 -1
- package/dist/kernel/simulation/git-simulator.d.ts +0 -5
- package/dist/kernel/simulation/git-simulator.d.ts.map +0 -1
- package/dist/kernel/simulation/git-simulator.js +0 -115
- package/dist/kernel/simulation/git-simulator.js.map +0 -1
- package/dist/kernel/simulation/package-simulator.d.ts +0 -5
- package/dist/kernel/simulation/package-simulator.d.ts.map +0 -1
- package/dist/kernel/simulation/package-simulator.js +0 -164
- package/dist/kernel/simulation/package-simulator.js.map +0 -1
- package/dist/kernel/simulation/registry.d.ts +0 -3
- package/dist/kernel/simulation/registry.d.ts.map +0 -1
- package/dist/kernel/simulation/registry.js +0 -24
- package/dist/kernel/simulation/registry.js.map +0 -1
- package/dist/kernel/simulation/types.d.ts +0 -35
- package/dist/kernel/simulation/types.d.ts.map +0 -1
- package/dist/kernel/simulation/types.js +0 -4
- package/dist/kernel/simulation/types.js.map +0 -1
- package/dist/plugins/discovery.d.ts +0 -45
- package/dist/plugins/discovery.d.ts.map +0 -1
- package/dist/plugins/discovery.js +0 -89
- package/dist/plugins/discovery.js.map +0 -1
- package/dist/plugins/index.d.ts +0 -10
- package/dist/plugins/index.d.ts.map +0 -1
- package/dist/plugins/index.js +0 -7
- package/dist/plugins/index.js.map +0 -1
- package/dist/plugins/registry.d.ts +0 -52
- package/dist/plugins/registry.d.ts.map +0 -1
- package/dist/plugins/registry.js +0 -148
- package/dist/plugins/registry.js.map +0 -1
- package/dist/plugins/sandbox.d.ts +0 -87
- package/dist/plugins/sandbox.d.ts.map +0 -1
- package/dist/plugins/sandbox.js +0 -122
- package/dist/plugins/sandbox.js.map +0 -1
- package/dist/plugins/types.d.ts +0 -61
- package/dist/plugins/types.d.ts.map +0 -1
- package/dist/plugins/types.js +0 -16
- package/dist/plugins/types.js.map +0 -1
- package/dist/plugins/validator.d.ts +0 -36
- package/dist/plugins/validator.d.ts.map +0 -1
- package/dist/plugins/validator.js +0 -276
- package/dist/plugins/validator.js.map +0 -1
- package/dist/policy/evaluator.d.ts +0 -41
- package/dist/policy/evaluator.d.ts.map +0 -1
- package/dist/policy/evaluator.js +0 -111
- package/dist/policy/evaluator.js.map +0 -1
- package/dist/policy/loader.d.ts +0 -13
- package/dist/policy/loader.d.ts.map +0 -1
- package/dist/policy/loader.js +0 -118
- package/dist/policy/loader.js.map +0 -1
- package/dist/policy/pack-loader.d.ts +0 -40
- package/dist/policy/pack-loader.d.ts.map +0 -1
- package/dist/policy/pack-loader.js +0 -138
- package/dist/policy/pack-loader.js.map +0 -1
- package/dist/policy/yaml-loader.d.ts +0 -23
- package/dist/policy/yaml-loader.d.ts.map +0 -1
- package/dist/policy/yaml-loader.js +0 -222
- package/dist/policy/yaml-loader.js.map +0 -1
- package/dist/renderers/index.d.ts +0 -6
- package/dist/renderers/index.d.ts.map +0 -1
- package/dist/renderers/index.js +0 -4
- package/dist/renderers/index.js.map +0 -1
- package/dist/renderers/registry.d.ts +0 -39
- package/dist/renderers/registry.d.ts.map +0 -1
- package/dist/renderers/registry.js +0 -97
- package/dist/renderers/registry.js.map +0 -1
- package/dist/renderers/tui-renderer.d.ts +0 -18
- package/dist/renderers/tui-renderer.d.ts.map +0 -1
- package/dist/renderers/tui-renderer.js +0 -57
- package/dist/renderers/tui-renderer.js.map +0 -1
- package/dist/renderers/types.d.ts +0 -52
- package/dist/renderers/types.d.ts.map +0 -1
- package/dist/renderers/types.js +0 -4
- package/dist/renderers/types.js.map +0 -1
- package/dist/telemetry/index.d.ts +0 -3
- package/dist/telemetry/index.d.ts.map +0 -1
- package/dist/telemetry/index.js +0 -2
- package/dist/telemetry/index.js.map +0 -1
- package/dist/telemetry/runtimeLogger.d.ts +0 -9
- package/dist/telemetry/runtimeLogger.d.ts.map +0 -1
- package/dist/telemetry/runtimeLogger.js +0 -68
- package/dist/telemetry/runtimeLogger.js.map +0 -1
- package/dist/telemetry/types.d.ts +0 -22
- package/dist/telemetry/types.d.ts.map +0 -1
- package/dist/telemetry/types.js +0 -4
- package/dist/telemetry/types.js.map +0 -1
- package/hooks/pre-commit +0 -28
- /package/dist/{cli/args.d.ts → args.d.ts} +0 -0
- /package/dist/{cli/args.js → args.js} +0 -0
- /package/dist/{cli/bin.d.ts → bin.d.ts} +0 -0
- /package/dist/{cli/colors.d.ts → colors.d.ts} +0 -0
- /package/dist/{cli/colors.js → colors.js} +0 -0
- /package/dist/{cli/commands → commands}/claude-init.d.ts +0 -0
- /package/dist/{cli/commands → commands}/plugin.d.ts +0 -0
- /package/dist/{cli/replay.d.ts → replay.d.ts} +0 -0
package/README.md
DELETED
|
@@ -1,298 +0,0 @@
|
|
|
1
|
-
# AgentGuard
|
|
2
|
-
|
|
3
|
-
**Governed action runtime for AI coding agents.**
|
|
4
|
-
|
|
5
|
-
[](LICENSE)
|
|
6
|
-
[](CONTRIBUTING.md)
|
|
7
|
-
[](https://www.npmjs.com/package/@red-codes/agentguard)
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
AgentGuard intercepts AI agent tool calls, enforces policies and invariants, and produces a verifiable execution trail. Traditional AI safety focuses on model behavior — AgentGuard enforces safety at the execution layer through deterministic governance of every action.
|
|
12
|
-
|
|
13
|
-
```
|
|
14
|
-
agent proposes action → policy evaluated → invariants checked → allow/deny → execute → events emitted
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
## Quick Start
|
|
18
|
-
|
|
19
|
-
**30 seconds to see it work:**
|
|
20
|
-
|
|
21
|
-
```bash
|
|
22
|
-
git clone https://github.com/jpleva91/agent-guard.git
|
|
23
|
-
cd agent-guard
|
|
24
|
-
npm install && npm run build:ts
|
|
25
|
-
npm run demo:guard
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
Expected output:
|
|
29
|
-
|
|
30
|
-
```
|
|
31
|
-
AgentGuard Runtime Active
|
|
32
|
-
policy: Demo Safety Policy | invariants: 8 active
|
|
33
|
-
|
|
34
|
-
✓ file.read src/auth/service.ts (dry-run)
|
|
35
|
-
✓ file.write src/auth/service.ts (dry-run)
|
|
36
|
-
✓ shell.exec npm test (dry-run)
|
|
37
|
-
✗ git.push main → DENIED (demo-policy)
|
|
38
|
-
Protected branch — use a PR
|
|
39
|
-
✗ file.write .env → DENIED (demo-policy)
|
|
40
|
-
Secrets files must not be modified
|
|
41
|
-
|
|
42
|
-
3 allowed, 2 denied, 15 events emitted
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
**Try it on your own repo:**
|
|
46
|
-
|
|
47
|
-
```bash
|
|
48
|
-
# Pipe an action into the kernel
|
|
49
|
-
echo '{"tool":"Bash","command":"git push origin main"}' | npx @red-codes/agentguard guard --dry-run
|
|
50
|
-
|
|
51
|
-
# Start the runtime with a policy file
|
|
52
|
-
npx @red-codes/agentguard guard --policy agentguard.yaml
|
|
53
|
-
|
|
54
|
-
# Inspect the last run
|
|
55
|
-
npx @red-codes/agentguard inspect --last
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
## Why AgentGuard Exists
|
|
59
|
-
|
|
60
|
-
AI coding agents execute file writes, shell commands, and git operations autonomously — but there's no governance layer between what an agent proposes and what actually runs. One bad tool call can push to main, leak secrets, or delete production files.
|
|
61
|
-
|
|
62
|
-
AgentGuard adds a **deterministic decision point** between proposal and execution:
|
|
63
|
-
|
|
64
|
-
- **Safety policies** — declare what agents can and cannot do in YAML
|
|
65
|
-
- **Invariant enforcement** — 8 built-in checks (secrets, protected branches, blast radius, skill/task protection) run on every action
|
|
66
|
-
- **Audit trail** — every decision is recorded as structured JSONL, inspectable after the fact
|
|
67
|
-
- **Session debugging** — replay any agent session to see exactly what happened and why
|
|
68
|
-
|
|
69
|
-
## How It Works
|
|
70
|
-
|
|
71
|
-
AgentGuard evaluates every agent action through a **governed action kernel**:
|
|
72
|
-
|
|
73
|
-
1. **Normalize** — Claude Code tool calls (Bash, Write, Edit, Read) are mapped to canonical action types (shell.exec, file.write, file.read)
|
|
74
|
-
2. **Evaluate** — policies match against the action (deny git.push to main, deny destructive commands, enforce scope limits)
|
|
75
|
-
3. **Check invariants** — 8 built-in safety checks run on every action
|
|
76
|
-
4. **Execute** — if allowed, the action runs via adapters (file, shell, git handlers)
|
|
77
|
-
5. **Emit events** — full lifecycle events sunk to JSONL for audit trail
|
|
78
|
-
|
|
79
|
-
### Example Output
|
|
80
|
-
|
|
81
|
-
```
|
|
82
|
-
AgentGuard Runtime Active
|
|
83
|
-
policy: agentguard.yaml | invariants: 8 active
|
|
84
|
-
|
|
85
|
-
✓ file.write src/auth/service.ts
|
|
86
|
-
✓ shell.exec npm test
|
|
87
|
-
✗ git.push main → DENIED (protect-main)
|
|
88
|
-
⚠ invariant violated: protected-branch
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
## Policy Format
|
|
92
|
-
|
|
93
|
-
Policies are YAML or JSON files that declare what agents can and cannot do:
|
|
94
|
-
|
|
95
|
-
```yaml
|
|
96
|
-
id: project-policy
|
|
97
|
-
name: Project Policy
|
|
98
|
-
severity: 4
|
|
99
|
-
rules:
|
|
100
|
-
- action: git.push
|
|
101
|
-
effect: deny
|
|
102
|
-
branches: [main, master]
|
|
103
|
-
reason: Protected branch
|
|
104
|
-
|
|
105
|
-
- action: git.force-push
|
|
106
|
-
effect: deny
|
|
107
|
-
reason: Force push not allowed
|
|
108
|
-
|
|
109
|
-
- action: file.write
|
|
110
|
-
effect: deny
|
|
111
|
-
target: .env
|
|
112
|
-
reason: No secrets modification
|
|
113
|
-
|
|
114
|
-
- action: file.read
|
|
115
|
-
effect: allow
|
|
116
|
-
reason: Reading is always safe
|
|
117
|
-
```
|
|
118
|
-
|
|
119
|
-
Drop an `agentguard.yaml` in your repo root — the CLI picks it up automatically.
|
|
120
|
-
|
|
121
|
-
## Built-in Invariants
|
|
122
|
-
|
|
123
|
-
8 safety invariants run on every action evaluation:
|
|
124
|
-
|
|
125
|
-
| Invariant | Severity | Description |
|
|
126
|
-
|-----------|----------|-------------|
|
|
127
|
-
| **no-secret-exposure** | 5 (critical) | Blocks access to .env, credentials, .pem, .key files |
|
|
128
|
-
| **protected-branch** | 4 (high) | Prevents direct push to main/master |
|
|
129
|
-
| **no-force-push** | 4 (high) | Forbids force push |
|
|
130
|
-
| **no-skill-modification** | 4 (high) | Prevents modification of .claude/skills/ files |
|
|
131
|
-
| **no-scheduled-task-modification** | 4 (high) | Prevents modification of scheduled task files |
|
|
132
|
-
| **blast-radius-limit** | 3 (medium) | Enforces file modification limit (default 20) |
|
|
133
|
-
| **test-before-push** | 3 (medium) | Requires tests pass before push |
|
|
134
|
-
| **lockfile-integrity** | 2 (low) | Ensures package.json changes sync with lockfiles |
|
|
135
|
-
|
|
136
|
-
## Escalation
|
|
137
|
-
|
|
138
|
-
AgentGuard tracks repeated denials and invariant violations. If an agent repeatedly attempts blocked actions, the runtime escalates to lockdown — all actions denied until a human intervenes. See [escalation state machine](docs/unified-architecture.md) for the full detail.
|
|
139
|
-
|
|
140
|
-
## CLI
|
|
141
|
-
|
|
142
|
-
```bash
|
|
143
|
-
# === Governance ===
|
|
144
|
-
agentguard guard # Start governed action runtime
|
|
145
|
-
agentguard guard --policy <file> # Use a specific policy file (YAML/JSON)
|
|
146
|
-
agentguard guard --dry-run # Evaluate without executing actions
|
|
147
|
-
agentguard inspect [runId] # Show action graph and decisions for a run
|
|
148
|
-
agentguard inspect --last # Inspect most recent run
|
|
149
|
-
agentguard events [runId] # Show raw event stream for a run
|
|
150
|
-
|
|
151
|
-
# === Portability ===
|
|
152
|
-
agentguard export <runId> # Export a governance session to JSONL
|
|
153
|
-
agentguard export --last # Export the most recent run
|
|
154
|
-
agentguard import <file> # Import a governance session from JSONL
|
|
155
|
-
|
|
156
|
-
# === Replay ===
|
|
157
|
-
agentguard replay --last # Replay a governance session timeline
|
|
158
|
-
agentguard replay --last --step # Step through events interactively
|
|
159
|
-
|
|
160
|
-
# === Plugins ===
|
|
161
|
-
agentguard plugin list # List installed plugins
|
|
162
|
-
agentguard plugin install <path> # Install a plugin from a local path
|
|
163
|
-
agentguard plugin remove <id> # Remove a plugin by ID
|
|
164
|
-
agentguard plugin search [query] # Search for plugins on npm
|
|
165
|
-
|
|
166
|
-
# === Integration ===
|
|
167
|
-
agentguard claude-init # Set up Claude Code hook integration
|
|
168
|
-
agentguard help # Show all commands
|
|
169
|
-
```
|
|
170
|
-
|
|
171
|
-
Install globally: `npm i -g @red-codes/agentguard`
|
|
172
|
-
|
|
173
|
-
## Claude Code Integration
|
|
174
|
-
|
|
175
|
-
AgentGuard hooks into [Claude Code](https://docs.anthropic.com/en/docs/claude-code) sessions via PreToolUse/PostToolUse hooks. Every tool call is normalized into a canonical action and evaluated by the kernel.
|
|
176
|
-
|
|
177
|
-
```bash
|
|
178
|
-
npx @red-codes/agentguard claude-init # Set up Claude Code hooks
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
Tool call mapping:
|
|
182
|
-
|
|
183
|
-
| Claude Code Tool | AgentGuard Action |
|
|
184
|
-
|-----------------|-------------------|
|
|
185
|
-
| Write | file.write |
|
|
186
|
-
| Edit | file.write |
|
|
187
|
-
| Read | file.read |
|
|
188
|
-
| Bash | shell.exec (or git.push, git.commit if git command detected) |
|
|
189
|
-
| Glob | file.read |
|
|
190
|
-
| Grep | file.read |
|
|
191
|
-
|
|
192
|
-
## Event Trail
|
|
193
|
-
|
|
194
|
-
Every action proposal, decision, and execution is recorded as JSONL:
|
|
195
|
-
|
|
196
|
-
```
|
|
197
|
-
.agentguard/events/<runId>.jsonl
|
|
198
|
-
```
|
|
199
|
-
|
|
200
|
-
Inspect with:
|
|
201
|
-
|
|
202
|
-
```bash
|
|
203
|
-
agentguard inspect --last # Action summary + event stream
|
|
204
|
-
agentguard events --last # Raw JSONL to stdout (pipe to jq, etc.)
|
|
205
|
-
```
|
|
206
|
-
|
|
207
|
-
## Architecture
|
|
208
|
-
|
|
209
|
-
```
|
|
210
|
-
Agent Tool Call → AgentGuard Kernel → Policy + Invariants → allow / deny
|
|
211
|
-
│
|
|
212
|
-
┌────────────────────────┤
|
|
213
|
-
▼ ▼
|
|
214
|
-
Execution Adapter Event Stream
|
|
215
|
-
(file, shell, git) (JSONL audit trail)
|
|
216
|
-
```
|
|
217
|
-
|
|
218
|
-
Full kernel loop detail: [docs/unified-architecture.md](docs/unified-architecture.md)
|
|
219
|
-
|
|
220
|
-
### Repository Structure
|
|
221
|
-
|
|
222
|
-
```
|
|
223
|
-
src/
|
|
224
|
-
├── kernel/ # Governed action kernel
|
|
225
|
-
│ ├── kernel.ts # Orchestrator (propose → evaluate → execute → emit)
|
|
226
|
-
│ ├── aab.ts # Action Authorization Boundary (normalization)
|
|
227
|
-
│ ├── blast-radius.ts # Weighted blast radius computation engine
|
|
228
|
-
│ ├── decision.ts # Runtime assurance engine
|
|
229
|
-
│ ├── monitor.ts # Escalation state machine
|
|
230
|
-
│ ├── evidence.ts # Evidence pack generation
|
|
231
|
-
│ ├── replay-comparator.ts # Replay outcome comparison
|
|
232
|
-
│ ├── replay-engine.ts # Deterministic replay engine
|
|
233
|
-
│ ├── replay-processor.ts # Replay event processor
|
|
234
|
-
│ ├── decisions/ # Typed decision records
|
|
235
|
-
│ └── simulation/ # Pre-execution impact simulation
|
|
236
|
-
├── events/ # Canonical event model
|
|
237
|
-
│ ├── schema.ts # Event kinds, factory, validation
|
|
238
|
-
│ ├── bus.ts # Generic typed EventBus
|
|
239
|
-
│ ├── store.ts # In-memory event store
|
|
240
|
-
│ ├── jsonl.ts # JSONL event persistence (audit trail)
|
|
241
|
-
│ └── decision-jsonl.ts # Decision record persistence
|
|
242
|
-
├── policy/ # Policy system
|
|
243
|
-
│ ├── evaluator.ts # Rule matching engine
|
|
244
|
-
│ ├── loader.ts # Policy validation + loading
|
|
245
|
-
│ ├── pack-loader.ts # Policy pack loader (community policy sets)
|
|
246
|
-
│ └── yaml-loader.ts # YAML policy parser
|
|
247
|
-
├── invariants/ # Invariant system
|
|
248
|
-
│ ├── definitions.ts # 8 built-in invariants
|
|
249
|
-
│ └── checker.ts # Invariant evaluation engine
|
|
250
|
-
├── adapters/ # Execution adapters
|
|
251
|
-
│ ├── file.ts, shell.ts, git.ts # Action handlers
|
|
252
|
-
│ ├── claude-code.ts # Claude Code hook adapter
|
|
253
|
-
│ └── registry.ts # Adapter registry
|
|
254
|
-
├── plugins/ # Plugin ecosystem
|
|
255
|
-
│ ├── discovery.ts # Plugin discovery mechanism
|
|
256
|
-
│ ├── registry.ts # Plugin registry
|
|
257
|
-
│ ├── sandbox.ts # Plugin sandboxing
|
|
258
|
-
│ ├── validator.ts # Plugin validation
|
|
259
|
-
│ ├── types.ts # Plugin type definitions
|
|
260
|
-
│ └── index.ts # Module re-exports
|
|
261
|
-
├── renderers/ # Renderer plugin system
|
|
262
|
-
│ ├── registry.ts # Renderer registry
|
|
263
|
-
│ ├── tui-renderer.ts # TUI renderer implementation
|
|
264
|
-
│ ├── types.ts # Renderer type definitions
|
|
265
|
-
│ └── index.ts # Module re-exports
|
|
266
|
-
├── cli/ # CLI entry point + commands
|
|
267
|
-
│ ├── bin.ts # Main entry
|
|
268
|
-
│ └── commands/ # guard, inspect, replay, export, import, plugin, claude-hook, claude-init
|
|
269
|
-
├── telemetry/ # Runtime telemetry and logging
|
|
270
|
-
└── core/ # Shared utilities (types, actions, hash, rng, execution-log)
|
|
271
|
-
```
|
|
272
|
-
|
|
273
|
-
## Run Locally
|
|
274
|
-
|
|
275
|
-
```bash
|
|
276
|
-
git clone https://github.com/jpleva91/agent-guard.git
|
|
277
|
-
cd agent-guard
|
|
278
|
-
npm install
|
|
279
|
-
npm run build:ts # Compile TypeScript → dist/
|
|
280
|
-
npm run ts:test # Run TypeScript tests (vitest)
|
|
281
|
-
npm test # Run JavaScript tests
|
|
282
|
-
```
|
|
283
|
-
|
|
284
|
-
## Documentation
|
|
285
|
-
|
|
286
|
-
| Document | Description |
|
|
287
|
-
|----------|-------------|
|
|
288
|
-
| [AgentGuard Spec](docs/agentguard.md) | Governance runtime specification |
|
|
289
|
-
| [Architecture](docs/unified-architecture.md) | Governed action kernel model |
|
|
290
|
-
| [Priorities](docs/current-priorities.md) | Current roadmap and next steps |
|
|
291
|
-
| [Product Positioning](docs/product-positioning.md) | What this is and isn't |
|
|
292
|
-
| [Event Model](docs/event-model.md) | Canonical event schema |
|
|
293
|
-
| [Plugin API](docs/plugin-api.md) | Event sources and extension points |
|
|
294
|
-
| [Contributing](CONTRIBUTING.md) | How to contribute |
|
|
295
|
-
|
|
296
|
-
## License
|
|
297
|
-
|
|
298
|
-
[Apache 2.0](LICENSE)
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { RawAgentAction } from '../kernel/aab.js';
|
|
2
|
-
import type { Kernel, KernelResult } from '../kernel/kernel.js';
|
|
3
|
-
export interface ClaudeCodeToolUse {
|
|
4
|
-
tool_name: string;
|
|
5
|
-
tool_input?: Record<string, unknown>;
|
|
6
|
-
tool_output?: Record<string, unknown>;
|
|
7
|
-
}
|
|
8
|
-
export interface ClaudeCodeHookPayload {
|
|
9
|
-
hook: 'PreToolUse' | 'PostToolUse';
|
|
10
|
-
tool_name: string;
|
|
11
|
-
tool_input?: Record<string, unknown>;
|
|
12
|
-
tool_output?: Record<string, unknown>;
|
|
13
|
-
/** Claude Code session identifier for agent identity propagation */
|
|
14
|
-
session_id?: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Resolve a meaningful agent identity from the session ID.
|
|
18
|
-
* Format: 'claude-code' (no session) or 'claude-code:<hash>' (with session).
|
|
19
|
-
*/
|
|
20
|
-
export declare function resolveAgentIdentity(sessionId?: string): string;
|
|
21
|
-
export declare function normalizeClaudeCodeAction(payload: ClaudeCodeHookPayload): RawAgentAction;
|
|
22
|
-
export declare function processClaudeCodeHook(kernel: Kernel, payload: ClaudeCodeHookPayload, systemContext?: Record<string, unknown>): Promise<KernelResult>;
|
|
23
|
-
export declare function formatHookResponse(result: KernelResult): string;
|
|
24
|
-
//# sourceMappingURL=claude-code.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"claude-code.d.ts","sourceRoot":"","sources":["../../src/adapters/claude-code.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGhE,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,YAAY,GAAG,aAAa,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAK/D;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CA0ExF;AAED,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,qBAAqB,EAC9B,aAAa,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAC1C,OAAO,CAAC,YAAY,CAAC,CAGvB;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAW/D"}
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
// Claude Code adapter — normalizes Claude Code hook payloads into kernel actions.
|
|
2
|
-
// Handles PreToolUse and PostToolUse hook events.
|
|
3
|
-
// Propagates agent session identity for audit correlation.
|
|
4
|
-
import { simpleHash } from '../core/hash.js';
|
|
5
|
-
/**
|
|
6
|
-
* Resolve a meaningful agent identity from the session ID.
|
|
7
|
-
* Format: 'claude-code' (no session) or 'claude-code:<hash>' (with session).
|
|
8
|
-
*/
|
|
9
|
-
export function resolveAgentIdentity(sessionId) {
|
|
10
|
-
if (!sessionId || typeof sessionId !== 'string' || sessionId.trim() === '') {
|
|
11
|
-
return 'claude-code';
|
|
12
|
-
}
|
|
13
|
-
return `claude-code:${simpleHash(sessionId.trim())}`;
|
|
14
|
-
}
|
|
15
|
-
export function normalizeClaudeCodeAction(payload) {
|
|
16
|
-
const input = payload.tool_input || {};
|
|
17
|
-
const agent = resolveAgentIdentity(payload.session_id);
|
|
18
|
-
switch (payload.tool_name) {
|
|
19
|
-
case 'Write':
|
|
20
|
-
return {
|
|
21
|
-
tool: 'Write',
|
|
22
|
-
file: input.file_path,
|
|
23
|
-
content: input.content,
|
|
24
|
-
agent,
|
|
25
|
-
metadata: { hook: payload.hook, sessionId: payload.session_id },
|
|
26
|
-
};
|
|
27
|
-
case 'Edit':
|
|
28
|
-
return {
|
|
29
|
-
tool: 'Edit',
|
|
30
|
-
file: input.file_path,
|
|
31
|
-
content: input.new_string,
|
|
32
|
-
agent,
|
|
33
|
-
metadata: {
|
|
34
|
-
hook: payload.hook,
|
|
35
|
-
old_string: input.old_string,
|
|
36
|
-
sessionId: payload.session_id,
|
|
37
|
-
},
|
|
38
|
-
};
|
|
39
|
-
case 'Read':
|
|
40
|
-
return {
|
|
41
|
-
tool: 'Read',
|
|
42
|
-
file: input.file_path,
|
|
43
|
-
agent,
|
|
44
|
-
metadata: { hook: payload.hook, sessionId: payload.session_id },
|
|
45
|
-
};
|
|
46
|
-
case 'Bash': {
|
|
47
|
-
const command = input.command;
|
|
48
|
-
return {
|
|
49
|
-
tool: 'Bash',
|
|
50
|
-
command,
|
|
51
|
-
target: command?.slice(0, 100),
|
|
52
|
-
agent,
|
|
53
|
-
metadata: {
|
|
54
|
-
hook: payload.hook,
|
|
55
|
-
timeout: input.timeout,
|
|
56
|
-
description: input.description,
|
|
57
|
-
sessionId: payload.session_id,
|
|
58
|
-
},
|
|
59
|
-
};
|
|
60
|
-
}
|
|
61
|
-
case 'Glob':
|
|
62
|
-
return {
|
|
63
|
-
tool: 'Glob',
|
|
64
|
-
target: input.pattern,
|
|
65
|
-
agent,
|
|
66
|
-
metadata: { hook: payload.hook, path: input.path, sessionId: payload.session_id },
|
|
67
|
-
};
|
|
68
|
-
case 'Grep':
|
|
69
|
-
return {
|
|
70
|
-
tool: 'Grep',
|
|
71
|
-
target: input.pattern,
|
|
72
|
-
agent,
|
|
73
|
-
metadata: { hook: payload.hook, path: input.path, sessionId: payload.session_id },
|
|
74
|
-
};
|
|
75
|
-
default:
|
|
76
|
-
return {
|
|
77
|
-
tool: payload.tool_name,
|
|
78
|
-
agent,
|
|
79
|
-
metadata: { hook: payload.hook, input, sessionId: payload.session_id },
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
export async function processClaudeCodeHook(kernel, payload, systemContext = {}) {
|
|
84
|
-
const rawAction = normalizeClaudeCodeAction(payload);
|
|
85
|
-
return kernel.propose(rawAction, systemContext);
|
|
86
|
-
}
|
|
87
|
-
export function formatHookResponse(result) {
|
|
88
|
-
if (!result.allowed) {
|
|
89
|
-
const reason = result.decision.decision.reason;
|
|
90
|
-
const violations = result.decision.violations;
|
|
91
|
-
const parts = [`DENIED: ${reason}`];
|
|
92
|
-
if (violations.length > 0) {
|
|
93
|
-
parts.push(`Violations: ${violations.map((v) => v.name).join(', ')}`);
|
|
94
|
-
}
|
|
95
|
-
return JSON.stringify({ error: parts.join(' | ') });
|
|
96
|
-
}
|
|
97
|
-
return '';
|
|
98
|
-
}
|
|
99
|
-
//# sourceMappingURL=claude-code.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../src/adapters/claude-code.ts"],"names":[],"mappings":"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"}
|
package/dist/adapters/file.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/adapters/file.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD,wBAAsB,WAAW,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,CAmC3E"}
|
package/dist/adapters/file.js
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
// File operation adapter — executes file.read, file.write, file.delete actions.
|
|
2
|
-
// Node.js adapter. Uses fs APIs.
|
|
3
|
-
import { readFile, writeFile, unlink, rename } from 'node:fs/promises';
|
|
4
|
-
export async function fileAdapter(action) {
|
|
5
|
-
const target = action.target;
|
|
6
|
-
switch (action.type) {
|
|
7
|
-
case 'file.read': {
|
|
8
|
-
const content = await readFile(target, 'utf8');
|
|
9
|
-
return { path: target, size: content.length };
|
|
10
|
-
}
|
|
11
|
-
case 'file.write': {
|
|
12
|
-
const content = action.content;
|
|
13
|
-
if (content === undefined) {
|
|
14
|
-
throw new Error('file.write requires content');
|
|
15
|
-
}
|
|
16
|
-
await writeFile(target, content, 'utf8');
|
|
17
|
-
return { path: target, written: content.length };
|
|
18
|
-
}
|
|
19
|
-
case 'file.delete': {
|
|
20
|
-
await unlink(target);
|
|
21
|
-
return { path: target, deleted: true };
|
|
22
|
-
}
|
|
23
|
-
case 'file.move': {
|
|
24
|
-
const destination = action.destination;
|
|
25
|
-
if (!destination) {
|
|
26
|
-
throw new Error('file.move requires destination');
|
|
27
|
-
}
|
|
28
|
-
await rename(target, destination);
|
|
29
|
-
return { from: target, to: destination };
|
|
30
|
-
}
|
|
31
|
-
default:
|
|
32
|
-
throw new Error(`Unsupported file action: ${action.type}`);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=file.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/adapters/file.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,iCAAiC;AAEjC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAGvE,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAuB;IACvD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAE7B,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;QAChD,CAAC;QAED,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,OAAO,GAAI,MAAkC,CAAC,OAA6B,CAAC;YAClF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;YACjD,CAAC;YACD,MAAM,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACzC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;QACnD,CAAC;QAED,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;YACrB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACzC,CAAC;QAED,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,WAAW,GAAI,MAAkC,CAAC,WAAiC,CAAC;YAC1F,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpD,CAAC;YACD,MAAM,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAClC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC;QAC3C,CAAC;QAED;YACE,MAAM,IAAI,KAAK,CAAC,4BAA4B,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC"}
|
package/dist/adapters/git.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/adapters/git.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAgBxD,wBAAsB,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,CAoD1E"}
|
package/dist/adapters/git.js
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
// Git operation adapter — executes git.commit, git.push, etc.
|
|
2
|
-
// Node.js adapter. Wraps shell execution with git-specific validation.
|
|
3
|
-
import { exec } from 'node:child_process';
|
|
4
|
-
const GIT_TIMEOUT = 30_000;
|
|
5
|
-
function execGit(command, cwd) {
|
|
6
|
-
return new Promise((resolve, reject) => {
|
|
7
|
-
exec(command, { timeout: GIT_TIMEOUT, cwd }, (error, stdout, stderr) => {
|
|
8
|
-
if (error) {
|
|
9
|
-
reject(new Error(`Git command failed: ${stderr || error.message}`));
|
|
10
|
-
return;
|
|
11
|
-
}
|
|
12
|
-
resolve({ stdout: stdout.toString(), stderr: stderr.toString() });
|
|
13
|
-
});
|
|
14
|
-
});
|
|
15
|
-
}
|
|
16
|
-
export async function gitAdapter(action) {
|
|
17
|
-
const cwd = action.cwd;
|
|
18
|
-
switch (action.type) {
|
|
19
|
-
case 'git.commit': {
|
|
20
|
-
const message = action.message;
|
|
21
|
-
if (!message) {
|
|
22
|
-
throw new Error('git.commit requires a message');
|
|
23
|
-
}
|
|
24
|
-
const result = await execGit(`git commit -m "${message.replace(/"/g, '\\"')}"`, cwd);
|
|
25
|
-
return { committed: true, output: result.stdout.trim() };
|
|
26
|
-
}
|
|
27
|
-
case 'git.push': {
|
|
28
|
-
const branch = action.target || 'HEAD';
|
|
29
|
-
const remote = action.remote || 'origin';
|
|
30
|
-
const result = await execGit(`git push ${remote} ${branch}`, cwd);
|
|
31
|
-
return { pushed: true, branch, remote, output: result.stdout.trim() };
|
|
32
|
-
}
|
|
33
|
-
case 'git.diff': {
|
|
34
|
-
const result = await execGit('git diff', cwd);
|
|
35
|
-
return { diff: result.stdout };
|
|
36
|
-
}
|
|
37
|
-
case 'git.branch.create': {
|
|
38
|
-
const branch = action.target;
|
|
39
|
-
const result = await execGit(`git checkout -b ${branch}`, cwd);
|
|
40
|
-
return { created: true, branch, output: result.stdout.trim() };
|
|
41
|
-
}
|
|
42
|
-
case 'git.branch.delete': {
|
|
43
|
-
const branch = action.target;
|
|
44
|
-
const result = await execGit(`git branch -d ${branch}`, cwd);
|
|
45
|
-
return { deleted: true, branch, output: result.stdout.trim() };
|
|
46
|
-
}
|
|
47
|
-
case 'git.checkout': {
|
|
48
|
-
const branch = action.target;
|
|
49
|
-
const result = await execGit(`git checkout ${branch}`, cwd);
|
|
50
|
-
return { checkedOut: true, branch, output: result.stdout.trim() };
|
|
51
|
-
}
|
|
52
|
-
case 'git.merge': {
|
|
53
|
-
const branch = action.target;
|
|
54
|
-
const result = await execGit(`git merge ${branch}`, cwd);
|
|
55
|
-
return { merged: true, branch, output: result.stdout.trim() };
|
|
56
|
-
}
|
|
57
|
-
default:
|
|
58
|
-
throw new Error(`Unsupported git action: ${action.type}`);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=git.js.map
|
package/dist/adapters/git.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/adapters/git.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/adapters/registry.ts"],"names":[],"mappings":"AAGA,OAAO,EAAyB,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAKxD,wBAAgB,kBAAkB,IAAI,eAAe,CAQpD;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
// Adapter registry — connects action classes to execution handlers.
|
|
2
|
-
// Node.js module. Registers file, shell, and git adapters.
|
|
3
|
-
import { createAdapterRegistry, createDryRunRegistry } from '../core/adapters.js';
|
|
4
|
-
import { fileAdapter } from './file.js';
|
|
5
|
-
import { shellAdapter } from './shell.js';
|
|
6
|
-
import { gitAdapter } from './git.js';
|
|
7
|
-
export function createLiveRegistry() {
|
|
8
|
-
const registry = createAdapterRegistry();
|
|
9
|
-
registry.register('file', fileAdapter);
|
|
10
|
-
registry.register('shell', shellAdapter);
|
|
11
|
-
registry.register('git', gitAdapter);
|
|
12
|
-
return registry;
|
|
13
|
-
}
|
|
14
|
-
export { createDryRunRegistry };
|
|
15
|
-
//# sourceMappingURL=registry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/adapters/registry.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,2DAA2D;AAE3D,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAElF,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,MAAM,UAAU,kBAAkB;IAChC,MAAM,QAAQ,GAAG,qBAAqB,EAAE,CAAC;IAEzC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACzC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAErC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
|
package/dist/adapters/shell.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { CanonicalAction } from '../core/types.js';
|
|
2
|
-
export interface ShellResult {
|
|
3
|
-
stdout: string;
|
|
4
|
-
stderr: string;
|
|
5
|
-
exitCode: number;
|
|
6
|
-
}
|
|
7
|
-
export declare function shellAdapter(action: CanonicalAction): Promise<ShellResult>;
|
|
8
|
-
//# sourceMappingURL=shell.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/adapters/shell.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAKxD,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAwBhF"}
|
package/dist/adapters/shell.js
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
// Shell execution adapter — executes shell.exec actions.
|
|
2
|
-
// Node.js adapter. Uses child_process.
|
|
3
|
-
import { exec } from 'node:child_process';
|
|
4
|
-
const DEFAULT_TIMEOUT = 30_000;
|
|
5
|
-
const MAX_BUFFER = 1024 * 1024; // 1MB
|
|
6
|
-
export async function shellAdapter(action) {
|
|
7
|
-
const command = action.command;
|
|
8
|
-
if (!command) {
|
|
9
|
-
throw new Error('shell.exec requires a command');
|
|
10
|
-
}
|
|
11
|
-
const timeout = action.timeout || DEFAULT_TIMEOUT;
|
|
12
|
-
const cwd = action.cwd;
|
|
13
|
-
return new Promise((resolve, reject) => {
|
|
14
|
-
exec(command, { timeout, maxBuffer: MAX_BUFFER, cwd }, (error, stdout, stderr) => {
|
|
15
|
-
if (error && error.killed) {
|
|
16
|
-
reject(new Error(`Command timed out after ${timeout}ms: ${command}`));
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
resolve({
|
|
20
|
-
stdout: stdout.toString(),
|
|
21
|
-
stderr: stderr.toString(),
|
|
22
|
-
exitCode: error ? (error.code ?? 1) : 0,
|
|
23
|
-
});
|
|
24
|
-
});
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=shell.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/adapters/shell.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,uCAAuC;AAEvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAG1C,MAAM,eAAe,GAAG,MAAM,CAAC;AAC/B,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,MAAM;AAQtC,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAuB;IACxD,MAAM,OAAO,GAAI,MAAkC,CAAC,OAA6B,CAAC;IAClF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,OAAO,GACT,MAAkC,CAAC,OAA8B,IAAI,eAAe,CAAC;IACzF,MAAM,GAAG,GAAI,MAAkC,CAAC,GAAyB,CAAC;IAE1E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YAC/E,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC1B,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,OAAO,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC;gBACtE,OAAO;YACT,CAAC;YAED,OAAO,CAAC;gBACN,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;gBACzB,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;gBACzB,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACxC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/dist/cli/args.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"AAEA,UAAU,OAAO;IACf,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,WAAW;IACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;IAC/C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,OAAY,GAAG,WAAW,CAuCzE;AAED,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrD,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAyBnD"}
|
package/dist/cli/args.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/bin.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../../src/cli/bin.ts"],"names":[],"mappings":""}
|