import { JSONSchema7 } from 'json-schema'; /** * Skill + Tool Manifest — a serialization format for packaging * AgentsKit skills/tools for distribution. Compatible with MCP * tool descriptors (tools section reuses `inputSchema`), so a * manifest can round-trip through an MCP server without loss. */ declare const MANIFEST_VERSION = "2026-04"; interface ManifestTool { name: string; description?: string; /** JSON Schema for the tool's arguments. Matches MCP `inputSchema`. */ inputSchema?: JSONSchema7; tags?: string[]; category?: string; requiresConfirmation?: boolean; } interface ManifestSkill { name: string; description?: string; /** System prompt template. */ systemPrompt: string; /** Tools this skill expects to be available. */ tools?: string[]; /** Names of other skills this one can delegate to. */ delegates?: string[]; examples?: Array<{ input: string; output: string; }>; } interface Manifest { manifestVersion: typeof MANIFEST_VERSION; name: string; version: string; publisher?: string; homepage?: string; description?: string; tools?: ManifestTool[]; skills?: ManifestSkill[]; /** Free-form metadata (license, repo, compatibility). */ metadata?: Record; } declare function validateManifest(raw: unknown): Manifest; export { MANIFEST_VERSION, type Manifest, type ManifestSkill, type ManifestTool, validateManifest };