import { SkillDefinition } from '@agentskit/core'; /** Skill for web research that anchors non-trivial claims to source URLs. */ declare const researcher: SkillDefinition; /** Skill for writing and improving production-ready software code. */ declare const coder: SkillDefinition; /** Skill for decomposing complex work into sequenced steps and specialist assignments. */ declare const planner: SkillDefinition; /** Skill for assessing work against its requirements and suggesting concrete improvements. */ declare const critic: SkillDefinition; /** Skill for extracting key points while preserving source nuance and structure. */ declare const summarizer: SkillDefinition; /** Skill for reviewing code changes for correctness, security, performance, and clarity. */ declare const codeReviewer: SkillDefinition; /** Skill for checking pull requests against the AgentsKit manifesto and package conventions. */ declare const prReviewer: SkillDefinition; /** Skill for turning natural-language data questions into parameterized SQL. */ declare const sqlGen: SkillDefinition; /** Skill for answering tabular-data questions with explicit metrics and caveats. */ declare const dataAnalyst: SkillDefinition; /** Source term, forced translation, and optional usage context for a translator skill. */ interface GlossaryEntry { /** The source-language term to look out for. */ term: string; /** The forced translation in the target language. */ translation: string; /** Optional context — when this entry should apply (e.g. "in product UI", "legal docs only"). */ context?: string; } /** * Build a `translator` skill bound to a glossary. Glossary entries take * priority over the model's default translation choice. * * Pass `[]` (or call the bare `translator` export) for the no-glossary * default behavior. * * Glossary content is JSON-encoded inside BEGIN/END delimiters so quotes * and newlines cannot escape the prompt structure. Treat it as data, not * instructions. */ declare function translatorWithGlossary(glossary: GlossaryEntry[]): SkillDefinition; /** Default translator skill — no glossary, idiomatic translation. */ declare const translator: SkillDefinition; /** Skill for investigating relational data with safe read-only queries and plain-language findings. */ declare const sqlAnalyst: SkillDefinition; /** Skill for writing clear, structured technical documentation. */ declare const technicalWriter: SkillDefinition; /** Skill for reviewing code and configuration for security vulnerabilities. */ declare const securityAuditor: SkillDefinition; /** Skill for diagnosing customer issues, resolving them, or escalating them. */ declare const customerSupport: SkillDefinition; /** Skill for general health information that directs users to qualified clinical care. */ declare const healthcareAssistant: SkillDefinition; /** Skill for summarizing clinical notes while preserving relevant facts and uncertainty. */ declare const clinicalNoteSummarizer: SkillDefinition; /** Skill for general financial literacy without personalized investment recommendations. */ declare const financialAdvisor: SkillDefinition; /** Skill for categorizing financial transactions and flagging items that need review. */ declare const transactionTriage: SkillDefinition; /** * Legal-information assistant. Strict rails: information, not advice; * jurisdiction-aware; never drafts a final filing without a licensed * attorney's review. */ /** Skill for jurisdiction-aware legal information with clear advice boundaries. */ declare const legalAssistant: SkillDefinition; /** Skill for explaining contract clauses and identifying points for attorney review. */ declare const contractReviewer: SkillDefinition; /** * Tutor + curriculum-design skills for K-12 / higher-ed assistants. * Defaults to Socratic-method scaffolding rather than direct answers, * with explicit safety rails for minors. */ /** Skill for teaching through Socratic questions, hints, and age-aware safety boundaries. */ declare const tutor: SkillDefinition; /** Skill for designing structured curricula and learning progressions. */ declare const curriculumDesigner: SkillDefinition; /** * Storefront support + merchandising skills for e-commerce agents. */ /** Skill for product recommendations, order lookup, and human escalation of returns. */ declare const storefrontConcierge: SkillDefinition; /** Skill for analyzing and improving e-commerce merchandising decisions. */ declare const merchandisingAnalyst: SkillDefinition; /** * Real-estate skills: listing concierge for buyers + market analyst * for agents. Both refuse fair-housing-prohibited filters. */ /** Skill for helping buyers or renters compare listings and arrange follow-up. */ declare const listingConcierge: SkillDefinition; /** Skill for real-estate agents analyzing local market information and trends. */ declare const marketAnalyst: SkillDefinition; /** * Skill marketplace primitives. `SkillPackage` wraps a * `SkillDefinition` with semver + provenance so a registry can list, * filter, and install skills across versions. */ interface SkillPackage { /** Semver string — validated when published to a registry. */ version: string; /** Publisher identifier (org, user, npm scope). */ publisher?: string; /** ISO timestamp of publication. */ publishedAt?: string; /** Free-form tags for discovery. */ tags?: string[]; /** The actual skill. */ skill: SkillDefinition; } /** Optional filters for listing skill packages in a registry. */ interface SkillRegistryQuery { name?: string; publisher?: string; tag?: string; /** Return only versions matching this semver range. See `matchesRange`. */ versionRange?: string; } /** Publish, query, install, and optionally remove versioned skill packages. */ interface SkillRegistry { publish: (pkg: SkillPackage) => Promise; list: (query?: SkillRegistryQuery) => Promise; /** Latest package matching the (name, versionRange). */ install: (name: string, versionRange?: string) => Promise; /** Remove a published package by name + version. */ unpublish?: (name: string, version: string) => Promise; } /** Public shape stays a 3-tuple even when prerelease/build present. */ declare function parseSemver(version: string): [number, number, number]; /** * Compare two semantic versions, including prerelease precedence. * @param a First version. * @param b Second version. * @returns A negative, zero, or positive number by version order. * @throws SkillError when either version is invalid. */ declare function compareSemver(a: string, b: string): number; /** * Minimal range matcher — supports: * "1.2.3" (exact; build metadata ignored) * "^1.2.3" (npm-compatible caret) * "~1.2.3" (same minor) * ">=1.2.3" (min version) * "*" (any) * * Prerelease candidates are excluded from ^ / ~ / >= unless the range * comparator itself includes a prerelease on the same major.minor.patch. */ declare function matchesRange(version: string, range: string): boolean; /** * Create an in-memory skill registry that validates and clones published skill packages. * Map-based storage is prototype-safe and allows names like `"__proto__"`. * @example * const registry = createSkillRegistry() * await registry.publish({ version: '1.0.0', skill }) * @param initial Packages to validate and preload. * @returns An in-memory skill registry. */ declare function createSkillRegistry(initial?: SkillPackage[]): SkillRegistry; /** Combine skills into one definition, merging their tools, delegates, examples, and activation tools. * @example * const combined = composeSkills(researcher, critic) * * @param skills Skill definitions to combine; at least one is required. * @returns A cloned combined skill definition. * @throws ConfigError when no skills are supplied. */ declare function composeSkills(...skills: SkillDefinition[]): SkillDefinition; /** Public metadata for discovering a built-in skill without its prompt. */ interface SkillMetadata { name: string; description: string; tools: string[]; delegates: string[]; } /** Defensive clones of every built-in skill in catalog order. */ declare function getBuiltinSkills(): SkillDefinition[]; /** Metadata for all built-ins, sorted lexicographically by name. Defensive arrays. */ declare function listSkills(): SkillMetadata[]; export { type GlossaryEntry, type SkillMetadata, type SkillPackage, type SkillRegistry, type SkillRegistryQuery, clinicalNoteSummarizer, codeReviewer, coder, compareSemver, composeSkills, contractReviewer, createSkillRegistry, critic, curriculumDesigner, customerSupport, dataAnalyst, financialAdvisor, getBuiltinSkills, healthcareAssistant, legalAssistant, listSkills, listingConcierge, marketAnalyst, matchesRange, merchandisingAnalyst, parseSemver, planner, prReviewer, researcher, securityAuditor, sqlAnalyst, sqlGen, storefrontConcierge, summarizer, technicalWriter, transactionTriage, translator, translatorWithGlossary, tutor };