import { type CallTemplate } from '@utcp/sdk'; import type { RawManual } from './deployment.js'; /** * The UTCP manual namespace the deployment's own tools register under. Tools * from this manual keep their bare names (`read_file`, not `hexis_read_file`), * so a skill or a habit that names a tool reads the same whether an agent is * connected to the hosted endpoint or to this one. */ export declare const REMOTE_MANUAL_NAME = "hexis"; /** * The deployment's MCP endpoint, as one UTCP manual. * * This is the whole of the "bridge". The hosted endpoint is an MCP server and * UTCP speaks MCP as a transport, so re-exposing every remote tool is a manual * entry rather than a second client implementation — and, more importantly, * every remote tool keeps EXECUTING on the server. That is what keeps vault * secrets and completed OAuth sign-ins working: a `.tool` calling Notion or a * vendor API resolves its `${VAR}`s in the process that holds the client, and * for those tools that process stays the deployment's. */ export declare function remoteManualTemplate(mcpUrl: string, connectionKey: string): CallTemplate; /** * Validate the local-only manuals into call templates, dropping any that fail. * * One malformed `.tool` must not cost the caller their whole toolset, so a * manual that will not validate is logged by name and skipped — the same * isolation the hosted proxy applies, for the same reason. */ export declare function localManualTemplates(manuals: RawManual[], localOnlyNames: ReadonlySet): CallTemplate[]; //# sourceMappingURL=manuals.d.ts.map