SheetXL - v1.0.2
    Preparing search index...

    Interface CollectOptions

    How much the caller is willing to pay for, and what it can answer that the report cannot.

    interface CollectOptions {
        apiCommand?: string;
        includeHost?: boolean;
        license: () => Promise<LicenseSource>;
        offline?: boolean;
        serverCount?: number;
        sessions?: () => Promise<readonly Session[]>;
        surface: Info.Surface;
        workspace?: string;
    }
    Index
    apiCommand?: string

    How the reader types the API lookup where this report is shown.

    Defaults from the surface — sheetxl api for the CLI, api (the tool name) for MCP. Given by a caller that is neither: an interactive session reports through the CLI's collector but spells the command .api, and the report names it to be typed.

    includeHost?: boolean
    license: () => Promise<LicenseSource>

    The engine's license, from the caller that booted it.

    Passed in for the same reason as sessions: the caller owns the engine, this package does not. Required rather than optional — version and the license row have no other source, and a report that fell back to unlicensed would read identically to a real one.

    offline?: boolean

    Skip every network and localhost probe. Nothing is guessed — unreachable checks are omitted.

    serverCount?: number

    How many servers the caller's own MCP client launched for this workspace, counting the caller.

    Passed in rather than probed, for the same reason as sessions: only a running server knows this, and only about its own kind. Servers launched by OTHER client sessions are not counted — each answers only its own agent. Reported ONLY when there is more than one: that is a duplicate registration, whose session ids are split between processes so a create/run pair can straddle them.

    sessions?: () => Promise<readonly Session[]>

    Session enumeration, when the caller already owns it.

    MCP passes its registry — it holds sandboxes the relay knows nothing about. The CLI omits this and the relay probe answers instead, which is why a CLI-only agent can still tell attended from unattended.

    surface: Info.Surface
    workspace?: string

    Directory relative paths resolve against, when the surface has its own notion of one.