import { type PreparedRuntimeSkillProvider, type RuntimeSkillCatalogEntry, type RuntimeSkillEvent } from "../runtime-skills.js"; type JsonRpcId = string | number | null; interface JsonRpcRequest { jsonrpc?: unknown; id?: unknown; method?: unknown; params?: unknown; } interface JsonRpcResponse { jsonrpc: "2.0"; id: JsonRpcId; result?: unknown; error?: { code: number; message: string; }; } export declare const COURSE_SKILL_TOOLS: readonly [{ readonly name: "list_skills"; readonly description: "列出本次激活已授权且版本固定的课程技能。"; readonly inputSchema: { readonly type: "object"; readonly properties: {}; readonly additionalProperties: false; }; }, { readonly name: "load_skill"; readonly description: "遵循已授权的课程技能前,先加载其锁定版本的 SKILL.md。"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly ref: { readonly type: "string"; readonly minLength: 5; readonly maxLength: 240; }; }; readonly required: readonly ["ref"]; readonly additionalProperties: false; }; }, { readonly name: "load_reference"; readonly description: "按相对路径读取本次激活中已加载课程技能的引用文件。"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly ref: { readonly type: "string"; readonly minLength: 5; readonly maxLength: 240; }; readonly path: { readonly type: "string"; readonly minLength: 1; readonly maxLength: 240; }; }; readonly required: readonly ["ref", "path"]; readonly additionalProperties: false; }; }]; export interface CourseSkillsMcpServer { socketPath: string; catalog: RuntimeSkillCatalogEntry[]; markApplied(): Promise; close(): Promise; } export interface CourseSkillsMcpServerOptions { prepared?: PreparedRuntimeSkillProvider; onEvent(event: RuntimeSkillEvent): Promise; /** * Managed Agent Service root. `undefined` auto-detects it; `null` is only for * private same-UID tests/BYOA experiments. */ managedRoot?: string | null; } export declare class CourseSkillsMcpRuntime { private readonly options; private readonly grantsByRef; private readonly loadedSkills; private readonly loadedReferences; private referenceBytes; constructor(options: CourseSkillsMcpServerOptions); emitAppliedEvents(): Promise; handle(request: JsonRpcRequest): Promise; private loadSkill; private loadReference; private requireGrant; private emit; private emitLoadFailed; } export declare function startCourseSkillsMcpServer(options: CourseSkillsMcpServerOptions): Promise; export {};