@to-skills/core 0.3.0 → 0.4.0

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.
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export type { ExtractedSkill, ExtractedFunction, ExtractedClass, ExtractedType, ExtractedEnum, ExtractedParameter, ExtractedProperty, ExtractedDocument, RenderedSkill, SkillRenderOptions, } from "./types.js";
1
+ export type { ExtractedSkill, ExtractedFunction, ExtractedClass, ExtractedType, ExtractedEnum, ExtractedParameter, ExtractedProperty, ExtractedDocument, RenderedFile, RenderedSkill, SkillRenderOptions, } from "./types.js";
2
2
  export { renderSkills, renderSkill } from "./renderer.js";
3
3
  export { writeSkills } from "./writer.js";
4
4
  export { estimateTokens, truncateToTokenBudget } from "./tokens.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { ExtractedSkill, RenderedSkill, SkillRenderOptions } from "./types.js";
2
- /** Render multiple extracted skills into SKILL.md files */
2
+ /** Render multiple extracted skills into progressive disclosure file sets */
3
3
  export declare function renderSkills(skills: ExtractedSkill[], options?: Partial<SkillRenderOptions>): RenderedSkill[];
4
- /** Render a single extracted skill into a SKILL.md file */
4
+ /** Render a single skill into SKILL.md + references/ */
5
5
  export declare function renderSkill(skill: ExtractedSkill, options?: Partial<SkillRenderOptions>): RenderedSkill;
6
6
  //# sourceMappingURL=renderer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAKd,aAAa,EACb,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAepB,2DAA2D;AAC3D,wBAAgB,YAAY,CAC1B,MAAM,EAAE,cAAc,EAAE,EACxB,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACpC,aAAa,EAAE,CAGjB;AAED,2DAA2D;AAC3D,wBAAgB,WAAW,CACzB,KAAK,EAAE,cAAc,EACrB,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACpC,aAAa,CAsEf"}
