/** * SkillKit — The open-source runtime for SKILL.md files * Execute ClawHub's 10,700+ skills with any AI model, in any language, securely. * * @module skillkit * @version 1.0.0 * @license MIT * @author ArtefactForge * @see https://github.com/artefactforge/skillkit */ import { SkillGuard as _SkillGuard } from './guard/index.js'; import type { SecurityReport as _SecurityReport } from './guard/index.js'; import type { SkillExecutionResult as _SkillExecutionResult } from './core/types.js'; import { ToolRegistry as _ToolRegistry } from './tools/index.js'; import { ChannelManager as _ChannelManager } from './channels/index.js'; import { SandboxManager as _SandboxManager } from './sandbox/index.js'; import { Logger as _Logger } from './utils/logger.js'; export { parseSkillFile, parseSkillContent, validateSkill, } from './core/parser.js'; export { SkillRunner, executeSkill, } from './core/runtime.js'; export { ConfigManager, getConfig, initializeConfig, resetConfig, } from './core/config.js'; export { ModelProvider, ThreatLevel, ChannelType, type SkillDefinition, type SkillInput, type SkillOutput, type SkillTool as SkillToolDef, type SkillExample, type ModelRequirements, type ModelConfig, type SecurityReport as CoreSecurityReport, type Threat, type ChannelMessage as CoreChannelMessage, type SkillExecutionResult, type HubSkill, } from './core/types.js'; export { ModelRouter, type ModelConfig as RouterModelConfig, type ModelInstance, type CostEstimate, type SkillRequirements, } from './router/index.js'; export { PROVIDER_REGISTRY, getProvider, getModel, listFreeModels, getModelsByCapability, } from './router/providers.js'; export { SkillGuard, type SecurityReport, type ThreatDetection, type ScanOptions, } from './guard/index.js'; export { MALICIOUS_PATTERNS, getPatternsByCategory, getThreatLevel, type MaliciousPattern, type ThreatCategory, type SeverityLevel, } from './guard/patterns.js'; export { fetchSkill, searchSkills, listPopular, getSkillMetadata, clearCache, type SkillMetadata, type FetchedSkill, type SearchOptions as HubSearchOptions, } from './hub/index.js'; export { installSkill as registryInstallSkill, getInstalled, listInstalled, removeSkill, updateSkill, type InstalledSkill, } from './hub/registry.js'; export { ChannelManager, BaseChannelAdapter, type ChannelAdapter, type ChannelMessage, type ChannelResponse, } from './channels/index.js'; export { WhatsAppAdapter, createWhatsAppAdapter } from './channels/whatsapp.js'; export { TelegramAdapter, createTelegramAdapter } from './channels/telegram.js'; export { DiscordAdapter, createDiscordAdapter } from './channels/discord.js'; export { SlackAdapter, createSlackAdapter } from './channels/slack.js'; export { ToolRegistry, type SkillTool, type ToolDefinition, type ToolCallRequest, type ToolCallResult, } from './tools/index.js'; export { WebSearchTool, WebExtractTool, WebCrawlTool, WebResearchTool, WebMapTool, createWebTools, } from './tools/web-tools.js'; export { nativeSearch, nativeExtract, nativeCrawl, nativeResearch, nativeMap, type SearchResult, type SearchResponse, type ExtractedContent, type ExtractResponse, type CrawlPage, type CrawlResponse, type ResearchSource, type ResearchResponse, type MapResponse, } from './tools/web-engine.js'; export { SkillShield, NetworkPolicyEngine, parseNetworkPolicy, FilesystemJail, parseFilesystemPolicy, RuntimeMonitor, getDefaultMonitorPolicy, AuditTrail, type ShieldConfig, type ShieldReport, type NetworkPolicy, type NetworkViolation, type FilesystemPolicy, type FilesystemViolation, type MonitorPolicy, type RuntimeEvent, type MonitorReport, type AuditEntry, type AuditEventType, } from './shield/index.js'; export { SandboxManager, ProcessSandbox, DockerSandbox, type SandboxType, type SandboxOptions, type SandboxResult, } from './sandbox/index.js'; export { Logger, defaultLogger, type LogLevel } from './utils/logger.js'; export { SkillKitError, ParseError, ModelError, SecurityError, ChannelError, HubError, SandboxError, ConfigError, ToolError, TimeoutError, formatError, formatErrorForCLI, type ErrorCode, type FormattedError, } from './utils/errors.js'; export { t, setLocale, getLocale, getAvailableLocales } from './i18n/index.js'; export declare const VERSION = "1.0.0"; export declare const CODENAME = "ForgeOne"; /** * Main SkillKit facade class * Provides the high-level API for running skills, scanning for security, * and managing the entire lifecycle. * * @example * ```ts * import { SkillKit } from 'skillkit'; * * // Run a skill with DeepSeek (free) * const result = await SkillKit.run('./my-skill.md', { * model: 'deepseek-chat', * provider: 'deepseek', * input: 'Analyze my sales data', * }); * * // Security scan a skill before running * const report = await SkillKit.scan('./untrusted-skill.md'); * if (report.overallStatus === 'APPROVED') { * await SkillKit.run('./untrusted-skill.md'); * } * ``` */ export declare class SkillKit { private static instance; private toolRegistry; private channelManager; private sandboxManager; private logger; private guard; private constructor(); /** Get or create singleton instance */ static getInstance(): SkillKit; /** Access the tool registry */ getTools(): _ToolRegistry; /** Access the channel manager */ getChannels(): _ChannelManager; /** Access the sandbox manager */ getSandbox(): _SandboxManager; /** Access the logger */ getLogger(): _Logger; /** Access SkillGuard security scanner */ getGuard(): _SkillGuard; /** Access SkillGuard security scanner */ getSecurityGuard(): _SkillGuard; /** * Run a SKILL.md file with the specified model and options. * Automatically scans for security threats before execution. * * @param skillPath - Path to SKILL.md file, ClawHub skill ID, or installed skill name * @param options - Execution options (model, provider, input, etc.) * @returns Execution result with output, token usage, and cost estimate */ static run(skillPath: string, options?: { model?: string; provider?: string; input?: string; skipScan?: boolean; stream?: boolean; channel?: string; timeout?: number; verbose?: boolean; }): Promise<_SkillExecutionResult>; /** * Security scan a SKILL.md file. * * @param target - Path to SKILL.md file or raw content string * @returns Full security report with threats, score, and recommendations */ static scan(target: string): Promise<_SecurityReport>; /** * Search ClawHub for skills. * * @param query - Search query * @param options - Search options (limit, safeOnly, etc.) * @returns Array of matching skills from ClawHub */ static search(query: string, options?: { limit?: number; safeOnly?: boolean; }): Promise; /** * Install a skill from ClawHub with automatic security scanning. * * @param skillId - ClawHub skill ID or URL * @param options - Install options * @returns Installation result */ static install(skillId: string, options?: { force?: boolean; skipScan?: boolean; }): Promise<{ name: string; version: string; }>; /** List all installed skills */ static listSkills(): Promise; /** Get available AI tools formatted for Vercel AI SDK */ static getToolsForAI(): Record; /** List registered tools */ static listTools(): Array<{ name: string; description: string; }>; /** List active messaging channels */ static getActiveChannels(): string[]; } /** * Initialize SkillKit with configuration options. * Call this once at startup for optimal setup. * * @example * ```ts * const kit = await initializeSkillKit({ * verbose: true, * toolsToLoad: ['tavily_search', 'file_read'], * }); * ``` */ export declare function initializeSkillKit(config?: { verbose?: boolean; logFile?: boolean; toolsToLoad?: string[]; locale?: string; }): Promise; export declare const skillkit: SkillKit; //# sourceMappingURL=index.d.ts.map