vigiles API reference
    Preparing search index...

    Interface CompileHookOptions

    Per-harness emit inputs (all optional, default to Claude Code) — the ports the CLI threads in from the resolved adapter. Keeps the core harness-agnostic: core depends only on these interfaces, never an adapter (core ⊄ adapter).

    interface CompileHookOptions {
        dialect?: HarnessDialect;
        gateCommand?: string;
        hookProtocol?: HookProtocol;
        registeredProviders?: readonly string[];
        settings?: SettingsCodec;
    }
    Index

    Properties

    dialect?: HarnessDialect

    Validate hook.on against this harness's hook-event catalog (a typo won't compile).

    gateCommand?: string

    The command the emitted block runs. The compiler adds || exit 2 (a hook that can block) or || exit 0 (a reminder-only hook) at the end; one that is already there is replaced.

    hookProtocol?: HookProtocol

    Matcher style (exact vs anchored regex). Defaults to Claude Code's "exact".

    registeredProviders?: readonly string[]

    Names of registered providers (.vigiles/providers/) a provider() ref may resolve to.

    settings?: SettingsCodec

    Settings ENCODING, from PluginLayout.settings. Absent ⇒ JSON, the backwards-compatible default for a caller that injects no layout.

    It used to be settingsFormat?: "json" | "toml" and renderSettingsBlock branched on it for BOTH the encoding and the entry shape. The shape comes from hookProtocol.registration now, so the two can no longer be chosen independently of each other by accident.