@n8n/agents 0.8.1 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/dist/build.tsbuildinfo +1 -1
  2. package/dist/index.d.ts +10 -2
  3. package/dist/index.js +57 -4
  4. package/dist/index.js.map +1 -1
  5. package/dist/integrations/langsmith.js +28 -2
  6. package/dist/integrations/langsmith.js.map +1 -1
  7. package/dist/runtime/agent-runtime.d.ts +12 -1
  8. package/dist/runtime/agent-runtime.js +243 -119
  9. package/dist/runtime/agent-runtime.js.map +1 -1
  10. package/dist/runtime/episodic-memory-defaults.d.ts +17 -0
  11. package/dist/runtime/episodic-memory-defaults.js +615 -0
  12. package/dist/runtime/episodic-memory-defaults.js.map +1 -0
  13. package/dist/runtime/episodic-memory.d.ts +45 -0
  14. package/dist/runtime/episodic-memory.js +479 -0
  15. package/dist/runtime/episodic-memory.js.map +1 -0
  16. package/dist/runtime/execution-counter.d.ts +9 -0
  17. package/dist/runtime/execution-counter.js +16 -0
  18. package/dist/runtime/execution-counter.js.map +1 -0
  19. package/dist/runtime/fix-tool-call.d.ts +7 -0
  20. package/dist/runtime/fix-tool-call.js +38 -0
  21. package/dist/runtime/fix-tool-call.js.map +1 -0
  22. package/dist/runtime/lazy-ai.d.ts +2 -0
  23. package/dist/runtime/lazy-ai.js +12 -0
  24. package/dist/runtime/lazy-ai.js.map +1 -0
  25. package/dist/runtime/mcp-connection.d.ts +1 -1
  26. package/dist/runtime/mcp-connection.js +71 -16
  27. package/dist/runtime/mcp-connection.js.map +1 -1
  28. package/dist/runtime/memory-lifecycle.d.ts +34 -0
  29. package/dist/runtime/memory-lifecycle.js +63 -0
  30. package/dist/runtime/memory-lifecycle.js.map +1 -0
  31. package/dist/runtime/memory-store.d.ts +22 -7
  32. package/dist/runtime/memory-store.js +240 -50
  33. package/dist/runtime/memory-store.js.map +1 -1
  34. package/dist/runtime/message-list.d.ts +1 -0
  35. package/dist/runtime/message-list.js +5 -0
  36. package/dist/runtime/message-list.js.map +1 -1
  37. package/dist/runtime/messages.js +14 -1
  38. package/dist/runtime/messages.js.map +1 -1
  39. package/dist/runtime/model-factory.d.ts +5 -1
  40. package/dist/runtime/model-factory.js +3 -2
  41. package/dist/runtime/model-factory.js.map +1 -1
  42. package/dist/runtime/observation-log-defaults.js +6 -5
  43. package/dist/runtime/observation-log-defaults.js.map +1 -1
  44. package/dist/runtime/observation-log-observer.d.ts +7 -13
  45. package/dist/runtime/observation-log-observer.js +11 -21
  46. package/dist/runtime/observation-log-observer.js.map +1 -1
  47. package/dist/runtime/observation-log-reflector.d.ts +5 -5
  48. package/dist/runtime/observation-log-reflector.js +9 -21
  49. package/dist/runtime/observation-log-reflector.js.map +1 -1
  50. package/dist/runtime/scoped-memory-task-runner.d.ts +2 -4
  51. package/dist/runtime/scoped-memory-task-runner.js +3 -7
  52. package/dist/runtime/scoped-memory-task-runner.js.map +1 -1
  53. package/dist/runtime/stream.js +11 -1
  54. package/dist/runtime/stream.js.map +1 -1
  55. package/dist/runtime/title-generation.d.ts +5 -2
  56. package/dist/runtime/title-generation.js +7 -3
  57. package/dist/runtime/title-generation.js.map +1 -1
  58. package/dist/runtime/tool-adapter.d.ts +1 -1
  59. package/dist/runtime/tool-adapter.js +5 -4
  60. package/dist/runtime/tool-adapter.js.map +1 -1
  61. package/dist/sdk/agent.d.ts +10 -0
  62. package/dist/sdk/agent.js +77 -11
  63. package/dist/sdk/agent.js.map +1 -1
  64. package/dist/sdk/memory.d.ts +6 -2
  65. package/dist/sdk/memory.js +57 -3
  66. package/dist/sdk/memory.js.map +1 -1
  67. package/dist/sdk/telemetry.d.ts +1 -0
  68. package/dist/sdk/telemetry.js +7 -0
  69. package/dist/sdk/telemetry.js.map +1 -1
  70. package/dist/skills/index.d.ts +6 -0
  71. package/dist/skills/index.js +29 -0
  72. package/dist/skills/index.js.map +1 -0
  73. package/dist/skills/prompt.d.ts +6 -0
  74. package/dist/skills/prompt.js +49 -0
  75. package/dist/skills/prompt.js.map +1 -0
  76. package/dist/skills/registry.d.ts +14 -0
  77. package/dist/skills/registry.js +380 -0
  78. package/dist/skills/registry.js.map +1 -0
  79. package/dist/skills/tools.d.ts +6 -0
  80. package/dist/skills/tools.js +312 -0
  81. package/dist/skills/tools.js.map +1 -0
  82. package/dist/skills/types.d.ts +141 -0
  83. package/dist/skills/types.js +15 -0
  84. package/dist/skills/types.js.map +1 -0
  85. package/dist/skills/validator.d.ts +15 -0
  86. package/dist/skills/validator.js +336 -0
  87. package/dist/skills/validator.js.map +1 -0
  88. package/dist/types/index.d.ts +4 -4
  89. package/dist/types/index.js +1 -3
  90. package/dist/types/index.js.map +1 -1
  91. package/dist/types/runtime/event.d.ts +1 -1
  92. package/dist/types/sdk/agent-builder.d.ts +4 -1
  93. package/dist/types/sdk/agent.d.ts +2 -1
  94. package/dist/types/sdk/memory.d.ts +153 -2
  95. package/dist/types/sdk/observation-log.d.ts +7 -10
  96. package/dist/types/sdk/observation-log.js +0 -9
  97. package/dist/types/sdk/observation-log.js.map +1 -1
  98. package/dist/types/sdk/observation.d.ts +1 -4
  99. package/dist/workspace/tools/execute-command.js +2 -0
  100. package/dist/workspace/tools/execute-command.js.map +1 -1
  101. package/dist/workspace/types.d.ts +1 -0
  102. package/dist/workspace/types.js.map +1 -1
  103. package/package.json +28 -3
