/** * synap capability (alias `cap`) — the ONE capability-first root. * * A Capability is a named, installable PACK of what you (and your AI) can do * (e.g. "Google Workspace", "Discord Bot"). Tools = its connection; skills = its * verbs; templates = the catalog. The user only ever lists, adds, and enables a * PACK — never a bare tool or skill (CAPABILITIES-NORTH-STAR.md). * * A capability VERB is a runnable action backed by a skill (verbId = skill name). * `run` is the launcher: it parses arbitrary `--key value` flags into the skill's * `parameters` and POSTs to /capabilities/execute (the agnostic capability door). * * Subcommands: list, add, enable, connect, show, run, test */ export interface CapListOpts { json?: boolean; workspace?: string; } export declare function capabilityList(opts: CapListOpts): Promise; export interface CapAddOpts { workspace?: string; } export declare function capabilityAdd(name: string | undefined, opts: CapAddOpts): Promise; export interface CapEnableOpts { workspace?: string; } export declare function capabilityEnable(name: string | undefined, opts: CapEnableOpts): Promise; export interface CapConnectOpts { workspace?: string; } export declare function capabilityConnect(name: string | undefined, opts: CapConnectOpts): Promise; export interface CapDisconnectOpts { workspace?: string; force?: boolean; } /** * Undo `cap connect`. Accepts a capability name/key OR a raw provider id — the * deprecated `tools disconnect ` forwards here and must keep working * with the provider ids it has always taken. */ export declare function capabilityDisconnect(name: string, opts: CapDisconnectOpts): Promise; export interface CapShowOpts { json?: boolean; workspace?: string; } export declare function capabilityShow(name: string, opts: CapShowOpts): Promise; export interface CapRunOpts { workspace?: string; connection?: string; for?: string; } export declare function capabilityRun(verb: string, params: string[], opts: CapRunOpts): Promise; export interface CapTestOpts { workspace?: string; } export declare function capabilityTest(verb: string, opts: CapTestOpts): Promise; export interface CapCreateOpts { workspace?: string; } /** * Create a full capability from a CapabilityDefinition JSON — a file path OR * piped stdin text. The same `definition` door `POST /capabilities/apply` * accepts, so an authored pack lands with its tools + skills (+ container) just * like a catalog template. The shape mirrors templates/capabilities/*.json. */ export declare function capabilityCreate(file: string | undefined, opts: CapCreateOpts): Promise; interface CapRemoveOpts { podUrl?: string; apiKey?: string; workspace?: string; force?: boolean; } /** * synap cap rm — delete one or more capability CONTAINERS. * * Removes the container + its member_of links only — the underlying tools and * skills are untouched (they may belong to other capabilities). Use this to * clean up stale or duplicate containers (e.g. workspace-scoped leftovers from * an older seed). Accepts either a raw container id (from `synap cap list * --json`) or the capability's display name/key (resolved against the * installed catalog, like every other `cap` subcommand) — consistent with * `add`/`show`/`enable`/`connect`, which all take a friendly name. * * Destructive — prompts for confirmation (like `cap disconnect`) unless * --force is passed, since resolving by name (not just an opaque UUID pasted * from `cap list --json`) makes this much easier to fire off by accident. */ export declare function capabilityRemove(ids: string[], opts: CapRemoveOpts): Promise; export {};