@elie-laloum/outpost 11.1.2 → 11.2.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/CHANGELOG.md +34 -0
- package/README.md +2 -1
- package/SECURITY.md +5 -1
- package/dist/adapters/agents/antigravity/antigravity-adapter.js +9 -0
- package/dist/adapters/agents/antigravity/antigravity-adapter.js.map +1 -1
- package/dist/adapters/agents/antigravity/antigravity-hook-plan.d.ts +3 -0
- package/dist/adapters/agents/antigravity/antigravity-hook-plan.js +39 -0
- package/dist/adapters/agents/antigravity/antigravity-hook-plan.js.map +1 -0
- package/dist/adapters/agents/antigravity/antigravity-hooks.constants.d.ts +3 -0
- package/dist/adapters/agents/antigravity/antigravity-hooks.constants.js +394 -0
- package/dist/adapters/agents/antigravity/antigravity-hooks.constants.js.map +1 -0
- package/dist/adapters/agents/antigravity/antigravity-hooks.d.ts +2 -0
- package/dist/adapters/agents/antigravity/antigravity-hooks.js +6 -0
- package/dist/adapters/agents/antigravity/antigravity-hooks.js.map +1 -0
- package/dist/adapters/agents/antigravity/antigravity-hooks.types.d.ts +114 -0
- package/dist/adapters/agents/antigravity/antigravity-hooks.types.js +2 -0
- package/dist/adapters/agents/antigravity/antigravity-hooks.types.js.map +1 -0
- package/dist/adapters/agents/antigravity/antigravity.types.d.ts +1 -0
- package/dist/adapters/agents/antigravity/antigravity.types.js.map +1 -1
- package/dist/adapters/agents/authentication.js +1 -0
- package/dist/adapters/agents/authentication.js.map +1 -1
- package/dist/adapters/agents/claude/claude-adapter.js +15 -0
- package/dist/adapters/agents/claude/claude-adapter.js.map +1 -1
- package/dist/adapters/agents/claude/claude-hook-plan.constants.d.ts +1 -0
- package/dist/adapters/agents/claude/claude-hook-plan.constants.js +20 -0
- package/dist/adapters/agents/claude/claude-hook-plan.constants.js.map +1 -0
- package/dist/adapters/agents/claude/claude-hook-plan.d.ts +4 -0
- package/dist/adapters/agents/claude/claude-hook-plan.js +60 -0
- package/dist/adapters/agents/claude/claude-hook-plan.js.map +1 -0
- package/dist/adapters/agents/claude/claude-hooks.constants.d.ts +3 -0
- package/dist/adapters/agents/claude/claude-hooks.constants.js +2968 -0
- package/dist/adapters/agents/claude/claude-hooks.constants.js.map +1 -0
- package/dist/adapters/agents/claude/claude-hooks.d.ts +2 -0
- package/dist/adapters/agents/claude/claude-hooks.js +6 -0
- package/dist/adapters/agents/claude/claude-hooks.js.map +1 -0
- package/dist/adapters/agents/claude/claude-hooks.types.d.ts +900 -0
- package/dist/adapters/agents/claude/claude-hooks.types.js +2 -0
- package/dist/adapters/agents/claude/claude-hooks.types.js.map +1 -0
- package/dist/adapters/agents/claude/claude-profile.d.ts +1 -0
- package/dist/adapters/agents/claude/claude-profile.js +23 -11
- package/dist/adapters/agents/claude/claude-profile.js.map +1 -1
- package/dist/adapters/agents/codex/codex-adapter.js +17 -1
- package/dist/adapters/agents/codex/codex-adapter.js.map +1 -1
- package/dist/adapters/agents/codex/codex-authentication.js +1 -0
- package/dist/adapters/agents/codex/codex-authentication.js.map +1 -1
- package/dist/adapters/agents/codex/codex-conversations.constants.d.ts +1 -0
- package/dist/adapters/agents/codex/codex-conversations.constants.js +2 -0
- package/dist/adapters/agents/codex/codex-conversations.constants.js.map +1 -0
- package/dist/adapters/agents/codex/codex-conversations.js +8 -5
- package/dist/adapters/agents/codex/codex-conversations.js.map +1 -1
- package/dist/adapters/agents/codex/codex-hook-plan.d.ts +3 -0
- package/dist/adapters/agents/codex/codex-hook-plan.js +72 -0
- package/dist/adapters/agents/codex/codex-hook-plan.js.map +1 -0
- package/dist/adapters/agents/codex/codex-hooks.constants.d.ts +3 -0
- package/dist/adapters/agents/codex/codex-hooks.constants.js +942 -0
- package/dist/adapters/agents/codex/codex-hooks.constants.js.map +1 -0
- package/dist/adapters/agents/codex/codex-hooks.d.ts +2 -0
- package/dist/adapters/agents/codex/codex-hooks.js +6 -0
- package/dist/adapters/agents/codex/codex-hooks.js.map +1 -0
- package/dist/adapters/agents/codex/codex-hooks.types.d.ts +255 -0
- package/dist/adapters/agents/codex/codex-hooks.types.js +2 -0
- package/dist/adapters/agents/codex/codex-hooks.types.js.map +1 -0
- package/dist/adapters/agents/codex/codex-provider.js +2 -2
- package/dist/adapters/agents/codex/codex-provider.js.map +1 -1
- package/dist/adapters/agents/copilot/copilot-adapter.js +14 -0
- package/dist/adapters/agents/copilot/copilot-adapter.js.map +1 -1
- package/dist/adapters/agents/copilot/copilot-hook-plan.d.ts +3 -0
- package/dist/adapters/agents/copilot/copilot-hook-plan.js +26 -0
- package/dist/adapters/agents/copilot/copilot-hook-plan.js.map +1 -0
- package/dist/adapters/agents/copilot/copilot-hooks.constants.d.ts +3 -0
- package/dist/adapters/agents/copilot/copilot-hooks.constants.js +528 -0
- package/dist/adapters/agents/copilot/copilot-hooks.constants.js.map +1 -0
- package/dist/adapters/agents/copilot/copilot-hooks.d.ts +2 -0
- package/dist/adapters/agents/copilot/copilot-hooks.js +6 -0
- package/dist/adapters/agents/copilot/copilot-hooks.js.map +1 -0
- package/dist/adapters/agents/copilot/copilot-hooks.types.d.ts +166 -0
- package/dist/adapters/agents/copilot/copilot-hooks.types.js +2 -0
- package/dist/adapters/agents/copilot/copilot-hooks.types.js.map +1 -0
- package/dist/adapters/agents/copilot/copilot.types.d.ts +1 -0
- package/dist/adapters/agents/copilot/copilot.types.js.map +1 -1
- package/dist/adapters/agents/hook-groups.d.ts +2 -0
- package/dist/adapters/agents/hook-groups.js +17 -0
- package/dist/adapters/agents/hook-groups.js.map +1 -0
- package/dist/adapters/agents/kimi/kimi-adapter.js +16 -1
- package/dist/adapters/agents/kimi/kimi-adapter.js.map +1 -1
- package/dist/adapters/agents/kimi/kimi-hook-plan.d.ts +3 -0
- package/dist/adapters/agents/kimi/kimi-hook-plan.js +33 -0
- package/dist/adapters/agents/kimi/kimi-hook-plan.js.map +1 -0
- package/dist/adapters/agents/kimi/kimi-hooks.constants.d.ts +3 -0
- package/dist/adapters/agents/kimi/kimi-hooks.constants.js +747 -0
- package/dist/adapters/agents/kimi/kimi-hooks.constants.js.map +1 -0
- package/dist/adapters/agents/kimi/kimi-hooks.d.ts +2 -0
- package/dist/adapters/agents/kimi/kimi-hooks.js +6 -0
- package/dist/adapters/agents/kimi/kimi-hooks.js.map +1 -0
- package/dist/adapters/agents/kimi/kimi-hooks.types.d.ts +226 -0
- package/dist/adapters/agents/kimi/kimi-hooks.types.js +2 -0
- package/dist/adapters/agents/kimi/kimi-hooks.types.js.map +1 -0
- package/dist/adapters/agents/kimi/kimi-request.js +2 -0
- package/dist/adapters/agents/kimi/kimi-request.js.map +1 -1
- package/dist/adapters/agents/kimi/kimi.constants.d.ts +1 -0
- package/dist/adapters/agents/kimi/kimi.constants.js +1 -0
- package/dist/adapters/agents/kimi/kimi.constants.js.map +1 -1
- package/dist/adapters/agents/kimi/kimi.types.d.ts +1 -0
- package/dist/adapters/agents/kimi/kimi.types.js.map +1 -1
- package/dist/adapters/agents/native-hooks.d.ts +4 -0
- package/dist/adapters/agents/native-hooks.js +63 -0
- package/dist/adapters/agents/native-hooks.js.map +1 -0
- package/dist/adapters/agents/native-hooks.types.d.ts +22 -0
- package/dist/adapters/agents/native-hooks.types.js +2 -0
- package/dist/adapters/agents/native-hooks.types.js.map +1 -0
- package/dist/adapters/agents/settings.types.d.ts +2 -0
- package/dist/adapters/agents/settings.types.js.map +1 -1
- package/dist/adapters/decisions/system-one-provider.constants.d.ts +1 -1
- package/dist/adapters/decisions/system-one-provider.constants.js +1 -1
- package/dist/adapters/decisions/system-one-provider.constants.js.map +1 -1
- package/dist/adapters/decisions/system-one-provider.js +8 -21
- package/dist/adapters/decisions/system-one-provider.js.map +1 -1
- package/dist/adapters/models/anthropic-model-provider.constants.d.ts +1 -0
- package/dist/adapters/models/anthropic-model-provider.constants.js +4 -0
- package/dist/adapters/models/anthropic-model-provider.constants.js.map +1 -1
- package/dist/adapters/models/anthropic-model-provider.js +7 -1
- package/dist/adapters/models/anthropic-model-provider.js.map +1 -1
- package/dist/adapters/models/http-failure.d.ts +3 -0
- package/dist/adapters/models/http-failure.js +43 -0
- package/dist/adapters/models/http-failure.js.map +1 -0
- package/dist/adapters/models/http-provider.js +14 -20
- package/dist/adapters/models/http-provider.js.map +1 -1
- package/dist/adapters/models/model-protocol.types.d.ts +1 -0
- package/dist/adapters/models/model-protocol.types.js.map +1 -1
- package/dist/adapters/models/model.constants.d.ts +2 -0
- package/dist/adapters/models/model.constants.js +17 -0
- package/dist/adapters/models/model.constants.js.map +1 -1
- package/dist/adapters/models/openai-chat-stream.js +3 -1
- package/dist/adapters/models/openai-chat-stream.js.map +1 -1
- package/dist/adapters/models/openai-responses.js +4 -0
- package/dist/adapters/models/openai-responses.js.map +1 -1
- package/dist/adapters/secrets/aws.js +5 -4
- package/dist/adapters/secrets/aws.js.map +1 -1
- package/dist/adapters/secrets/azure.constants.d.ts +1 -0
- package/dist/adapters/secrets/azure.constants.js +2 -0
- package/dist/adapters/secrets/azure.constants.js.map +1 -0
- package/dist/adapters/secrets/azure.js +2 -1
- package/dist/adapters/secrets/azure.js.map +1 -1
- package/dist/adapters/secrets/gcp.constants.d.ts +1 -0
- package/dist/adapters/secrets/gcp.constants.js +2 -0
- package/dist/adapters/secrets/gcp.constants.js.map +1 -0
- package/dist/adapters/secrets/gcp.js +11 -9
- package/dist/adapters/secrets/gcp.js.map +1 -1
- package/dist/adapters/secrets/infisical.js +3 -2
- package/dist/adapters/secrets/infisical.js.map +1 -1
- package/dist/adapters/secrets/onepassword.constants.d.ts +1 -0
- package/dist/adapters/secrets/onepassword.constants.js +2 -0
- package/dist/adapters/secrets/onepassword.constants.js.map +1 -0
- package/dist/adapters/secrets/onepassword.js +2 -1
- package/dist/adapters/secrets/onepassword.js.map +1 -1
- package/dist/adapters/secrets/secret-source.js +3 -1
- package/dist/adapters/secrets/secret-source.js.map +1 -1
- package/dist/adapters/secrets/vault-response.js +5 -5
- package/dist/adapters/secrets/vault-response.js.map +1 -1
- package/dist/adapters/secrets/vault.js +4 -3
- package/dist/adapters/secrets/vault.js.map +1 -1
- package/dist/adapters/testing/scripted-agent.d.ts +3 -1
- package/dist/adapters/testing/scripted-agent.js +3 -1
- package/dist/adapters/testing/scripted-agent.js.map +1 -1
- package/dist/adapters/tools/edit-tools.js +3 -3
- package/dist/adapters/tools/edit-tools.js.map +1 -1
- package/dist/adapters/tools/git-tools.js +16 -1
- package/dist/adapters/tools/git-tools.js.map +1 -1
- package/dist/adapters/tools/mcp-launcher.constants.d.ts +1 -1
- package/dist/adapters/tools/mcp-launcher.constants.js +29 -7
- package/dist/adapters/tools/mcp-launcher.constants.js.map +1 -1
- package/dist/adapters/tools/mcp-resources.js +5 -1
- package/dist/adapters/tools/mcp-resources.js.map +1 -1
- package/dist/adapters/tools/mcp.constants.d.ts +0 -6
- package/dist/adapters/tools/mcp.constants.js +0 -6
- package/dist/adapters/tools/mcp.constants.js.map +1 -1
- package/dist/adapters/tools/mcp.js +1 -0
- package/dist/adapters/tools/mcp.js.map +1 -1
- package/dist/adapters/tools/sandbox-files.constants.d.ts +1 -0
- package/dist/adapters/tools/sandbox-files.constants.js +17 -0
- package/dist/adapters/tools/sandbox-files.constants.js.map +1 -0
- package/dist/adapters/tools/sandbox-files.d.ts +1 -0
- package/dist/adapters/tools/sandbox-files.js +14 -1
- package/dist/adapters/tools/sandbox-files.js.map +1 -1
- package/dist/adapters/tools/tools.constants.js +1 -0
- package/dist/adapters/tools/tools.constants.js.map +1 -1
- package/dist/adapters/triggers/github-webhook.js +14 -11
- package/dist/adapters/triggers/github-webhook.js.map +1 -1
- package/dist/adapters/triggers/gitlab-webhook.js +16 -13
- package/dist/adapters/triggers/gitlab-webhook.js.map +1 -1
- package/dist/adapters/triggers/slack-request.js +10 -7
- package/dist/adapters/triggers/slack-request.js.map +1 -1
- package/dist/adapters/triggers/standard-webhook.js +10 -7
- package/dist/adapters/triggers/standard-webhook.js.map +1 -1
- package/dist/application/agent-authentication.js +4 -1
- package/dist/application/agent-authentication.js.map +1 -1
- package/dist/application/agent-turn.js +20 -5
- package/dist/application/agent-turn.js.map +1 -1
- package/dist/application/cli-hooks.constants.d.ts +2 -0
- package/dist/application/cli-hooks.constants.js +69 -0
- package/dist/application/cli-hooks.constants.js.map +1 -0
- package/dist/application/cli-hooks.d.ts +3 -0
- package/dist/application/cli-hooks.js +168 -0
- package/dist/application/cli-hooks.js.map +1 -0
- package/dist/application/cli-steering.js +33 -2
- package/dist/application/cli-steering.js.map +1 -1
- package/dist/application/custom-turn.js +10 -1
- package/dist/application/custom-turn.js.map +1 -1
- package/dist/application/diagnostic-probe.d.ts +1 -1
- package/dist/application/diagnostic-probe.js +7 -3
- package/dist/application/diagnostic-probe.js.map +1 -1
- package/dist/application/dispatch-observation.js +4 -0
- package/dist/application/dispatch-observation.js.map +1 -1
- package/dist/application/doctor-agent.d.ts +1 -1
- package/dist/application/doctor-agent.js +2 -2
- package/dist/application/doctor-agent.js.map +1 -1
- package/dist/application/doctor-deadline.d.ts +1 -0
- package/dist/application/doctor-deadline.js +10 -0
- package/dist/application/doctor-deadline.js.map +1 -0
- package/dist/application/doctor-image.js +9 -7
- package/dist/application/doctor-image.js.map +1 -1
- package/dist/application/doctor-sandbox.js +4 -4
- package/dist/application/doctor-sandbox.js.map +1 -1
- package/dist/application/doctor.constants.d.ts +2 -0
- package/dist/application/doctor.constants.js +2 -0
- package/dist/application/doctor.constants.js.map +1 -1
- package/dist/application/doctor.js +12 -8
- package/dist/application/doctor.js.map +1 -1
- package/dist/application/doctor.types.d.ts +2 -0
- package/dist/application/doctor.types.js.map +1 -1
- package/dist/application/file-sandbox.js +49 -11
- package/dist/application/file-sandbox.js.map +1 -1
- package/dist/application/harness-context.js +4 -2
- package/dist/application/harness-context.js.map +1 -1
- package/dist/application/harness-hook-transforms.d.ts +8 -0
- package/dist/application/harness-hook-transforms.js +115 -0
- package/dist/application/harness-hook-transforms.js.map +1 -0
- package/dist/application/harness-hooks.d.ts +5 -3
- package/dist/application/harness-hooks.js +37 -50
- package/dist/application/harness-hooks.js.map +1 -1
- package/dist/application/harness-loop.d.ts +2 -1
- package/dist/application/harness-loop.js +95 -21
- package/dist/application/harness-loop.js.map +1 -1
- package/dist/application/harness-subagent.d.ts +1 -1
- package/dist/application/harness-subagent.js +63 -12
- package/dist/application/harness-subagent.js.map +1 -1
- package/dist/application/harness.types.d.ts +3 -0
- package/dist/application/harness.types.js.map +1 -1
- package/dist/application/hook-invocation.d.ts +4 -0
- package/dist/application/hook-invocation.js +59 -0
- package/dist/application/hook-invocation.js.map +1 -0
- package/dist/application/queue-worker.js +51 -9
- package/dist/application/queue-worker.js.map +1 -1
- package/dist/application/queue-worker.types.d.ts +1 -0
- package/dist/application/queue-worker.types.js.map +1 -1
- package/dist/application/recipes/native-schemas.constants.js +1439 -218
- package/dist/application/recipes/native-schemas.constants.js.map +1 -1
- package/dist/application/recovery-inspection.js +4 -1
- package/dist/application/recovery-inspection.js.map +1 -1
- package/dist/application/remote-download.js +15 -5
- package/dist/application/remote-download.js.map +1 -1
- package/dist/application/remote-paths.d.ts +1 -0
- package/dist/application/remote-paths.js +7 -0
- package/dist/application/remote-paths.js.map +1 -0
- package/dist/application/remote-validation.js +40 -9
- package/dist/application/remote-validation.js.map +1 -1
- package/dist/application/remote-workspace.js +17 -2
- package/dist/application/remote-workspace.js.map +1 -1
- package/dist/application/repetition-watchdog.js +3 -1
- package/dist/application/repetition-watchdog.js.map +1 -1
- package/dist/application/sandbox-attach.js +38 -9
- package/dist/application/sandbox-attach.js.map +1 -1
- package/dist/application/sandbox-dispatch.js +7 -1
- package/dist/application/sandbox-dispatch.js.map +1 -1
- package/dist/application/schedules.js +2 -0
- package/dist/application/schedules.js.map +1 -1
- package/dist/application/secrets.js +4 -0
- package/dist/application/secrets.js.map +1 -1
- package/dist/application/tool-execution.js +28 -8
- package/dist/application/tool-execution.js.map +1 -1
- package/dist/application/transport-retention.js +3 -3
- package/dist/application/transport-retention.js.map +1 -1
- package/dist/application/workspace-fingerprint.d.ts +1 -0
- package/dist/application/workspace-fingerprint.js +19 -4
- package/dist/application/workspace-fingerprint.js.map +1 -1
- package/dist/cli/doctor-command.js +12 -2
- package/dist/cli/doctor-command.js.map +1 -1
- package/dist/cli/image.js +2 -0
- package/dist/cli/image.js.map +1 -1
- package/dist/cli/main.constants.d.ts +14 -2
- package/dist/cli/main.constants.js +27 -1
- package/dist/cli/main.constants.js.map +1 -1
- package/dist/cli/project-settings.js +7 -1
- package/dist/cli/project-settings.js.map +1 -1
- package/dist/cli/recipe-yaml.js +8 -0
- package/dist/cli/recipe-yaml.js.map +1 -1
- package/dist/cli/recovery-command.js +3 -0
- package/dist/cli/recovery-command.js.map +1 -1
- package/dist/cli/recovery-unlock-command.d.ts +2 -0
- package/dist/cli/recovery-unlock-command.js +19 -0
- package/dist/cli/recovery-unlock-command.js.map +1 -0
- package/dist/cli/scaffold-files.js +4 -1
- package/dist/cli/scaffold-files.js.map +1 -1
- package/dist/cli/scaffold-validation.js +3 -0
- package/dist/cli/scaffold-validation.js.map +1 -1
- package/dist/cli/scaffold.js +2 -0
- package/dist/cli/scaffold.js.map +1 -1
- package/dist/domain/agent-hook.types.d.ts +28 -0
- package/dist/domain/agent-hook.types.js +2 -0
- package/dist/domain/agent-hook.types.js.map +1 -0
- package/dist/domain/agent-profile-hooks.d.ts +2 -0
- package/dist/domain/agent-profile-hooks.js +52 -0
- package/dist/domain/agent-profile-hooks.js.map +1 -0
- package/dist/domain/agent-profile-permissions.js +11 -1
- package/dist/domain/agent-profile-permissions.js.map +1 -1
- package/dist/domain/agent-profile.constants.d.ts +1 -0
- package/dist/domain/agent-profile.constants.js +9 -0
- package/dist/domain/agent-profile.constants.js.map +1 -1
- package/dist/domain/agent-profile.js +6 -1
- package/dist/domain/agent-profile.js.map +1 -1
- package/dist/domain/agent-profile.types.d.ts +11 -0
- package/dist/domain/agent-profile.types.js.map +1 -1
- package/dist/domain/agent.types.d.ts +2 -0
- package/dist/domain/agent.types.js.map +1 -1
- package/dist/domain/container-image.d.ts +1 -0
- package/dist/domain/container-image.js +8 -0
- package/dist/domain/container-image.js.map +1 -0
- package/dist/domain/context.constants.d.ts +1 -0
- package/dist/domain/context.constants.js +1 -0
- package/dist/domain/context.constants.js.map +1 -1
- package/dist/domain/context.js +6 -1
- package/dist/domain/context.js.map +1 -1
- package/dist/domain/egress.js +6 -1
- package/dist/domain/egress.js.map +1 -1
- package/dist/domain/glob.js +1 -1
- package/dist/domain/glob.js.map +1 -1
- package/dist/domain/harness.js +4 -1
- package/dist/domain/harness.js.map +1 -1
- package/dist/domain/hook-command.d.ts +2 -0
- package/dist/domain/hook-command.js +26 -0
- package/dist/domain/hook-command.js.map +1 -0
- package/dist/domain/hook-command.types.d.ts +7 -0
- package/dist/domain/hook-command.types.js +2 -0
- package/dist/domain/hook-command.types.js.map +1 -0
- package/dist/domain/hook-decision.d.ts +2 -0
- package/dist/domain/hook-decision.js +38 -0
- package/dist/domain/hook-decision.js.map +1 -0
- package/dist/domain/hook.constants.d.ts +3 -0
- package/dist/domain/hook.constants.js +31 -1
- package/dist/domain/hook.constants.js.map +1 -1
- package/dist/domain/hook.js +49 -5
- package/dist/domain/hook.js.map +1 -1
- package/dist/domain/hook.types.d.ts +82 -5
- package/dist/domain/hook.types.js.map +1 -1
- package/dist/domain/mcp-server.constants.d.ts +6 -0
- package/dist/domain/mcp-server.constants.js +6 -0
- package/dist/domain/mcp-server.constants.js.map +1 -1
- package/dist/domain/mcp-server.js +1 -0
- package/dist/domain/mcp-server.js.map +1 -1
- package/dist/domain/permissions.types.d.ts +1 -0
- package/dist/domain/permissions.types.js.map +1 -1
- package/dist/domain/pricing.js +4 -2
- package/dist/domain/pricing.js.map +1 -1
- package/dist/domain/redaction.js +6 -3
- package/dist/domain/redaction.js.map +1 -1
- package/dist/domain/secret-fault.d.ts +4 -0
- package/dist/domain/secret-fault.js +11 -0
- package/dist/domain/secret-fault.js.map +1 -0
- package/dist/domain/secrets.js +3 -2
- package/dist/domain/secrets.js.map +1 -1
- package/dist/domain/steering.js +2 -0
- package/dist/domain/steering.js.map +1 -1
- package/dist/domain/steering.types.d.ts +1 -1
- package/dist/domain/steering.types.js.map +1 -1
- package/dist/domain/transport.js +5 -1
- package/dist/domain/transport.js.map +1 -1
- package/dist/domain/trigger-payload.d.ts +4 -0
- package/dist/domain/trigger-payload.js +15 -0
- package/dist/domain/trigger-payload.js.map +1 -0
- package/dist/domain/workflow/checkpoint.js +19 -2
- package/dist/domain/workflow/checkpoint.js.map +1 -1
- package/dist/domain/workflow/retry.constants.d.ts +1 -0
- package/dist/domain/workflow/retry.constants.js +1 -0
- package/dist/domain/workflow/retry.constants.js.map +1 -1
- package/dist/domain/workflow/retry.js +6 -2
- package/dist/domain/workflow/retry.js.map +1 -1
- package/dist/domain/workflow/task-runner.js +5 -3
- package/dist/domain/workflow/task-runner.js.map +1 -1
- package/dist/domain/workflow/workflow-state.js +2 -1
- package/dist/domain/workflow/workflow-state.js.map +1 -1
- package/dist/domain/workflow.types.d.ts +1 -0
- package/dist/domain/workflow.types.js.map +1 -1
- package/dist/index.d.ts +15 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/conversations/transcript-store.js +32 -5
- package/dist/infrastructure/conversations/transcript-store.js.map +1 -1
- package/dist/infrastructure/files.d.ts +1 -0
- package/dist/infrastructure/files.js +8 -4
- package/dist/infrastructure/files.js.map +1 -1
- package/dist/infrastructure/git/integration-candidate.js +3 -2
- package/dist/infrastructure/git/integration-candidate.js.map +1 -1
- package/dist/infrastructure/git/lock-recovery.d.ts +3 -0
- package/dist/infrastructure/git/lock-recovery.js +58 -0
- package/dist/infrastructure/git/lock-recovery.js.map +1 -0
- package/dist/infrastructure/git/lock-recovery.types.d.ts +11 -0
- package/dist/infrastructure/git/lock-recovery.types.js +2 -0
- package/dist/infrastructure/git/lock-recovery.types.js.map +1 -0
- package/dist/infrastructure/git/managed-worktree.js +5 -8
- package/dist/infrastructure/git/managed-worktree.js.map +1 -1
- package/dist/infrastructure/git/verification-command.js +35 -30
- package/dist/infrastructure/git/verification-command.js.map +1 -1
- package/dist/infrastructure/git/workspace-lease.js +12 -5
- package/dist/infrastructure/git/workspace-lease.js.map +1 -1
- package/dist/infrastructure/hook-configuration.constants.d.ts +1 -0
- package/dist/infrastructure/hook-configuration.constants.js +59 -0
- package/dist/infrastructure/hook-configuration.constants.js.map +1 -0
- package/dist/infrastructure/hook-configuration.d.ts +3 -0
- package/dist/infrastructure/hook-configuration.js +16 -0
- package/dist/infrastructure/hook-configuration.js.map +1 -0
- package/dist/infrastructure/hook-configuration.types.d.ts +14 -0
- package/dist/infrastructure/hook-configuration.types.js +2 -0
- package/dist/infrastructure/hook-configuration.types.js.map +1 -0
- package/dist/infrastructure/http-transport.constants.d.ts +1 -0
- package/dist/infrastructure/http-transport.constants.js +14 -0
- package/dist/infrastructure/http-transport.constants.js.map +1 -0
- package/dist/infrastructure/http-transport.d.ts +7 -0
- package/dist/infrastructure/http-transport.js +19 -0
- package/dist/infrastructure/http-transport.js.map +1 -0
- package/dist/infrastructure/input-failure.d.ts +4 -0
- package/dist/infrastructure/input-failure.js +14 -0
- package/dist/infrastructure/input-failure.js.map +1 -0
- package/dist/infrastructure/inspection-file.d.ts +1 -0
- package/dist/infrastructure/inspection-file.js +8 -2
- package/dist/infrastructure/inspection-file.js.map +1 -1
- package/dist/infrastructure/local-transport.js +16 -11
- package/dist/infrastructure/local-transport.js.map +1 -1
- package/dist/infrastructure/process.constants.d.ts +1 -0
- package/dist/infrastructure/process.constants.js +1 -0
- package/dist/infrastructure/process.constants.js.map +1 -1
- package/dist/infrastructure/process.d.ts +1 -0
- package/dist/infrastructure/process.js +48 -8
- package/dist/infrastructure/process.js.map +1 -1
- package/dist/infrastructure/reservation-ledger.d.ts +2 -0
- package/dist/infrastructure/reservation-ledger.js +84 -0
- package/dist/infrastructure/reservation-ledger.js.map +1 -0
- package/dist/infrastructure/reservation-recovery.d.ts +4 -0
- package/dist/infrastructure/reservation-recovery.js +28 -0
- package/dist/infrastructure/reservation-recovery.js.map +1 -0
- package/dist/infrastructure/s3-tombstones.d.ts +3 -0
- package/dist/infrastructure/s3-tombstones.js +46 -0
- package/dist/infrastructure/s3-tombstones.js.map +1 -0
- package/dist/infrastructure/s3-tombstones.types.d.ts +6 -0
- package/dist/infrastructure/s3-tombstones.types.js +2 -0
- package/dist/infrastructure/s3-tombstones.types.js.map +1 -0
- package/dist/infrastructure/s3-transport.d.ts +2 -0
- package/dist/infrastructure/s3-transport.js +4 -2
- package/dist/infrastructure/s3-transport.js.map +1 -1
- package/dist/infrastructure/sse.js +6 -3
- package/dist/infrastructure/sse.js.map +1 -1
- package/dist/infrastructure/task-queue-bullmq-connection.d.ts +3 -0
- package/dist/infrastructure/task-queue-bullmq-connection.js +32 -0
- package/dist/infrastructure/task-queue-bullmq-connection.js.map +1 -0
- package/dist/infrastructure/task-queue-bullmq-connection.types.d.ts +8 -0
- package/dist/infrastructure/task-queue-bullmq-connection.types.js +2 -0
- package/dist/infrastructure/task-queue-bullmq-connection.types.js.map +1 -0
- package/dist/infrastructure/task-queue-bullmq-resources.js +21 -15
- package/dist/infrastructure/task-queue-bullmq-resources.js.map +1 -1
- package/dist/infrastructure/task-queue-bullmq-state.d.ts +1 -0
- package/dist/infrastructure/task-queue-bullmq-state.js +1 -0
- package/dist/infrastructure/task-queue-bullmq-state.js.map +1 -1
- package/dist/infrastructure/task-queue-bullmq.constants.d.ts +2 -1
- package/dist/infrastructure/task-queue-bullmq.constants.js +2 -1
- package/dist/infrastructure/task-queue-bullmq.constants.js.map +1 -1
- package/dist/infrastructure/task-queue-bullmq.js +10 -1
- package/dist/infrastructure/task-queue-bullmq.js.map +1 -1
- package/dist/infrastructure/task-queue.js +13 -4
- package/dist/infrastructure/task-queue.js.map +1 -1
- package/dist/infrastructure/transfer-copy.d.ts +1 -0
- package/dist/infrastructure/transfer-copy.js +16 -1
- package/dist/infrastructure/transfer-copy.js.map +1 -1
- package/dist/infrastructure/transport-archive.d.ts +3 -3
- package/dist/infrastructure/transport-archive.js +71 -48
- package/dist/infrastructure/transport-archive.js.map +1 -1
- package/dist/infrastructure/transport-archive.types.d.ts +3 -0
- package/dist/infrastructure/transport-archive.types.js.map +1 -1
- package/dist/infrastructure/transport-checkpoint.js +14 -4
- package/dist/infrastructure/transport-checkpoint.js.map +1 -1
- package/dist/infrastructure/transport-envelope.d.ts +1 -0
- package/dist/infrastructure/transport-envelope.js +22 -5
- package/dist/infrastructure/transport-envelope.js.map +1 -1
- package/dist/infrastructure/transport-reservations.constants.d.ts +2 -0
- package/dist/infrastructure/transport-reservations.constants.js +3 -0
- package/dist/infrastructure/transport-reservations.constants.js.map +1 -0
- package/dist/infrastructure/transport-reservations.d.ts +1 -2
- package/dist/infrastructure/transport-reservations.js +18 -22
- package/dist/infrastructure/transport-reservations.js.map +1 -1
- package/dist/infrastructure/transport-reservations.types.d.ts +23 -2
- package/dist/infrastructure/transport-reservations.types.js.map +1 -1
- package/dist/infrastructure/trigger-server.js +12 -9
- package/dist/infrastructure/trigger-server.js.map +1 -1
- package/dist/infrastructure/trigger-server.types.d.ts +1 -1
- package/dist/infrastructure/trigger-server.types.js.map +1 -1
- package/dist/infrastructure/workflow-checkpoint.constants.d.ts +1 -0
- package/dist/infrastructure/workflow-checkpoint.constants.js +1 -0
- package/dist/infrastructure/workflow-checkpoint.constants.js.map +1 -1
- package/dist/infrastructure/workspace-lock.constants.d.ts +2 -1
- package/dist/infrastructure/workspace-lock.constants.js +2 -1
- package/dist/infrastructure/workspace-lock.constants.js.map +1 -1
- package/dist/infrastructure/workspace-lock.js +48 -10
- package/dist/infrastructure/workspace-lock.js.map +1 -1
- package/dist/providers/cloud-cache.js +14 -9
- package/dist/providers/cloud-cache.js.map +1 -1
- package/dist/providers/cloud-cache.types.d.ts +1 -0
- package/dist/providers/cloud-cache.types.js.map +1 -1
- package/dist/providers/cloud-files.js +3 -4
- package/dist/providers/cloud-files.js.map +1 -1
- package/dist/providers/cloud-input.constants.d.ts +2 -2
- package/dist/providers/cloud-input.constants.js +2 -1
- package/dist/providers/cloud-input.constants.js.map +1 -1
- package/dist/providers/cloud-input.d.ts +2 -2
- package/dist/providers/cloud-input.js +14 -3
- package/dist/providers/cloud-input.js.map +1 -1
- package/dist/providers/container-command.js +30 -5
- package/dist/providers/container-command.js.map +1 -1
- package/dist/providers/container-egress.constants.d.ts +7 -0
- package/dist/providers/container-egress.constants.js +8 -0
- package/dist/providers/container-egress.constants.js.map +1 -0
- package/dist/providers/container-egress.d.ts +7 -0
- package/dist/providers/container-egress.js +101 -0
- package/dist/providers/container-egress.js.map +1 -0
- package/dist/providers/container-files.js +10 -11
- package/dist/providers/container-files.js.map +1 -1
- package/dist/providers/container-mounts.js +3 -0
- package/dist/providers/container-mounts.js.map +1 -1
- package/dist/providers/container-network.js +16 -1
- package/dist/providers/container-network.js.map +1 -1
- package/dist/providers/container-plan.js +7 -10
- package/dist/providers/container-plan.js.map +1 -1
- package/dist/providers/container-recovery.js +8 -3
- package/dist/providers/container-recovery.js.map +1 -1
- package/dist/providers/container.js +36 -5
- package/dist/providers/container.js.map +1 -1
- package/dist/providers/container.types.d.ts +1 -0
- package/dist/providers/container.types.js.map +1 -1
- package/dist/providers/daytona-command.constants.js +4 -1
- package/dist/providers/daytona-command.constants.js.map +1 -1
- package/dist/providers/daytona-command.js +39 -16
- package/dist/providers/daytona-command.js.map +1 -1
- package/dist/providers/daytona-files.js +5 -5
- package/dist/providers/daytona-files.js.map +1 -1
- package/dist/providers/daytona-output.js +11 -3
- package/dist/providers/daytona-output.js.map +1 -1
- package/dist/providers/daytona.js +11 -9
- package/dist/providers/daytona.js.map +1 -1
- package/dist/providers/egress/address.d.ts +3 -0
- package/dist/providers/egress/address.js +26 -0
- package/dist/providers/egress/address.js.map +1 -0
- package/dist/providers/egress/egress.constants.d.ts +22 -0
- package/dist/providers/egress/egress.constants.js +23 -0
- package/dist/providers/egress/egress.constants.js.map +1 -0
- package/dist/providers/egress/egress.types.d.ts +11 -0
- package/dist/providers/egress/egress.types.js +2 -0
- package/dist/providers/egress/egress.types.js.map +1 -0
- package/dist/providers/egress/firewall.d.ts +3 -0
- package/dist/providers/egress/firewall.js +29 -0
- package/dist/providers/egress/firewall.js.map +1 -0
- package/dist/providers/egress/main.d.ts +1 -0
- package/dist/providers/egress/main.js +90 -0
- package/dist/providers/egress/main.js.map +1 -0
- package/dist/providers/egress/policy.d.ts +5 -0
- package/dist/providers/egress/policy.js +54 -0
- package/dist/providers/egress/policy.js.map +1 -0
- package/dist/providers/egress/proxy.d.ts +2 -0
- package/dist/providers/egress/proxy.js +129 -0
- package/dist/providers/egress/proxy.js.map +1 -0
- package/dist/providers/egress/tls-hello.d.ts +1 -0
- package/dist/providers/egress/tls-hello.js +75 -0
- package/dist/providers/egress/tls-hello.js.map +1 -0
- package/dist/providers/firecracker-command.js +12 -6
- package/dist/providers/firecracker-command.js.map +1 -1
- package/dist/providers/local-files.d.ts +2 -0
- package/dist/providers/local-files.js +24 -0
- package/dist/providers/local-files.js.map +1 -0
- package/dist/providers/local.js +2 -20
- package/dist/providers/local.js.map +1 -1
- package/dist/providers/vercel-command.js +33 -9
- package/dist/providers/vercel-command.js.map +1 -1
- package/dist/providers/vercel.js +11 -9
- package/dist/providers/vercel.js.map +1 -1
- package/dist/testing.d.ts +1 -1
- package/dist/testing.js +1 -1
- package/dist/testing.js.map +1 -1
- package/package.json +2 -2
- package/recipe-configuration.schema.json +2164 -35
- package/recipe.schema.json +2512 -404
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import type { NativeHook, NativeHookOptions } from "../native-hooks.types.ts";
|
|
2
|
+
export interface CopilotHookEvents {
|
|
3
|
+
readonly sessionStart: {
|
|
4
|
+
readonly sessionId: string;
|
|
5
|
+
readonly timestamp: number;
|
|
6
|
+
readonly cwd: string;
|
|
7
|
+
readonly source?: string;
|
|
8
|
+
readonly initialPrompt?: string;
|
|
9
|
+
};
|
|
10
|
+
readonly sessionEnd: {
|
|
11
|
+
readonly sessionId: string;
|
|
12
|
+
readonly timestamp: number;
|
|
13
|
+
readonly cwd: string;
|
|
14
|
+
readonly reason?: string;
|
|
15
|
+
};
|
|
16
|
+
readonly userPromptSubmitted: {
|
|
17
|
+
readonly sessionId: string;
|
|
18
|
+
readonly timestamp: number;
|
|
19
|
+
readonly cwd: string;
|
|
20
|
+
readonly prompt: string;
|
|
21
|
+
};
|
|
22
|
+
readonly userPromptTransformed: {
|
|
23
|
+
readonly sessionId: string;
|
|
24
|
+
readonly timestamp: number;
|
|
25
|
+
readonly cwd: string;
|
|
26
|
+
readonly prompt: string;
|
|
27
|
+
readonly transformedPrompt?: string;
|
|
28
|
+
};
|
|
29
|
+
readonly preToolUse: {
|
|
30
|
+
readonly sessionId: string;
|
|
31
|
+
readonly timestamp: number;
|
|
32
|
+
readonly cwd: string;
|
|
33
|
+
readonly toolName: string;
|
|
34
|
+
readonly toolArgs?: unknown;
|
|
35
|
+
};
|
|
36
|
+
readonly postToolUse: {
|
|
37
|
+
readonly sessionId: string;
|
|
38
|
+
readonly timestamp: number;
|
|
39
|
+
readonly cwd: string;
|
|
40
|
+
readonly toolName: string;
|
|
41
|
+
readonly toolArgs?: unknown;
|
|
42
|
+
readonly toolResult?: unknown;
|
|
43
|
+
};
|
|
44
|
+
readonly postToolUseFailure: {
|
|
45
|
+
readonly sessionId: string;
|
|
46
|
+
readonly timestamp: number;
|
|
47
|
+
readonly cwd: string;
|
|
48
|
+
readonly toolName: string;
|
|
49
|
+
readonly toolArgs?: unknown;
|
|
50
|
+
readonly error?: unknown;
|
|
51
|
+
};
|
|
52
|
+
readonly permissionRequest: {
|
|
53
|
+
readonly sessionId: string;
|
|
54
|
+
readonly timestamp: number;
|
|
55
|
+
readonly cwd: string;
|
|
56
|
+
readonly toolName: string;
|
|
57
|
+
readonly toolArgs?: unknown;
|
|
58
|
+
};
|
|
59
|
+
readonly agentStop: {
|
|
60
|
+
readonly sessionId: string;
|
|
61
|
+
readonly timestamp: number;
|
|
62
|
+
readonly cwd: string;
|
|
63
|
+
readonly stop_hook_active?: boolean;
|
|
64
|
+
readonly transcriptPath?: string;
|
|
65
|
+
readonly stopReason?: "end_turn";
|
|
66
|
+
};
|
|
67
|
+
readonly subagentStart: {
|
|
68
|
+
readonly sessionId: string;
|
|
69
|
+
readonly timestamp: number;
|
|
70
|
+
readonly cwd: string;
|
|
71
|
+
readonly agentName?: string;
|
|
72
|
+
readonly transcriptPath?: string;
|
|
73
|
+
readonly agentDisplayName?: string;
|
|
74
|
+
readonly agentDescription?: string;
|
|
75
|
+
};
|
|
76
|
+
readonly subagentStop: {
|
|
77
|
+
readonly sessionId: string;
|
|
78
|
+
readonly timestamp: number;
|
|
79
|
+
readonly cwd: string;
|
|
80
|
+
readonly agentName?: string;
|
|
81
|
+
readonly agentId?: string;
|
|
82
|
+
readonly agentType?: string;
|
|
83
|
+
readonly transcriptPath?: string;
|
|
84
|
+
readonly agentDisplayName?: string;
|
|
85
|
+
readonly response?: string;
|
|
86
|
+
readonly stopReason?: "end_turn";
|
|
87
|
+
};
|
|
88
|
+
readonly preCompact: {
|
|
89
|
+
readonly sessionId: string;
|
|
90
|
+
readonly timestamp: number;
|
|
91
|
+
readonly cwd: string;
|
|
92
|
+
readonly trigger?: "manual" | "auto";
|
|
93
|
+
readonly transcriptPath?: string;
|
|
94
|
+
readonly customInstructions?: string;
|
|
95
|
+
};
|
|
96
|
+
readonly notification: {
|
|
97
|
+
readonly sessionId: string;
|
|
98
|
+
readonly timestamp: number;
|
|
99
|
+
readonly cwd: string;
|
|
100
|
+
readonly notification_type?: string;
|
|
101
|
+
readonly message?: string;
|
|
102
|
+
};
|
|
103
|
+
readonly errorOccurred: {
|
|
104
|
+
readonly sessionId: string;
|
|
105
|
+
readonly timestamp: number;
|
|
106
|
+
readonly cwd: string;
|
|
107
|
+
readonly error?: {
|
|
108
|
+
readonly message: string;
|
|
109
|
+
readonly name: string;
|
|
110
|
+
readonly stack?: string;
|
|
111
|
+
};
|
|
112
|
+
readonly errorContext?: "model_call" | "tool_execution" | "system" | "user_input";
|
|
113
|
+
readonly recoverable?: boolean;
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
export interface CopilotHookDecisions {
|
|
117
|
+
readonly sessionStart: {
|
|
118
|
+
readonly additionalContext?: string;
|
|
119
|
+
};
|
|
120
|
+
readonly sessionEnd: never;
|
|
121
|
+
readonly userPromptSubmitted: never;
|
|
122
|
+
readonly userPromptTransformed: {
|
|
123
|
+
readonly modifiedTransformedPrompt?: string;
|
|
124
|
+
};
|
|
125
|
+
readonly preToolUse: {
|
|
126
|
+
readonly permissionDecision?: "allow" | "deny" | "ask";
|
|
127
|
+
readonly permissionDecisionReason?: string;
|
|
128
|
+
readonly modifiedArgs?: Readonly<Record<string, unknown>>;
|
|
129
|
+
readonly additionalContext?: string;
|
|
130
|
+
};
|
|
131
|
+
readonly postToolUse: {
|
|
132
|
+
readonly modifiedResult?: {
|
|
133
|
+
readonly resultType: "success" | "failure";
|
|
134
|
+
readonly textResultForLlm: string;
|
|
135
|
+
};
|
|
136
|
+
readonly additionalContext?: string;
|
|
137
|
+
};
|
|
138
|
+
readonly postToolUseFailure: {
|
|
139
|
+
readonly additionalContext?: string;
|
|
140
|
+
};
|
|
141
|
+
readonly permissionRequest: {
|
|
142
|
+
readonly behavior?: "allow" | "deny";
|
|
143
|
+
readonly message?: string;
|
|
144
|
+
readonly interrupt?: boolean;
|
|
145
|
+
};
|
|
146
|
+
readonly agentStop: {
|
|
147
|
+
readonly decision?: "block" | "allow";
|
|
148
|
+
readonly reason?: string;
|
|
149
|
+
};
|
|
150
|
+
readonly subagentStart: {
|
|
151
|
+
readonly additionalContext?: string;
|
|
152
|
+
};
|
|
153
|
+
readonly subagentStop: {
|
|
154
|
+
readonly decision?: "block" | "allow";
|
|
155
|
+
readonly reason?: string;
|
|
156
|
+
readonly modifiedResponse?: string;
|
|
157
|
+
};
|
|
158
|
+
readonly preCompact: never;
|
|
159
|
+
readonly notification: {
|
|
160
|
+
readonly additionalContext?: string;
|
|
161
|
+
};
|
|
162
|
+
readonly errorOccurred: never;
|
|
163
|
+
}
|
|
164
|
+
export type CopilotHookPhase = keyof CopilotHookEvents;
|
|
165
|
+
export type CopilotHook<Phase extends CopilotHookPhase = CopilotHookPhase> = NativeHook<"copilot", Phase>;
|
|
166
|
+
export type CopilotHookOptions<Phase extends CopilotHookPhase> = NativeHookOptions<Phase, CopilotHookEvents[Phase], CopilotHookDecisions[Phase]>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"copilot-hooks.types.js","sourceRoot":"","sources":["../../../../src/adapters/agents/copilot/copilot-hooks.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { NativeHook, NativeHookOptions } from \"../native-hooks.types.ts\";\n\nexport interface CopilotHookEvents {\n readonly sessionStart: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly source?: string;\n readonly initialPrompt?: string;\n };\n readonly sessionEnd: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly reason?: string;\n };\n readonly userPromptSubmitted: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly prompt: string;\n };\n readonly userPromptTransformed: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly prompt: string;\n readonly transformedPrompt?: string;\n };\n readonly preToolUse: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly toolName: string;\n readonly toolArgs?: unknown;\n };\n readonly postToolUse: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly toolName: string;\n readonly toolArgs?: unknown;\n readonly toolResult?: unknown;\n };\n readonly postToolUseFailure: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly toolName: string;\n readonly toolArgs?: unknown;\n readonly error?: unknown;\n };\n readonly permissionRequest: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly toolName: string;\n readonly toolArgs?: unknown;\n };\n readonly agentStop: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly stop_hook_active?: boolean;\n readonly transcriptPath?: string;\n readonly stopReason?: \"end_turn\";\n };\n readonly subagentStart: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly agentName?: string;\n readonly transcriptPath?: string;\n readonly agentDisplayName?: string;\n readonly agentDescription?: string;\n };\n readonly subagentStop: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly agentName?: string;\n readonly agentId?: string;\n readonly agentType?: string;\n readonly transcriptPath?: string;\n readonly agentDisplayName?: string;\n readonly response?: string;\n readonly stopReason?: \"end_turn\";\n };\n readonly preCompact: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly trigger?: \"manual\" | \"auto\";\n readonly transcriptPath?: string;\n readonly customInstructions?: string;\n };\n readonly notification: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly notification_type?: string;\n readonly message?: string;\n };\n readonly errorOccurred: {\n readonly sessionId: string;\n readonly timestamp: number;\n readonly cwd: string;\n readonly error?: {\n readonly message: string;\n readonly name: string;\n readonly stack?: string;\n };\n readonly errorContext?:\n \"model_call\" | \"tool_execution\" | \"system\" | \"user_input\";\n readonly recoverable?: boolean;\n };\n}\n\nexport interface CopilotHookDecisions {\n readonly sessionStart: { readonly additionalContext?: string };\n readonly sessionEnd: never;\n readonly userPromptSubmitted: never;\n readonly userPromptTransformed: {\n readonly modifiedTransformedPrompt?: string;\n };\n readonly preToolUse: {\n readonly permissionDecision?: \"allow\" | \"deny\" | \"ask\";\n readonly permissionDecisionReason?: string;\n readonly modifiedArgs?: Readonly<Record<string, unknown>>;\n readonly additionalContext?: string;\n };\n readonly postToolUse: {\n readonly modifiedResult?: {\n readonly resultType: \"success\" | \"failure\";\n readonly textResultForLlm: string;\n };\n readonly additionalContext?: string;\n };\n readonly postToolUseFailure: { readonly additionalContext?: string };\n readonly permissionRequest: {\n readonly behavior?: \"allow\" | \"deny\";\n readonly message?: string;\n readonly interrupt?: boolean;\n };\n readonly agentStop: {\n readonly decision?: \"block\" | \"allow\";\n readonly reason?: string;\n };\n readonly subagentStart: { readonly additionalContext?: string };\n readonly subagentStop: {\n readonly decision?: \"block\" | \"allow\";\n readonly reason?: string;\n readonly modifiedResponse?: string;\n };\n readonly preCompact: never;\n readonly notification: { readonly additionalContext?: string };\n readonly errorOccurred: never;\n}\n\nexport type CopilotHookPhase = keyof CopilotHookEvents;\nexport type CopilotHook<Phase extends CopilotHookPhase = CopilotHookPhase> =\n NativeHook<\"copilot\", Phase>;\nexport type CopilotHookOptions<Phase extends CopilotHookPhase> =\n NativeHookOptions<\n Phase,\n CopilotHookEvents[Phase],\n CopilotHookDecisions[Phase]\n >;\n"]}
|
|
@@ -4,6 +4,7 @@ import type { Variables } from "../../../domain/command.types.ts";
|
|
|
4
4
|
import type { ConversationStore } from "../../../domain/conversation.types.ts";
|
|
5
5
|
import type { McpServers } from "../../../domain/mcp-server.types.ts";
|
|
6
6
|
export interface CopilotSettings {
|
|
7
|
+
readonly hooks?: readonly import("./copilot-hooks.types.ts").CopilotHook[];
|
|
7
8
|
readonly authentication?: AgentAuthentication;
|
|
8
9
|
readonly variables?: Variables;
|
|
9
10
|
readonly conversations?: ConversationStore;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot.types.js","sourceRoot":"","sources":["../../../../src/adapters/agents/copilot/copilot.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { AgentProfile } from \"../../../domain/agent-profile.types.ts\";\nimport type { AgentAuthentication } from \"../../../domain/agent.types.ts\";\nimport type { Variables } from \"../../../domain/command.types.ts\";\nimport type { ConversationStore } from \"../../../domain/conversation.types.ts\";\nimport type { McpServers } from \"../../../domain/mcp-server.types.ts\";\n\nexport interface CopilotSettings {\n readonly authentication?: AgentAuthentication;\n readonly variables?: Variables;\n readonly conversations?: ConversationStore;\n readonly mcpServers?: McpServers;\n readonly profile?: AgentProfile;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"copilot.types.js","sourceRoot":"","sources":["../../../../src/adapters/agents/copilot/copilot.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { AgentProfile } from \"../../../domain/agent-profile.types.ts\";\nimport type { AgentAuthentication } from \"../../../domain/agent.types.ts\";\nimport type { Variables } from \"../../../domain/command.types.ts\";\nimport type { ConversationStore } from \"../../../domain/conversation.types.ts\";\nimport type { McpServers } from \"../../../domain/mcp-server.types.ts\";\n\nexport interface CopilotSettings {\n readonly hooks?: readonly import(\"./copilot-hooks.types.ts\").CopilotHook[];\n readonly authentication?: AgentAuthentication;\n readonly variables?: Variables;\n readonly conversations?: ConversationStore;\n readonly mcpServers?: McpServers;\n readonly profile?: AgentProfile;\n}\n"]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export function hookGroups(handlers, commands) {
|
|
2
|
+
const groups = {};
|
|
3
|
+
handlers.forEach((hook, index) => {
|
|
4
|
+
(groups[hook.on] ??= []).push({
|
|
5
|
+
...(hook.matcher === undefined ? {} : { matcher: hook.matcher }),
|
|
6
|
+
hooks: [
|
|
7
|
+
{
|
|
8
|
+
type: "command",
|
|
9
|
+
command: commands[index],
|
|
10
|
+
timeout: Math.ceil(hook.timeoutMs / 1000),
|
|
11
|
+
},
|
|
12
|
+
],
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
return groups;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=hook-groups.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hook-groups.js","sourceRoot":"","sources":["../../../src/adapters/agents/hook-groups.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,UAAU,CACxB,QAAqC,EACrC,QAA2B;IAE3B,MAAM,MAAM,GAA8B,EAAE,CAAC;IAC7C,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC/B,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC;YAC5B,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;YAChE,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC;oBACxB,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;iBAC1C;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import type { AgentHookHandler } from \"../../domain/agent-hook.types.ts\";\n\nexport function hookGroups(\n handlers: readonly AgentHookHandler[],\n commands: readonly string[],\n): Record<string, unknown[]> {\n const groups: Record<string, unknown[]> = {};\n handlers.forEach((hook, index) => {\n (groups[hook.on] ??= []).push({\n ...(hook.matcher === undefined ? {} : { matcher: hook.matcher }),\n hooks: [\n {\n type: \"command\",\n command: commands[index],\n timeout: Math.ceil(hook.timeoutMs / 1000),\n },\n ],\n });\n });\n return groups;\n}\n"]}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import { composedNativeHooks } from "../native-hooks.js";
|
|
2
|
+
import { kimiHookSchemas } from "./kimi-hooks.constants.js";
|
|
3
|
+
import { kimiHookPlan } from "./kimi-hook-plan.js";
|
|
1
4
|
import { rejectProfileTools } from "../profile-support.js";
|
|
2
5
|
import { createKimiConversations, kimiSessionProfile, } from "./kimi-conversations.js";
|
|
3
6
|
import { mcpConfigurationPlanner, supportMcpServers, } from "../mcp-configuration.js";
|
|
@@ -23,12 +26,19 @@ function bindKimi(settings) {
|
|
|
23
26
|
const credentials = credentialPlanner(kimiLabel, kimiCredentials(settings.region), settings.authentication, settings.model);
|
|
24
27
|
const configuration = mcpConfigurationPlanner(kimiLabel, settings.mcpServers, kimiMcpFile, kimiMcpLogins);
|
|
25
28
|
return Object.freeze({
|
|
29
|
+
...(settings.hooks?.length ? { hooks: kimiHookPlan(settings.hooks) } : {}),
|
|
26
30
|
usageInput: "uncached",
|
|
27
31
|
name: "kimi",
|
|
28
32
|
...(credentials ? { credentials } : {}),
|
|
29
33
|
...(configuration ? { configuration } : {}),
|
|
30
34
|
bootstrap: "kimi",
|
|
31
35
|
resumable: true,
|
|
36
|
+
fileWorkspaces: Object.freeze({
|
|
37
|
+
dispatch: true,
|
|
38
|
+
repairs: true,
|
|
39
|
+
continuation: true,
|
|
40
|
+
interactive: true,
|
|
41
|
+
}),
|
|
32
42
|
forkable: true,
|
|
33
43
|
fork: forkKimi,
|
|
34
44
|
...conversationStorage(settings, createKimiConversations),
|
|
@@ -54,9 +64,14 @@ export function createKimiHarness(settings = {}) {
|
|
|
54
64
|
settings.authentication === undefined ||
|
|
55
65
|
!authenticationForm(settings.authentication).form.startsWith("usage"), "Kimi region selects account authentication; configure the API endpoint through variables for usage authentication");
|
|
56
66
|
const configured = configuredSettings(settings);
|
|
67
|
+
const hooks = composedNativeHooks("kimi", kimiHookSchemas, configured.profile?.hooks?.kimi, settings.hooks);
|
|
57
68
|
return Object.freeze({
|
|
58
69
|
kind: "cli",
|
|
59
|
-
bind: (model) => bindKimi({
|
|
70
|
+
bind: (model) => bindKimi({
|
|
71
|
+
...configured,
|
|
72
|
+
hooks,
|
|
73
|
+
...(model === undefined ? {} : { model }),
|
|
74
|
+
}),
|
|
60
75
|
});
|
|
61
76
|
}
|
|
62
77
|
//# sourceMappingURL=kimi-adapter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kimi-adapter.js","sourceRoot":"","sources":["../../../../src/adapters/agents/kimi/kimi-adapter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"kimi-adapter.js","sourceRoot":"","sources":["../../../../src/adapters/agents/kimi/kimi-adapter.ts"],"names":[],"mappings":"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","sourcesContent":["import { composedNativeHooks } from \"../native-hooks.ts\";\nimport { kimiHookSchemas } from \"./kimi-hooks.constants.ts\";\nimport { kimiHookPlan } from \"./kimi-hook-plan.ts\";\nimport { rejectProfileTools } from \"../profile-support.ts\";\nimport {\n createKimiConversations,\n kimiSessionProfile,\n} from \"./kimi-conversations.ts\";\nimport {\n mcpConfigurationPlanner,\n supportMcpServers,\n} from \"../mcp-configuration.ts\";\nimport { kimiMcpFile, kimiMcpLogins } from \"./kimi-mcp.ts\";\nimport { textMatcher } from \"../text-matcher.ts\";\nimport {\n conversationSettings,\n conversationStorage,\n} from \"../conversation-settings.ts\";\nimport { transientNoticePatterns } from \"../unavailable.constants.ts\";\nimport { kimiUsage } from \"./kimi-usage.ts\";\nimport { sessionUsageCommand, sessionUsageResult } from \"../session-usage.ts\";\nimport { forkKimi } from \"./kimi-fork.ts\";\nimport type { AgentAdapter, CliHarness } from \"../../../domain/agent.types.ts\";\nimport { invariant } from \"../../../domain/errors.ts\";\nimport { authenticationForm } from \"../../../domain/authentication.ts\";\nimport {\n kimiRegions,\n kimiLabel,\n kimiMcpSupport,\n kimiModelSupport,\n kimiQuotaPatterns,\n kimiUnavailablePatterns,\n} from \"./kimi.constants.ts\";\nimport type { AgentModel } from \"../../../domain/model.types.ts\";\nimport { credentialPlanner } from \"../authentication.ts\";\nimport { kimiCredentials } from \"./kimi-authentication.ts\";\nimport { kimiEvents } from \"./kimi-events.ts\";\nimport { kimiRequest } from \"./kimi-request.ts\";\nimport type { KimiSettings } from \"./kimi.types.ts\";\nimport {\n configuredSettings,\n harnessSettings,\n supportModel,\n} from \"../model-support.ts\";\nimport type { Bound } from \"../settings.types.ts\";\n\nfunction bindKimi(settings: Bound<KimiSettings>): AgentAdapter {\n supportModel(kimiModelSupport, settings.model);\n rejectProfileTools(kimiLabel, settings.profile);\n supportMcpServers(kimiMcpSupport, settings.mcpServers);\n const credentials = credentialPlanner(\n kimiLabel,\n kimiCredentials(settings.region),\n settings.authentication,\n settings.model,\n );\n const configuration = mcpConfigurationPlanner(\n kimiLabel,\n settings.mcpServers,\n kimiMcpFile,\n kimiMcpLogins,\n );\n return Object.freeze({\n ...(settings.hooks?.length ? { hooks: kimiHookPlan(settings.hooks) } : {}),\n usageInput: \"uncached\",\n name: \"kimi\",\n ...(credentials ? { credentials } : {}),\n ...(configuration ? { configuration } : {}),\n bootstrap: \"kimi\",\n resumable: true,\n fileWorkspaces: Object.freeze({\n dispatch: true,\n repairs: true,\n continuation: true,\n interactive: true,\n }),\n forkable: true,\n fork: forkKimi,\n ...conversationStorage(settings, createKimiConversations),\n variables: Object.freeze({\n KIMI_CODE_NO_AUTO_UPDATE: \"1\",\n ...settings.variables,\n }),\n request: (input) => kimiRequest(settings, input),\n events: kimiEvents,\n quota: textMatcher(kimiQuotaPatterns),\n unavailable: textMatcher(kimiUnavailablePatterns, transientNoticePatterns),\n usage: \"session\",\n usageCommand: (conversation) => sessionUsageCommand(\"kimi\", conversation),\n usageResult: (text) => sessionUsageResult(text, kimiUsage),\n } satisfies AgentAdapter);\n}\n\nexport function createKimiHarness(settings: KimiSettings = {}): CliHarness {\n harnessSettings(settings);\n conversationSettings(kimiLabel, kimiSessionProfile.format, settings);\n invariant(\n settings.region === undefined ||\n Object.hasOwn(kimiRegions, settings.region),\n 'Kimi region must be \"mainland-cn\" or \"global\"',\n );\n invariant(\n settings.region === undefined ||\n settings.authentication === undefined ||\n !authenticationForm(settings.authentication).form.startsWith(\"usage\"),\n \"Kimi region selects account authentication; configure the API endpoint through variables for usage authentication\",\n );\n const configured = configuredSettings(settings);\n const hooks = composedNativeHooks(\n \"kimi\",\n kimiHookSchemas,\n configured.profile?.hooks?.kimi,\n settings.hooks,\n );\n return Object.freeze({\n kind: \"cli\",\n bind: (model?: AgentModel) =>\n bindKimi({\n ...configured,\n hooks,\n ...(model === undefined ? {} : { model }),\n }),\n });\n}\n"]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { installHookConfiguration } from "../../../infrastructure/hook-configuration.js";
|
|
3
|
+
import { nativeHooks } from "../native-hooks.js";
|
|
4
|
+
export function kimiHookPlan(value) {
|
|
5
|
+
const handlers = nativeHooks("kimi", value);
|
|
6
|
+
return {
|
|
7
|
+
handlers,
|
|
8
|
+
async prepare(sandbox, commands, signal) {
|
|
9
|
+
const marker = randomUUID();
|
|
10
|
+
const content = `\n# Outpost hooks ${marker}\n` +
|
|
11
|
+
handlers
|
|
12
|
+
.map((hook, index) => [
|
|
13
|
+
"[[hooks]]",
|
|
14
|
+
`event = ${JSON.stringify(hook.on)}`,
|
|
15
|
+
`command = ${JSON.stringify(commands[index])}`,
|
|
16
|
+
`timeout = ${Math.ceil(hook.timeoutMs / 1000)}`,
|
|
17
|
+
...(hook.matcher === undefined
|
|
18
|
+
? []
|
|
19
|
+
: [`matcher = ${JSON.stringify(hook.matcher)}`]),
|
|
20
|
+
].join("\n"))
|
|
21
|
+
.join("\n") +
|
|
22
|
+
`\n# End Outpost hooks ${marker}\n`;
|
|
23
|
+
const close = await installHookConfiguration(sandbox, {
|
|
24
|
+
kind: "append",
|
|
25
|
+
path: ".kimi-code/config.toml",
|
|
26
|
+
content,
|
|
27
|
+
rejectPattern: `^\\s*(?:hooks|"hooks"|'hooks')\\s*=`,
|
|
28
|
+
}, signal);
|
|
29
|
+
return { command: (command) => command, close };
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=kimi-hook-plan.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kimi-hook-plan.js","sourceRoot":"","sources":["../../../../src/adapters/agents/kimi/kimi-hook-plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,UAAU,YAAY,CAAC,KAA0B;IACrD,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC5C,OAAO;QACL,QAAQ;QACR,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM;YACrC,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;YAC5B,MAAM,OAAO,GACX,qBAAqB,MAAM,IAAI;gBAC/B,QAAQ;qBACL,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACnB;oBACE,WAAW;oBACX,WAAW,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;oBACpC,aAAa,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC9C,aAAa,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE;oBAC/C,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS;wBAC5B,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;iBACnD,CAAC,IAAI,CAAC,IAAI,CAAC,CACb;qBACA,IAAI,CAAC,IAAI,CAAC;gBACb,yBAAyB,MAAM,IAAI,CAAC;YACtC,MAAM,KAAK,GAAG,MAAM,wBAAwB,CAC1C,OAAO,EACP;gBACE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,wBAAwB;gBAC9B,OAAO;gBACP,aAAa,EAAE,qCAAqC;aACrD,EACD,MAAM,CACP,CAAC;YACF,OAAO,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QAClD,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["import { randomUUID } from \"node:crypto\";\nimport type { AgentHookPlan } from \"../../../domain/agent-hook.types.ts\";\nimport { installHookConfiguration } from \"../../../infrastructure/hook-configuration.ts\";\nimport { nativeHooks } from \"../native-hooks.ts\";\nimport type { KimiHook } from \"./kimi-hooks.types.ts\";\n\nexport function kimiHookPlan(value: readonly KimiHook[]): AgentHookPlan {\n const handlers = nativeHooks(\"kimi\", value);\n return {\n handlers,\n async prepare(sandbox, commands, signal) {\n const marker = randomUUID();\n const content =\n `\\n# Outpost hooks ${marker}\\n` +\n handlers\n .map((hook, index) =>\n [\n \"[[hooks]]\",\n `event = ${JSON.stringify(hook.on)}`,\n `command = ${JSON.stringify(commands[index])}`,\n `timeout = ${Math.ceil(hook.timeoutMs / 1000)}`,\n ...(hook.matcher === undefined\n ? []\n : [`matcher = ${JSON.stringify(hook.matcher)}`]),\n ].join(\"\\n\"),\n )\n .join(\"\\n\") +\n `\\n# End Outpost hooks ${marker}\\n`;\n const close = await installHookConfiguration(\n sandbox,\n {\n kind: \"append\",\n path: \".kimi-code/config.toml\",\n content,\n rejectPattern: `^\\\\s*(?:hooks|\"hooks\"|'hooks')\\\\s*=`,\n },\n signal,\n );\n return { command: (command) => command, close };\n },\n };\n}\n"]}
|