eve
Version:
Filesystem-first framework for durable backend AI agents that run anywhere.
31 lines (30 loc) • 1.57 kB
TypeScript
import type { StandardJSONSchemaV1 } from "#compiled/@standard-schema/spec/index.js";
import type { HeadersValue } from "#client/types.js";
import { type OutboundAuthFn } from "#public/agents/auth.js";
import { type RemoteAgentDefinition, type RemoteAgentUrl } from "#public/definitions/remote-agent.js";
import type { JsonObject } from "#shared/json.js";
/** Runtime transport for one workspace peer. */
export interface WorkspaceAgentTransport {
readonly auth?: OutboundAuthFn;
readonly headers?: HeadersValue;
readonly url: RemoteAgentUrl;
}
/** A workspace peer exposed as one remote subagent. */
export interface WorkspaceAgentDefinition {
/** Overrides the peer agent's description in the parent's tool definition. */
readonly description?: string;
readonly forwardPrincipal?: boolean;
readonly outputSchema?: StandardJSONSchemaV1<unknown, unknown> | JsonObject;
/** Name of the peer workspace member, such as `research`. */
readonly name: string;
/**
* Whether eve exposes this workspace peer to the parent model as a tool.
* Defaults to `true`; `false` keeps it callable from workflow tools.
*/
readonly tool?: boolean;
/** Overrides environment-aware workspace routing and service authentication. */
readonly transport?: WorkspaceAgentTransport;
}
/** Defines one workspace peer as a remote subagent. */
export declare function defineWorkspaceAgent(definition: WorkspaceAgentDefinition): RemoteAgentDefinition;
export declare function workspaceSubagentName(value: unknown): string | undefined;