vigiles API reference
    Preparing search index...

    Type Alias AgentSpecInput<P, V, Ok, Err>

    AgentSpecInput: Omit<AgentSpec, "_specType" | "tools" | "purity" | "output"> & {
        output?: OutputContract<Ok, Err>;
        purity?: P;
        tools?: readonly AllowedAt<P, V>[];
    }

    The input to agent()AgentSpec minus the internal _specType, with the tools list constrained by the declared purity and the tool vocabulary V. P is inferred from the literal purity field (const inference), and tools is then typed AllowedAt<P, V>[]:

    • purity: "pure"tools may list only V["readOnly"] tools.
    • purity: "bounded"tools may list V["bounded"] tools (admits Bash).
    • no purity / "dangerously-unrestricted"tools is string[] (open).

    With the open default vocabulary (core agent()) every level widens to string, so any tools compile — backwards-compatible.

    Type Parameters

    Type Declaration

    • Optional Readonlyoutput?: OutputContract<Ok, Err>

      The typed result contract — result(ok, err). Its literal field shapes are captured into the returned TypedAgentSpec so a typed pipe can check them.

    • Optional Readonlypurity?: P
    • Optional Readonlytools?: readonly AllowedAt<P, V>[]