/** * `/herdr` - whether every subagent gets a split, for this session. * * A session preference rather than a per-call argument: the point is to stop * threading `openInHerdr` through every call while a workflow is being * debugged. */ import { detectHerdr, probeHerdr } from "../../src/index.ts"; import type { CommandCtx, PiApi } from "../pi.ts"; /** What `/herdr` needs from the world. Injected so a test answers as a server would. */ export type HerdrDeps = { /** Where we are. Defaults to reading the environment. */ detect?: typeof detectHerdr; /** Asks herdr whether a pane would open. Defaults to the real socket. */ probe?: typeof probeHerdr; }; /** Registers `/herdr`. */ export default function registerHerdrCommand(pi: PiApi): void; /** * `/herdr on|off` - or nothing, to see where it stands. * * It is a session preference, not a per-call argument: the point is to stop * threading `openInHerdr` through every call while debugging a workflow. * * Turning it on **asks herdr**, and says what it answered. Being inside herdr * was the only question this used to ask, and a herdr that refuses every * request looks identical from here: the reporter drops the pane without a * word, because display is an observer. The command is not, so this is where * the refusal gets said. The preference is still set either way - what a user * wants for the session is not herdr's to decide. */ export declare function toggleHerdr(args: string, ctx: CommandCtx, deps?: HerdrDeps): Promise; //# sourceMappingURL=herdr.d.ts.map