@mastra/core
Version:
Mastra is a framework for building AI-powered applications and agents with a modern TypeScript stack.
42 lines • 1.93 kB
TypeScript
/**
* Skill Tools — Factory
*
* Creates the built-in skill tools for agents. These tools let the model
* discover and read skill instructions on demand.
*
* Design: stateless. The `skill` tool returns the full skill instructions
* in its tool result — no activation state tracking needed. Instructions
* persist naturally in conversation history. If context gets compacted,
* the model just calls the tool again.
*/
import type { Skill, WorkspaceSkills } from './types.js';
/**
* Create all skill tools for a workspace with skills.
* Returns an empty object if the workspace has no skills.
*
* Tools are added at the Agent level (like workspace tools), not inside
* a processor, to avoid losing tool execute functions on serialization.
*/
export declare function createSkillTools(skills: WorkspaceSkills): {
skill: import("../../tools").Tool<{
name: string;
}, unknown, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "skill", unknown>;
skill_search: import("../../tools").Tool<{
query: string;
skillNames?: string[] | undefined;
topK?: number | undefined;
}, unknown, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "skill_search", unknown>;
skill_read: import("../../tools").Tool<{
skillName: string;
path: string;
startLine?: number | undefined;
endLine?: number | undefined;
}, unknown, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "skill_read", unknown>;
};
/**
* Format a skill into the activation payload: instructions followed by
* any references/scripts/assets listings. Shared between the `skill` tool
* and explicit user activations so both paths produce identical output.
*/
export declare function formatSkillActivation(skill: Skill): string;
//# sourceMappingURL=tools.d.ts.map