eve
Version:
Filesystem-first framework for durable backend AI agents that run anywhere.
40 lines (39 loc) • 1.78 kB
TypeScript
import type { RegistryCatalogItem } from "#cli/commands/registry.js";
import type { Prompter } from "#setup/prompter.js";
import { type RegistrySessionResult } from "./registry-session.js";
type Item = RegistryCatalogItem;
export interface RegistryFlowDeps {
browseRegistryCatalog: (typeof import("#cli/commands/registry.js"))["browseRegistryCatalog"];
installRegistryItem: (typeof import("#cli/commands/registry.js"))["installRegistryItem"];
detectDeployment: (typeof import("#setup/project-resolution.js"))["detectDeployment"];
runDeployFlow: (typeof import("./deploy.js"))["runDeployFlow"];
}
export declare class RegistryFlowFailedError extends Error {
readonly completed: RegistrySessionResult;
constructor(error: unknown, completed: RegistrySessionResult);
}
/** Searches the catalog and installs one selected item with its required setup. */
export declare function runRegistryFlow(input: {
/** Project root for registry configuration, Vercel state, and deployment. */
appRoot: string;
/** Selected agent project where registry payloads and setup are applied. */
installRoot?: string;
prompter: Prompter;
signal?: AbortSignal;
/** Registry item supplied by `/add <item>`, installed directly. */
initialAddress?: string;
onScreen?: (input: {
screen: "registry_install";
registrySelectedCount?: number;
}) => void;
onItemStart?: (item: Item, index: number, total: number) => void;
/** Gives each installation its own cancellation boundary without ending the batch. */
runItem?<T>(task: (signal?: AbortSignal) => Promise<T>): Promise<T>;
deps?: Partial<RegistryFlowDeps>;
}): Promise<{
kind: "done";
result: RegistrySessionResult;
} | {
kind: "cancelled";
}>;
export {};