/** * Unified Skill Factory * * Function skill (one skill = one tool, flat): * * import { skill } from '@zibby/skills'; * * export const add = skill('add', { * description: 'Add two numbers', * input: { a: 'number', b: 'number' }, * handler: async ({ a, b }) => ({ result: a + b }) * }); * * MCP skill: * * import { skill } from '@zibby/skills'; * * export const linear = skill('linear', { * resolve() { * if (!process.env.LINEAR_API_KEY) return null; * return { command: 'npx', args: ['-y', '@linear/mcp-server'], * env: { LINEAR_API_KEY: process.env.LINEAR_API_KEY } }; * } * }); */ /** * Create and register a skill. * * Function skill: skill(id, { description, input, handler }) * MCP skill: skill(id, { resolve(), serverName?, ... }) * * @param {string} id — Unique skill identifier * @param {SkillConfig} config — Skill definition * @returns {Skill} A registered skill object */ export declare function skill(id: any, config: any): any; export declare const functionSkill: typeof skill;