1
+ {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAMd,aAAa,EACb,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAepB,6EAA6E;AAC7E,wBAAgB,YAAY,CAC1B,MAAM,EAAE,cAAc,EAAE,EACxB,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACpC,aAAa,EAAE,CAGjB;AAED,wDAAwD;AACxD,wBAAgB,WAAW,CACzB,KAAK,EAAE,cAAc,EACrB,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACpC,aAAa,CAkEf"}
package/dist/renderer.js CHANGED
@@ -9,124 +9,236 @@ const DEFAULT_OPTIONS = {
9
9
  namePrefix: "",
10
10
  license: "",
11
11
  };
12
- /** Render multiple extracted skills into SKILL.md files */
12
+ /** Render multiple extracted skills into progressive disclosure file sets */
13
13
  export function renderSkills(skills, options) {
14
14
  const opts = { ...DEFAULT_OPTIONS, ...options };
15
15
  return skills.map((skill) => renderSkill(skill, opts));
16
16
  }
17
- /** Render a single extracted skill into a SKILL.md file */
17
+ /** Render a single skill into SKILL.md + references/ */
18
18
  export function renderSkill(skill, options) {
19
19
  const opts = { ...DEFAULT_OPTIONS, ...options };
20
20
  const skillName = toSkillName(opts.namePrefix || skill.name);
21
+ const basePath = skillName;
22
+ // --- SKILL.md: lean discovery document ---
23
+ const skillContent = renderSkillMd(skill, skillName, opts);
24
+ // --- references/*.md: detailed API loaded on demand ---
25
+ const references = [];
26
+ if (skill.functions.length > 0) {
27
+ const content = renderFunctionsRef(skill.functions, opts);
28
+ references.push({
29
+ filename: `${basePath}/references/functions.md`,
30
+ content: truncateToTokenBudget(content, opts.maxTokens),
31
+ tokens: estimateTokens(content),
32
+ });
33
+ }
34
+ if (skill.classes.length > 0) {
35
+ const content = renderClassesRef(skill.classes, opts);
36
+ references.push({
37
+ filename: `${basePath}/references/classes.md`,
38
+ content: truncateToTokenBudget(content, opts.maxTokens),
39
+ tokens: estimateTokens(content),
40
+ });
41
+ }
42
+ if (skill.types.length > 0 || skill.enums.length > 0) {
43
+ const content = renderTypesRef(skill.types, skill.enums);
44
+ references.push({
45
+ filename: `${basePath}/references/types.md`,
46
+ content: truncateToTokenBudget(content, opts.maxTokens),
47
+ tokens: estimateTokens(content),
48
+ });
49
+ }
50
+ if (opts.includeExamples && skill.examples.length > 0) {
51
+ const content = "# Examples\n\n" + skill.examples.join("\n\n---\n\n");
52
+ references.push({
53
+ filename: `${basePath}/references/examples.md`,
54
+ content: truncateToTokenBudget(content, opts.maxTokens),
55
+ tokens: estimateTokens(content),
56
+ });
57
+ }
58
+ if (skill.documents && skill.documents.length > 0) {
59
+ for (const doc of skill.documents) {
60
+ const content = `# ${doc.title}\n\n${doc.content}`;
61
+ references.push({
62
+ filename: `${basePath}/references/${toFilename(doc.title)}.md`,
63
+ content: truncateToTokenBudget(content, opts.maxTokens),
64
+ tokens: estimateTokens(content),
65
+ });
66
+ }
67
+ }
68
+ return {
69
+ skill: {
70
+ filename: `${basePath}/SKILL.md`,
71
+ content: skillContent,
72
+ tokens: estimateTokens(skillContent),
73
+ },
74
+ references,
75
+ };
76
+ }
77
+ // ===========================================================================
78
+ // SKILL.md — lean discovery document
79
+ // ===========================================================================
80
+ function renderSkillMd(skill, skillName, opts) {
21
81
  const sections = [];
22
- // Frontmatter — description is truncated and enriched with trigger phrases
82
+ // Frontmatter
23
83
  const description = buildDescription(skill);
24
84
  sections.push(renderFrontmatter(skillName, description, opts.license || skill.license || ""));
25
- // Title
85
+ // Title + overview
26
86
  sections.push(`# ${skill.name}`);
27
- // Overview
28
87
  if (skill.description) {
29
88
  sections.push(skill.description);
30
89
  }
31
- // When to Use — derived from API surface
90
+ // When to Use
32
91
  const whenToUse = renderWhenToUse(skill);
33
92
  if (whenToUse)
34
93
  sections.push(whenToUse);
35
- // Quick Reference — summary of exported surface
94
+ // Quick Reference — just the names, no details
36
95
  const quickRef = renderQuickReference(skill);
37
96
  if (quickRef)
38
97
  sections.push(quickRef);
39
- // Primary API: Functions and Classes first (what agents can call)
40
- if (skill.functions.length > 0) {
41
- sections.push(renderFunctions(skill.functions, opts));
42
- }
43
- if (skill.classes.length > 0) {
44
- sections.push(renderClasses(skill.classes, opts));
45
- }
46
- // Examples (high value before type definitions)
47
- if (opts.includeExamples && skill.examples.length > 0) {
48
- sections.push("## Examples\n\n" + skill.examples.join("\n\n"));
98
+ // Links
99
+ const links = renderLinks(skill);
100
+ if (links)
101
+ sections.push(links);
102
+ return sections.join("\n\n");
103
+ }
104
+ // ===========================================================================
105
+ // Reference filesfull detail loaded on demand
106
+ // ===========================================================================
107
+ function renderFunctionsRef(fns, opts) {
108
+ const lines = ["# Functions\n"];
109
+ for (const fn of fns) {
110
+ lines.push(`## \`${fn.name}\``);
111
+ if (fn.description)
112
+ lines.push(fn.description);
113
+ if (opts.includeSignatures && fn.signature) {
114
+ lines.push("```ts", fn.signature, "```");
115
+ }
116
+ if (fn.parameters.length > 0) {
117
+ lines.push("**Parameters:**");
118
+ for (const p of fn.parameters) {
119
+ const opt = p.optional ? " (optional)" : "";
120
+ const def = p.defaultValue ? ` — default: \`${p.defaultValue}\`` : "";
121
+ lines.push(`- \`${p.name}: ${p.type}\`${opt}${def} — ${p.description || ""}`);
122
+ }
123
+ }
124
+ if (fn.returnType && fn.returnType !== "void") {
125
+ lines.push(`**Returns:** \`${fn.returnType}\``);
126
+ }
127
+ if (opts.includeExamples && fn.examples.length > 0) {
128
+ for (const ex of fn.examples) {
129
+ lines.push(ex);
130
+ }
131
+ }
132
+ lines.push("");
49
133
  }
50
- // Additional documentation (from projectDocuments, README sections, etc.)
51
- if (skill.documents && skill.documents.length > 0) {
52
- for (const doc of skill.documents) {
53
- sections.push(`## ${doc.title}\n\n${doc.content}`);
134
+ return lines.join("\n");
135
+ }
136
+ function renderClassesRef(classes, opts) {
137
+ const lines = ["# Classes\n"];
138
+ for (const cls of classes) {
139
+ lines.push(`## \`${cls.name}\``);
140
+ if (cls.description)
141
+ lines.push(cls.description);
142
+ if (opts.includeSignatures && cls.constructorSignature) {
143
+ lines.push("```ts", cls.constructorSignature, "```");
144
+ }
145
+ if (cls.properties.length > 0) {
146
+ lines.push("**Properties:**");
147
+ for (const p of cls.properties) {
148
+ const opt = p.optional ? " (optional)" : "";
149
+ lines.push(`- \`${p.name}: ${p.type}\`${opt} — ${p.description || ""}`);
150
+ }
151
+ }
152
+ if (cls.methods.length > 0) {
153
+ lines.push("**Methods:**");
154
+ for (const m of cls.methods) {
155
+ if (opts.includeSignatures) {
156
+ lines.push(`- \`${m.signature}\` — ${m.description || ""}`);
157
+ }
158
+ else {
159
+ lines.push(`- \`${m.name}\` — ${m.description || ""}`);
160
+ }
161
+ }
162
+ }
163
+ if (opts.includeExamples && cls.examples.length > 0) {
164
+ for (const ex of cls.examples) {
165
+ lines.push(ex);
166
+ }
54
167
  }
168
+ lines.push("");
55
169
  }
56
- // Secondary: Types and Enums (supporting definitions)
57
- if (skill.types.length > 0) {
58
- sections.push(renderTypes(skill.types));
170
+ return lines.join("\n");
171
+ }
172
+ function renderTypesRef(types, enums) {
173
+ const lines = ["# Types & Enums\n"];
174
+ if (types.length > 0) {
175
+ lines.push("## Types\n");
176
+ for (const t of types) {
177
+ lines.push(`### \`${t.name}\``);
178
+ if (t.description)
179
+ lines.push(t.description);
180
+ if (t.definition) {
181
+ lines.push("```ts", t.definition, "```");
182
+ }
183
+ lines.push("");
184
+ }
59
185
  }
60
- if (skill.enums.length > 0) {
61
- sections.push(renderEnums(skill.enums));
186
+ if (enums.length > 0) {
187
+ lines.push("## Enums\n");
188
+ for (const e of enums) {
189
+ lines.push(`### \`${e.name}\``);
190
+ if (e.description)
191
+ lines.push(e.description);
192
+ for (const m of e.members) {
193
+ lines.push(`- \`${m.name}\` = \`${m.value}\` — ${m.description || ""}`);
194
+ }
195
+ lines.push("");
196
+ }
62
197
  }
63
- // Links
64
- const links = renderLinks(skill);
65
- if (links)
66
- sections.push(links);
67
- const raw = sections.join("\n\n");
68
- const content = truncateToTokenBudget(raw, opts.maxTokens);
69
- return {
70
- filename: `${skillName}/SKILL.md`,
71
- content,
72
- tokens: estimateTokens(content),
73
- };
198
+ return lines.join("\n");
74
199
  }
75
- // ---------------------------------------------------------------------------
76
- // Description builder — enriches with trigger phrases for agent discovery
77
- // ---------------------------------------------------------------------------
200
+ // ===========================================================================
201
+ // Shared helpers
202
+ // ===========================================================================
78
203
  function buildDescription(skill) {
79
204
  const parts = [];
80
- // Base description
81
205
  if (skill.description) {
82
206
  parts.push(skill.description);
83
207
  }
84
208
  else {
85
209
  parts.push(`API reference for ${skill.name}`);
86
210
  }
87
- // Add trigger phrases from API surface
88
211
  const triggers = [];
89
212
  if (skill.functions.length > 0) {
90
- const names = skill.functions.slice(0, 5).map((f) => f.name);
91
- triggers.push(names.join(", "));
213
+ triggers.push(skill.functions.slice(0, 5).map((f) => f.name).join(", "));
92
214
  }
93
215
  if (skill.classes.length > 0) {
94
- const names = skill.classes.slice(0, 3).map((c) => c.name);
95
- triggers.push(names.join(", "));
216
+ triggers.push(skill.classes.slice(0, 3).map((c) => c.name).join(", "));
96
217
  }
97
218
  if (triggers.length > 0) {
98
219
  parts.push(`Use when working with ${triggers.join(", ")}.`);
99
220
  }
100
- // Enrich with keywords from package.json
101
221
  if (skill.keywords && skill.keywords.length > 0) {
102
- // Filter out generic keywords, keep domain-specific ones
103
222
  const useful = skill.keywords.filter((k) => !["typescript", "javascript", "node", "nodejs", "npm", "library"].includes(k.toLowerCase()));
104
223
  if (useful.length > 0) {
105
224
  parts.push(`Keywords: ${useful.join(", ")}.`);
106
225
  }
107
226
  }
108
- const full = parts.join(" ");
109
- return truncateDescription(full, DESCRIPTION_MAX);
227
+ return truncateDescription(parts.join(" "), DESCRIPTION_MAX);
110
228
  }
111
- /** Truncate description to max chars, keeping sentence boundary */
112
229
  function truncateDescription(desc, max) {
113
230
  if (desc.length <= max)
114
231
  return desc;
115
232
  const firstSentence = desc.match(/^[^.!?]+[.!?]/)?.[0];
116
- if (firstSentence && firstSentence.length <= max) {
233
+ if (firstSentence && firstSentence.length <= max)
117
234
  return firstSentence;
118
- }
119
235
  return desc.slice(0, max - 3) + "...";
120
236
  }
121
- // ---------------------------------------------------------------------------
122
- // Frontmatter
123
- // ---------------------------------------------------------------------------
124
237
  function renderFrontmatter(name, description, license) {
125
238
  const lines = ["---", `name: ${name}`];
126
239
  lines.push(`description: ${quoteYaml(description)}`);
127
- if (license) {
240
+ if (license)
128
241
  lines.push(`license: ${license}`);
129
- }
130
242
  lines.push("---");
131
243
  return lines.join("\n");
132
244
  }
@@ -136,24 +248,16 @@ function quoteYaml(value) {
136
248
  }
137
249
  return value;
138
250
  }
139
- // ---------------------------------------------------------------------------
140
- // Links section
141
- // ---------------------------------------------------------------------------
142
251
  function renderLinks(skill) {
143
252
  const links = [];
144
- if (skill.repository) {
253
+ if (skill.repository)
145
254
  links.push(`- [Repository](${skill.repository})`);
146
- }
147
- if (skill.author) {
255
+ if (skill.author)
148
256
  links.push(`- Author: ${skill.author}`);
149
- }
150
257
  if (links.length === 0)
151
258
  return "";
152
259
  return "## Links\n\n" + links.join("\n");
153
260
  }
154
- // ---------------------------------------------------------------------------
155
- // When to Use — richer triggers from API surface
156
- // ---------------------------------------------------------------------------
157
261
  function renderWhenToUse(skill) {
158
262
  const triggers = [];
159
263
  if (skill.functions.length > 0) {
@@ -168,20 +272,16 @@ function renderWhenToUse(skill) {
168
272
  const names = skill.types.slice(0, 5).map((t) => `\`${t.name}\``);
169
273
  triggers.push(`- Typing with ${names.join(", ")}`);
170
274
  }
171
- // Extract @see / @remarks triggers from function tags
172
275
  for (const fn of skill.functions) {
173
276
  if (fn.tags["see"]) {
174
277
  triggers.push(`- See also: ${fn.tags["see"]}`);
175
- break; // one is enough
278
+ break;
176
279
  }
177
280
  }
178
281
  if (triggers.length === 0)
179
282
  return "";
180
283
  return "## When to Use\n\n" + triggers.join("\n");
181
284
  }
182
- // ---------------------------------------------------------------------------
183
- // Quick Reference
184
- // ---------------------------------------------------------------------------
185
285
  function renderQuickReference(skill) {
186
286
  const items = [];
187
287
  if (skill.functions.length > 0) {
@@ -200,99 +300,6 @@ function renderQuickReference(skill) {
200
300
  return "";
201
301
  return "## Quick Reference\n\n" + items.join("\n");
202
302
  }
203
- // ---------------------------------------------------------------------------
204
- // Section renderers
205
- // ---------------------------------------------------------------------------
206
- function renderFunctions(fns, opts) {
207
- const lines = ["## Functions\n"];
208
- for (const fn of fns) {
209
- lines.push(`### \`${fn.name}\``);
210
- if (fn.description)
211
- lines.push(fn.description);
212
- if (opts.includeSignatures && fn.signature) {
213
- lines.push("```ts", fn.signature, "```");
214
- }
215
- if (fn.parameters.length > 0) {
216
- lines.push("**Parameters:**");
217
- for (const p of fn.parameters) {
218
- const opt = p.optional ? " (optional)" : "";
219
- const def = p.defaultValue ? ` — default: \`${p.defaultValue}\`` : "";
220
- lines.push(`- \`${p.name}: ${p.type}\`${opt}${def} — ${p.description || ""}`);
221
- }
222
- }
223
- if (fn.returnType && fn.returnType !== "void") {
224
- lines.push(`**Returns:** \`${fn.returnType}\``);
225
- }
226
- if (opts.includeExamples && fn.examples.length > 0) {
227
- for (const ex of fn.examples) {
228
- lines.push(ex);
229
- }
230
- }
231
- lines.push("");
232
- }
233
- return lines.join("\n");
234
- }
235
- function renderClasses(classes, opts) {
236
- const lines = ["## Classes\n"];
237
- for (const cls of classes) {
238
- lines.push(`### \`${cls.name}\``);
239
- if (cls.description)
240
- lines.push(cls.description);
241
- if (opts.includeSignatures && cls.constructorSignature) {
242
- lines.push("```ts", cls.constructorSignature, "```");
243
- }
244
- if (cls.properties.length > 0) {
245
- lines.push("**Properties:**");
246
- for (const p of cls.properties) {
247
- const opt = p.optional ? " (optional)" : "";
248
- lines.push(`- \`${p.name}: ${p.type}\`${opt} — ${p.description || ""}`);
249
- }
250
- }
251
- if (cls.methods.length > 0) {
252
- lines.push("**Methods:**");
253
- for (const m of cls.methods) {
254
- if (opts.includeSignatures) {
255
- lines.push(`- \`${m.signature}\` — ${m.description || ""}`);
256
- }
257
- else {
258
- lines.push(`- \`${m.name}\` — ${m.description || ""}`);
259
- }
260
- }
261
- }
262
- lines.push("");
263
- }
264
- return lines.join("\n");
265
- }
266
- function renderTypes(types) {
267
- const lines = ["## Types\n"];
268
- for (const t of types) {
269
- lines.push(`### \`${t.name}\``);
270
- if (t.description)
271
- lines.push(t.description);
272
- if (t.definition) {
273
- lines.push("```ts", t.definition, "```");
274
- }
275
- lines.push("");
276
- }
277
- return lines.join("\n");
278
- }
279
- function renderEnums(enums) {
280
- const lines = ["## Enums\n"];
281
- for (const e of enums) {
282
- lines.push(`### \`${e.name}\``);
283
- if (e.description)
284
- lines.push(e.description);
285
- for (const m of e.members) {
286
- lines.push(`- \`${m.name}\` = \`${m.value}\` — ${m.description || ""}`);
287
- }
288
- lines.push("");
289
- }
290
- return lines.join("\n");
291
- }
292
- // ---------------------------------------------------------------------------
293
- // Utilities
294
- // ---------------------------------------------------------------------------
295
- /** Convert a package name to a valid skill name (lowercase, hyphens only) */
296
303
  function toSkillName(name) {
297
304
  return name
298
305
  .replace(/^@/, "")
@@ -302,4 +309,10 @@ function toSkillName(name) {
302
309
  .replace(/^-|-$/g, "")
303
310
  .toLowerCase();
304
311
  }
312
+ function toFilename(title) {
313
+ return title
314
+ .toLowerCase()
315
+ .replace(/[^a-z0-9]+/g, "-")
316
+ .replace(/^-|-$/g, "");
317
+ }
305
318
  //# sourceMappingURL=renderer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -75,15 +75,24 @@ export interface ExtractedDocument {
75
75
  /** Document content (markdown) */
76
76
  content: string;
77
77
  }
78
- /** A rendered skill file ready to write */
79
- export interface RenderedSkill {
78
+ /** A single rendered file */
79
+ export interface RenderedFile {
80
80
  /** File path relative to output dir */
81
81
  filename: string;
82
- /** Full SKILL.md content with frontmatter */
82
+ /** File content */
83
83
  content: string;
84
84
  /** Estimated token count */
85
85
  tokens?: number;
86
86
  }
87
+ /** A rendered skill with progressive disclosure structure */
88
+ export interface RenderedSkill {
89
+ /** The SKILL.md discovery file (lean — frontmatter, overview, quick ref) */
90
+ skill: RenderedFile;
91
+ /** Reference files loaded on demand (functions, classes, types, etc.) */
92
+ references: RenderedFile[];
93
+ }
94
+ /** @deprecated Use RenderedFile instead */
95
+ export type RenderedSkillLegacy = RenderedFile;
87
96
  /** Options controlling skill rendering */
88
97
  export interface SkillRenderOptions {
89
98
  /** Output directory for skill files (default: ".github/skills") */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/writer.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  import type { RenderedSkill, SkillRenderOptions } from "./types.js";
2
- /** Write rendered skill files to disk */
2
+ /** Write rendered skill file sets to disk (SKILL.md + references/) */
3
3
  export declare function writeSkills(skills: RenderedSkill[], options: Pick<SkillRenderOptions, "outDir">): void;
4
4
  //# sourceMappingURL=writer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../src/writer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEpE,yCAAyC;AACzC,wBAAgB,WAAW,CACzB,MAAM,EAAE,aAAa,EAAE,EACvB,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,GAC1C,IAAI,CAMN"}
1
+ {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../src/writer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAgB,aAAa,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAElF,sEAAsE;AACtE,wBAAgB,WAAW,CACzB,MAAM,EAAE,aAAa,EAAE,EACvB,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,GAC1C,IAAI,CAUN"}
package/dist/writer.js CHANGED
@@ -1,11 +1,19 @@
1
1
  import { mkdirSync, writeFileSync } from "node:fs";
2
2
  import { dirname, join } from "node:path";
3
- /** Write rendered skill files to disk */
3
+ /** Write rendered skill file sets to disk (SKILL.md + references/) */
4
4
  export function writeSkills(skills, options) {
5
5
  for (const skill of skills) {
6
- const fullPath = join(options.outDir, skill.filename);
7
- mkdirSync(dirname(fullPath), { recursive: true });
8
- writeFileSync(fullPath, skill.content, "utf-8");
6
+ // Write SKILL.md
7
+ writeFile(options.outDir, skill.skill);
8
+ // Write references
9
+ for (const ref of skill.references) {
10
+ writeFile(options.outDir, ref);
11
+ }
9
12
  }
10
13
  }
14
+ function writeFile(outDir, file) {
15
+ const fullPath = join(outDir, file.filename);
16
+ mkdirSync(dirname(fullPath), { recursive: true });
17
+ writeFileSync(fullPath, file.content, "utf-8");
18
+ }
11
19
  //# sourceMappingURL=writer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"writer.js","sourceRoot":"","sources":["../src/writer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAG1C,yCAAyC;AACzC,MAAM,UAAU,WAAW,CACzB,MAAuB,EACvB,OAA2C;IAE3C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACtD,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"writer.js","sourceRoot":"","sources":["../src/writer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAG1C,sEAAsE;AACtE,MAAM,UAAU,WAAW,CACzB,MAAuB,EACvB,OAA2C;IAE3C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,iBAAiB;QACjB,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAEvC,mBAAmB;QACnB,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACnC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,MAAc,EAAE,IAAkB;IACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACjD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@to-skills/core",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "description": "Shared types, SKILL.md renderer, and token budgeting for to-skills plugins",
5
5
  "type": "module",
6
6
  "exports": {