UNPKG

framework

Version:

The (AI) Framework: turnkey, zero-config AI orchestration that wraps a coding-agent CLI (Claude Code) as a black box and takes you from an idea to a running app. Vite for AI.

34 lines 2.01 kB
/** * Where an agent's turns actually execute — the axis the `Driver` seam used to swallow (D1). * * There were five "drivers": `claude-code`, `codex`, `cloud`, `actions`, `fake`. Two of those are * the same agent in a different place — Claude Code on claude.ai, and Claude Code in a GitHub * Actions runner — so the seam modelled *which agent* and *where it runs* as one dimension. * * The cost was visible in `handsOff`: a **driver property that disabled half an agent's phases**, * because a property of *where* had leaked into the abstraction for *what*. It lives here now, as * a fact about the location, and `Driver` is back to "which CLI do I spawn". * * Node-free on purpose, like `agent-names.ts`: the dashboard, the registry and the store all name * this axis, and none of them should have to reach the driver layer to do it. */ /** Where an agent executes. */ export type AgentLocation = 'local' | 'actions' | 'web'; /** Every location, for validating what arrives from a browser or a config file. */ export declare const AGENT_LOCATIONS: readonly ["local", "actions", "web"]; /** Whether `value` names a location. */ export declare function isAgentLocation(value: unknown): value is AgentLocation; /** * Whether this location hands the task somewhere this machine cannot follow (#1225), making the * first prompt the whole agent. * * Everything an agent would do after that prompt — work the backlog, stay open for messages — would * be reading the driver's own "handed off to <url>" summary as if the agent had written it. That * is what put an unanswerable "Start the next backlog item?" on a dashboard whose agent was * somewhere else entirely. * * True for `web` alone: a cloud session opens its own pull request and never reports back here. * An Actions runner streams its agent's own replies, so it is followed like a local run. */ export declare function isHandsOff(location: AgentLocation | undefined): boolean; //# sourceMappingURL=agent-location.d.ts.map