UNPKG

@juspay/neurolink

Version:

The pipe layer of an AI nervous system: one interface connecting provider neurons to your application, across three inference types — generate, stream and decide. `decide` returns typed, calibrated judgements from a non-generative model (~400ms, ~$0.00002

36 lines (35 loc) • 1.85 kB
/** * Built-in skill tools. * * Two factories, mirroring the two disclosure levels: * * createSkillTools — instance tools registered once at construction: * list_skills (lightweight catalog) plus the gated skill_create / * skill_update / skill_delete mutation tools. * * createSkillCallTools — per-call tools injected into options.tools by * prepareGenerate/prepareStream (the RAG-tool pattern): use_skill, whose * description embeds the `<available_skills>` listing so the model * decides from context when a skill applies (no mandatory pre-flight * call), and read_skill_resource for on-demand auxiliary files. The * sessionId rides in by closure, so activations pin to the session * without runtime tool-context plumbing. * * The manager is resolved lazily via a resolver callback so tools can be * registered at construction time while the store initializes on first * use (mirrors how retrieve_context resolves conversationMemory lazily). */ import type { SkillCallToolsContext, SkillsManagerLike, SkillToolsOptions, Tool } from "../types/index.js"; /** * Per-call skill tools: use_skill + read_skill_resource. Injected into * options.tools for one generate()/stream() call; same-name entries shadow * any registered tool, so the description always reflects this call's * listing and scope. */ export declare function createSkillCallTools(resolveManager: () => SkillsManagerLike | null, context: SkillCallToolsContext): Record<string, Tool>; /** * Instance skill tools bound to a lazily-resolved manager: list_skills * plus the gated mutation tools. Returns Vercel AI SDK tool() objects * (description + Zod inputSchema + execute) keyed by tool name. */ export declare function createSkillTools(resolveManager: () => SkillsManagerLike | null, options?: SkillToolsOptions): Record<string, Tool>;