@@ -0,0 +1,312 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RUNTIME_SKILL_TOOL_NAMES = void 0;
4
+ exports.createRuntimeSkillTools = createRuntimeSkillTools;
5
+ exports.createListSkillsTool = createListSkillsTool;
6
+ exports.createSkillLoadTool = createSkillLoadTool;
7
+ const zod_1 = require("zod");
8
+ const tool_1 = require("../sdk/tool");
9
+ const types_1 = require("./types");
10
+ const MAX_OUTPUT_BYTES = 64 * 1024;
11
+ const TRUNCATION_FOOTER = '\n\n[... output truncated to 64 KB ...]';
12
+ const SECRET_REDACTION = '[REDACTED]';
13
+ const LINKED_FILE_GROUPS = [
14
+ 'references',
15
+ 'templates',
16
+ 'scripts',
17
+ 'assets',
18
+ 'examples',
19
+ 'other',
20
+ ];
21
+ exports.RUNTIME_SKILL_TOOL_NAMES = new Set([types_1.LIST_SKILLS_TOOL_NAME, types_1.SKILL_LOAD_TOOL_NAME]);
22
+ const skillsListInputSchema = zod_1.z.object({
23
+ category: zod_1.z.string().optional().describe('Optional exact category filter.'),
24
+ });
25
+ const linkedFileSchema = zod_1.z.object({
26
+ path: zod_1.z.string(),
27
+ bytes: zod_1.z.number(),
28
+ sha256: zod_1.z.string(),
29
+ });
30
+ const linkedFilesSchema = zod_1.z.object({
31
+ references: zod_1.z.array(linkedFileSchema),
32
+ templates: zod_1.z.array(linkedFileSchema),
33
+ scripts: zod_1.z.array(linkedFileSchema),
34
+ assets: zod_1.z.array(linkedFileSchema),
35
+ examples: zod_1.z.array(linkedFileSchema),
36
+ other: zod_1.z.array(linkedFileSchema),
37
+ });
38
+ const skillInterfaceSchema = zod_1.z
39
+ .object({
40
+ displayName: zod_1.z.string().optional(),
41
+ shortDescription: zod_1.z.string().optional(),
42
+ defaultPrompt: zod_1.z.string().optional(),
43
+ icon: zod_1.z.string().optional(),
44
+ brandColor: zod_1.z.string().optional(),
45
+ })
46
+ .optional();
47
+ const skillPolicySchema = zod_1.z
48
+ .object({
49
+ allowImplicitInvocation: zod_1.z.boolean().optional(),
50
+ product: zod_1.z.string().optional(),
51
+ })
52
+ .optional();
53
+ const skillDependenciesSchema = zod_1.z
54
+ .object({
55
+ tools: zod_1.z.array(zod_1.z.string()).optional(),
56
+ secrets: zod_1.z.array(zod_1.z.string()).optional(),
57
+ mcpServers: zod_1.z
58
+ .array(zod_1.z.object({
59
+ name: zod_1.z.string(),
60
+ description: zod_1.z.string().optional(),
61
+ transport: zod_1.z.string().optional(),
62
+ url: zod_1.z.string().optional(),
63
+ command: zod_1.z.string().optional(),
64
+ }))
65
+ .optional(),
66
+ })
67
+ .optional();
68
+ const compactSkillSchema = zod_1.z.object({
69
+ name: zod_1.z.string(),
70
+ description: zod_1.z.string(),
71
+ category: zod_1.z.string().optional(),
72
+ path: zod_1.z.string().optional(),
73
+ directory: zod_1.z.string().optional(),
74
+ hash: zod_1.z.string(),
75
+ recommendedTools: zod_1.z.array(zod_1.z.string()).optional(),
76
+ allowedTools: zod_1.z.array(zod_1.z.string()).optional(),
77
+ interface: skillInterfaceSchema,
78
+ policy: skillPolicySchema,
79
+ dependencies: skillDependenciesSchema,
80
+ platforms: zod_1.z.array(zod_1.z.string()).optional(),
81
+ });
82
+ const skillsListOutputSchema = zod_1.z.object({
83
+ success: zod_1.z.boolean(),
84
+ registryHash: zod_1.z.string(),
85
+ count: zod_1.z.number(),
86
+ categories: zod_1.z.array(zod_1.z.string()),
87
+ skills: zod_1.z.array(compactSkillSchema),
88
+ });
89
+ const skillLoadInputSchema = zod_1.z
90
+ .object({
91
+ skillId: zod_1.z.string().min(1).optional().describe('Skill id from list_skills.'),
92
+ name: zod_1.z.string().min(1).optional().describe('Skill name from list_skills.'),
93
+ filePath: zod_1.z
94
+ .string()
95
+ .min(1)
96
+ .optional()
97
+ .describe('Optional linked file path relative to the skill directory.'),
98
+ })
99
+ .refine(({ skillId, name }) => skillId !== undefined || name !== undefined, {
100
+ message: 'Either skillId or name is required.',
101
+ path: ['skillId'],
102
+ });
103
+ const skillLoadOutputSchema = zod_1.z.object({
104
+ ok: zod_1.z.boolean().optional(),
105
+ success: zod_1.z.boolean(),
106
+ skillId: zod_1.z.string().optional(),
107
+ name: zod_1.z.string().optional(),
108
+ description: zod_1.z.string().optional(),
109
+ path: zod_1.z.string().optional(),
110
+ skillDir: zod_1.z.string().optional(),
111
+ hash: zod_1.z.string().optional(),
112
+ category: zod_1.z.string().optional(),
113
+ content: zod_1.z.string().optional(),
114
+ instructions: zod_1.z.string().optional(),
115
+ filePath: zod_1.z.string().optional(),
116
+ bytes: zod_1.z.number().optional(),
117
+ sha256: zod_1.z.string().optional(),
118
+ activation: zod_1.z.string().optional(),
119
+ linkedFiles: linkedFilesSchema.optional(),
120
+ error: zod_1.z.string().optional(),
121
+ availableSkills: zod_1.z.array(zod_1.z.string()).optional(),
122
+ });
123
+ function createRuntimeSkillTools(source) {
124
+ return [createListSkillsTool(source), createSkillLoadTool(source)];
125
+ }
126
+ function createListSkillsTool(source) {
127
+ return new tool_1.Tool(types_1.LIST_SKILLS_TOOL_NAME)
128
+ .description('List installed skills from the registry. Use before loading a skill when you need to discover available domains.')
129
+ .input(skillsListInputSchema)
130
+ .output(skillsListOutputSchema)
131
+ .handler(async ({ category }) => {
132
+ await source.prepare?.();
133
+ const skills = source.registry.skills
134
+ .filter((skill) => !category || skill.category === category)
135
+ .map(compactSkill);
136
+ return await Promise.resolve({
137
+ success: true,
138
+ registryHash: source.registry.skillsHash,
139
+ count: skills.length,
140
+ categories: categoriesFor(source.registry),
141
+ skills,
142
+ });
143
+ })
144
+ .build();
145
+ }
146
+ function createSkillLoadTool(source) {
147
+ return new tool_1.Tool(types_1.SKILL_LOAD_TOOL_NAME)
148
+ .description('Load an installed skill SKILL.md, or a registered linked file by relative filePath.')
149
+ .input(skillLoadInputSchema)
150
+ .output(skillLoadOutputSchema)
151
+ .handler(async ({ skillId, name, filePath }) => {
152
+ await source.prepare?.();
153
+ const skillEntry = findSkillEntry(source.registry, { skillId, name });
154
+ if (!skillEntry) {
155
+ return {
156
+ ok: false,
157
+ success: false,
158
+ error: `Unknown skill: ${skillId ?? name ?? ''}`,
159
+ availableSkills: source.registry.skills.map((entry) => entry.id).slice(0, 20),
160
+ };
161
+ }
162
+ if (filePath !== undefined) {
163
+ const linkedFile = findRegisteredLinkedFile(skillEntry.linkedFiles, filePath);
164
+ if (!linkedFile) {
165
+ return {
166
+ ok: false,
167
+ success: false,
168
+ skillId: skillEntry.id,
169
+ name: skillEntry.name,
170
+ filePath,
171
+ error: `File is not registered for skill ${skillEntry.name}: ${filePath}`,
172
+ linkedFiles: skillEntry.linkedFiles,
173
+ };
174
+ }
175
+ if (!source.loadFile) {
176
+ return {
177
+ ok: false,
178
+ success: false,
179
+ skillId: skillEntry.id,
180
+ name: skillEntry.name,
181
+ filePath,
182
+ error: 'This skill source does not support loading linked files.',
183
+ linkedFiles: skillEntry.linkedFiles,
184
+ };
185
+ }
186
+ const file = await source.loadFile(skillEntry.id, linkedFile.path);
187
+ if (!file) {
188
+ return {
189
+ ok: false,
190
+ success: false,
191
+ skillId: skillEntry.id,
192
+ name: skillEntry.name,
193
+ filePath,
194
+ error: `File is not registered for skill ${skillEntry.name}: ${filePath}`,
195
+ linkedFiles: skillEntry.linkedFiles,
196
+ };
197
+ }
198
+ return {
199
+ ok: true,
200
+ success: true,
201
+ skillId: skillEntry.id,
202
+ name: skillEntry.name,
203
+ path: skillEntry.directory
204
+ ? `${skillEntry.directory}/${linkedFile.path}`
205
+ : linkedFile.path,
206
+ skillDir: skillEntry.directory,
207
+ hash: skillEntry.hash,
208
+ category: skillEntry.category,
209
+ filePath: linkedFile.path,
210
+ content: cap(file.content),
211
+ bytes: file.bytes ?? linkedFile.bytes,
212
+ sha256: file.sha256 ?? linkedFile.sha256,
213
+ };
214
+ }
215
+ const skill = await source.loadSkill(skillEntry.id);
216
+ if (!skill) {
217
+ return {
218
+ ok: false,
219
+ success: false,
220
+ skillId: skillEntry.id,
221
+ name: skillEntry.name,
222
+ error: `Skill "${skillEntry.name}" is not attached to this agent.`,
223
+ availableSkills: source.registry.skills.map((entry) => entry.id).slice(0, 20),
224
+ };
225
+ }
226
+ const content = cap(skill.instructions);
227
+ return {
228
+ ok: true,
229
+ success: true,
230
+ skillId: skillEntry.id,
231
+ name: skillEntry.name,
232
+ description: skill.description,
233
+ path: skillEntry.path ?? skillEntry.sourcePath,
234
+ skillDir: skillEntry.directory,
235
+ hash: skillEntry.hash,
236
+ category: skillEntry.category,
237
+ content,
238
+ instructions: content,
239
+ activation: activationEnvelope(skillEntry),
240
+ linkedFiles: skillEntry.linkedFiles,
241
+ };
242
+ })
243
+ .build();
244
+ }
245
+ function compactSkill(skill) {
246
+ return {
247
+ name: skill.name,
248
+ description: skill.description,
249
+ ...(skill.category ? { category: skill.category } : {}),
250
+ ...(skill.path ? { path: skill.path } : {}),
251
+ ...(skill.directory ? { directory: skill.directory } : {}),
252
+ hash: skill.hash,
253
+ ...(skill.recommendedTools ? { recommendedTools: skill.recommendedTools } : {}),
254
+ ...(skill.allowedTools ? { allowedTools: skill.allowedTools } : {}),
255
+ ...(skill.interface ? { interface: skill.interface } : {}),
256
+ ...(skill.policy ? { policy: skill.policy } : {}),
257
+ ...(skill.dependencies ? { dependencies: skill.dependencies } : {}),
258
+ ...(skill.platforms ? { platforms: skill.platforms } : {}),
259
+ };
260
+ }
261
+ function categoriesFor(registry) {
262
+ return Array.from(new Set(registry.skills.map((skill) => skill.category).filter(isPresentString))).sort();
263
+ }
264
+ function findSkillEntry(registry, input) {
265
+ if (input.skillId) {
266
+ const skillById = registry.skills.find((entry) => entry.id === input.skillId);
267
+ if (skillById)
268
+ return skillById;
269
+ }
270
+ if (input.name) {
271
+ return registry.skills.find((entry) => entry.name === input.name);
272
+ }
273
+ return undefined;
274
+ }
275
+ function activationEnvelope(skill) {
276
+ return [
277
+ `[Skill: ${envelopeValue(skill.name)}]`,
278
+ ...(skill.category ? [`[Skill category: ${envelopeValue(skill.category)}]`] : []),
279
+ ...(skill.directory ? [`[Skill directory: ${envelopeValue(skill.directory)}]`] : []),
280
+ ...((skill.path ?? skill.sourcePath)
281
+ ? [`[Skill path: ${envelopeValue(skill.path ?? skill.sourcePath ?? '')}]`]
282
+ : []),
283
+ `[Skill hash: ${envelopeValue(skill.hash)}]`,
284
+ ].join('\n');
285
+ }
286
+ function findRegisteredLinkedFile(linkedFiles, filePath) {
287
+ for (const group of LINKED_FILE_GROUPS) {
288
+ const linkedFile = linkedFiles[group].find((file) => file.path === filePath);
289
+ if (linkedFile)
290
+ return linkedFile;
291
+ }
292
+ return undefined;
293
+ }
294
+ function envelopeValue(value) {
295
+ return JSON.stringify(value);
296
+ }
297
+ function cap(content) {
298
+ const redacted = redactSecrets(content);
299
+ const bytes = Buffer.from(redacted, 'utf8');
300
+ if (bytes.byteLength <= MAX_OUTPUT_BYTES)
301
+ return redacted;
302
+ return `${bytes.subarray(0, MAX_OUTPUT_BYTES).toString('utf8')}${TRUNCATION_FOOTER}`;
303
+ }
304
+ function redactSecrets(content) {
305
+ return content
306
+ .replace(/\b(authorization)(\s*:\s*Bearer\s+)[^\s"',;]+/gi, `$1$2${SECRET_REDACTION}`)
307
+ .replace(/\b(api[_-]?key|token|password|passwd|secret|credential)(\s*[:=]\s*)(["']?)[^\s"',;]+(\3)/gi, `$1$2$3${SECRET_REDACTION}$4`);
308
+ }
309
+ function isPresentString(value) {
310
+ return typeof value === 'string' && value.length > 0;
311
+ }
312
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/skills/tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,141 @@
1
+ export declare const RUNTIME_SKILL_REGISTRY_SCHEMA_VERSION: 1;
2
+ export declare const RUNTIME_SKILL_FILE_NAME = "SKILL.md";
3
+ export declare const LIST_SKILLS_TOOL_NAME = "list_skills";
4
+ export declare const SKILL_LOAD_TOOL_NAME = "load_skill";
5
+ export declare const RUNTIME_SKILL_LINKED_FILE_GROUPS: readonly ["references", "templates", "scripts", "assets", "examples"];
6
+ export interface RuntimeSkillLinkedFile {
7
+ path: string;
8
+ bytes: number;
9
+ sha256: string;
10
+ }
11
+ export type RuntimeSkillLinkedFileGroup = (typeof RUNTIME_SKILL_LINKED_FILE_GROUPS)[number] | 'other';
12
+ export interface RuntimeSkillLinkedFiles {
13
+ references: RuntimeSkillLinkedFile[];
14
+ templates: RuntimeSkillLinkedFile[];
15
+ scripts: RuntimeSkillLinkedFile[];
16
+ assets: RuntimeSkillLinkedFile[];
17
+ examples: RuntimeSkillLinkedFile[];
18
+ other: RuntimeSkillLinkedFile[];
19
+ }
20
+ export interface RuntimeSkillIndexEntry {
21
+ name: string;
22
+ description: string;
23
+ recommendedTools?: string[];
24
+ }
25
+ export interface RuntimeSkillInterfaceContract {
26
+ displayName?: string;
27
+ shortDescription?: string;
28
+ defaultPrompt?: string;
29
+ icon?: string;
30
+ brandColor?: string;
31
+ }
32
+ export interface RuntimeSkillPolicyContract {
33
+ allowImplicitInvocation?: boolean;
34
+ product?: string;
35
+ }
36
+ export interface RuntimeSkillMcpServerDependency {
37
+ name: string;
38
+ description?: string;
39
+ transport?: string;
40
+ url?: string;
41
+ command?: string;
42
+ }
43
+ export interface RuntimeSkillDependenciesContract {
44
+ tools?: string[];
45
+ secrets?: string[];
46
+ mcpServers?: RuntimeSkillMcpServerDependency[];
47
+ }
48
+ export interface RuntimeSkill extends RuntimeSkillIndexEntry {
49
+ id: string;
50
+ instructions: string;
51
+ sourceName?: string;
52
+ path?: string;
53
+ sourcePath?: string;
54
+ directory?: string;
55
+ sourceDirectory?: string;
56
+ category?: string;
57
+ allowedTools?: string[];
58
+ interface?: RuntimeSkillInterfaceContract;
59
+ policy?: RuntimeSkillPolicyContract;
60
+ dependencies?: RuntimeSkillDependenciesContract;
61
+ version?: string;
62
+ license?: string;
63
+ compatibility?: string;
64
+ platforms?: string[];
65
+ metadata?: Record<string, unknown>;
66
+ linkedFiles?: RuntimeSkillLinkedFiles;
67
+ }
68
+ export interface RuntimeSkillRegistryEntry extends RuntimeSkillIndexEntry {
69
+ id: string;
70
+ hash: string;
71
+ sourceName?: string;
72
+ path?: string;
73
+ sourcePath?: string;
74
+ directory?: string;
75
+ sourceDirectory?: string;
76
+ category?: string;
77
+ allowedTools?: string[];
78
+ interface?: RuntimeSkillInterfaceContract;
79
+ policy?: RuntimeSkillPolicyContract;
80
+ dependencies?: RuntimeSkillDependenciesContract;
81
+ version?: string;
82
+ license?: string;
83
+ compatibility?: string;
84
+ platforms?: string[];
85
+ metadata?: Record<string, unknown>;
86
+ linkedFiles: RuntimeSkillLinkedFiles;
87
+ }
88
+ export interface RuntimeSkillRegistry {
89
+ schemaVersion: typeof RUNTIME_SKILL_REGISTRY_SCHEMA_VERSION;
90
+ skillsHash: string;
91
+ skills: RuntimeSkillRegistryEntry[];
92
+ }
93
+ export interface RuntimeSkillContent extends RuntimeSkillIndexEntry {
94
+ id: string;
95
+ instructions: string;
96
+ sourceName?: string;
97
+ path?: string;
98
+ sourcePath?: string;
99
+ directory?: string;
100
+ sourceDirectory?: string;
101
+ category?: string;
102
+ allowedTools?: string[];
103
+ interface?: RuntimeSkillInterfaceContract;
104
+ policy?: RuntimeSkillPolicyContract;
105
+ dependencies?: RuntimeSkillDependenciesContract;
106
+ version?: string;
107
+ license?: string;
108
+ compatibility?: string;
109
+ platforms?: string[];
110
+ metadata?: Record<string, unknown>;
111
+ linkedFiles?: RuntimeSkillLinkedFiles;
112
+ }
113
+ export type RuntimeSkillLoader = (skillId: string) => Promise<RuntimeSkillContent | null>;
114
+ export interface RuntimeSkillFileContent {
115
+ skillId: string;
116
+ filePath: string;
117
+ content: string;
118
+ bytes?: number;
119
+ sha256?: string;
120
+ }
121
+ export type RuntimeSkillFileLoader = (skillId: string, filePath: string) => Promise<RuntimeSkillFileContent | null>;
122
+ export interface RuntimeSkillSource {
123
+ registry: RuntimeSkillRegistry;
124
+ prepare?: () => Promise<void>;
125
+ loadSkill: RuntimeSkillLoader;
126
+ loadFile?: RuntimeSkillFileLoader;
127
+ }
128
+ export interface RuntimeSkillValidationError {
129
+ code: string;
130
+ message: string;
131
+ path?: string;
132
+ field?: string;
133
+ hint?: string;
134
+ }
135
+ export type RuntimeSkillValidationResult = {
136
+ ok: true;
137
+ skill: RuntimeSkill;
138
+ } | {
139
+ ok: false;
140
+ errors: RuntimeSkillValidationError[];
141
+ };
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RUNTIME_SKILL_LINKED_FILE_GROUPS = exports.SKILL_LOAD_TOOL_NAME = exports.LIST_SKILLS_TOOL_NAME = exports.RUNTIME_SKILL_FILE_NAME = exports.RUNTIME_SKILL_REGISTRY_SCHEMA_VERSION = void 0;
4
+ exports.RUNTIME_SKILL_REGISTRY_SCHEMA_VERSION = 1;
5
+ exports.RUNTIME_SKILL_FILE_NAME = 'SKILL.md';
6
+ exports.LIST_SKILLS_TOOL_NAME = 'list_skills';
7
+ exports.SKILL_LOAD_TOOL_NAME = 'load_skill';
8
+ exports.RUNTIME_SKILL_LINKED_FILE_GROUPS = [
9
+ 'references',
10
+ 'templates',
11
+ 'scripts',
12
+ 'assets',
13
+ 'examples',
14
+ ];
15
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/skills/types.ts"],"names":[],"mappings":";;;AAAa,QAAA,qCAAqC,GAAG,CAAU,CAAC;AAEnD,QAAA,uBAAuB,GAAG,UAAU,CAAC;AAErC,QAAA,qBAAqB,GAAG,aAAa,CAAC;AAEtC,QAAA,oBAAoB,GAAG,YAAY,CAAC;AAEpC,QAAA,gCAAgC,GAAG;IAC/C,YAAY;IACZ,WAAW;IACX,SAAS;IACT,QAAQ;IACR,UAAU;CACD,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { type RuntimeSkill, type RuntimeSkillValidationResult } from './types';
2
+ export declare const RUNTIME_SKILL_NAME_PATTERN: RegExp;
3
+ export interface ParseRuntimeSkillMarkdownOptions {
4
+ id?: string;
5
+ sourceName?: string;
6
+ path?: string;
7
+ sourcePath?: string;
8
+ directory?: string;
9
+ sourceDirectory?: string;
10
+ category?: string;
11
+ metadata?: Record<string, unknown>;
12
+ validateName?: boolean;
13
+ }
14
+ export declare function validateRuntimeSkill(skill: RuntimeSkill): RuntimeSkillValidationResult;
15
+ export declare function parseRuntimeSkillMarkdown(content: string, options?: ParseRuntimeSkillMarkdownOptions): RuntimeSkillValidationResult;