import type { AgentServiceSandboxToolsOptions } from "../../sandbox/index.js"; import type { RemoteMCPToolSourceConfig, RemoteToolSource } from "../../tool/index.js"; import { type RunAgentServiceMainOptions } from "../service/bootstrap.js"; import type { AgentServiceMcpServerConfig } from "../service/mcp-server-config.js"; import type { AgentVeryfrontMcpServerConfig } from "../types.js"; import { type AgentServiceRuntimeBundle, type StartNodeAgentServiceResult } from "../service/runtime.js"; import type { CreateNodeAgentServiceRuntimeInfrastructureOptions } from "../service/node-runtime-infrastructure.js"; import type { NodeAgentServiceApplicationErrorLifecycle } from "../service/node-sentry.js"; import type { ProjectAgentRuntimeAgentSource } from "../project/agent-runtime.js"; import type { HostedRuntimeSourceIdentity } from "./runtime-source-binding.js"; import type { HostedHostToolPolicy } from "./chat-runtime-tool-assembly.js"; import { buildHostedChildGlobalTools, buildHostedChildToolContext, getDiscoveredHostTools, resolveHostedChildAgentExecutionConfig, resolveHostedChildToolNames, resolveHostedDelegationBinding, resolveMcpServers } from "./cloud-agent-child-tools.js"; import { type NodeVeryfrontCloudAgentServicePreparedExecution } from "./cloud-agent-chat-execution.js"; type InitializeApplicationErrors = () => NodeAgentServiceApplicationErrorLifecycle | Promise; /** Public API contract for node Veryfront Cloud agent service process target. */ export type NodeVeryfrontCloudAgentServiceProcessTarget = NonNullable & NonNullable & { env?: Record; exit?: (code: number) => never | void; }; export type NodeVeryfrontCloudAgentServiceAgentSource = ProjectAgentRuntimeAgentSource; /** Public API contract for node Veryfront Cloud agent service MCP server. */ export type NodeVeryfrontCloudAgentServiceMcpServer = AgentServiceMcpServerConfig; /** Veryfront API MCP server helper. */ export declare function veryfrontApiMcpServer(): AgentServiceMcpServerConfig & AgentVeryfrontMcpServerConfig; /** Veryfront Studio MCP server helper. */ export declare function veryfrontStudioMcpServer(): AgentServiceMcpServerConfig & AgentVeryfrontMcpServerConfig; /** Options accepted by node Veryfront Cloud agent service. */ export type NodeVeryfrontCloudAgentServiceOptions = { /** * Stable service identity used by the control plane and service runtime. * Defaults to VERYFRONT_AGENT_SERVICE_NAME, then the nearest project * package.json or deno.json name, then "veryfront-agent-service". */ serviceName?: string; /** * Default agent served by requests that do not provide an agent id. When * omitted, the service selects the only discovered code or markdown agent. */ agentId?: string; /** * Project/discovery root. Defaults to the process cwd when neither baseDir * nor an entrypoint URL is provided. */ baseDir?: string | URL; projectDir?: string; /** * Convenience URL for deriving baseDir from the entry module location. */ entrypointUrl?: string | URL; /** * Exact immutable source snapshot contained in this service deployment. * Control-plane invocations are rejected when this is omitted or mismatched. * Mutable branch sources are not supported by standalone agent services. */ runtimeSource?: HostedRuntimeSourceIdentity; agentSource?: NodeVeryfrontCloudAgentServiceAgentSource; /** * Remote MCP servers available to the runtime. Defaults to the Veryfront API * MCP server. Pass [] to run without remote MCP tools. */ mcpServers?: readonly NodeVeryfrontCloudAgentServiceMcpServer[]; forwardedConfigNamespace?: string; /** Framework host tools this service deployment authorizes. */ hostToolPolicy?: HostedHostToolPolicy; /** * Deployment-owned remote MCP source composition. * * The selector receives service- and agent-configured sources. A trusted * host that grants a privileged transport must match only exact endpoints * captured from immutable deployment configuration and use * `createRemoteMCPToolSource` for every other source. */ createRemoteToolSource?: (config: RemoteMCPToolSourceConfig) => RemoteToolSource; createBashTool?: AgentServiceSandboxToolsOptions["createBashTool"]; env?: CreateNodeAgentServiceRuntimeInfrastructureOptions["env"]; processTarget?: NodeVeryfrontCloudAgentServiceProcessTarget; drainTimeoutMs?: number; hardShutdownTimeoutMs?: number; signals?: readonly NodeJS.Signals[]; }; /** Options accepted by Veryfront Cloud agent service. */ export type VeryfrontCloudAgentServiceOptions = NodeVeryfrontCloudAgentServiceOptions; /** Options accepted by agent service. */ export type AgentServiceOptions = NodeVeryfrontCloudAgentServiceOptions; /** Public API contract for node Veryfront Cloud agent service prepared execution. */ export type { NodeVeryfrontCloudAgentServicePreparedExecution }; /** Public API contract for agent service prepared execution. */ export type AgentServicePreparedExecution = NodeVeryfrontCloudAgentServicePreparedExecution; /** Public API contract for agent service process target. */ export type AgentServiceProcessTarget = NodeVeryfrontCloudAgentServiceProcessTarget; export { getDiscoveredHostTools }; /** Internal test seams for hosted project-agent materialization. */ export declare const veryfrontCloudAgentServiceInternals: { buildHostedChildGlobalTools: typeof buildHostedChildGlobalTools; buildHostedChildToolContext: typeof buildHostedChildToolContext; resolveHostedDelegationBinding: typeof resolveHostedDelegationBinding; resolveHostedChildAgentExecutionConfig: typeof resolveHostedChildAgentExecutionConfig; resolveHostedChildToolNames: typeof resolveHostedChildToolNames; resolveMcpServers: typeof resolveMcpServers; setInitializeApplicationErrorsForTests(initializeApplicationErrors: InitializeApplicationErrors | undefined): () => void; }; /** Create node Veryfront Cloud agent service runtime. */ export declare function createNodeVeryfrontCloudAgentServiceRuntime(options?: NodeVeryfrontCloudAgentServiceOptions): Promise>; /** Starts node Veryfront Cloud agent service. */ export declare function startNodeVeryfrontCloudAgentService(options?: NodeVeryfrontCloudAgentServiceOptions): Promise>; /** Starts agent service. */ export declare function startAgentService(options?: NodeVeryfrontCloudAgentServiceOptions): Promise; //# sourceMappingURL=veryfront-cloud-agent-service.d.ts.map