import { type ScheduleDefinition } from "#public/definitions/schedule.js"; import { type SkillDefinition } from "#public/definitions/skill.js"; import type { InstructionsDefinition } from "#public/definitions/instructions.js"; /** * Lowers authored instructions prompt markdown into the shared public * definition shape. Instructions identity is path-derived, so the lowered * definition never carries a `name`. */ export declare function lowerInstructionsMarkdown(markdown: string): InstructionsDefinition; /** * Optional input for {@link lowerSkillMarkdown}. * * `slug` is the path-derived skill identifier (the directory name for a * skill package, or the filename for a flat skill); it is used only to * derive a sensible default description when the markdown body has none. * Skill identity itself comes from the file path — the lowered definition * never carries a `name`. */ interface LowerSkillMarkdownInput { readonly description?: string; readonly slug?: string; } /** * Lowers authored skill markdown into the shared public definition shape. * * Supports both packaged skill files (`SKILL.md` inside a skill * directory; description comes from frontmatter) and flat skill files * (`.md` next to other skills; description may be derived from * the markdown body). Identity is path-derived, so an authored `name` * frontmatter field is silently ignored — `SKILL.md` files commonly * carry one for compatibility with the broader Agent Skills ecosystem, * and we accept it without using it rather than rejecting the file. */ /** * Lowers an authored schedule markdown file into the shared public * definition shape. The frontmatter must contain `cron`. The body * becomes the schedule's `markdown` (the fire-and-forget prompt the * agent runs when the cron fires). Markdown-form schedules cannot * declare a `run` handler — use the `.ts` form for handler-based * schedules. Schedule identity is path-derived, so the lowered * definition never carries a `name`. */ export declare function lowerScheduleMarkdown(source: string): ScheduleDefinition; export declare function lowerSkillMarkdown(source: string, input?: LowerSkillMarkdownInput): SkillDefinition; export {};