@with-logic/elwood 0.1.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 +172 -0
- package/LICENSE +21 -0
- package/README.md +304 -0
- package/dist/bridge/limits.d.ts +13 -0
- package/dist/bridge/limits.d.ts.map +1 -0
- package/dist/bridge/limits.js +13 -0
- package/dist/bridge/limits.js.map +1 -0
- package/dist/bridge/parse.d.ts +21 -0
- package/dist/bridge/parse.d.ts.map +1 -0
- package/dist/bridge/parse.js +45 -0
- package/dist/bridge/parse.js.map +1 -0
- package/dist/bridge/script.d.ts +6 -0
- package/dist/bridge/script.d.ts.map +1 -0
- package/dist/bridge/script.js +76 -0
- package/dist/bridge/script.js.map +1 -0
- package/dist/bridge/server.d.ts +26 -0
- package/dist/bridge/server.d.ts.map +1 -0
- package/dist/bridge/server.js +149 -0
- package/dist/bridge/server.js.map +1 -0
- package/dist/bridge/types.d.ts +10 -0
- package/dist/bridge/types.d.ts.map +1 -0
- package/dist/bridge/types.js +6 -0
- package/dist/bridge/types.js.map +1 -0
- package/dist/claude/attach-images.d.ts +17 -0
- package/dist/claude/attach-images.d.ts.map +1 -0
- package/dist/claude/attach-images.js +42 -0
- package/dist/claude/attach-images.js.map +1 -0
- package/dist/claude/command.d.ts +11 -0
- package/dist/claude/command.d.ts.map +1 -0
- package/dist/claude/command.js +34 -0
- package/dist/claude/command.js.map +1 -0
- package/dist/claude/handler-types.d.ts +23 -0
- package/dist/claude/handler-types.d.ts.map +1 -0
- package/dist/claude/handler-types.js +6 -0
- package/dist/claude/handler-types.js.map +1 -0
- package/dist/claude/hook-dispatch.d.ts +9 -0
- package/dist/claude/hook-dispatch.d.ts.map +1 -0
- package/dist/claude/hook-dispatch.js +12 -0
- package/dist/claude/hook-dispatch.js.map +1 -0
- package/dist/claude/hook-events-extra.d.ts +81 -0
- package/dist/claude/hook-events-extra.d.ts.map +1 -0
- package/dist/claude/hook-events-extra.js +6 -0
- package/dist/claude/hook-events-extra.js.map +1 -0
- package/dist/claude/hook-events.d.ts +101 -0
- package/dist/claude/hook-events.d.ts.map +1 -0
- package/dist/claude/hook-events.js +6 -0
- package/dist/claude/hook-events.js.map +1 -0
- package/dist/claude/hook-names.d.ts +24 -0
- package/dist/claude/hook-names.d.ts.map +1 -0
- package/dist/claude/hook-names.js +45 -0
- package/dist/claude/hook-names.js.map +1 -0
- package/dist/claude/hooks/dispatch.d.ts +9 -0
- package/dist/claude/hooks/dispatch.d.ts.map +1 -0
- package/dist/claude/hooks/dispatch.js +12 -0
- package/dist/claude/hooks/dispatch.js.map +1 -0
- package/dist/claude/hooks/events-extra.d.ts +81 -0
- package/dist/claude/hooks/events-extra.d.ts.map +1 -0
- package/dist/claude/hooks/events-extra.js +6 -0
- package/dist/claude/hooks/events-extra.js.map +1 -0
- package/dist/claude/hooks/events.d.ts +101 -0
- package/dist/claude/hooks/events.d.ts.map +1 -0
- package/dist/claude/hooks/events.js +6 -0
- package/dist/claude/hooks/events.js.map +1 -0
- package/dist/claude/hooks/index.d.ts +78 -0
- package/dist/claude/hooks/index.d.ts.map +1 -0
- package/dist/claude/hooks/index.js +6 -0
- package/dist/claude/hooks/index.js.map +1 -0
- package/dist/claude/hooks/names.d.ts +24 -0
- package/dist/claude/hooks/names.d.ts.map +1 -0
- package/dist/claude/hooks/names.js +45 -0
- package/dist/claude/hooks/names.js.map +1 -0
- package/dist/claude/hooks/tool-events.d.ts +10 -0
- package/dist/claude/hooks/tool-events.d.ts.map +1 -0
- package/dist/claude/hooks/tool-events.js +18 -0
- package/dist/claude/hooks/tool-events.js.map +1 -0
- package/dist/claude/hooks/tool-types.d.ts +158 -0
- package/dist/claude/hooks/tool-types.d.ts.map +1 -0
- package/dist/claude/hooks/tool-types.js +6 -0
- package/dist/claude/hooks/tool-types.js.map +1 -0
- package/dist/claude/hooks.d.ts +78 -0
- package/dist/claude/hooks.d.ts.map +1 -0
- package/dist/claude/hooks.js +6 -0
- package/dist/claude/hooks.js.map +1 -0
- package/dist/claude/list-models.d.ts +14 -0
- package/dist/claude/list-models.d.ts.map +1 -0
- package/dist/claude/list-models.js +31 -0
- package/dist/claude/list-models.js.map +1 -0
- package/dist/claude/login/abort.d.ts +39 -0
- package/dist/claude/login/abort.d.ts.map +1 -0
- package/dist/claude/login/abort.js +81 -0
- package/dist/claude/login/abort.js.map +1 -0
- package/dist/claude/login/driver.d.ts +27 -0
- package/dist/claude/login/driver.d.ts.map +1 -0
- package/dist/claude/login/driver.js +30 -0
- package/dist/claude/login/driver.js.map +1 -0
- package/dist/claude/login/expiry-screen.d.ts +24 -0
- package/dist/claude/login/expiry-screen.d.ts.map +1 -0
- package/dist/claude/login/expiry-screen.js +31 -0
- package/dist/claude/login/expiry-screen.js.map +1 -0
- package/dist/claude/login/screens.d.ts +26 -0
- package/dist/claude/login/screens.d.ts.map +1 -0
- package/dist/claude/login/screens.js +33 -0
- package/dist/claude/login/screens.js.map +1 -0
- package/dist/claude/login/session-login.d.ts +24 -0
- package/dist/claude/login/session-login.d.ts.map +1 -0
- package/dist/claude/login/session-login.js +97 -0
- package/dist/claude/login/session-login.js.map +1 -0
- package/dist/claude/login/stages.d.ts +22 -0
- package/dist/claude/login/stages.d.ts.map +1 -0
- package/dist/claude/login/stages.js +144 -0
- package/dist/claude/login/stages.js.map +1 -0
- package/dist/claude/login/types.d.ts +38 -0
- package/dist/claude/login/types.d.ts.map +1 -0
- package/dist/claude/login/types.js +5 -0
- package/dist/claude/login/types.js.map +1 -0
- package/dist/claude/login/validate.d.ts +15 -0
- package/dist/claude/login/validate.d.ts.map +1 -0
- package/dist/claude/login/validate.js +43 -0
- package/dist/claude/login/validate.js.map +1 -0
- package/dist/claude/login-expired.d.ts +31 -0
- package/dist/claude/login-expired.d.ts.map +1 -0
- package/dist/claude/login-expired.js +61 -0
- package/dist/claude/login-expired.js.map +1 -0
- package/dist/claude/model-picker.d.ts +7 -0
- package/dist/claude/model-picker.d.ts.map +1 -0
- package/dist/claude/model-picker.js +43 -0
- package/dist/claude/model-picker.js.map +1 -0
- package/dist/claude/model-switch-confirmation.d.ts +16 -0
- package/dist/claude/model-switch-confirmation.d.ts.map +1 -0
- package/dist/claude/model-switch-confirmation.js +63 -0
- package/dist/claude/model-switch-confirmation.js.map +1 -0
- package/dist/claude/normalize.d.ts +7 -0
- package/dist/claude/normalize.d.ts.map +1 -0
- package/dist/claude/normalize.js +63 -0
- package/dist/claude/normalize.js.map +1 -0
- package/dist/claude/permissions.d.ts +26 -0
- package/dist/claude/permissions.d.ts.map +1 -0
- package/dist/claude/permissions.js +6 -0
- package/dist/claude/permissions.js.map +1 -0
- package/dist/claude/preflight.d.ts +17 -0
- package/dist/claude/preflight.d.ts.map +1 -0
- package/dist/claude/preflight.js +82 -0
- package/dist/claude/preflight.js.map +1 -0
- package/dist/claude/resize-restore.d.ts +13 -0
- package/dist/claude/resize-restore.d.ts.map +1 -0
- package/dist/claude/resize-restore.js +29 -0
- package/dist/claude/resize-restore.js.map +1 -0
- package/dist/claude/screen-table.d.ts +28 -0
- package/dist/claude/screen-table.d.ts.map +1 -0
- package/dist/claude/screen-table.js +55 -0
- package/dist/claude/screen-table.js.map +1 -0
- package/dist/claude/serialize.d.ts +8 -0
- package/dist/claude/serialize.d.ts.map +1 -0
- package/dist/claude/serialize.js +45 -0
- package/dist/claude/serialize.js.map +1 -0
- package/dist/claude/session/bridge.d.ts +11 -0
- package/dist/claude/session/bridge.d.ts.map +1 -0
- package/dist/claude/session/bridge.js +18 -0
- package/dist/claude/session/bridge.js.map +1 -0
- package/dist/claude/session/build.d.ts +15 -0
- package/dist/claude/session/build.d.ts.map +1 -0
- package/dist/claude/session/build.js +147 -0
- package/dist/claude/session/build.js.map +1 -0
- package/dist/claude/session/hook-handler.d.ts +34 -0
- package/dist/claude/session/hook-handler.d.ts.map +1 -0
- package/dist/claude/session/hook-handler.js +42 -0
- package/dist/claude/session/hook-handler.js.map +1 -0
- package/dist/claude/session/index.d.ts +18 -0
- package/dist/claude/session/index.d.ts.map +1 -0
- package/dist/claude/session/index.js +58 -0
- package/dist/claude/session/index.js.map +1 -0
- package/dist/claude/session/instance.d.ts +42 -0
- package/dist/claude/session/instance.d.ts.map +1 -0
- package/dist/claude/session/instance.js +146 -0
- package/dist/claude/session/instance.js.map +1 -0
- package/dist/claude/session/interface.d.ts +49 -0
- package/dist/claude/session/interface.d.ts.map +1 -0
- package/dist/claude/session/interface.js +10 -0
- package/dist/claude/session/interface.js.map +1 -0
- package/dist/claude/session/resume.d.ts +8 -0
- package/dist/claude/session/resume.d.ts.map +1 -0
- package/dist/claude/session/resume.js +47 -0
- package/dist/claude/session/resume.js.map +1 -0
- package/dist/claude/session/runtime.d.ts +43 -0
- package/dist/claude/session/runtime.d.ts.map +1 -0
- package/dist/claude/session/runtime.js +105 -0
- package/dist/claude/session/runtime.js.map +1 -0
- package/dist/claude/session/start-or-resume.d.ts +12 -0
- package/dist/claude/session/start-or-resume.d.ts.map +1 -0
- package/dist/claude/session/start-or-resume.js +32 -0
- package/dist/claude/session/start-or-resume.js.map +1 -0
- package/dist/claude/session/transcript.d.ts +62 -0
- package/dist/claude/session/transcript.d.ts.map +1 -0
- package/dist/claude/session/transcript.js +88 -0
- package/dist/claude/session/transcript.js.map +1 -0
- package/dist/claude/session-bridge.d.ts +11 -0
- package/dist/claude/session-bridge.d.ts.map +1 -0
- package/dist/claude/session-bridge.js +18 -0
- package/dist/claude/session-bridge.js.map +1 -0
- package/dist/claude/session-build.d.ts +15 -0
- package/dist/claude/session-build.d.ts.map +1 -0
- package/dist/claude/session-build.js +147 -0
- package/dist/claude/session-build.js.map +1 -0
- package/dist/claude/session-hook-handler.d.ts +34 -0
- package/dist/claude/session-hook-handler.d.ts.map +1 -0
- package/dist/claude/session-hook-handler.js +42 -0
- package/dist/claude/session-hook-handler.js.map +1 -0
- package/dist/claude/session-instance.d.ts +42 -0
- package/dist/claude/session-instance.d.ts.map +1 -0
- package/dist/claude/session-instance.js +146 -0
- package/dist/claude/session-instance.js.map +1 -0
- package/dist/claude/session-interface.d.ts +49 -0
- package/dist/claude/session-interface.d.ts.map +1 -0
- package/dist/claude/session-interface.js +10 -0
- package/dist/claude/session-interface.js.map +1 -0
- package/dist/claude/session-resume.d.ts +8 -0
- package/dist/claude/session-resume.d.ts.map +1 -0
- package/dist/claude/session-resume.js +47 -0
- package/dist/claude/session-resume.js.map +1 -0
- package/dist/claude/session-runtime.d.ts +43 -0
- package/dist/claude/session-runtime.d.ts.map +1 -0
- package/dist/claude/session-runtime.js +105 -0
- package/dist/claude/session-runtime.js.map +1 -0
- package/dist/claude/session-transcript.d.ts +62 -0
- package/dist/claude/session-transcript.d.ts.map +1 -0
- package/dist/claude/session-transcript.js +88 -0
- package/dist/claude/session-transcript.js.map +1 -0
- package/dist/claude/session.d.ts +18 -0
- package/dist/claude/session.d.ts.map +1 -0
- package/dist/claude/session.js +58 -0
- package/dist/claude/session.js.map +1 -0
- package/dist/claude/settings.d.ts +14 -0
- package/dist/claude/settings.d.ts.map +1 -0
- package/dist/claude/settings.js +34 -0
- package/dist/claude/settings.js.map +1 -0
- package/dist/claude/simple.d.ts +28 -0
- package/dist/claude/simple.d.ts.map +1 -0
- package/dist/claude/simple.js +45 -0
- package/dist/claude/simple.js.map +1 -0
- package/dist/claude/start-or-resume.d.ts +12 -0
- package/dist/claude/start-or-resume.d.ts.map +1 -0
- package/dist/claude/start-or-resume.js +32 -0
- package/dist/claude/start-or-resume.js.map +1 -0
- package/dist/claude/startup-prompts.d.ts +16 -0
- package/dist/claude/startup-prompts.d.ts.map +1 -0
- package/dist/claude/startup-prompts.js +46 -0
- package/dist/claude/startup-prompts.js.map +1 -0
- package/dist/claude/startup-size.d.ts +8 -0
- package/dist/claude/startup-size.d.ts.map +1 -0
- package/dist/claude/startup-size.js +8 -0
- package/dist/claude/startup-size.js.map +1 -0
- package/dist/claude/tool-hook-events.d.ts +10 -0
- package/dist/claude/tool-hook-events.d.ts.map +1 -0
- package/dist/claude/tool-hook-events.js +18 -0
- package/dist/claude/tool-hook-events.js.map +1 -0
- package/dist/claude/tool-types.d.ts +158 -0
- package/dist/claude/tool-types.d.ts.map +1 -0
- package/dist/claude/tool-types.js +6 -0
- package/dist/claude/tool-types.js.map +1 -0
- package/dist/claude/transcript/baseline.d.ts +33 -0
- package/dist/claude/transcript/baseline.d.ts.map +1 -0
- package/dist/claude/transcript/baseline.js +108 -0
- package/dist/claude/transcript/baseline.js.map +1 -0
- package/dist/claude/transcript/cursor-io.d.ts +15 -0
- package/dist/claude/transcript/cursor-io.d.ts.map +1 -0
- package/dist/claude/transcript/cursor-io.js +44 -0
- package/dist/claude/transcript/cursor-io.js.map +1 -0
- package/dist/claude/transcript/cursor.d.ts +24 -0
- package/dist/claude/transcript/cursor.d.ts.map +1 -0
- package/dist/claude/transcript/cursor.js +43 -0
- package/dist/claude/transcript/cursor.js.map +1 -0
- package/dist/claude/transcript/drain-context.d.ts +22 -0
- package/dist/claude/transcript/drain-context.d.ts.map +1 -0
- package/dist/claude/transcript/drain-context.js +18 -0
- package/dist/claude/transcript/drain-context.js.map +1 -0
- package/dist/claude/transcript/drain.d.ts +33 -0
- package/dist/claude/transcript/drain.d.ts.map +1 -0
- package/dist/claude/transcript/drain.js +56 -0
- package/dist/claude/transcript/drain.js.map +1 -0
- package/dist/claude/transcript/drops.d.ts +9 -0
- package/dist/claude/transcript/drops.d.ts.map +1 -0
- package/dist/claude/transcript/drops.js +9 -0
- package/dist/claude/transcript/drops.js.map +1 -0
- package/dist/claude/transcript/emit.d.ts +26 -0
- package/dist/claude/transcript/emit.d.ts.map +1 -0
- package/dist/claude/transcript/emit.js +57 -0
- package/dist/claude/transcript/emit.js.map +1 -0
- package/dist/claude/transcript/fs-guard.d.ts +24 -0
- package/dist/claude/transcript/fs-guard.d.ts.map +1 -0
- package/dist/claude/transcript/fs-guard.js +48 -0
- package/dist/claude/transcript/fs-guard.js.map +1 -0
- package/dist/claude/transcript/index.d.ts +38 -0
- package/dist/claude/transcript/index.d.ts.map +1 -0
- package/dist/claude/transcript/index.js +191 -0
- package/dist/claude/transcript/index.js.map +1 -0
- package/dist/claude/transcript/summary.d.ts +40 -0
- package/dist/claude/transcript/summary.d.ts.map +1 -0
- package/dist/claude/transcript/summary.js +90 -0
- package/dist/claude/transcript/summary.js.map +1 -0
- package/dist/claude/transcript/warnings.d.ts +31 -0
- package/dist/claude/transcript/warnings.d.ts.map +1 -0
- package/dist/claude/transcript/warnings.js +53 -0
- package/dist/claude/transcript/warnings.js.map +1 -0
- package/dist/claude/transcript/watcher-config.d.ts +22 -0
- package/dist/claude/transcript/watcher-config.d.ts.map +1 -0
- package/dist/claude/transcript/watcher-config.js +7 -0
- package/dist/claude/transcript/watcher-config.js.map +1 -0
- package/dist/claude/validate/input.d.ts +8 -0
- package/dist/claude/validate/input.d.ts.map +1 -0
- package/dist/claude/validate/input.js +137 -0
- package/dist/claude/validate/input.js.map +1 -0
- package/dist/claude/validate/permission-update.d.ts +10 -0
- package/dist/claude/validate/permission-update.d.ts.map +1 -0
- package/dist/claude/validate/permission-update.js +72 -0
- package/dist/claude/validate/permission-update.js.map +1 -0
- package/dist/claude/validate/result.d.ts +7 -0
- package/dist/claude/validate/result.d.ts.map +1 -0
- package/dist/claude/validate/result.js +118 -0
- package/dist/claude/validate/result.js.map +1 -0
- package/dist/claude/validate/shapes.d.ts +22 -0
- package/dist/claude/validate/shapes.d.ts.map +1 -0
- package/dist/claude/validate/shapes.js +15 -0
- package/dist/claude/validate/shapes.js.map +1 -0
- package/dist/claude/validate/tool-update.d.ts +15 -0
- package/dist/claude/validate/tool-update.d.ts.map +1 -0
- package/dist/claude/validate/tool-update.js +122 -0
- package/dist/claude/validate/tool-update.js.map +1 -0
- package/dist/claude/validate-input.d.ts +8 -0
- package/dist/claude/validate-input.d.ts.map +1 -0
- package/dist/claude/validate-input.js +137 -0
- package/dist/claude/validate-input.js.map +1 -0
- package/dist/claude/validate-permission-update.d.ts +10 -0
- package/dist/claude/validate-permission-update.d.ts.map +1 -0
- package/dist/claude/validate-permission-update.js +72 -0
- package/dist/claude/validate-permission-update.js.map +1 -0
- package/dist/claude/validate-result.d.ts +7 -0
- package/dist/claude/validate-result.d.ts.map +1 -0
- package/dist/claude/validate-result.js +118 -0
- package/dist/claude/validate-result.js.map +1 -0
- package/dist/claude/validate-shapes.d.ts +22 -0
- package/dist/claude/validate-shapes.d.ts.map +1 -0
- package/dist/claude/validate-shapes.js +15 -0
- package/dist/claude/validate-shapes.js.map +1 -0
- package/dist/claude/validate-tool-update.d.ts +15 -0
- package/dist/claude/validate-tool-update.d.ts.map +1 -0
- package/dist/claude/validate-tool-update.js +122 -0
- package/dist/claude/validate-tool-update.js.map +1 -0
- package/dist/cli/agent-detect.d.ts +44 -0
- package/dist/cli/agent-detect.d.ts.map +1 -0
- package/dist/cli/agent-detect.js +66 -0
- package/dist/cli/agent-detect.js.map +1 -0
- package/dist/cli/arg-errors.d.ts +6 -0
- package/dist/cli/arg-errors.d.ts.map +1 -0
- package/dist/cli/arg-errors.js +44 -0
- package/dist/cli/arg-errors.js.map +1 -0
- package/dist/cli/arg-options.d.ts +26 -0
- package/dist/cli/arg-options.d.ts.map +1 -0
- package/dist/cli/arg-options.js +50 -0
- package/dist/cli/arg-options.js.map +1 -0
- package/dist/cli/args/errors.d.ts +6 -0
- package/dist/cli/args/errors.d.ts.map +1 -0
- package/dist/cli/args/errors.js +44 -0
- package/dist/cli/args/errors.js.map +1 -0
- package/dist/cli/args/index.d.ts +7 -0
- package/dist/cli/args/index.d.ts.map +1 -0
- package/dist/cli/args/index.js +70 -0
- package/dist/cli/args/index.js.map +1 -0
- package/dist/cli/args/options.d.ts +26 -0
- package/dist/cli/args/options.d.ts.map +1 -0
- package/dist/cli/args/options.js +50 -0
- package/dist/cli/args/options.js.map +1 -0
- package/dist/cli/args.d.ts +7 -0
- package/dist/cli/args.d.ts.map +1 -0
- package/dist/cli/args.js +70 -0
- package/dist/cli/args.js.map +1 -0
- package/dist/cli/config/codec.d.ts +12 -0
- package/dist/cli/config/codec.d.ts.map +1 -0
- package/dist/cli/config/codec.js +196 -0
- package/dist/cli/config/codec.js.map +1 -0
- package/dist/cli/config/commands.d.ts +15 -0
- package/dist/cli/config/commands.d.ts.map +1 -0
- package/dist/cli/config/commands.js +56 -0
- package/dist/cli/config/commands.js.map +1 -0
- package/dist/cli/config/effective.d.ts +21 -0
- package/dist/cli/config/effective.d.ts.map +1 -0
- package/dist/cli/config/effective.js +70 -0
- package/dist/cli/config/effective.js.map +1 -0
- package/dist/cli/config/keys.d.ts +7 -0
- package/dist/cli/config/keys.d.ts.map +1 -0
- package/dist/cli/config/keys.js +23 -0
- package/dist/cli/config/keys.js.map +1 -0
- package/dist/cli/config/paths.d.ts +13 -0
- package/dist/cli/config/paths.d.ts.map +1 -0
- package/dist/cli/config/paths.js +33 -0
- package/dist/cli/config/paths.js.map +1 -0
- package/dist/cli/config/store.d.ts +16 -0
- package/dist/cli/config/store.d.ts.map +1 -0
- package/dist/cli/config/store.js +97 -0
- package/dist/cli/config/store.js.map +1 -0
- package/dist/cli/duration.d.ts +6 -0
- package/dist/cli/duration.d.ts.map +1 -0
- package/dist/cli/duration.js +20 -0
- package/dist/cli/duration.js.map +1 -0
- package/dist/cli/entry.d.ts +27 -0
- package/dist/cli/entry.d.ts.map +1 -0
- package/dist/cli/entry.js +57 -0
- package/dist/cli/entry.js.map +1 -0
- package/dist/cli/head/display.d.ts +30 -0
- package/dist/cli/head/display.d.ts.map +1 -0
- package/dist/cli/head/display.js +108 -0
- package/dist/cli/head/display.js.map +1 -0
- package/dist/cli/head/process.d.ts +4 -0
- package/dist/cli/head/process.d.ts.map +1 -0
- package/dist/cli/head/process.js +94 -0
- package/dist/cli/head/process.js.map +1 -0
- package/dist/cli/head/types.d.ts +19 -0
- package/dist/cli/head/types.d.ts.map +1 -0
- package/dist/cli/head/types.js +3 -0
- package/dist/cli/head/types.js.map +1 -0
- package/dist/cli/help.d.ts +7 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/help.js +82 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/input.d.ts +8 -0
- package/dist/cli/input.d.ts.map +1 -0
- package/dist/cli/input.js +37 -0
- package/dist/cli/input.js.map +1 -0
- package/dist/cli/lifecycle/index.d.ts +61 -0
- package/dist/cli/lifecycle/index.d.ts.map +1 -0
- package/dist/cli/lifecycle/index.js +152 -0
- package/dist/cli/lifecycle/index.js.map +1 -0
- package/dist/cli/lifecycle/outcome.d.ts +13 -0
- package/dist/cli/lifecycle/outcome.d.ts.map +1 -0
- package/dist/cli/lifecycle/outcome.js +20 -0
- package/dist/cli/lifecycle/outcome.js.map +1 -0
- package/dist/cli/lifecycle-outcome.d.ts +13 -0
- package/dist/cli/lifecycle-outcome.d.ts.map +1 -0
- package/dist/cli/lifecycle-outcome.js +20 -0
- package/dist/cli/lifecycle-outcome.js.map +1 -0
- package/dist/cli/lifecycle.d.ts +61 -0
- package/dist/cli/lifecycle.d.ts.map +1 -0
- package/dist/cli/lifecycle.js +152 -0
- package/dist/cli/lifecycle.js.map +1 -0
- package/dist/cli/main.d.ts +33 -0
- package/dist/cli/main.d.ts.map +1 -0
- package/dist/cli/main.js +139 -0
- package/dist/cli/main.js.map +1 -0
- package/dist/cli/output/json.d.ts +8 -0
- package/dist/cli/output/json.d.ts.map +1 -0
- package/dist/cli/output/json.js +8 -0
- package/dist/cli/output/json.js.map +1 -0
- package/dist/cli/output/jsonl.d.ts +18 -0
- package/dist/cli/output/jsonl.d.ts.map +1 -0
- package/dist/cli/output/jsonl.js +32 -0
- package/dist/cli/output/jsonl.js.map +1 -0
- package/dist/cli/output/records.d.ts +13 -0
- package/dist/cli/output/records.d.ts.map +1 -0
- package/dist/cli/output/records.js +40 -0
- package/dist/cli/output/records.js.map +1 -0
- package/dist/cli/output/sanitize.d.ts +9 -0
- package/dist/cli/output/sanitize.d.ts.map +1 -0
- package/dist/cli/output/sanitize.js +28 -0
- package/dist/cli/output/sanitize.js.map +1 -0
- package/dist/cli/output/text.d.ts +15 -0
- package/dist/cli/output/text.d.ts.map +1 -0
- package/dist/cli/output/text.js +29 -0
- package/dist/cli/output/text.js.map +1 -0
- package/dist/cli/output/types.d.ts +74 -0
- package/dist/cli/output/types.d.ts.map +1 -0
- package/dist/cli/output/types.js +6 -0
- package/dist/cli/output/types.js.map +1 -0
- package/dist/cli/request/agent-detect.d.ts +44 -0
- package/dist/cli/request/agent-detect.d.ts.map +1 -0
- package/dist/cli/request/agent-detect.js +66 -0
- package/dist/cli/request/agent-detect.js.map +1 -0
- package/dist/cli/request/finalize.d.ts +10 -0
- package/dist/cli/request/finalize.d.ts.map +1 -0
- package/dist/cli/request/finalize.js +135 -0
- package/dist/cli/request/finalize.js.map +1 -0
- package/dist/cli/request/index.d.ts +12 -0
- package/dist/cli/request/index.d.ts.map +1 -0
- package/dist/cli/request/index.js +103 -0
- package/dist/cli/request/index.js.map +1 -0
- package/dist/cli/request/layers.d.ts +30 -0
- package/dist/cli/request/layers.d.ts.map +1 -0
- package/dist/cli/request/layers.js +44 -0
- package/dist/cli/request/layers.js.map +1 -0
- package/dist/cli/request/resolution-types.d.ts +35 -0
- package/dist/cli/request/resolution-types.d.ts.map +1 -0
- package/dist/cli/request/resolution-types.js +6 -0
- package/dist/cli/request/resolution-types.js.map +1 -0
- package/dist/cli/request/settings.d.ts +34 -0
- package/dist/cli/request/settings.d.ts.map +1 -0
- package/dist/cli/request/settings.js +66 -0
- package/dist/cli/request/settings.js.map +1 -0
- package/dist/cli/request/sources.d.ts +13 -0
- package/dist/cli/request/sources.d.ts.map +1 -0
- package/dist/cli/request/sources.js +23 -0
- package/dist/cli/request/sources.js.map +1 -0
- package/dist/cli/request/validation.d.ts +18 -0
- package/dist/cli/request/validation.d.ts.map +1 -0
- package/dist/cli/request/validation.js +84 -0
- package/dist/cli/request/validation.js.map +1 -0
- package/dist/cli/request/values.d.ts +33 -0
- package/dist/cli/request/values.d.ts.map +1 -0
- package/dist/cli/request/values.js +73 -0
- package/dist/cli/request/values.js.map +1 -0
- package/dist/cli/request-finalize.d.ts +10 -0
- package/dist/cli/request-finalize.d.ts.map +1 -0
- package/dist/cli/request-finalize.js +135 -0
- package/dist/cli/request-finalize.js.map +1 -0
- package/dist/cli/request-layers.d.ts +30 -0
- package/dist/cli/request-layers.d.ts.map +1 -0
- package/dist/cli/request-layers.js +44 -0
- package/dist/cli/request-layers.js.map +1 -0
- package/dist/cli/request-settings.d.ts +34 -0
- package/dist/cli/request-settings.d.ts.map +1 -0
- package/dist/cli/request-settings.js +66 -0
- package/dist/cli/request-settings.js.map +1 -0
- package/dist/cli/request-sources.d.ts +13 -0
- package/dist/cli/request-sources.d.ts.map +1 -0
- package/dist/cli/request-sources.js +23 -0
- package/dist/cli/request-sources.js.map +1 -0
- package/dist/cli/request-validation.d.ts +18 -0
- package/dist/cli/request-validation.d.ts.map +1 -0
- package/dist/cli/request-validation.js +84 -0
- package/dist/cli/request-validation.js.map +1 -0
- package/dist/cli/request-values.d.ts +33 -0
- package/dist/cli/request-values.d.ts.map +1 -0
- package/dist/cli/request-values.js +73 -0
- package/dist/cli/request-values.js.map +1 -0
- package/dist/cli/request.d.ts +12 -0
- package/dist/cli/request.d.ts.map +1 -0
- package/dist/cli/request.js +103 -0
- package/dist/cli/request.js.map +1 -0
- package/dist/cli/resolution-types.d.ts +35 -0
- package/dist/cli/resolution-types.d.ts.map +1 -0
- package/dist/cli/resolution-types.js +6 -0
- package/dist/cli/resolution-types.js.map +1 -0
- package/dist/cli/run/index.d.ts +20 -0
- package/dist/cli/run/index.d.ts.map +1 -0
- package/dist/cli/run/index.js +126 -0
- package/dist/cli/run/index.js.map +1 -0
- package/dist/cli/run/output-lines.d.ts +14 -0
- package/dist/cli/run/output-lines.d.ts.map +1 -0
- package/dist/cli/run/output-lines.js +42 -0
- package/dist/cli/run/output-lines.js.map +1 -0
- package/dist/cli/run/output.d.ts +48 -0
- package/dist/cli/run/output.d.ts.map +1 -0
- package/dist/cli/run/output.js +150 -0
- package/dist/cli/run/output.js.map +1 -0
- package/dist/cli/run-output-lines.d.ts +14 -0
- package/dist/cli/run-output-lines.d.ts.map +1 -0
- package/dist/cli/run-output-lines.js +42 -0
- package/dist/cli/run-output-lines.js.map +1 -0
- package/dist/cli/run-output.d.ts +48 -0
- package/dist/cli/run-output.d.ts.map +1 -0
- package/dist/cli/run-output.js +150 -0
- package/dist/cli/run-output.js.map +1 -0
- package/dist/cli/run.d.ts +20 -0
- package/dist/cli/run.d.ts.map +1 -0
- package/dist/cli/run.js +126 -0
- package/dist/cli/run.js.map +1 -0
- package/dist/cli/session/index.d.ts +68 -0
- package/dist/cli/session/index.d.ts.map +1 -0
- package/dist/cli/session/index.js +124 -0
- package/dist/cli/session/index.js.map +1 -0
- package/dist/cli/session/launch.d.ts +23 -0
- package/dist/cli/session/launch.d.ts.map +1 -0
- package/dist/cli/session/launch.js +57 -0
- package/dist/cli/session/launch.js.map +1 -0
- package/dist/cli/session-launch.d.ts +23 -0
- package/dist/cli/session-launch.d.ts.map +1 -0
- package/dist/cli/session-launch.js +57 -0
- package/dist/cli/session-launch.js.map +1 -0
- package/dist/cli/session.d.ts +68 -0
- package/dist/cli/session.d.ts.map +1 -0
- package/dist/cli/session.js +124 -0
- package/dist/cli/session.js.map +1 -0
- package/dist/cli/stream.d.ts +25 -0
- package/dist/cli/stream.d.ts.map +1 -0
- package/dist/cli/stream.js +92 -0
- package/dist/cli/stream.js.map +1 -0
- package/dist/cli/types.d.ts +148 -0
- package/dist/cli/types.d.ts.map +1 -0
- package/dist/cli/types.js +30 -0
- package/dist/cli/types.js.map +1 -0
- package/dist/cli/update-attention.d.ts +32 -0
- package/dist/cli/update-attention.d.ts.map +1 -0
- package/dist/cli/update-attention.js +60 -0
- package/dist/cli/update-attention.js.map +1 -0
- package/dist/cli/validation-error.d.ts +11 -0
- package/dist/cli/validation-error.d.ts.map +1 -0
- package/dist/cli/validation-error.js +13 -0
- package/dist/cli/validation-error.js.map +1 -0
- package/dist/cli/version.d.ts +7 -0
- package/dist/cli/version.d.ts.map +1 -0
- package/dist/cli/version.js +11 -0
- package/dist/cli/version.js.map +1 -0
- package/dist/codex/attach-images.d.ts +20 -0
- package/dist/codex/attach-images.d.ts.map +1 -0
- package/dist/codex/attach-images.js +66 -0
- package/dist/codex/attach-images.js.map +1 -0
- package/dist/codex/clipboard-lock.d.ts +15 -0
- package/dist/codex/clipboard-lock.d.ts.map +1 -0
- package/dist/codex/clipboard-lock.js +16 -0
- package/dist/codex/clipboard-lock.js.map +1 -0
- package/dist/codex/clipboard.d.ts +32 -0
- package/dist/codex/clipboard.d.ts.map +1 -0
- package/dist/codex/clipboard.js +92 -0
- package/dist/codex/clipboard.js.map +1 -0
- package/dist/codex/command.d.ts +9 -0
- package/dist/codex/command.d.ts.map +1 -0
- package/dist/codex/command.js +72 -0
- package/dist/codex/command.js.map +1 -0
- package/dist/codex/config/lock.d.ts +21 -0
- package/dist/codex/config/lock.d.ts.map +1 -0
- package/dist/codex/config/lock.js +22 -0
- package/dist/codex/config/lock.js.map +1 -0
- package/dist/codex/config/restore.d.ts +33 -0
- package/dist/codex/config/restore.d.ts.map +1 -0
- package/dist/codex/config/restore.js +90 -0
- package/dist/codex/config/restore.js.map +1 -0
- package/dist/codex/config/transaction.d.ts +26 -0
- package/dist/codex/config/transaction.d.ts.map +1 -0
- package/dist/codex/config/transaction.js +47 -0
- package/dist/codex/config/transaction.js.map +1 -0
- package/dist/codex/config-lock.d.ts +21 -0
- package/dist/codex/config-lock.d.ts.map +1 -0
- package/dist/codex/config-lock.js +22 -0
- package/dist/codex/config-lock.js.map +1 -0
- package/dist/codex/config-restore.d.ts +33 -0
- package/dist/codex/config-restore.d.ts.map +1 -0
- package/dist/codex/config-restore.js +90 -0
- package/dist/codex/config-restore.js.map +1 -0
- package/dist/codex/config-transaction.d.ts +26 -0
- package/dist/codex/config-transaction.d.ts.map +1 -0
- package/dist/codex/config-transaction.js +47 -0
- package/dist/codex/config-transaction.js.map +1 -0
- package/dist/codex/hook-dispatch.d.ts +9 -0
- package/dist/codex/hook-dispatch.d.ts.map +1 -0
- package/dist/codex/hook-dispatch.js +14 -0
- package/dist/codex/hook-dispatch.js.map +1 -0
- package/dist/codex/hook-names.d.ts +19 -0
- package/dist/codex/hook-names.d.ts.map +1 -0
- package/dist/codex/hook-names.js +17 -0
- package/dist/codex/hook-names.js.map +1 -0
- package/dist/codex/hooks/dispatch.d.ts +9 -0
- package/dist/codex/hooks/dispatch.d.ts.map +1 -0
- package/dist/codex/hooks/dispatch.js +14 -0
- package/dist/codex/hooks/dispatch.js.map +1 -0
- package/dist/codex/hooks/index.d.ts +99 -0
- package/dist/codex/hooks/index.d.ts.map +1 -0
- package/dist/codex/hooks/index.js +6 -0
- package/dist/codex/hooks/index.js.map +1 -0
- package/dist/codex/hooks/names.d.ts +19 -0
- package/dist/codex/hooks/names.d.ts.map +1 -0
- package/dist/codex/hooks/names.js +17 -0
- package/dist/codex/hooks/names.js.map +1 -0
- package/dist/codex/hooks/serialize.d.ts +8 -0
- package/dist/codex/hooks/serialize.d.ts.map +1 -0
- package/dist/codex/hooks/serialize.js +48 -0
- package/dist/codex/hooks/serialize.js.map +1 -0
- package/dist/codex/hooks/validate-result.d.ts +7 -0
- package/dist/codex/hooks/validate-result.d.ts.map +1 -0
- package/dist/codex/hooks/validate-result.js +84 -0
- package/dist/codex/hooks/validate-result.js.map +1 -0
- package/dist/codex/hooks/validate.d.ts +11 -0
- package/dist/codex/hooks/validate.d.ts.map +1 -0
- package/dist/codex/hooks/validate.js +88 -0
- package/dist/codex/hooks/validate.js.map +1 -0
- package/dist/codex/hooks.d.ts +99 -0
- package/dist/codex/hooks.d.ts.map +1 -0
- package/dist/codex/hooks.js +6 -0
- package/dist/codex/hooks.js.map +1 -0
- package/dist/codex/images/attach.d.ts +20 -0
- package/dist/codex/images/attach.d.ts.map +1 -0
- package/dist/codex/images/attach.js +66 -0
- package/dist/codex/images/attach.js.map +1 -0
- package/dist/codex/images/clipboard-lock.d.ts +15 -0
- package/dist/codex/images/clipboard-lock.d.ts.map +1 -0
- package/dist/codex/images/clipboard-lock.js +16 -0
- package/dist/codex/images/clipboard-lock.js.map +1 -0
- package/dist/codex/images/clipboard.d.ts +32 -0
- package/dist/codex/images/clipboard.d.ts.map +1 -0
- package/dist/codex/images/clipboard.js +92 -0
- package/dist/codex/images/clipboard.js.map +1 -0
- package/dist/codex/initial-ready.d.ts +19 -0
- package/dist/codex/initial-ready.d.ts.map +1 -0
- package/dist/codex/initial-ready.js +19 -0
- package/dist/codex/initial-ready.js.map +1 -0
- package/dist/codex/list-models.d.ts +16 -0
- package/dist/codex/list-models.d.ts.map +1 -0
- package/dist/codex/list-models.js +35 -0
- package/dist/codex/list-models.js.map +1 -0
- package/dist/codex/model-picker.d.ts +7 -0
- package/dist/codex/model-picker.d.ts.map +1 -0
- package/dist/codex/model-picker.js +22 -0
- package/dist/codex/model-picker.js.map +1 -0
- package/dist/codex/preflight.d.ts +17 -0
- package/dist/codex/preflight.d.ts.map +1 -0
- package/dist/codex/preflight.js +94 -0
- package/dist/codex/preflight.js.map +1 -0
- package/dist/codex/pty.d.ts +9 -0
- package/dist/codex/pty.d.ts.map +1 -0
- package/dist/codex/pty.js +26 -0
- package/dist/codex/pty.js.map +1 -0
- package/dist/codex/screen-table.d.ts +16 -0
- package/dist/codex/screen-table.d.ts.map +1 -0
- package/dist/codex/screen-table.js +68 -0
- package/dist/codex/screen-table.js.map +1 -0
- package/dist/codex/serialize.d.ts +8 -0
- package/dist/codex/serialize.d.ts.map +1 -0
- package/dist/codex/serialize.js +48 -0
- package/dist/codex/serialize.js.map +1 -0
- package/dist/codex/session/bridge.d.ts +14 -0
- package/dist/codex/session/bridge.d.ts.map +1 -0
- package/dist/codex/session/bridge.js +20 -0
- package/dist/codex/session/bridge.js.map +1 -0
- package/dist/codex/session/build.d.ts +15 -0
- package/dist/codex/session/build.d.ts.map +1 -0
- package/dist/codex/session/build.js +144 -0
- package/dist/codex/session/build.js.map +1 -0
- package/dist/codex/session/cleanup.d.ts +12 -0
- package/dist/codex/session/cleanup.d.ts.map +1 -0
- package/dist/codex/session/cleanup.js +15 -0
- package/dist/codex/session/cleanup.js.map +1 -0
- package/dist/codex/session/hooks.d.ts +13 -0
- package/dist/codex/session/hooks.d.ts.map +1 -0
- package/dist/codex/session/hooks.js +54 -0
- package/dist/codex/session/hooks.js.map +1 -0
- package/dist/codex/session/index.d.ts +16 -0
- package/dist/codex/session/index.d.ts.map +1 -0
- package/dist/codex/session/index.js +61 -0
- package/dist/codex/session/index.js.map +1 -0
- package/dist/codex/session/instance.d.ts +50 -0
- package/dist/codex/session/instance.d.ts.map +1 -0
- package/dist/codex/session/instance.js +117 -0
- package/dist/codex/session/instance.js.map +1 -0
- package/dist/codex/session/resume.d.ts +7 -0
- package/dist/codex/session/resume.d.ts.map +1 -0
- package/dist/codex/session/resume.js +44 -0
- package/dist/codex/session/resume.js.map +1 -0
- package/dist/codex/session/runtime.d.ts +7 -0
- package/dist/codex/session/runtime.d.ts.map +1 -0
- package/dist/codex/session/runtime.js +10 -0
- package/dist/codex/session/runtime.js.map +1 -0
- package/dist/codex/session/start-or-resume.d.ts +12 -0
- package/dist/codex/session/start-or-resume.d.ts.map +1 -0
- package/dist/codex/session/start-or-resume.js +31 -0
- package/dist/codex/session/start-or-resume.js.map +1 -0
- package/dist/codex/session/transcript.d.ts +30 -0
- package/dist/codex/session/transcript.d.ts.map +1 -0
- package/dist/codex/session/transcript.js +53 -0
- package/dist/codex/session/transcript.js.map +1 -0
- package/dist/codex/session/types.d.ts +87 -0
- package/dist/codex/session/types.d.ts.map +1 -0
- package/dist/codex/session/types.js +6 -0
- package/dist/codex/session/types.js.map +1 -0
- package/dist/codex/session/warnings.d.ts +27 -0
- package/dist/codex/session/warnings.d.ts.map +1 -0
- package/dist/codex/session/warnings.js +54 -0
- package/dist/codex/session/warnings.js.map +1 -0
- package/dist/codex/session-bridge.d.ts +14 -0
- package/dist/codex/session-bridge.d.ts.map +1 -0
- package/dist/codex/session-bridge.js +20 -0
- package/dist/codex/session-bridge.js.map +1 -0
- package/dist/codex/session-build.d.ts +15 -0
- package/dist/codex/session-build.d.ts.map +1 -0
- package/dist/codex/session-build.js +144 -0
- package/dist/codex/session-build.js.map +1 -0
- package/dist/codex/session-cleanup.d.ts +12 -0
- package/dist/codex/session-cleanup.d.ts.map +1 -0
- package/dist/codex/session-cleanup.js +15 -0
- package/dist/codex/session-cleanup.js.map +1 -0
- package/dist/codex/session-hooks.d.ts +13 -0
- package/dist/codex/session-hooks.d.ts.map +1 -0
- package/dist/codex/session-hooks.js +54 -0
- package/dist/codex/session-hooks.js.map +1 -0
- package/dist/codex/session-instance.d.ts +50 -0
- package/dist/codex/session-instance.d.ts.map +1 -0
- package/dist/codex/session-instance.js +117 -0
- package/dist/codex/session-instance.js.map +1 -0
- package/dist/codex/session-resume.d.ts +7 -0
- package/dist/codex/session-resume.d.ts.map +1 -0
- package/dist/codex/session-resume.js +44 -0
- package/dist/codex/session-resume.js.map +1 -0
- package/dist/codex/session-runtime.d.ts +7 -0
- package/dist/codex/session-runtime.d.ts.map +1 -0
- package/dist/codex/session-runtime.js +10 -0
- package/dist/codex/session-runtime.js.map +1 -0
- package/dist/codex/session-transcript.d.ts +30 -0
- package/dist/codex/session-transcript.d.ts.map +1 -0
- package/dist/codex/session-transcript.js +53 -0
- package/dist/codex/session-transcript.js.map +1 -0
- package/dist/codex/session-types.d.ts +87 -0
- package/dist/codex/session-types.d.ts.map +1 -0
- package/dist/codex/session-types.js +6 -0
- package/dist/codex/session-types.js.map +1 -0
- package/dist/codex/session-warnings.d.ts +27 -0
- package/dist/codex/session-warnings.d.ts.map +1 -0
- package/dist/codex/session-warnings.js +54 -0
- package/dist/codex/session-warnings.js.map +1 -0
- package/dist/codex/session.d.ts +16 -0
- package/dist/codex/session.d.ts.map +1 -0
- package/dist/codex/session.js +61 -0
- package/dist/codex/session.js.map +1 -0
- package/dist/codex/simple.d.ts +25 -0
- package/dist/codex/simple.d.ts.map +1 -0
- package/dist/codex/simple.js +37 -0
- package/dist/codex/simple.js.map +1 -0
- package/dist/codex/start-or-resume.d.ts +12 -0
- package/dist/codex/start-or-resume.d.ts.map +1 -0
- package/dist/codex/start-or-resume.js +31 -0
- package/dist/codex/start-or-resume.js.map +1 -0
- package/dist/codex/startup-prompts.d.ts +32 -0
- package/dist/codex/startup-prompts.d.ts.map +1 -0
- package/dist/codex/startup-prompts.js +136 -0
- package/dist/codex/startup-prompts.js.map +1 -0
- package/dist/codex/tool-types.d.ts +21 -0
- package/dist/codex/tool-types.d.ts.map +1 -0
- package/dist/codex/tool-types.js +6 -0
- package/dist/codex/tool-types.js.map +1 -0
- package/dist/codex/transcript/cursor-io.d.ts +7 -0
- package/dist/codex/transcript/cursor-io.d.ts.map +1 -0
- package/dist/codex/transcript/cursor-io.js +7 -0
- package/dist/codex/transcript/cursor-io.js.map +1 -0
- package/dist/codex/transcript/cursor.d.ts +8 -0
- package/dist/codex/transcript/cursor.d.ts.map +1 -0
- package/dist/codex/transcript/cursor.js +8 -0
- package/dist/codex/transcript/cursor.js.map +1 -0
- package/dist/codex/transcript/drain.d.ts +30 -0
- package/dist/codex/transcript/drain.d.ts.map +1 -0
- package/dist/codex/transcript/drain.js +48 -0
- package/dist/codex/transcript/drain.js.map +1 -0
- package/dist/codex/transcript/drops.d.ts +9 -0
- package/dist/codex/transcript/drops.d.ts.map +1 -0
- package/dist/codex/transcript/drops.js +9 -0
- package/dist/codex/transcript/drops.js.map +1 -0
- package/dist/codex/transcript/emit.d.ts +22 -0
- package/dist/codex/transcript/emit.d.ts.map +1 -0
- package/dist/codex/transcript/emit.js +57 -0
- package/dist/codex/transcript/emit.js.map +1 -0
- package/dist/codex/transcript/fs-guard.d.ts +16 -0
- package/dist/codex/transcript/fs-guard.d.ts.map +1 -0
- package/dist/codex/transcript/fs-guard.js +27 -0
- package/dist/codex/transcript/fs-guard.js.map +1 -0
- package/dist/codex/transcript/index.d.ts +12 -0
- package/dist/codex/transcript/index.d.ts.map +1 -0
- package/dist/codex/transcript/index.js +10 -0
- package/dist/codex/transcript/index.js.map +1 -0
- package/dist/codex/transcript/summary.d.ts +10 -0
- package/dist/codex/transcript/summary.d.ts.map +1 -0
- package/dist/codex/transcript/summary.js +176 -0
- package/dist/codex/transcript/summary.js.map +1 -0
- package/dist/codex/transcript/types.d.ts +65 -0
- package/dist/codex/transcript/types.d.ts.map +1 -0
- package/dist/codex/transcript/types.js +7 -0
- package/dist/codex/transcript/types.js.map +1 -0
- package/dist/codex/transcript/warnings.d.ts +25 -0
- package/dist/codex/transcript/warnings.d.ts.map +1 -0
- package/dist/codex/transcript/warnings.js +43 -0
- package/dist/codex/transcript/warnings.js.map +1 -0
- package/dist/codex/transcript/watcher-config.d.ts +22 -0
- package/dist/codex/transcript/watcher-config.d.ts.map +1 -0
- package/dist/codex/transcript/watcher-config.js +7 -0
- package/dist/codex/transcript/watcher-config.js.map +1 -0
- package/dist/codex/transcript/watcher.d.ts +34 -0
- package/dist/codex/transcript/watcher.d.ts.map +1 -0
- package/dist/codex/transcript/watcher.js +134 -0
- package/dist/codex/transcript/watcher.js.map +1 -0
- package/dist/codex/transcript.d.ts +12 -0
- package/dist/codex/transcript.d.ts.map +1 -0
- package/dist/codex/transcript.js +10 -0
- package/dist/codex/transcript.js.map +1 -0
- package/dist/codex/update-prompt.d.ts +23 -0
- package/dist/codex/update-prompt.d.ts.map +1 -0
- package/dist/codex/update-prompt.js +78 -0
- package/dist/codex/update-prompt.js.map +1 -0
- package/dist/codex/validate-result.d.ts +7 -0
- package/dist/codex/validate-result.d.ts.map +1 -0
- package/dist/codex/validate-result.js +84 -0
- package/dist/codex/validate-result.js.map +1 -0
- package/dist/codex/validate.d.ts +11 -0
- package/dist/codex/validate.d.ts.map +1 -0
- package/dist/codex/validate.js +88 -0
- package/dist/codex/validate.js.map +1 -0
- package/dist/core/activity/index.d.ts +51 -0
- package/dist/core/activity/index.d.ts.map +1 -0
- package/dist/core/activity/index.js +81 -0
- package/dist/core/activity/index.js.map +1 -0
- package/dist/core/activity/lifecycle.d.ts +21 -0
- package/dist/core/activity/lifecycle.d.ts.map +1 -0
- package/dist/core/activity/lifecycle.js +45 -0
- package/dist/core/activity/lifecycle.js.map +1 -0
- package/dist/core/activity/meta.d.ts +13 -0
- package/dist/core/activity/meta.d.ts.map +1 -0
- package/dist/core/activity/meta.js +67 -0
- package/dist/core/activity/meta.js.map +1 -0
- package/dist/core/activity/transcript.d.ts +19 -0
- package/dist/core/activity/transcript.d.ts.map +1 -0
- package/dist/core/activity/transcript.js +60 -0
- package/dist/core/activity/transcript.js.map +1 -0
- package/dist/core/activity-lifecycle.d.ts +21 -0
- package/dist/core/activity-lifecycle.d.ts.map +1 -0
- package/dist/core/activity-lifecycle.js +45 -0
- package/dist/core/activity-lifecycle.js.map +1 -0
- package/dist/core/activity-meta.d.ts +13 -0
- package/dist/core/activity-meta.d.ts.map +1 -0
- package/dist/core/activity-meta.js +67 -0
- package/dist/core/activity-meta.js.map +1 -0
- package/dist/core/activity-transcript.d.ts +19 -0
- package/dist/core/activity-transcript.d.ts.map +1 -0
- package/dist/core/activity-transcript.js +60 -0
- package/dist/core/activity-transcript.js.map +1 -0
- package/dist/core/activity.d.ts +51 -0
- package/dist/core/activity.d.ts.map +1 -0
- package/dist/core/activity.js +81 -0
- package/dist/core/activity.js.map +1 -0
- package/dist/core/agent-session.d.ts +50 -0
- package/dist/core/agent-session.d.ts.map +1 -0
- package/dist/core/agent-session.js +6 -0
- package/dist/core/agent-session.js.map +1 -0
- package/dist/core/async-mutex.d.ts +13 -0
- package/dist/core/async-mutex.d.ts.map +1 -0
- package/dist/core/async-mutex.js +18 -0
- package/dist/core/async-mutex.js.map +1 -0
- package/dist/core/attention.d.ts +19 -0
- package/dist/core/attention.d.ts.map +1 -0
- package/dist/core/attention.js +31 -0
- package/dist/core/attention.js.map +1 -0
- package/dist/core/compact.d.ts +17 -0
- package/dist/core/compact.d.ts.map +1 -0
- package/dist/core/compact.js +69 -0
- package/dist/core/compact.js.map +1 -0
- package/dist/core/contained.d.ts +7 -0
- package/dist/core/contained.d.ts.map +1 -0
- package/dist/core/contained.js +14 -0
- package/dist/core/contained.js.map +1 -0
- package/dist/core/control-queue/index.d.ts +21 -0
- package/dist/core/control-queue/index.d.ts.map +1 -0
- package/dist/core/control-queue/index.js +98 -0
- package/dist/core/control-queue/index.js.map +1 -0
- package/dist/core/control-queue/state.d.ts +29 -0
- package/dist/core/control-queue/state.d.ts.map +1 -0
- package/dist/core/control-queue/state.js +95 -0
- package/dist/core/control-queue/state.js.map +1 -0
- package/dist/core/control-queue/traits.d.ts +54 -0
- package/dist/core/control-queue/traits.d.ts.map +1 -0
- package/dist/core/control-queue/traits.js +118 -0
- package/dist/core/control-queue/traits.js.map +1 -0
- package/dist/core/control-queue/types.d.ts +45 -0
- package/dist/core/control-queue/types.d.ts.map +1 -0
- package/dist/core/control-queue/types.js +7 -0
- package/dist/core/control-queue/types.js.map +1 -0
- package/dist/core/control-queue-state.d.ts +29 -0
- package/dist/core/control-queue-state.d.ts.map +1 -0
- package/dist/core/control-queue-state.js +95 -0
- package/dist/core/control-queue-state.js.map +1 -0
- package/dist/core/control-queue-traits.d.ts +54 -0
- package/dist/core/control-queue-traits.d.ts.map +1 -0
- package/dist/core/control-queue-traits.js +118 -0
- package/dist/core/control-queue-traits.js.map +1 -0
- package/dist/core/control-queue-types.d.ts +45 -0
- package/dist/core/control-queue-types.d.ts.map +1 -0
- package/dist/core/control-queue-types.js +7 -0
- package/dist/core/control-queue-types.js.map +1 -0
- package/dist/core/control-queue.d.ts +21 -0
- package/dist/core/control-queue.d.ts.map +1 -0
- package/dist/core/control-queue.js +98 -0
- package/dist/core/control-queue.js.map +1 -0
- package/dist/core/defaults.d.ts +7 -0
- package/dist/core/defaults.d.ts.map +1 -0
- package/dist/core/defaults.js +6 -0
- package/dist/core/defaults.js.map +1 -0
- package/dist/core/delay.d.ts +7 -0
- package/dist/core/delay.d.ts.map +1 -0
- package/dist/core/delay.js +9 -0
- package/dist/core/delay.js.map +1 -0
- package/dist/core/errors.d.ts +39 -0
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/errors.js +65 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/hook-dispatch.d.ts +36 -0
- package/dist/core/hook-dispatch.d.ts.map +1 -0
- package/dist/core/hook-dispatch.js +51 -0
- package/dist/core/hook-dispatch.js.map +1 -0
- package/dist/core/hook-result.d.ts +8 -0
- package/dist/core/hook-result.d.ts.map +1 -0
- package/dist/core/hook-result.js +40 -0
- package/dist/core/hook-result.js.map +1 -0
- package/dist/core/hook-timeout.d.ts +25 -0
- package/dist/core/hook-timeout.d.ts.map +1 -0
- package/dist/core/hook-timeout.js +26 -0
- package/dist/core/hook-timeout.js.map +1 -0
- package/dist/core/images/chip-wait.d.ts +43 -0
- package/dist/core/images/chip-wait.d.ts.map +1 -0
- package/dist/core/images/chip-wait.js +80 -0
- package/dist/core/images/chip-wait.js.map +1 -0
- package/dist/core/images/index.d.ts +9 -0
- package/dist/core/images/index.d.ts.map +1 -0
- package/dist/core/images/index.js +8 -0
- package/dist/core/images/index.js.map +1 -0
- package/dist/core/images/materialize.d.ts +22 -0
- package/dist/core/images/materialize.d.ts.map +1 -0
- package/dist/core/images/materialize.js +49 -0
- package/dist/core/images/materialize.js.map +1 -0
- package/dist/core/images/resolve.d.ts +45 -0
- package/dist/core/images/resolve.d.ts.map +1 -0
- package/dist/core/images/resolve.js +137 -0
- package/dist/core/images/resolve.js.map +1 -0
- package/dist/core/images/types.d.ts +39 -0
- package/dist/core/images/types.d.ts.map +1 -0
- package/dist/core/images/types.js +26 -0
- package/dist/core/images/types.js.map +1 -0
- package/dist/core/input/abort.d.ts +10 -0
- package/dist/core/input/abort.d.ts.map +1 -0
- package/dist/core/input/abort.js +44 -0
- package/dist/core/input/abort.js.map +1 -0
- package/dist/core/input/index.d.ts +37 -0
- package/dist/core/input/index.d.ts.map +1 -0
- package/dist/core/input/index.js +154 -0
- package/dist/core/input/index.js.map +1 -0
- package/dist/core/interrupt.d.ts +29 -0
- package/dist/core/interrupt.d.ts.map +1 -0
- package/dist/core/interrupt.js +57 -0
- package/dist/core/interrupt.js.map +1 -0
- package/dist/core/list-models.d.ts +44 -0
- package/dist/core/list-models.d.ts.map +1 -0
- package/dist/core/list-models.js +73 -0
- package/dist/core/list-models.js.map +1 -0
- package/dist/core/loops/constants.d.ts +13 -0
- package/dist/core/loops/constants.d.ts.map +1 -0
- package/dist/core/loops/constants.js +13 -0
- package/dist/core/loops/constants.js.map +1 -0
- package/dist/core/loops/jitter.d.ts +6 -0
- package/dist/core/loops/jitter.d.ts.map +1 -0
- package/dist/core/loops/jitter.js +20 -0
- package/dist/core/loops/jitter.js.map +1 -0
- package/dist/core/loops/loop-controls.d.ts +8 -0
- package/dist/core/loops/loop-controls.d.ts.map +1 -0
- package/dist/core/loops/loop-controls.js +3 -0
- package/dist/core/loops/loop-controls.js.map +1 -0
- package/dist/core/loops/parser.d.ts +7 -0
- package/dist/core/loops/parser.d.ts.map +1 -0
- package/dist/core/loops/parser.js +37 -0
- package/dist/core/loops/parser.js.map +1 -0
- package/dist/core/loops/scheduler-delivery.d.ts +42 -0
- package/dist/core/loops/scheduler-delivery.d.ts.map +1 -0
- package/dist/core/loops/scheduler-delivery.js +112 -0
- package/dist/core/loops/scheduler-delivery.js.map +1 -0
- package/dist/core/loops/scheduler-state.d.ts +63 -0
- package/dist/core/loops/scheduler-state.d.ts.map +1 -0
- package/dist/core/loops/scheduler-state.js +102 -0
- package/dist/core/loops/scheduler-state.js.map +1 -0
- package/dist/core/loops/scheduler.d.ts +27 -0
- package/dist/core/loops/scheduler.d.ts.map +1 -0
- package/dist/core/loops/scheduler.js +189 -0
- package/dist/core/loops/scheduler.js.map +1 -0
- package/dist/core/loops/timers.d.ts +25 -0
- package/dist/core/loops/timers.d.ts.map +1 -0
- package/dist/core/loops/timers.js +47 -0
- package/dist/core/loops/timers.js.map +1 -0
- package/dist/core/loops/timing.d.ts +27 -0
- package/dist/core/loops/timing.d.ts.map +1 -0
- package/dist/core/loops/timing.js +68 -0
- package/dist/core/loops/timing.js.map +1 -0
- package/dist/core/loops/types.d.ts +57 -0
- package/dist/core/loops/types.d.ts.map +1 -0
- package/dist/core/loops/types.js +6 -0
- package/dist/core/loops/types.js.map +1 -0
- package/dist/core/loops/validate.d.ts +9 -0
- package/dist/core/loops/validate.d.ts.map +1 -0
- package/dist/core/loops/validate.js +46 -0
- package/dist/core/loops/validate.js.map +1 -0
- package/dist/core/model-picker.d.ts +22 -0
- package/dist/core/model-picker.d.ts.map +1 -0
- package/dist/core/model-picker.js +58 -0
- package/dist/core/model-picker.js.map +1 -0
- package/dist/core/model-rows.d.ts +21 -0
- package/dist/core/model-rows.d.ts.map +1 -0
- package/dist/core/model-rows.js +57 -0
- package/dist/core/model-rows.js.map +1 -0
- package/dist/core/models/list.d.ts +44 -0
- package/dist/core/models/list.d.ts.map +1 -0
- package/dist/core/models/list.js +73 -0
- package/dist/core/models/list.js.map +1 -0
- package/dist/core/models/picker.d.ts +22 -0
- package/dist/core/models/picker.d.ts.map +1 -0
- package/dist/core/models/picker.js +58 -0
- package/dist/core/models/picker.js.map +1 -0
- package/dist/core/models/probe-state.d.ts +21 -0
- package/dist/core/models/probe-state.d.ts.map +1 -0
- package/dist/core/models/probe-state.js +39 -0
- package/dist/core/models/probe-state.js.map +1 -0
- package/dist/core/models/rows.d.ts +21 -0
- package/dist/core/models/rows.d.ts.map +1 -0
- package/dist/core/models/rows.js +57 -0
- package/dist/core/models/rows.js.map +1 -0
- package/dist/core/models/tui-screen.d.ts +21 -0
- package/dist/core/models/tui-screen.d.ts.map +1 -0
- package/dist/core/models/tui-screen.js +56 -0
- package/dist/core/models/tui-screen.js.map +1 -0
- package/dist/core/module-require.d.ts +8 -0
- package/dist/core/module-require.d.ts.map +1 -0
- package/dist/core/module-require.js +14 -0
- package/dist/core/module-require.js.map +1 -0
- package/dist/core/persona.d.ts +10 -0
- package/dist/core/persona.d.ts.map +1 -0
- package/dist/core/persona.js +18 -0
- package/dist/core/persona.js.map +1 -0
- package/dist/core/predicates.d.ts +16 -0
- package/dist/core/predicates.d.ts.map +1 -0
- package/dist/core/predicates.js +32 -0
- package/dist/core/predicates.js.map +1 -0
- package/dist/core/private-output-secrets.d.ts +9 -0
- package/dist/core/private-output-secrets.d.ts.map +1 -0
- package/dist/core/private-output-secrets.js +14 -0
- package/dist/core/private-output-secrets.js.map +1 -0
- package/dist/core/probe-state.d.ts +21 -0
- package/dist/core/probe-state.d.ts.map +1 -0
- package/dist/core/probe-state.js +39 -0
- package/dist/core/probe-state.js.map +1 -0
- package/dist/core/reasoning-effort.d.ts +40 -0
- package/dist/core/reasoning-effort.d.ts.map +1 -0
- package/dist/core/reasoning-effort.js +44 -0
- package/dist/core/reasoning-effort.js.map +1 -0
- package/dist/core/rendered-observers.d.ts +29 -0
- package/dist/core/rendered-observers.d.ts.map +1 -0
- package/dist/core/rendered-observers.js +29 -0
- package/dist/core/rendered-observers.js.map +1 -0
- package/dist/core/screen-facts.d.ts +61 -0
- package/dist/core/screen-facts.d.ts.map +1 -0
- package/dist/core/screen-facts.js +36 -0
- package/dist/core/screen-facts.js.map +1 -0
- package/dist/core/serialize.d.ts +9 -0
- package/dist/core/serialize.d.ts.map +1 -0
- package/dist/core/serialize.js +20 -0
- package/dist/core/serialize.js.map +1 -0
- package/dist/core/session-input-abort.d.ts +10 -0
- package/dist/core/session-input-abort.d.ts.map +1 -0
- package/dist/core/session-input-abort.js +44 -0
- package/dist/core/session-input-abort.js.map +1 -0
- package/dist/core/session-input.d.ts +37 -0
- package/dist/core/session-input.d.ts.map +1 -0
- package/dist/core/session-input.js +154 -0
- package/dist/core/session-input.js.map +1 -0
- package/dist/core/session-wait.d.ts +30 -0
- package/dist/core/session-wait.d.ts.map +1 -0
- package/dist/core/session-wait.js +110 -0
- package/dist/core/session-wait.js.map +1 -0
- package/dist/core/session-warnings.d.ts +20 -0
- package/dist/core/session-warnings.d.ts.map +1 -0
- package/dist/core/session-warnings.js +32 -0
- package/dist/core/session-warnings.js.map +1 -0
- package/dist/core/simple/completeness-oracle.d.ts +31 -0
- package/dist/core/simple/completeness-oracle.d.ts.map +1 -0
- package/dist/core/simple/completeness-oracle.js +51 -0
- package/dist/core/simple/completeness-oracle.js.map +1 -0
- package/dist/core/simple/events.d.ts +34 -0
- package/dist/core/simple/events.d.ts.map +1 -0
- package/dist/core/simple/events.js +56 -0
- package/dist/core/simple/events.js.map +1 -0
- package/dist/core/simple/loop-controls.d.ts +7 -0
- package/dist/core/simple/loop-controls.d.ts.map +1 -0
- package/dist/core/simple/loop-controls.js +7 -0
- package/dist/core/simple/loop-controls.js.map +1 -0
- package/dist/core/simple/resolve-paths.d.ts +23 -0
- package/dist/core/simple/resolve-paths.d.ts.map +1 -0
- package/dist/core/simple/resolve-paths.js +22 -0
- package/dist/core/simple/resolve-paths.js.map +1 -0
- package/dist/core/simple/session.d.ts +78 -0
- package/dist/core/simple/session.d.ts.map +1 -0
- package/dist/core/simple/session.js +155 -0
- package/dist/core/simple/session.js.map +1 -0
- package/dist/core/simple/subscriptions.d.ts +32 -0
- package/dist/core/simple/subscriptions.d.ts.map +1 -0
- package/dist/core/simple/subscriptions.js +63 -0
- package/dist/core/simple/subscriptions.js.map +1 -0
- package/dist/core/simple/turn-acceptance.d.ts +27 -0
- package/dist/core/simple/turn-acceptance.d.ts.map +1 -0
- package/dist/core/simple/turn-acceptance.js +71 -0
- package/dist/core/simple/turn-acceptance.js.map +1 -0
- package/dist/core/simple/turn-boundary.d.ts +42 -0
- package/dist/core/simple/turn-boundary.d.ts.map +1 -0
- package/dist/core/simple/turn-boundary.js +72 -0
- package/dist/core/simple/turn-boundary.js.map +1 -0
- package/dist/core/simple/turn-gate.d.ts +59 -0
- package/dist/core/simple/turn-gate.d.ts.map +1 -0
- package/dist/core/simple/turn-gate.js +194 -0
- package/dist/core/simple/turn-gate.js.map +1 -0
- package/dist/core/simple/turn-queue.d.ts +23 -0
- package/dist/core/simple/turn-queue.d.ts.map +1 -0
- package/dist/core/simple/turn-queue.js +43 -0
- package/dist/core/simple/turn-queue.js.map +1 -0
- package/dist/core/simple/turn-types.d.ts +128 -0
- package/dist/core/simple/turn-types.d.ts.map +1 -0
- package/dist/core/simple/turn-types.js +15 -0
- package/dist/core/simple/turn-types.js.map +1 -0
- package/dist/core/simple/turn.d.ts +37 -0
- package/dist/core/simple/turn.d.ts.map +1 -0
- package/dist/core/simple/turn.js +173 -0
- package/dist/core/simple/turn.js.map +1 -0
- package/dist/core/start-or-resume.d.ts +10 -0
- package/dist/core/start-or-resume.d.ts.map +1 -0
- package/dist/core/start-or-resume.js +24 -0
- package/dist/core/start-or-resume.js.map +1 -0
- package/dist/core/startup/automation.d.ts +54 -0
- package/dist/core/startup/automation.d.ts.map +1 -0
- package/dist/core/startup/automation.js +40 -0
- package/dist/core/startup/automation.js.map +1 -0
- package/dist/core/startup/frame.d.ts +39 -0
- package/dist/core/startup/frame.d.ts.map +1 -0
- package/dist/core/startup/frame.js +60 -0
- package/dist/core/startup/frame.js.map +1 -0
- package/dist/core/startup/write.d.ts +47 -0
- package/dist/core/startup/write.d.ts.map +1 -0
- package/dist/core/startup/write.js +73 -0
- package/dist/core/startup/write.js.map +1 -0
- package/dist/core/startup-automation.d.ts +54 -0
- package/dist/core/startup-automation.d.ts.map +1 -0
- package/dist/core/startup-automation.js +40 -0
- package/dist/core/startup-automation.js.map +1 -0
- package/dist/core/startup-frame.d.ts +39 -0
- package/dist/core/startup-frame.d.ts.map +1 -0
- package/dist/core/startup-frame.js +60 -0
- package/dist/core/startup-frame.js.map +1 -0
- package/dist/core/startup-write.d.ts +47 -0
- package/dist/core/startup-write.d.ts.map +1 -0
- package/dist/core/startup-write.js +73 -0
- package/dist/core/startup-write.js.map +1 -0
- package/dist/core/status-categories.d.ts +21 -0
- package/dist/core/status-categories.d.ts.map +1 -0
- package/dist/core/status-categories.js +20 -0
- package/dist/core/status-categories.js.map +1 -0
- package/dist/core/terminal-options.d.ts +39 -0
- package/dist/core/terminal-options.d.ts.map +1 -0
- package/dist/core/terminal-options.js +114 -0
- package/dist/core/terminal-options.js.map +1 -0
- package/dist/core/terminal-replay.d.ts +32 -0
- package/dist/core/terminal-replay.d.ts.map +1 -0
- package/dist/core/terminal-replay.js +69 -0
- package/dist/core/terminal-replay.js.map +1 -0
- package/dist/core/transcript/cursor-io.d.ts +21 -0
- package/dist/core/transcript/cursor-io.d.ts.map +1 -0
- package/dist/core/transcript/cursor-io.js +60 -0
- package/dist/core/transcript/cursor-io.js.map +1 -0
- package/dist/core/transcript/cursor.d.ts +49 -0
- package/dist/core/transcript/cursor.d.ts.map +1 -0
- package/dist/core/transcript/cursor.js +100 -0
- package/dist/core/transcript/cursor.js.map +1 -0
- package/dist/core/transcript/drops.d.ts +63 -0
- package/dist/core/transcript/drops.d.ts.map +1 -0
- package/dist/core/transcript/drops.js +86 -0
- package/dist/core/transcript/drops.js.map +1 -0
- package/dist/core/transcript/warning-router.d.ts +28 -0
- package/dist/core/transcript/warning-router.d.ts.map +1 -0
- package/dist/core/transcript/warning-router.js +37 -0
- package/dist/core/transcript/warning-router.js.map +1 -0
- package/dist/core/transcript/warnings.d.ts +14 -0
- package/dist/core/transcript/warnings.d.ts.map +1 -0
- package/dist/core/transcript/warnings.js +41 -0
- package/dist/core/transcript/warnings.js.map +1 -0
- package/dist/core/trust/blocking.d.ts +22 -0
- package/dist/core/trust/blocking.d.ts.map +1 -0
- package/dist/core/trust/blocking.js +38 -0
- package/dist/core/trust/blocking.js.map +1 -0
- package/dist/core/trust/prompts.d.ts +135 -0
- package/dist/core/trust/prompts.d.ts.map +1 -0
- package/dist/core/trust/prompts.js +108 -0
- package/dist/core/trust/prompts.js.map +1 -0
- package/dist/core/trust/responder.d.ts +48 -0
- package/dist/core/trust/responder.d.ts.map +1 -0
- package/dist/core/trust/responder.js +119 -0
- package/dist/core/trust/responder.js.map +1 -0
- package/dist/core/trust-blocking.d.ts +22 -0
- package/dist/core/trust-blocking.d.ts.map +1 -0
- package/dist/core/trust-blocking.js +38 -0
- package/dist/core/trust-blocking.js.map +1 -0
- package/dist/core/trust-prompts.d.ts +135 -0
- package/dist/core/trust-prompts.d.ts.map +1 -0
- package/dist/core/trust-prompts.js +108 -0
- package/dist/core/trust-prompts.js.map +1 -0
- package/dist/core/trust-responder.d.ts +48 -0
- package/dist/core/trust-responder.d.ts.map +1 -0
- package/dist/core/trust-responder.js +119 -0
- package/dist/core/trust-responder.js.map +1 -0
- package/dist/core/tui-screen.d.ts +21 -0
- package/dist/core/tui-screen.d.ts.map +1 -0
- package/dist/core/tui-screen.js +56 -0
- package/dist/core/tui-screen.js.map +1 -0
- package/dist/core/turn-state.d.ts +41 -0
- package/dist/core/turn-state.d.ts.map +1 -0
- package/dist/core/turn-state.js +109 -0
- package/dist/core/turn-state.js.map +1 -0
- package/dist/core/types.d.ts +109 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +6 -0
- package/dist/core/types.js.map +1 -0
- package/dist/core/update-warning.d.ts +25 -0
- package/dist/core/update-warning.d.ts.map +1 -0
- package/dist/core/update-warning.js +33 -0
- package/dist/core/update-warning.js.map +1 -0
- package/dist/core/utf8.d.ts +11 -0
- package/dist/core/utf8.d.ts.map +1 -0
- package/dist/core/utf8.js +27 -0
- package/dist/core/utf8.js.map +1 -0
- package/dist/core/versions.d.ts +11 -0
- package/dist/core/versions.d.ts.map +1 -0
- package/dist/core/versions.js +26 -0
- package/dist/core/versions.js.map +1 -0
- package/dist/core/warning-lifecycle.d.ts +23 -0
- package/dist/core/warning-lifecycle.d.ts.map +1 -0
- package/dist/core/warning-lifecycle.js +6 -0
- package/dist/core/warning-lifecycle.js.map +1 -0
- package/dist/core/warning-reasons.d.ts +62 -0
- package/dist/core/warning-reasons.d.ts.map +1 -0
- package/dist/core/warning-reasons.js +121 -0
- package/dist/core/warning-reasons.js.map +1 -0
- package/dist/core/warnings/index.d.ts +145 -0
- package/dist/core/warnings/index.d.ts.map +1 -0
- package/dist/core/warnings/index.js +12 -0
- package/dist/core/warnings/index.js.map +1 -0
- package/dist/core/warnings/lifecycle.d.ts +23 -0
- package/dist/core/warnings/lifecycle.d.ts.map +1 -0
- package/dist/core/warnings/lifecycle.js +6 -0
- package/dist/core/warnings/lifecycle.js.map +1 -0
- package/dist/core/warnings/reasons.d.ts +62 -0
- package/dist/core/warnings/reasons.d.ts.map +1 -0
- package/dist/core/warnings/reasons.js +121 -0
- package/dist/core/warnings/reasons.js.map +1 -0
- package/dist/core/warnings/session.d.ts +20 -0
- package/dist/core/warnings/session.d.ts.map +1 -0
- package/dist/core/warnings/session.js +32 -0
- package/dist/core/warnings/session.js.map +1 -0
- package/dist/core/warnings/update.d.ts +25 -0
- package/dist/core/warnings/update.d.ts.map +1 -0
- package/dist/core/warnings/update.js +33 -0
- package/dist/core/warnings/update.js.map +1 -0
- package/dist/core/warnings.d.ts +145 -0
- package/dist/core/warnings.d.ts.map +1 -0
- package/dist/core/warnings.js +12 -0
- package/dist/core/warnings.js.map +1 -0
- package/dist/events/emitter.d.ts +19 -0
- package/dist/events/emitter.d.ts.map +1 -0
- package/dist/events/emitter.js +85 -0
- package/dist/events/emitter.js.map +1 -0
- package/dist/index.d.ts +38 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/pty/node.d.ts +17 -0
- package/dist/pty/node.d.ts.map +1 -0
- package/dist/pty/node.js +79 -0
- package/dist/pty/node.js.map +1 -0
- package/dist/pty/types.d.ts +26 -0
- package/dist/pty/types.d.ts.map +1 -0
- package/dist/pty/types.js +6 -0
- package/dist/pty/types.js.map +1 -0
- package/dist/runtime/cleanup-latch.d.ts +27 -0
- package/dist/runtime/cleanup-latch.d.ts.map +1 -0
- package/dist/runtime/cleanup-latch.js +43 -0
- package/dist/runtime/cleanup-latch.js.map +1 -0
- package/dist/runtime/hook-command.d.ts +11 -0
- package/dist/runtime/hook-command.d.ts.map +1 -0
- package/dist/runtime/hook-command.js +14 -0
- package/dist/runtime/hook-command.js.map +1 -0
- package/dist/runtime/initial-ready-advance.d.ts +22 -0
- package/dist/runtime/initial-ready-advance.d.ts.map +1 -0
- package/dist/runtime/initial-ready-advance.js +39 -0
- package/dist/runtime/initial-ready-advance.js.map +1 -0
- package/dist/runtime/initial-ready-fallback.d.ts +12 -0
- package/dist/runtime/initial-ready-fallback.d.ts.map +1 -0
- package/dist/runtime/initial-ready-fallback.js +20 -0
- package/dist/runtime/initial-ready-fallback.js.map +1 -0
- package/dist/runtime/initial-ready.d.ts +49 -0
- package/dist/runtime/initial-ready.d.ts.map +1 -0
- package/dist/runtime/initial-ready.js +81 -0
- package/dist/runtime/initial-ready.js.map +1 -0
- package/dist/runtime/loop-restore.d.ts +10 -0
- package/dist/runtime/loop-restore.d.ts.map +1 -0
- package/dist/runtime/loop-restore.js +26 -0
- package/dist/runtime/loop-restore.js.map +1 -0
- package/dist/runtime/probe.d.ts +11 -0
- package/dist/runtime/probe.d.ts.map +1 -0
- package/dist/runtime/probe.js +120 -0
- package/dist/runtime/probe.js.map +1 -0
- package/dist/runtime/readiness/advance.d.ts +22 -0
- package/dist/runtime/readiness/advance.d.ts.map +1 -0
- package/dist/runtime/readiness/advance.js +39 -0
- package/dist/runtime/readiness/advance.js.map +1 -0
- package/dist/runtime/readiness/initial-ready.d.ts +49 -0
- package/dist/runtime/readiness/initial-ready.d.ts.map +1 -0
- package/dist/runtime/readiness/initial-ready.js +81 -0
- package/dist/runtime/readiness/initial-ready.js.map +1 -0
- package/dist/runtime/reap-tree.d.ts +62 -0
- package/dist/runtime/reap-tree.d.ts.map +1 -0
- package/dist/runtime/reap-tree.js +108 -0
- package/dist/runtime/reap-tree.js.map +1 -0
- package/dist/runtime/seams.d.ts +28 -0
- package/dist/runtime/seams.d.ts.map +1 -0
- package/dist/runtime/seams.js +34 -0
- package/dist/runtime/seams.js.map +1 -0
- package/dist/runtime/session/base.d.ts +48 -0
- package/dist/runtime/session/base.d.ts.map +1 -0
- package/dist/runtime/session/base.js +76 -0
- package/dist/runtime/session/base.js.map +1 -0
- package/dist/runtime/session/commands.d.ts +43 -0
- package/dist/runtime/session/commands.d.ts.map +1 -0
- package/dist/runtime/session/commands.js +52 -0
- package/dist/runtime/session/commands.js.map +1 -0
- package/dist/runtime/session/exit.d.ts +16 -0
- package/dist/runtime/session/exit.d.ts.map +1 -0
- package/dist/runtime/session/exit.js +32 -0
- package/dist/runtime/session/exit.js.map +1 -0
- package/dist/runtime/session/image-attach.d.ts +45 -0
- package/dist/runtime/session/image-attach.d.ts.map +1 -0
- package/dist/runtime/session/image-attach.js +82 -0
- package/dist/runtime/session/image-attach.js.map +1 -0
- package/dist/runtime/session/lifecycle.d.ts +58 -0
- package/dist/runtime/session/lifecycle.d.ts.map +1 -0
- package/dist/runtime/session/lifecycle.js +161 -0
- package/dist/runtime/session/lifecycle.js.map +1 -0
- package/dist/runtime/session/loops.d.ts +32 -0
- package/dist/runtime/session/loops.d.ts.map +1 -0
- package/dist/runtime/session/loops.js +62 -0
- package/dist/runtime/session/loops.js.map +1 -0
- package/dist/runtime/session/readiness.d.ts +18 -0
- package/dist/runtime/session/readiness.d.ts.map +1 -0
- package/dist/runtime/session/readiness.js +22 -0
- package/dist/runtime/session/readiness.js.map +1 -0
- package/dist/runtime/session/reap.d.ts +28 -0
- package/dist/runtime/session/reap.d.ts.map +1 -0
- package/dist/runtime/session/reap.js +51 -0
- package/dist/runtime/session/reap.js.map +1 -0
- package/dist/runtime/session/resize.d.ts +20 -0
- package/dist/runtime/session/resize.d.ts.map +1 -0
- package/dist/runtime/session/resize.js +26 -0
- package/dist/runtime/session/resize.js.map +1 -0
- package/dist/runtime/session/shutdown-binding.d.ts +30 -0
- package/dist/runtime/session/shutdown-binding.d.ts.map +1 -0
- package/dist/runtime/session/shutdown-binding.js +37 -0
- package/dist/runtime/session/shutdown-binding.js.map +1 -0
- package/dist/runtime/session/shutdown.d.ts +60 -0
- package/dist/runtime/session/shutdown.d.ts.map +1 -0
- package/dist/runtime/session/shutdown.js +140 -0
- package/dist/runtime/session/shutdown.js.map +1 -0
- package/dist/runtime/session/status-wiring.d.ts +38 -0
- package/dist/runtime/session/status-wiring.d.ts.map +1 -0
- package/dist/runtime/session/status-wiring.js +41 -0
- package/dist/runtime/session/status-wiring.js.map +1 -0
- package/dist/runtime/session/status.d.ts +7 -0
- package/dist/runtime/session/status.d.ts.map +1 -0
- package/dist/runtime/session/status.js +22 -0
- package/dist/runtime/session/status.js.map +1 -0
- package/dist/runtime/session-base-types.d.ts +36 -0
- package/dist/runtime/session-base-types.d.ts.map +1 -0
- package/dist/runtime/session-base-types.js +14 -0
- package/dist/runtime/session-base-types.js.map +1 -0
- package/dist/runtime/session-base.d.ts +48 -0
- package/dist/runtime/session-base.d.ts.map +1 -0
- package/dist/runtime/session-base.js +76 -0
- package/dist/runtime/session-base.js.map +1 -0
- package/dist/runtime/session-commands.d.ts +43 -0
- package/dist/runtime/session-commands.d.ts.map +1 -0
- package/dist/runtime/session-commands.js +52 -0
- package/dist/runtime/session-commands.js.map +1 -0
- package/dist/runtime/session-exit.d.ts +16 -0
- package/dist/runtime/session-exit.d.ts.map +1 -0
- package/dist/runtime/session-exit.js +32 -0
- package/dist/runtime/session-exit.js.map +1 -0
- package/dist/runtime/session-image-attach.d.ts +45 -0
- package/dist/runtime/session-image-attach.d.ts.map +1 -0
- package/dist/runtime/session-image-attach.js +82 -0
- package/dist/runtime/session-image-attach.js.map +1 -0
- package/dist/runtime/session-lifecycle.d.ts +61 -0
- package/dist/runtime/session-lifecycle.d.ts.map +1 -0
- package/dist/runtime/session-lifecycle.js +164 -0
- package/dist/runtime/session-lifecycle.js.map +1 -0
- package/dist/runtime/session-loops.d.ts +32 -0
- package/dist/runtime/session-loops.d.ts.map +1 -0
- package/dist/runtime/session-loops.js +62 -0
- package/dist/runtime/session-loops.js.map +1 -0
- package/dist/runtime/session-readiness.d.ts +18 -0
- package/dist/runtime/session-readiness.d.ts.map +1 -0
- package/dist/runtime/session-readiness.js +22 -0
- package/dist/runtime/session-readiness.js.map +1 -0
- package/dist/runtime/session-reap.d.ts +28 -0
- package/dist/runtime/session-reap.d.ts.map +1 -0
- package/dist/runtime/session-reap.js +51 -0
- package/dist/runtime/session-reap.js.map +1 -0
- package/dist/runtime/session-resize.d.ts +20 -0
- package/dist/runtime/session-resize.d.ts.map +1 -0
- package/dist/runtime/session-resize.js +26 -0
- package/dist/runtime/session-resize.js.map +1 -0
- package/dist/runtime/session-shutdown-binding.d.ts +30 -0
- package/dist/runtime/session-shutdown-binding.d.ts.map +1 -0
- package/dist/runtime/session-shutdown-binding.js +37 -0
- package/dist/runtime/session-shutdown-binding.js.map +1 -0
- package/dist/runtime/session-shutdown.d.ts +60 -0
- package/dist/runtime/session-shutdown.d.ts.map +1 -0
- package/dist/runtime/session-shutdown.js +140 -0
- package/dist/runtime/session-shutdown.js.map +1 -0
- package/dist/runtime/session-status-wiring.d.ts +38 -0
- package/dist/runtime/session-status-wiring.d.ts.map +1 -0
- package/dist/runtime/session-status-wiring.js +41 -0
- package/dist/runtime/session-status-wiring.js.map +1 -0
- package/dist/runtime/session-status.d.ts +7 -0
- package/dist/runtime/session-status.d.ts.map +1 -0
- package/dist/runtime/session-status.js +22 -0
- package/dist/runtime/session-status.js.map +1 -0
- package/dist/runtime/shell.d.ts +21 -0
- package/dist/runtime/shell.d.ts.map +1 -0
- package/dist/runtime/shell.js +30 -0
- package/dist/runtime/shell.js.map +1 -0
- package/dist/runtime/shutdown/cleanup-latch.d.ts +27 -0
- package/dist/runtime/shutdown/cleanup-latch.d.ts.map +1 -0
- package/dist/runtime/shutdown/cleanup-latch.js +43 -0
- package/dist/runtime/shutdown/cleanup-latch.js.map +1 -0
- package/dist/runtime/shutdown/coordinator.d.ts +57 -0
- package/dist/runtime/shutdown/coordinator.d.ts.map +1 -0
- package/dist/runtime/shutdown/coordinator.js +77 -0
- package/dist/runtime/shutdown/coordinator.js.map +1 -0
- package/dist/runtime/shutdown/reap-tree.d.ts +62 -0
- package/dist/runtime/shutdown/reap-tree.d.ts.map +1 -0
- package/dist/runtime/shutdown/reap-tree.js +108 -0
- package/dist/runtime/shutdown/reap-tree.js.map +1 -0
- package/dist/runtime/shutdown/teardown.d.ts +15 -0
- package/dist/runtime/shutdown/teardown.d.ts.map +1 -0
- package/dist/runtime/shutdown/teardown.js +40 -0
- package/dist/runtime/shutdown/teardown.js.map +1 -0
- package/dist/runtime/shutdown/terminate.d.ts +22 -0
- package/dist/runtime/shutdown/terminate.d.ts.map +1 -0
- package/dist/runtime/shutdown/terminate.js +129 -0
- package/dist/runtime/shutdown/terminate.js.map +1 -0
- package/dist/runtime/shutdown-coordinator.d.ts +57 -0
- package/dist/runtime/shutdown-coordinator.d.ts.map +1 -0
- package/dist/runtime/shutdown-coordinator.js +77 -0
- package/dist/runtime/shutdown-coordinator.js.map +1 -0
- package/dist/runtime/startup/buffer.d.ts +33 -0
- package/dist/runtime/startup/buffer.d.ts.map +1 -0
- package/dist/runtime/startup/buffer.js +53 -0
- package/dist/runtime/startup/buffer.js.map +1 -0
- package/dist/runtime/startup/cleanup.d.ts +43 -0
- package/dist/runtime/startup/cleanup.d.ts.map +1 -0
- package/dist/runtime/startup/cleanup.js +89 -0
- package/dist/runtime/startup/cleanup.js.map +1 -0
- package/dist/runtime/startup/index.d.ts +17 -0
- package/dist/runtime/startup/index.d.ts.map +1 -0
- package/dist/runtime/startup/index.js +47 -0
- package/dist/runtime/startup/index.js.map +1 -0
- package/dist/runtime/startup-buffer.d.ts +33 -0
- package/dist/runtime/startup-buffer.d.ts.map +1 -0
- package/dist/runtime/startup-buffer.js +53 -0
- package/dist/runtime/startup-buffer.js.map +1 -0
- package/dist/runtime/startup-cleanup.d.ts +43 -0
- package/dist/runtime/startup-cleanup.d.ts.map +1 -0
- package/dist/runtime/startup-cleanup.js +89 -0
- package/dist/runtime/startup-cleanup.js.map +1 -0
- package/dist/runtime/startup.d.ts +17 -0
- package/dist/runtime/startup.d.ts.map +1 -0
- package/dist/runtime/startup.js +47 -0
- package/dist/runtime/startup.js.map +1 -0
- package/dist/runtime/status-emit.d.ts +14 -0
- package/dist/runtime/status-emit.d.ts.map +1 -0
- package/dist/runtime/status-emit.js +15 -0
- package/dist/runtime/status-emit.js.map +1 -0
- package/dist/runtime/status-evidence.d.ts +35 -0
- package/dist/runtime/status-evidence.d.ts.map +1 -0
- package/dist/runtime/status-evidence.js +143 -0
- package/dist/runtime/status-evidence.js.map +1 -0
- package/dist/runtime/teardown.d.ts +15 -0
- package/dist/runtime/teardown.d.ts.map +1 -0
- package/dist/runtime/teardown.js +40 -0
- package/dist/runtime/teardown.js.map +1 -0
- package/dist/runtime/terminate.d.ts +22 -0
- package/dist/runtime/terminate.d.ts.map +1 -0
- package/dist/runtime/terminate.js +129 -0
- package/dist/runtime/terminate.js.map +1 -0
- package/dist/runtime/update/lock.d.ts +19 -0
- package/dist/runtime/update/lock.d.ts.map +1 -0
- package/dist/runtime/update/lock.js +184 -0
- package/dist/runtime/update/lock.js.map +1 -0
- package/dist/runtime/update/once.d.ts +40 -0
- package/dist/runtime/update/once.d.ts.map +1 -0
- package/dist/runtime/update/once.js +88 -0
- package/dist/runtime/update/once.js.map +1 -0
- package/dist/runtime/update-lock.d.ts +19 -0
- package/dist/runtime/update-lock.d.ts.map +1 -0
- package/dist/runtime/update-lock.js +183 -0
- package/dist/runtime/update-lock.js.map +1 -0
- package/dist/runtime/update-once.d.ts +40 -0
- package/dist/runtime/update-once.d.ts.map +1 -0
- package/dist/runtime/update-once.js +88 -0
- package/dist/runtime/update-once.js.map +1 -0
- package/dist/state/files.d.ts +20 -0
- package/dist/state/files.d.ts.map +1 -0
- package/dist/state/files.js +78 -0
- package/dist/state/files.js.map +1 -0
- package/dist/state/launch-posture.d.ts +31 -0
- package/dist/state/launch-posture.d.ts.map +1 -0
- package/dist/state/launch-posture.js +41 -0
- package/dist/state/launch-posture.js.map +1 -0
- package/dist/state/loop-store.d.ts +13 -0
- package/dist/state/loop-store.d.ts.map +1 -0
- package/dist/state/loop-store.js +54 -0
- package/dist/state/loop-store.js.map +1 -0
- package/dist/state/private-read.d.ts +20 -0
- package/dist/state/private-read.d.ts.map +1 -0
- package/dist/state/private-read.js +57 -0
- package/dist/state/private-read.js.map +1 -0
- package/dist/state/private-session.d.ts +18 -0
- package/dist/state/private-session.d.ts.map +1 -0
- package/dist/state/private-session.js +98 -0
- package/dist/state/private-session.js.map +1 -0
- package/dist/state/runtime-paths.d.ts +40 -0
- package/dist/state/runtime-paths.d.ts.map +1 -0
- package/dist/state/runtime-paths.js +39 -0
- package/dist/state/runtime-paths.js.map +1 -0
- package/dist/state/socket-home.d.ts +68 -0
- package/dist/state/socket-home.d.ts.map +1 -0
- package/dist/state/socket-home.js +99 -0
- package/dist/state/socket-home.js.map +1 -0
- package/dist/state/store.d.ts +47 -0
- package/dist/state/store.d.ts.map +1 -0
- package/dist/state/store.js +103 -0
- package/dist/state/store.js.map +1 -0
- package/dist/state/validate-loops.d.ts +9 -0
- package/dist/state/validate-loops.d.ts.map +1 -0
- package/dist/state/validate-loops.js +81 -0
- package/dist/state/validate-loops.js.map +1 -0
- package/dist/state/validate-posture.d.ts +15 -0
- package/dist/state/validate-posture.d.ts.map +1 -0
- package/dist/state/validate-posture.js +69 -0
- package/dist/state/validate-posture.js.map +1 -0
- package/dist/state/validate-predicates.d.ts +8 -0
- package/dist/state/validate-predicates.d.ts.map +1 -0
- package/dist/state/validate-predicates.js +8 -0
- package/dist/state/validate-predicates.js.map +1 -0
- package/dist/state/validate.d.ts +16 -0
- package/dist/state/validate.d.ts.map +1 -0
- package/dist/state/validate.js +55 -0
- package/dist/state/validate.js.map +1 -0
- package/dist/terminal/headless.d.ts +30 -0
- package/dist/terminal/headless.d.ts.map +1 -0
- package/dist/terminal/headless.js +132 -0
- package/dist/terminal/headless.js.map +1 -0
- package/docs/api.md +184 -0
- package/docs/cli-behavior.md +416 -0
- package/docs/cli-output.md +124 -0
- package/docs/cli.md +171 -0
- package/docs/design-notes.md +74 -0
- package/docs/embedding.md +82 -0
- package/docs/images.md +67 -0
- package/docs/lifecycle.md +45 -0
- package/docs/login-recovery.md +86 -0
- package/docs/loops.md +58 -0
- package/package.json +83 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime validation for Claude `updatedPermissions` (PermissionUpdate[]).
|
|
3
|
+
*
|
|
4
|
+
* Implements PRD §6.4: a `PermissionRequest` result may return
|
|
5
|
+
* `updatedPermissions`, which is serialized to Claude. Each entry must match one
|
|
6
|
+
* of the documented PermissionUpdate variants (see permissions.ts) rather than
|
|
7
|
+
* merely being an array, so a malformed entry cannot slip through.
|
|
8
|
+
*/
|
|
9
|
+
import { isOneOf, isRecord, optionalString } from "../core/predicates.js";
|
|
10
|
+
import { claudeHookPermissionModes } from "./hook-names.js";
|
|
11
|
+
const destinations = ["session", "localSettings", "projectSettings", "userSettings"];
|
|
12
|
+
const ruleBehaviors = ["allow", "deny", "ask"];
|
|
13
|
+
const updateTypes = [
|
|
14
|
+
"addRules",
|
|
15
|
+
"replaceRules",
|
|
16
|
+
"removeRules",
|
|
17
|
+
"setMode",
|
|
18
|
+
"addDirectories",
|
|
19
|
+
"removeDirectories",
|
|
20
|
+
];
|
|
21
|
+
// Bidirectional exactness guards (see Exact above). Each stops compiling the moment
|
|
22
|
+
// its allowlist and the public union disagree.
|
|
23
|
+
const _destinationsExact = destinations[0];
|
|
24
|
+
const _behaviorsExact = ruleBehaviors[0];
|
|
25
|
+
const _typesExact = updateTypes[0];
|
|
26
|
+
void _destinationsExact;
|
|
27
|
+
void _behaviorsExact;
|
|
28
|
+
void _typesExact;
|
|
29
|
+
export function isPermissionUpdateArray(value) {
|
|
30
|
+
return Array.isArray(value) && value.every(isPermissionUpdate);
|
|
31
|
+
}
|
|
32
|
+
function isPermissionUpdate(value) {
|
|
33
|
+
if (!isRecord(value))
|
|
34
|
+
return false;
|
|
35
|
+
if (!isOneOf(value["destination"], destinations))
|
|
36
|
+
return false;
|
|
37
|
+
const type = value["type"];
|
|
38
|
+
if (type === "addRules" || type === "replaceRules" || type === "removeRules") {
|
|
39
|
+
return isRulesUpdate(value);
|
|
40
|
+
}
|
|
41
|
+
if (type === "setMode")
|
|
42
|
+
return isSetModeUpdate(value);
|
|
43
|
+
if (type === "addDirectories" || type === "removeDirectories")
|
|
44
|
+
return isDirectoriesUpdate(value);
|
|
45
|
+
return false;
|
|
46
|
+
}
|
|
47
|
+
function isRulesUpdate(value) {
|
|
48
|
+
return (keysAllowed(value, ["type", "rules", "behavior", "destination"]) &&
|
|
49
|
+
isOneOf(value["behavior"], ruleBehaviors) &&
|
|
50
|
+
Array.isArray(value["rules"]) &&
|
|
51
|
+
value["rules"].every(isPermissionRule));
|
|
52
|
+
}
|
|
53
|
+
function isSetModeUpdate(value) {
|
|
54
|
+
return (keysAllowed(value, ["type", "mode", "destination"]) &&
|
|
55
|
+
isOneOf(value["mode"], claudeHookPermissionModes));
|
|
56
|
+
}
|
|
57
|
+
function isDirectoriesUpdate(value) {
|
|
58
|
+
return (keysAllowed(value, ["type", "directories", "destination"]) &&
|
|
59
|
+
Array.isArray(value["directories"]) &&
|
|
60
|
+
value["directories"].every((entry) => typeof entry === "string"));
|
|
61
|
+
}
|
|
62
|
+
function isPermissionRule(value) {
|
|
63
|
+
if (!isRecord(value))
|
|
64
|
+
return false;
|
|
65
|
+
return (keysAllowed(value, ["toolName", "ruleContent"]) &&
|
|
66
|
+
typeof value["toolName"] === "string" &&
|
|
67
|
+
optionalString(value["ruleContent"]));
|
|
68
|
+
}
|
|
69
|
+
function keysAllowed(value, allowed) {
|
|
70
|
+
return Object.keys(value).every((key) => allowed.includes(key));
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=validate-permission-update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-permission-update.js","sourceRoot":"","sources":["../../src/claude/validate-permission-update.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime validation for Claude hook handler results.
|
|
3
|
+
* Implements PRD §6.4.
|
|
4
|
+
*/
|
|
5
|
+
import type { ClaudeHookEvent, ClaudeHookEventName, ClaudeHookResult } from "./hooks.ts";
|
|
6
|
+
export declare function isClaudeHookResult(event: ClaudeHookEventName | ClaudeHookEvent, value: unknown): value is ClaudeHookResult;
|
|
7
|
+
//# sourceMappingURL=validate-result.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-result.d.ts","sourceRoot":"","sources":["../../src/claude/validate-result.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAkBzF,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,mBAAmB,GAAG,eAAe,EAC5C,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,gBAAgB,CAuB3B"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime validation for Claude hook handler results.
|
|
3
|
+
* Implements PRD §6.4.
|
|
4
|
+
*/
|
|
5
|
+
import { isOneOf, isRecord, optionalBoolean, optionalString, optionalStringArray, } from "../core/predicates.js";
|
|
6
|
+
import { isPermissionUpdateArray } from "./validate-permission-update.js";
|
|
7
|
+
import { isClaudeToolInputUpdate } from "./validate-tool-update.js";
|
|
8
|
+
const contextResultEvents = new Set(["SessionStart", "Setup", "SubagentStart"]);
|
|
9
|
+
const blockResultEvents = new Set([
|
|
10
|
+
"UserPromptSubmit",
|
|
11
|
+
"UserPromptExpansion",
|
|
12
|
+
"PostToolUse",
|
|
13
|
+
"PostToolUseFailure",
|
|
14
|
+
"PostToolBatch",
|
|
15
|
+
"Stop",
|
|
16
|
+
"SubagentStop",
|
|
17
|
+
"ConfigChange",
|
|
18
|
+
"PreCompact",
|
|
19
|
+
]);
|
|
20
|
+
const continueFalseEvents = new Set(["TeammateIdle", "TaskCreated", "TaskCompleted"]);
|
|
21
|
+
export function isClaudeHookResult(event, value) {
|
|
22
|
+
const eventName = typeof event === "string" ? event : event.hook_event_name;
|
|
23
|
+
const toolName = typeof event === "string" || !("tool_name" in event) || typeof event.tool_name !== "string"
|
|
24
|
+
? undefined
|
|
25
|
+
: event.tool_name;
|
|
26
|
+
if (value === undefined)
|
|
27
|
+
return true;
|
|
28
|
+
if (!isRecord(value))
|
|
29
|
+
return false;
|
|
30
|
+
if ("permissionDecision" in value)
|
|
31
|
+
return isPreToolUseResult(eventName, value, toolName);
|
|
32
|
+
if (eventName === "PreToolUse" && "additionalContext" in value) {
|
|
33
|
+
return isPreToolUseResult(eventName, value, toolName);
|
|
34
|
+
}
|
|
35
|
+
if ("behavior" in value)
|
|
36
|
+
return isPermissionRequestResult(eventName, value, toolName);
|
|
37
|
+
if ("retry" in value)
|
|
38
|
+
return eventName === "PermissionDenied" && value["retry"] === true;
|
|
39
|
+
if ("worktreePath" in value) {
|
|
40
|
+
return eventName === "WorktreeCreate" && typeof value["worktreePath"] === "string";
|
|
41
|
+
}
|
|
42
|
+
if ("action" in value)
|
|
43
|
+
return isElicitationResult(eventName, value);
|
|
44
|
+
if ("decision" in value)
|
|
45
|
+
return isBlockResult(eventName, value);
|
|
46
|
+
if ("continue" in value)
|
|
47
|
+
return isContinueFalseResult(eventName, value);
|
|
48
|
+
if (eventName === "PostToolUse")
|
|
49
|
+
return isPostToolUseResult(value);
|
|
50
|
+
if (!contextResultEvents.has(eventName))
|
|
51
|
+
return false;
|
|
52
|
+
return isContextResult(value);
|
|
53
|
+
}
|
|
54
|
+
function isPreToolUseResult(eventName, value, toolName) {
|
|
55
|
+
if (eventName !== "PreToolUse")
|
|
56
|
+
return false;
|
|
57
|
+
if (!("permissionDecision" in value)) {
|
|
58
|
+
return keysAre(value, ["additionalContext"]) && typeof value["additionalContext"] === "string";
|
|
59
|
+
}
|
|
60
|
+
return (keysAre(value, [
|
|
61
|
+
"permissionDecision",
|
|
62
|
+
"permissionDecisionReason",
|
|
63
|
+
"updatedInput",
|
|
64
|
+
"additionalContext",
|
|
65
|
+
]) &&
|
|
66
|
+
isOneOf(value["permissionDecision"], ["allow", "deny", "ask", "defer"]) &&
|
|
67
|
+
optionalString(value["permissionDecisionReason"]) &&
|
|
68
|
+
optionalString(value["additionalContext"]) &&
|
|
69
|
+
isClaudeToolInputUpdate(toolName, value["updatedInput"]));
|
|
70
|
+
}
|
|
71
|
+
function isPermissionRequestResult(eventName, value, toolName) {
|
|
72
|
+
return (eventName === "PermissionRequest" &&
|
|
73
|
+
keysAre(value, ["behavior", "updatedInput", "updatedPermissions", "message", "interrupt"]) &&
|
|
74
|
+
isOneOf(value["behavior"], ["allow", "deny"]) &&
|
|
75
|
+
optionalString(value["message"]) &&
|
|
76
|
+
optionalBoolean(value["interrupt"]) &&
|
|
77
|
+
optionalPermissionUpdates(value["updatedPermissions"]) &&
|
|
78
|
+
isClaudeToolInputUpdate(toolName, value["updatedInput"]));
|
|
79
|
+
}
|
|
80
|
+
function optionalPermissionUpdates(value) {
|
|
81
|
+
return value === undefined || isPermissionUpdateArray(value);
|
|
82
|
+
}
|
|
83
|
+
function isElicitationResult(eventName, value) {
|
|
84
|
+
return ((eventName === "Elicitation" || eventName === "ElicitationResult") &&
|
|
85
|
+
keysAre(value, ["action", "content"]) &&
|
|
86
|
+
isOneOf(value["action"], ["accept", "decline", "cancel"]) &&
|
|
87
|
+
// `content` is an OPTIONAL non-array record; a string/array/null must fail
|
|
88
|
+
// rather than be serialized as if valid (matches ElicitationResult.content).
|
|
89
|
+
(value["content"] === undefined || isRecord(value["content"])));
|
|
90
|
+
}
|
|
91
|
+
function isBlockResult(eventName, value) {
|
|
92
|
+
return (blockResultEvents.has(eventName) &&
|
|
93
|
+
keysAre(value, ["decision", "reason", "additionalContext"]) &&
|
|
94
|
+
value["decision"] === "block" &&
|
|
95
|
+
typeof value["reason"] === "string" &&
|
|
96
|
+
optionalString(value["additionalContext"]));
|
|
97
|
+
}
|
|
98
|
+
function isContinueFalseResult(eventName, value) {
|
|
99
|
+
return (continueFalseEvents.has(eventName) &&
|
|
100
|
+
keysAre(value, ["continue", "stopReason"]) &&
|
|
101
|
+
value["continue"] === false &&
|
|
102
|
+
optionalString(value["stopReason"]));
|
|
103
|
+
}
|
|
104
|
+
function keysAre(value, allowed) {
|
|
105
|
+
return Object.keys(value).every((key) => allowed.includes(key));
|
|
106
|
+
}
|
|
107
|
+
// Every field is optional, so `{}` is a valid (no-op) result, as it is for context events.
|
|
108
|
+
function isPostToolUseResult(value) {
|
|
109
|
+
return (keysAre(value, ["additionalContext", "updatedToolOutput", "updatedMCPToolOutput"]) &&
|
|
110
|
+
optionalString(value["additionalContext"]));
|
|
111
|
+
}
|
|
112
|
+
function isContextResult(value) {
|
|
113
|
+
return (keysAre(value, ["additionalContext", "initialUserMessage", "watchPaths"]) &&
|
|
114
|
+
optionalString(value["additionalContext"]) &&
|
|
115
|
+
optionalString(value["initialUserMessage"]) &&
|
|
116
|
+
optionalStringArray(value["watchPaths"]));
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=validate-result.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-result.js","sourceRoot":"","sources":["../../src/claude/validate-result.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Field-shape validation tables for Claude hook payloads, built on the shared
|
|
3
|
+
* trust-boundary predicates in core/predicates.ts.
|
|
4
|
+
* Implements PRD §6.4: value TYPES, not merely key names, are validated.
|
|
5
|
+
*/
|
|
6
|
+
export { isRecord, optionalBoolean, optionalNumber, optionalString, optionalStringArray, } from "../core/predicates.ts";
|
|
7
|
+
export type FieldCheck = (value: unknown) => boolean;
|
|
8
|
+
/**
|
|
9
|
+
* A validator table COUPLED to a public tool input `T`: exactly one field check per
|
|
10
|
+
* key of `T` (required, so adding a field to the public type forces a matching check
|
|
11
|
+
* and can't silently pass validation). Declare each table `satisfies FieldChecks<T>`.
|
|
12
|
+
*/
|
|
13
|
+
export type FieldChecks<T> = {
|
|
14
|
+
readonly [K in keyof Required<T>]-?: FieldCheck;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Validates a partial record: every present key must be one of `checks` and its
|
|
18
|
+
* value must pass that field's check. Absent keys pass (partial rewrites and
|
|
19
|
+
* optional fields), unknown keys fail.
|
|
20
|
+
*/
|
|
21
|
+
export declare function partial(value: Readonly<Record<string, unknown>>, checks: Readonly<Record<string, FieldCheck>>): boolean;
|
|
22
|
+
//# sourceMappingURL=validate-shapes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-shapes.d.ts","sourceRoot":"","sources":["../../src/claude/validate-shapes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,QAAQ,EACR,eAAe,EACf,cAAc,EACd,cAAc,EACd,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;AAErD;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAAE,QAAQ,EAAE,CAAC,IAAI,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU;CAAE,CAAC;AAEjF;;;;GAIG;AACH,wBAAgB,OAAO,CACrB,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACxC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,GAC3C,OAAO,CAIT"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Field-shape validation tables for Claude hook payloads, built on the shared
|
|
3
|
+
* trust-boundary predicates in core/predicates.ts.
|
|
4
|
+
* Implements PRD §6.4: value TYPES, not merely key names, are validated.
|
|
5
|
+
*/
|
|
6
|
+
export { isRecord, optionalBoolean, optionalNumber, optionalString, optionalStringArray, } from "../core/predicates.js";
|
|
7
|
+
/**
|
|
8
|
+
* Validates a partial record: every present key must be one of `checks` and its
|
|
9
|
+
* value must pass that field's check. Absent keys pass (partial rewrites and
|
|
10
|
+
* optional fields), unknown keys fail.
|
|
11
|
+
*/
|
|
12
|
+
export function partial(value, checks) {
|
|
13
|
+
return Object.keys(value).every((key) => Object.hasOwn(checks, key) && checks[key](value[key]));
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=validate-shapes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-shapes.js","sourceRoot":"","sources":["../../src/claude/validate-shapes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,QAAQ,EACR,eAAe,EACf,cAAc,EACd,cAAc,EACd,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAW/B;;;;GAIG;AACH,MAAM,UAAU,OAAO,CACrB,KAAwC,EACxC,MAA4C;IAE5C,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAC7B,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAK,MAAM,CAAC,GAAG,CAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAC/E,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime validation for Claude tool input rewrite payloads.
|
|
3
|
+
*
|
|
4
|
+
* Implements PRD §6.4: a returned `updatedInput` MUST be validated against the
|
|
5
|
+
* actual tool input shape for known built-in tools before it is serialized to
|
|
6
|
+
* Claude. `updatedInput` is a partial rewrite, so every documented field is
|
|
7
|
+
* optional, but each present field must match the tool's documented value TYPE
|
|
8
|
+
* (not merely be a permitted key). Unknown/MCP tools accept any record.
|
|
9
|
+
*
|
|
10
|
+
* Each per-tool table is `satisfies FieldChecks<Input>`, so adding a field to the
|
|
11
|
+
* public tool input type forces a matching check here (a missing key fails to
|
|
12
|
+
* compile) — the validator can no longer silently drift from the shape it guards.
|
|
13
|
+
*/
|
|
14
|
+
export declare function isClaudeToolInputUpdate(toolName: string | undefined, value: unknown): boolean;
|
|
15
|
+
//# sourceMappingURL=validate-tool-update.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-tool-update.d.ts","sourceRoot":"","sources":["../../src/claude/validate-tool-update.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AA0BH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAM7F"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime validation for Claude tool input rewrite payloads.
|
|
3
|
+
*
|
|
4
|
+
* Implements PRD §6.4: a returned `updatedInput` MUST be validated against the
|
|
5
|
+
* actual tool input shape for known built-in tools before it is serialized to
|
|
6
|
+
* Claude. `updatedInput` is a partial rewrite, so every documented field is
|
|
7
|
+
* optional, but each present field must match the tool's documented value TYPE
|
|
8
|
+
* (not merely be a permitted key). Unknown/MCP tools accept any record.
|
|
9
|
+
*
|
|
10
|
+
* Each per-tool table is `satisfies FieldChecks<Input>`, so adding a field to the
|
|
11
|
+
* public tool input type forces a matching check here (a missing key fails to
|
|
12
|
+
* compile) — the validator can no longer silently drift from the shape it guards.
|
|
13
|
+
*/
|
|
14
|
+
import { isRecord, optionalBoolean, optionalNumber, optionalString, optionalStringArray, partial, } from "./validate-shapes.js";
|
|
15
|
+
export function isClaudeToolInputUpdate(toolName, value) {
|
|
16
|
+
if (value === undefined)
|
|
17
|
+
return true;
|
|
18
|
+
if (!isRecord(value))
|
|
19
|
+
return false;
|
|
20
|
+
// An unknown/MCP tool (or absent name) has no table, so it accepts any record.
|
|
21
|
+
const checks = toolChecks[toolName ?? ""];
|
|
22
|
+
return checks === undefined ? true : partial(value, checks);
|
|
23
|
+
}
|
|
24
|
+
const agentChecks = {
|
|
25
|
+
prompt: optionalString,
|
|
26
|
+
description: optionalString,
|
|
27
|
+
subagent_type: optionalString,
|
|
28
|
+
model: optionalString,
|
|
29
|
+
};
|
|
30
|
+
const askUserQuestionChecks = {
|
|
31
|
+
questions: optionalQuestions,
|
|
32
|
+
answers: optionalAnswers,
|
|
33
|
+
};
|
|
34
|
+
// Shared by the Bash AND PowerShell tools (same documented BashInput shape).
|
|
35
|
+
const shellChecks = {
|
|
36
|
+
command: optionalString,
|
|
37
|
+
description: optionalString,
|
|
38
|
+
timeout: optionalNumber,
|
|
39
|
+
run_in_background: optionalBoolean,
|
|
40
|
+
};
|
|
41
|
+
const editChecks = {
|
|
42
|
+
file_path: optionalString,
|
|
43
|
+
old_string: optionalString,
|
|
44
|
+
new_string: optionalString,
|
|
45
|
+
replace_all: optionalBoolean,
|
|
46
|
+
};
|
|
47
|
+
const exitPlanModeChecks = {
|
|
48
|
+
allowedPrompts: optionalStringArray,
|
|
49
|
+
plan: optionalString,
|
|
50
|
+
planFilePath: optionalString,
|
|
51
|
+
};
|
|
52
|
+
const globChecks = {
|
|
53
|
+
pattern: optionalString,
|
|
54
|
+
path: optionalString,
|
|
55
|
+
};
|
|
56
|
+
const grepChecks = {
|
|
57
|
+
pattern: optionalString,
|
|
58
|
+
path: optionalString,
|
|
59
|
+
glob: optionalString,
|
|
60
|
+
output_mode: optionalOutputMode,
|
|
61
|
+
"-i": optionalBoolean,
|
|
62
|
+
multiline: optionalBoolean,
|
|
63
|
+
};
|
|
64
|
+
const readChecks = {
|
|
65
|
+
file_path: optionalString,
|
|
66
|
+
offset: optionalNumber,
|
|
67
|
+
limit: optionalNumber,
|
|
68
|
+
};
|
|
69
|
+
const webFetchChecks = {
|
|
70
|
+
url: optionalString,
|
|
71
|
+
prompt: optionalString,
|
|
72
|
+
};
|
|
73
|
+
const webSearchChecks = {
|
|
74
|
+
query: optionalString,
|
|
75
|
+
allowed_domains: optionalStringArray,
|
|
76
|
+
blocked_domains: optionalStringArray,
|
|
77
|
+
};
|
|
78
|
+
const writeChecks = {
|
|
79
|
+
file_path: optionalString,
|
|
80
|
+
content: optionalString,
|
|
81
|
+
};
|
|
82
|
+
/** Maps each known built-in tool name to its field-check table; others accept any record. */
|
|
83
|
+
const toolChecks = {
|
|
84
|
+
Agent: agentChecks,
|
|
85
|
+
AskUserQuestion: askUserQuestionChecks,
|
|
86
|
+
Bash: shellChecks,
|
|
87
|
+
PowerShell: shellChecks,
|
|
88
|
+
Edit: editChecks,
|
|
89
|
+
ExitPlanMode: exitPlanModeChecks,
|
|
90
|
+
Glob: globChecks,
|
|
91
|
+
Grep: grepChecks,
|
|
92
|
+
Read: readChecks,
|
|
93
|
+
WebFetch: webFetchChecks,
|
|
94
|
+
WebSearch: webSearchChecks,
|
|
95
|
+
Write: writeChecks,
|
|
96
|
+
};
|
|
97
|
+
function optionalOutputMode(value) {
|
|
98
|
+
return (value === undefined ||
|
|
99
|
+
value === "content" ||
|
|
100
|
+
value === "files_with_matches" ||
|
|
101
|
+
value === "count");
|
|
102
|
+
}
|
|
103
|
+
function optionalQuestions(value) {
|
|
104
|
+
return value === undefined || (Array.isArray(value) && value.every(isQuestion));
|
|
105
|
+
}
|
|
106
|
+
function isQuestion(value) {
|
|
107
|
+
if (!isRecord(value))
|
|
108
|
+
return false;
|
|
109
|
+
return (typeof value["question"] === "string" &&
|
|
110
|
+
typeof value["header"] === "string" &&
|
|
111
|
+
Array.isArray(value["options"]) &&
|
|
112
|
+
value["options"].every(isQuestionOption) &&
|
|
113
|
+
optionalBoolean(value["multiSelect"]));
|
|
114
|
+
}
|
|
115
|
+
function isQuestionOption(value) {
|
|
116
|
+
return (isRecord(value) && typeof value["label"] === "string" && optionalString(value["description"]));
|
|
117
|
+
}
|
|
118
|
+
function optionalAnswers(value) {
|
|
119
|
+
return (value === undefined ||
|
|
120
|
+
(isRecord(value) && Object.values(value).every((entry) => typeof entry === "string")));
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=validate-tool-update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-tool-update.js","sourceRoot":"","sources":["../../src/claude/validate-tool-update.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Selects the CLI agent, auto-detecting one when no flag, environment variable,
|
|
3
|
+
* or config key chooses it. Implements PRD §12A.1/§12A.4 and C-CLI-03/C-CLI-21:
|
|
4
|
+
* probe `claude` and `codex` concurrently and keep the first, in that order,
|
|
5
|
+
* whose command resolves in the user's login shell — the same resolution the
|
|
6
|
+
* agent PTY launch uses (§4.2) — without running either agent. A probe that
|
|
7
|
+
* cannot run at all is reported as such, not as "no agent installed".
|
|
8
|
+
*/
|
|
9
|
+
import { type SourcedValue } from "./request-sources.ts";
|
|
10
|
+
import { type CliAgent } from "./types.ts";
|
|
11
|
+
/** Detection order: the first agent whose command resolves wins. */
|
|
12
|
+
export declare const agentDetectionOrder: readonly ["claude", "codex"];
|
|
13
|
+
/** Provenance reported for an auto-detected agent (`config effective`, JSON, verbose). */
|
|
14
|
+
export declare const autoDetectedSource = "auto-detected";
|
|
15
|
+
export type AgentDetector = () => Promise<CliAgent>;
|
|
16
|
+
type AgentProbe = (agent: CliAgent) => Promise<boolean>;
|
|
17
|
+
export declare const noAgentFoundMessage: string;
|
|
18
|
+
/**
|
|
19
|
+
* True when the login shell resolves `agent` as a command. Uses the same
|
|
20
|
+
* interactive login shell as the agent PTY so PATH resolution is identical, but
|
|
21
|
+
* asks only `command -v`, so the agent itself never starts (C-CLI-14). A probe
|
|
22
|
+
* that could not run at all (missing or broken shell, probe timeout) is a
|
|
23
|
+
* distinct failure: it says nothing about which agents are installed.
|
|
24
|
+
*/
|
|
25
|
+
export declare function loginShellResolves(agent: CliAgent, shell?: string): Promise<boolean>;
|
|
26
|
+
/**
|
|
27
|
+
* Probes every agent concurrently and returns the first in detection order that
|
|
28
|
+
* `probe` reports available; `no_agent_found` when none is.
|
|
29
|
+
*/
|
|
30
|
+
export declare function detectAvailableAgent(probe?: AgentProbe): Promise<CliAgent>;
|
|
31
|
+
type AgentSelection = {
|
|
32
|
+
readonly flag: string | undefined;
|
|
33
|
+
readonly env: CliAgent | undefined;
|
|
34
|
+
readonly config: SourcedValue<CliAgent>;
|
|
35
|
+
readonly resuming: boolean;
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* Flag > env > config precedence for the agent (C-CLI-14). Without a choice, a
|
|
39
|
+
* new session auto-detects; a resume keeps a placeholder that
|
|
40
|
+
* `finalizeRunRequest` replaces with the stored adapter, so resume never probes.
|
|
41
|
+
*/
|
|
42
|
+
export declare function selectAgent(selection: AgentSelection, detect: AgentDetector): Promise<SourcedValue<string>>;
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=agent-detect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-detect.d.ts","sourceRoot":"","sources":["../../src/cli/agent-detect.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAW,KAAK,YAAY,EAAW,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,KAAK,QAAQ,EAAsB,MAAM,YAAY,CAAC;AAE/D,oEAAoE;AACpE,eAAO,MAAM,mBAAmB,8BAA6D,CAAC;AAE9F,0FAA0F;AAC1F,eAAO,MAAM,kBAAkB,kBAAkB,CAAC;AAElD,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;AACpD,KAAK,UAAU,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAExD,eAAO,MAAM,mBAAmB,QAIgB,CAAC;AAEjD;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,QAAQ,EACf,KAAK,GAAE,MAAoB,GAC1B,OAAO,CAAC,OAAO,CAAC,CAOlB;AAWD;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,GAAE,UAA+B,GACrC,OAAO,CAAC,QAAQ,CAAC,CAKnB;AAED,KAAK,cAAc,GAAG;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,GAAG,EAAE,QAAQ,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,SAAS,EAAE,cAAc,EACzB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAU/B"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Selects the CLI agent, auto-detecting one when no flag, environment variable,
|
|
3
|
+
* or config key chooses it. Implements PRD §12A.1/§12A.4 and C-CLI-03/C-CLI-21:
|
|
4
|
+
* probe `claude` and `codex` concurrently and keep the first, in that order,
|
|
5
|
+
* whose command resolves in the user's login shell — the same resolution the
|
|
6
|
+
* agent PTY launch uses (§4.2) — without running either agent. A probe that
|
|
7
|
+
* cannot run at all is reported as such, not as "no agent installed".
|
|
8
|
+
*/
|
|
9
|
+
import { currentCommandRunner } from "../runtime/seams.js";
|
|
10
|
+
import { probeShellCommand, shellQuote, userShell } from "../runtime/shell.js";
|
|
11
|
+
import { layered, sourced } from "./request-sources.js";
|
|
12
|
+
import { CliValidationError } from "./types.js";
|
|
13
|
+
/** Detection order: the first agent whose command resolves wins. */
|
|
14
|
+
export const agentDetectionOrder = ["claude", "codex"];
|
|
15
|
+
/** Provenance reported for an auto-detected agent (`config effective`, JSON, verbose). */
|
|
16
|
+
export const autoDetectedSource = "auto-detected";
|
|
17
|
+
export const noAgentFoundMessage = "No agent was found: neither `claude` nor `codex` resolves in your login shell. " +
|
|
18
|
+
"Install Claude Code (npm install -g @anthropic-ai/claude-code) or Codex " +
|
|
19
|
+
"(npm install -g @openai/codex), or select one with --agent, ELWOOD_AGENT, " +
|
|
20
|
+
"or `elwood config set agent <claude|codex>`.";
|
|
21
|
+
/**
|
|
22
|
+
* True when the login shell resolves `agent` as a command. Uses the same
|
|
23
|
+
* interactive login shell as the agent PTY so PATH resolution is identical, but
|
|
24
|
+
* asks only `command -v`, so the agent itself never starts (C-CLI-14). A probe
|
|
25
|
+
* that could not run at all (missing or broken shell, probe timeout) is a
|
|
26
|
+
* distinct failure: it says nothing about which agents are installed.
|
|
27
|
+
*/
|
|
28
|
+
export async function loginShellResolves(agent, shell = userShell()) {
|
|
29
|
+
const command = probeShellCommand(`command -v ${shellQuote(agent)}`);
|
|
30
|
+
const result = await currentCommandRunner()(shell, command);
|
|
31
|
+
if (result.error !== undefined) {
|
|
32
|
+
throw new CliValidationError("no_agent_found", probeFailedMessage(shell, result.error));
|
|
33
|
+
}
|
|
34
|
+
return result.status === 0;
|
|
35
|
+
}
|
|
36
|
+
function probeFailedMessage(shell, error) {
|
|
37
|
+
const reason = error.code === undefined ? "did not run" : `failed with ${error.code}`;
|
|
38
|
+
return (`No agent was found because the probe itself failed: login shell ${JSON.stringify(shell)} ` +
|
|
39
|
+
`${reason} while checking for \`claude\` and \`codex\`. Fix the shell, or select an agent ` +
|
|
40
|
+
"with --agent, ELWOOD_AGENT, or `elwood config set agent <claude|codex>`.");
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Probes every agent concurrently and returns the first in detection order that
|
|
44
|
+
* `probe` reports available; `no_agent_found` when none is.
|
|
45
|
+
*/
|
|
46
|
+
export async function detectAvailableAgent(probe = loginShellResolves) {
|
|
47
|
+
const available = await Promise.all(agentDetectionOrder.map((agent) => probe(agent)));
|
|
48
|
+
const found = agentDetectionOrder.find((_agent, index) => available[index] === true);
|
|
49
|
+
if (found === undefined)
|
|
50
|
+
throw new CliValidationError("no_agent_found", noAgentFoundMessage);
|
|
51
|
+
return found;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Flag > env > config precedence for the agent (C-CLI-14). Without a choice, a
|
|
55
|
+
* new session auto-detects; a resume keeps a placeholder that
|
|
56
|
+
* `finalizeRunRequest` replaces with the stored adapter, so resume never probes.
|
|
57
|
+
*/
|
|
58
|
+
export async function selectAgent(selection, detect) {
|
|
59
|
+
const chosen = layered(sourced(selection.flag, "--agent"), sourced(selection.env, "ELWOOD_AGENT"), selection.config, sourced(undefined, autoDetectedSource));
|
|
60
|
+
if (chosen.value !== undefined)
|
|
61
|
+
return chosen;
|
|
62
|
+
if (selection.resuming)
|
|
63
|
+
return sourced("codex", "stored session");
|
|
64
|
+
return sourced(await detect(), autoDetectedSource);
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=agent-detect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-detect.js","sourceRoot":"","sources":["../../src/cli/agent-detect.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,OAAO,EAAqB,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAiB,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE/D,oEAAoE;AACpE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAwC,CAAC;AAE9F,0FAA0F;AAC1F,MAAM,CAAC,MAAM,kBAAkB,GAAG,eAAe,CAAC;AAKlD,MAAM,CAAC,MAAM,mBAAmB,GAC9B,iFAAiF;IACjF,0EAA0E;IAC1E,4EAA4E;IAC5E,8CAA8C,CAAC;AAEjD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAe,EACf,QAAgB,SAAS,EAAE;IAE3B,MAAM,OAAO,GAAG,iBAAiB,CAAC,cAAc,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACrE,MAAM,MAAM,GAAG,MAAM,oBAAoB,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC5D,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa,EAAE,KAA6C;IACtF,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,eAAe,KAAK,CAAC,IAAI,EAAE,CAAC;IACtF,OAAO,CACL,mEAAmE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG;QAC3F,GAAG,MAAM,kFAAkF;QAC3F,0EAA0E,CAC3E,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAAoB,kBAAkB;IAEtC,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtF,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;IACrF,IAAI,KAAK,KAAK,SAAS;QAAE,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,CAAC;IAC7F,OAAO,KAAK,CAAC;AACf,CAAC;AASD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,SAAyB,EACzB,MAAqB;IAErB,MAAM,MAAM,GAAG,OAAO,CACpB,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,EAClC,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,cAAc,CAAC,EACtC,SAAS,CAAC,MAAM,EAChB,OAAO,CAAS,SAAS,EAAE,kBAAkB,CAAC,CAC/C,CAAC;IACF,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IAC9C,IAAI,SAAS,CAAC,QAAQ;QAAE,OAAO,OAAO,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAClE,OAAO,OAAO,CAAC,MAAM,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arg-errors.d.ts","sourceRoot":"","sources":["../../src/cli/arg-errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAS3D"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts Node argument-parser failures into concise, actionable CLI diagnostics.
|
|
3
|
+
* Implements PRD §12A.5 and C-CLI-20.
|
|
4
|
+
*/
|
|
5
|
+
import { longOptions } from "./arg-options.js";
|
|
6
|
+
export function argumentErrorMessage(error) {
|
|
7
|
+
if (!(error instanceof Error))
|
|
8
|
+
return "Could not parse command-line arguments.";
|
|
9
|
+
const code = error.code;
|
|
10
|
+
const match = code === "ERR_PARSE_ARGS_UNKNOWN_OPTION" ? unknownOption(error.message) : undefined;
|
|
11
|
+
if (match === undefined)
|
|
12
|
+
return error.message;
|
|
13
|
+
const suggestion = nearestOption(match);
|
|
14
|
+
return suggestion === undefined
|
|
15
|
+
? `Unknown option '${match}'.`
|
|
16
|
+
: `Unknown option '${match}'. Did you mean '${suggestion}'?`;
|
|
17
|
+
}
|
|
18
|
+
function unknownOption(message) {
|
|
19
|
+
return /Unknown option '([^']+)'/u.exec(message)?.[1];
|
|
20
|
+
}
|
|
21
|
+
function nearestOption(input) {
|
|
22
|
+
if (!input.startsWith("--"))
|
|
23
|
+
return undefined;
|
|
24
|
+
const ranked = longOptions
|
|
25
|
+
.map((option) => ({ option, distance: editDistance(input, option) }))
|
|
26
|
+
.sort((left, right) => left.distance - right.distance);
|
|
27
|
+
const best = ranked[0];
|
|
28
|
+
if (best === undefined || best.distance > 2 || ranked[1]?.distance === best.distance)
|
|
29
|
+
return undefined;
|
|
30
|
+
return best.option;
|
|
31
|
+
}
|
|
32
|
+
function editDistance(left, right) {
|
|
33
|
+
let row = Array.from({ length: right.length + 1 }, (_, index) => index);
|
|
34
|
+
for (let leftIndex = 1; leftIndex <= left.length; leftIndex += 1) {
|
|
35
|
+
const next = [leftIndex];
|
|
36
|
+
for (let rightIndex = 1; rightIndex <= right.length; rightIndex += 1) {
|
|
37
|
+
const substitution = row[rightIndex - 1] + (left[leftIndex - 1] === right[rightIndex - 1] ? 0 : 1);
|
|
38
|
+
next[rightIndex] = Math.min(row[rightIndex] + 1, next[rightIndex - 1] + 1, substitution);
|
|
39
|
+
}
|
|
40
|
+
row = next;
|
|
41
|
+
}
|
|
42
|
+
return row[right.length];
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=arg-errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arg-errors.js","sourceRoot":"","sources":["../../src/cli/arg-errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;QAAE,OAAO,yCAAyC,CAAC;IAChF,MAAM,IAAI,GAAI,KAA6C,CAAC,IAAI,CAAC;IACjE,MAAM,KAAK,GAAG,IAAI,KAAK,+BAA+B,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClG,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC;IAC9C,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACxC,OAAO,UAAU,KAAK,SAAS;QAC7B,CAAC,CAAC,mBAAmB,KAAK,IAAI;QAC9B,CAAC,CAAC,mBAAmB,KAAK,oBAAoB,UAAU,IAAI,CAAC;AACjE,CAAC;AAED,SAAS,aAAa,CAAC,OAAe;IACpC,OAAO,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAC9C,MAAM,MAAM,GAAG,WAAW;SACvB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;SACpE,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACvB,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAC,QAAQ;QAClF,OAAO,SAAS,CAAC;IACnB,OAAO,IAAI,CAAC,MAAM,CAAC;AACrB,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,KAAa;IAC/C,IAAI,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;IACxE,KAAK,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;QACzB,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,IAAI,KAAK,CAAC,MAAM,EAAE,UAAU,IAAI,CAAC,EAAE,CAAC;YACrE,MAAM,YAAY,GAChB,GAAG,CAAC,UAAU,GAAG,CAAC,CAAE,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjF,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAE,GAAG,CAAC,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAE,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC;QAC7F,CAAC;QACD,GAAG,GAAG,IAAI,CAAC;IACb,CAAC;IACD,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,CAAE,CAAC;AAC5B,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One static table for the run command's long options. It drives argument
|
|
3
|
+
* parsing, explicit-flag tracking, flag decoding, and "Did you mean" suggestions,
|
|
4
|
+
* so a new option cannot be registered in one place and forgotten in another.
|
|
5
|
+
* Implements PRD §12A.1/§12A.5 and C-CLI-02/C-CLI-06/C-CLI-20.
|
|
6
|
+
*/
|
|
7
|
+
import type { ParseArgsOptionsConfig } from "node:util";
|
|
8
|
+
import type { RunOptionKey } from "./types.ts";
|
|
9
|
+
export type RunOptionSpec = {
|
|
10
|
+
readonly type: "string";
|
|
11
|
+
/** `RunFlags` field the option sets. */
|
|
12
|
+
readonly key: RunOptionKey;
|
|
13
|
+
readonly short?: string;
|
|
14
|
+
readonly multiple?: true;
|
|
15
|
+
} | {
|
|
16
|
+
readonly type: "boolean";
|
|
17
|
+
readonly key: RunOptionKey;
|
|
18
|
+
/** Value assigned when the option is present; negative flags assign `false`. */
|
|
19
|
+
readonly value: boolean;
|
|
20
|
+
};
|
|
21
|
+
export declare const runOptionTable: Readonly<Record<string, RunOptionSpec>>;
|
|
22
|
+
/** `node:util` parseArgs configuration: every run option plus the two metadata switches. */
|
|
23
|
+
export declare const parseOptions: ParseArgsOptionsConfig;
|
|
24
|
+
/** Every long option the parser accepts, for near-miss suggestions (C-CLI-20). */
|
|
25
|
+
export declare const longOptions: readonly string[];
|
|
26
|
+
//# sourceMappingURL=arg-options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arg-options.d.ts","sourceRoot":"","sources":["../../src/cli/arg-options.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,MAAM,aAAa,GACrB;IACE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,wCAAwC;IACxC,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;CAC1B,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,gFAAgF;IAChF,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB,CAAC;AAEN,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAyBlE,CAAC;AAEF,4FAA4F;AAC5F,eAAO,MAAM,YAAY,EAAE,sBAM1B,CAAC;AAEF,kFAAkF;AAClF,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EAAyD,CAAC"}
|