@take-out/cli 0.1.11 → 0.1.13
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/README.md +5 -5
- package/dist/cjs/cli.cjs +2 -1
- package/dist/cjs/cli.js +2 -0
- package/dist/cjs/cli.js.map +1 -1
- package/dist/cjs/commands/docs.cjs +1 -167
- package/dist/cjs/commands/docs.js +1 -138
- package/dist/cjs/commands/docs.js.map +1 -1
- package/dist/cjs/commands/skills.cjs +355 -0
- package/dist/cjs/commands/skills.js +277 -0
- package/dist/cjs/commands/skills.js.map +6 -0
- package/dist/cjs/utils/parallel-runner.cjs +24 -3
- package/dist/cjs/utils/parallel-runner.js +27 -3
- package/dist/cjs/utils/parallel-runner.js.map +1 -1
- package/dist/cjs/utils/script-listing.cjs +1 -1
- package/dist/cjs/utils/script-listing.js +1 -1
- package/dist/cjs/utils/script-listing.js.map +1 -1
- package/dist/esm/cli.js +2 -0
- package/dist/esm/cli.js.map +1 -1
- package/dist/esm/cli.mjs +2 -1
- package/dist/esm/cli.mjs.map +1 -1
- package/dist/esm/commands/docs.js +3 -150
- package/dist/esm/commands/docs.js.map +1 -1
- package/dist/esm/commands/docs.mjs +3 -169
- package/dist/esm/commands/docs.mjs.map +1 -1
- package/dist/esm/commands/skills.js +273 -0
- package/dist/esm/commands/skills.js.map +6 -0
- package/dist/esm/commands/skills.mjs +320 -0
- package/dist/esm/commands/skills.mjs.map +1 -0
- package/dist/esm/utils/parallel-runner.js +27 -3
- package/dist/esm/utils/parallel-runner.js.map +1 -1
- package/dist/esm/utils/parallel-runner.mjs +24 -3
- package/dist/esm/utils/parallel-runner.mjs.map +1 -1
- package/dist/esm/utils/script-listing.js +1 -1
- package/dist/esm/utils/script-listing.js.map +1 -1
- package/dist/esm/utils/script-listing.mjs +1 -1
- package/dist/esm/utils/script-listing.mjs.map +1 -1
- package/package.json +4 -4
- package/src/cli.ts +2 -0
- package/src/commands/docs.ts +2 -288
- package/src/commands/skills.ts +528 -0
- package/src/utils/parallel-runner.ts +42 -1
- package/src/utils/script-listing.ts +1 -0
- package/types/commands/docs.d.ts.map +1 -1
- package/types/commands/skills.d.ts +5 -0
- package/types/commands/skills.d.ts.map +1 -0
- package/types/utils/parallel-runner.d.ts.map +1 -1
- package/types/utils/script-listing.d.ts.map +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { existsSync,
|
|
1
|
+
import { existsSync, mkdirSync, readdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
2
2
|
import { createRequire } from "node:module";
|
|
3
|
-
import { dirname, join
|
|
3
|
+
import { dirname, join } from "node:path";
|
|
4
4
|
import { defineCommand } from "citty";
|
|
5
5
|
import pc from "picocolors";
|
|
6
6
|
import { compareFiles, getFileSize, syncFileWithConfirmation } from "../utils/sync.mjs";
|
|
@@ -176,171 +176,6 @@ const require2 = createRequire(import.meta.url),
|
|
|
176
176
|
} else (await syncFileWithConfirmation(file)) && syncedCount++;
|
|
177
177
|
console.info(), console.info(pc.bold(pc.green(`\u2713 Complete: ${syncedCount} file(s) ejected`))), console.info();
|
|
178
178
|
}
|
|
179
|
-
});
|
|
180
|
-
function hasSkillFrontmatter(content) {
|
|
181
|
-
if (!content.startsWith("---")) return !1;
|
|
182
|
-
const endIndex = content.indexOf("---", 3);
|
|
183
|
-
if (endIndex === -1) return !1;
|
|
184
|
-
const frontmatter = content.slice(3, endIndex);
|
|
185
|
-
return frontmatter.includes("name:") && frontmatter.includes("description:");
|
|
186
|
-
}
|
|
187
|
-
function isDevOnly(content) {
|
|
188
|
-
if (!content.startsWith("---")) return !1;
|
|
189
|
-
const endIndex = content.indexOf("---", 3);
|
|
190
|
-
if (endIndex === -1) return !1;
|
|
191
|
-
const frontmatter = content.slice(3, endIndex);
|
|
192
|
-
return /\bdev:\s*true\b/.test(frontmatter);
|
|
193
|
-
}
|
|
194
|
-
function extractDocMeta(content) {
|
|
195
|
-
const lines = content.split(`
|
|
196
|
-
`);
|
|
197
|
-
let title = "",
|
|
198
|
-
description = "",
|
|
199
|
-
startLine = 0;
|
|
200
|
-
if (lines[0]?.trim() === "---") {
|
|
201
|
-
for (let i = 1; i < lines.length; i++) if (lines[i]?.trim() === "---") {
|
|
202
|
-
startLine = i + 1;
|
|
203
|
-
break;
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
for (let i = startLine; i < lines.length; i++) {
|
|
207
|
-
const trimmed = lines[i]?.trim() || "";
|
|
208
|
-
if (!title && trimmed.startsWith("# ")) {
|
|
209
|
-
title = trimmed.slice(2).trim();
|
|
210
|
-
continue;
|
|
211
|
-
}
|
|
212
|
-
if (title && trimmed && !trimmed.startsWith("#")) {
|
|
213
|
-
description = trimmed;
|
|
214
|
-
break;
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
return {
|
|
218
|
-
title,
|
|
219
|
-
description
|
|
220
|
-
};
|
|
221
|
-
}
|
|
222
|
-
function toSkillName(name) {
|
|
223
|
-
return name.toLowerCase().replace(/[^a-z0-9-]/g, "-").replace(/-+/g, "-").replace(/^-|-$/g, "").slice(0, 64);
|
|
224
|
-
}
|
|
225
|
-
function collectAllDocs(cwd) {
|
|
226
|
-
const docs = [],
|
|
227
|
-
seen = /* @__PURE__ */new Set(),
|
|
228
|
-
localDocsDir = join(cwd, "docs");
|
|
229
|
-
if (existsSync(localDocsDir)) {
|
|
230
|
-
const files = readdirSync(localDocsDir).filter(f => f.endsWith(".md"));
|
|
231
|
-
for (const file of files) {
|
|
232
|
-
const name = file.replace(/\.md$/, "");
|
|
233
|
-
docs.push({
|
|
234
|
-
name,
|
|
235
|
-
path: join(localDocsDir, file),
|
|
236
|
-
source: "local"
|
|
237
|
-
}), seen.add(name);
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
if (existsSync(DOCS_DIR)) {
|
|
241
|
-
const files = readdirSync(DOCS_DIR).filter(f => f.endsWith(".md"));
|
|
242
|
-
for (const file of files) {
|
|
243
|
-
const name = file.replace(/\.md$/, "");
|
|
244
|
-
seen.has(name) || docs.push({
|
|
245
|
-
name,
|
|
246
|
-
path: join(DOCS_DIR, file),
|
|
247
|
-
source: "package"
|
|
248
|
-
});
|
|
249
|
-
}
|
|
250
|
-
}
|
|
251
|
-
return docs;
|
|
252
|
-
}
|
|
253
|
-
const SKILL_PREFIX = "takeout-",
|
|
254
|
-
skillsCommand = defineCommand({
|
|
255
|
-
meta: {
|
|
256
|
-
name: "skills",
|
|
257
|
-
description: "Generate Claude Code skills from documentation"
|
|
258
|
-
},
|
|
259
|
-
args: {
|
|
260
|
-
clean: {
|
|
261
|
-
type: "boolean",
|
|
262
|
-
description: "Remove existing skills before generating",
|
|
263
|
-
default: !1
|
|
264
|
-
}
|
|
265
|
-
},
|
|
266
|
-
async run({
|
|
267
|
-
args
|
|
268
|
-
}) {
|
|
269
|
-
const cwd = process.cwd(),
|
|
270
|
-
skillsDir = join(cwd, ".claude", "skills");
|
|
271
|
-
console.info(), console.info(pc.bold(pc.cyan("\u{1F9E0} Generate Claude Code Skills"))), console.info();
|
|
272
|
-
const docs = collectAllDocs(cwd);
|
|
273
|
-
if (docs.length === 0) {
|
|
274
|
-
console.info(pc.yellow("No documentation files found"));
|
|
275
|
-
return;
|
|
276
|
-
}
|
|
277
|
-
if (console.info(pc.dim(`Found ${docs.length} documentation files`)), console.info(), args.clean && existsSync(skillsDir)) {
|
|
278
|
-
console.info(pc.yellow("Cleaning existing takeout skills..."));
|
|
279
|
-
const existing = readdirSync(skillsDir);
|
|
280
|
-
for (const dir of existing) dir.startsWith(SKILL_PREFIX) && rmSync(join(skillsDir, dir), {
|
|
281
|
-
recursive: !0
|
|
282
|
-
});
|
|
283
|
-
}
|
|
284
|
-
existsSync(skillsDir) || mkdirSync(skillsDir, {
|
|
285
|
-
recursive: !0
|
|
286
|
-
});
|
|
287
|
-
let symlinked = 0,
|
|
288
|
-
generated = 0,
|
|
289
|
-
unchanged = 0;
|
|
290
|
-
const isDev = !!process.env.IS_TAMAGUI_DEV;
|
|
291
|
-
for (const doc of docs) {
|
|
292
|
-
const content = readFileSync(doc.path, "utf-8");
|
|
293
|
-
if (isDevOnly(content) && !isDev) continue;
|
|
294
|
-
if (hasSkillFrontmatter(content)) {
|
|
295
|
-
const nameMatch = content.match(/^---\s*\nname:\s*([^\n]+)/m);
|
|
296
|
-
if (!nameMatch) continue;
|
|
297
|
-
const skillName = nameMatch[1].trim(),
|
|
298
|
-
skillDir = join(skillsDir, skillName),
|
|
299
|
-
skillFile = join(skillDir, "SKILL.md");
|
|
300
|
-
existsSync(skillDir) || mkdirSync(skillDir, {
|
|
301
|
-
recursive: !0
|
|
302
|
-
});
|
|
303
|
-
const relativePath = relative(skillDir, doc.path);
|
|
304
|
-
let shouldCreate = !0;
|
|
305
|
-
try {
|
|
306
|
-
lstatSync(skillFile).isSymbolicLink() && existsSync(skillFile) && readFileSync(skillFile, "utf-8") === content && (unchanged++, shouldCreate = !1), shouldCreate && unlinkSync(skillFile);
|
|
307
|
-
} catch {}
|
|
308
|
-
if (!shouldCreate) continue;
|
|
309
|
-
symlinkSync(relativePath, skillFile), symlinked++;
|
|
310
|
-
const sourceLabel = doc.source === "local" ? pc.blue("local") : pc.dim("package");
|
|
311
|
-
console.info(` ${pc.green("\u27F7")} ${skillName} ${sourceLabel} ${pc.dim("(symlink)")}`);
|
|
312
|
-
} else {
|
|
313
|
-
const baseName = toSkillName(doc.name),
|
|
314
|
-
skillName = `${SKILL_PREFIX}${baseName}`,
|
|
315
|
-
skillDir = join(skillsDir, skillName),
|
|
316
|
-
skillFile = join(skillDir, "SKILL.md");
|
|
317
|
-
existsSync(skillDir) || mkdirSync(skillDir, {
|
|
318
|
-
recursive: !0
|
|
319
|
-
});
|
|
320
|
-
const {
|
|
321
|
-
title,
|
|
322
|
-
description
|
|
323
|
-
} = extractDocMeta(content),
|
|
324
|
-
skillDescription = description ? `${title}. ${description}`.slice(0, 1024) : title.slice(0, 1024),
|
|
325
|
-
skillContent = `---
|
|
326
|
-
name: ${skillName}
|
|
327
|
-
description: ${skillDescription}
|
|
328
|
-
---
|
|
329
|
-
|
|
330
|
-
${content}
|
|
331
|
-
`;
|
|
332
|
-
let shouldWrite = !0;
|
|
333
|
-
try {
|
|
334
|
-
lstatSync(skillFile).isSymbolicLink() ? unlinkSync(skillFile) : readFileSync(skillFile, "utf-8") === skillContent && (unchanged++, shouldWrite = !1);
|
|
335
|
-
} catch {}
|
|
336
|
-
if (!shouldWrite) continue;
|
|
337
|
-
writeFileSync(skillFile, skillContent), generated++;
|
|
338
|
-
const sourceLabel = doc.source === "local" ? pc.blue("local") : pc.dim("package");
|
|
339
|
-
console.info(` ${pc.green("\u2713")} ${skillName} ${sourceLabel} ${pc.dim("(generated)")}`);
|
|
340
|
-
}
|
|
341
|
-
}
|
|
342
|
-
console.info(), console.info(pc.bold("Summary:")), symlinked > 0 && console.info(` ${pc.green(`${symlinked} symlinked`)}`), generated > 0 && console.info(` ${pc.yellow(`${generated} generated`)} ${pc.dim("(add frontmatter to source to enable symlink)")}`), unchanged > 0 && console.info(` ${pc.dim(`${unchanged} unchanged`)}`), console.info(), console.info(pc.dim(`Skills in ${skillsDir}`)), console.info();
|
|
343
|
-
}
|
|
344
179
|
}),
|
|
345
180
|
docsCommand = defineCommand({
|
|
346
181
|
meta: {
|
|
@@ -351,8 +186,7 @@ ${content}
|
|
|
351
186
|
list: listCommand,
|
|
352
187
|
get: getCommand,
|
|
353
188
|
path: pathCommand,
|
|
354
|
-
eject: ejectCommand
|
|
355
|
-
skills: skillsCommand
|
|
189
|
+
eject: ejectCommand
|
|
356
190
|
}
|
|
357
191
|
});
|
|
358
192
|
export { docsCommand };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["existsSync","lstatSync","mkdirSync","readdirSync","readFileSync","rmSync","symlinkSync","unlinkSync","writeFileSync","createRequire","dirname","join","relative","defineCommand","pc","compareFiles","getFileSize","syncFileWithConfirmation","require2","import","meta","url","DOCS_DIR","resolve","listCommand","name","description","run","console","error","red","process","exit","files","filter","f","endsWith","sort","info","bold","cyan","file","replace","path","match","green","dim","getCommand","args","type","required","valueHint","names","_","length","results","errors","cwd","localDocsDir","fileName","localFilePath","packageFilePath","filePath","push","content","err","String","i","result","pathCommand","ejectCommand","yes","default","targetDocsDir","sourceDocsDir","yellow","recursive","sourceFiles","filesToSync","stats","new","modified","identical","sourcePath","targetPath","status","sourceSize","targetSize","sortOrder","a","b","syncedCount","targetDir","hasSkillFrontmatter","startsWith","endIndex","indexOf","frontmatter","slice","includes","isDevOnly","test","extractDocMeta","lines","split","title","startLine","trim","trimmed","toSkillName","toLowerCase","collectAllDocs","docs","seen","Set","source","add","has","SKILL_PREFIX","skillsCommand","clean","skillsDir","existing","dir","symlinked","generated","unchanged","isDev","env","IS_TAMAGUI_DEV","doc","nameMatch","skillName","skillDir","skillFile","relativePath","shouldCreate","isSymbolicLink","sourceLabel","blue","baseName","skillDescription","skillContent","shouldWrite","docsCommand","subCommands","list","get","eject","skills"],"sources":["../../../src/commands/docs.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["existsSync","mkdirSync","readdirSync","readFileSync","writeFileSync","createRequire","dirname","join","defineCommand","pc","compareFiles","getFileSize","syncFileWithConfirmation","require2","import","meta","url","DOCS_DIR","resolve","listCommand","name","description","run","console","error","red","process","exit","files","filter","f","endsWith","sort","info","bold","cyan","file","replace","path","match","green","dim","getCommand","args","type","required","valueHint","names","_","length","results","errors","cwd","localDocsDir","fileName","localFilePath","packageFilePath","filePath","push","content","err","String","i","result","pathCommand","ejectCommand","yes","default","targetDocsDir","sourceDocsDir","yellow","recursive","sourceFiles","filesToSync","stats","new","modified","identical","sourcePath","targetPath","status","sourceSize","targetSize","sortOrder","a","b","syncedCount","targetDir","docsCommand","subCommands","list","get","eject"],"sources":["../../../src/commands/docs.ts"],"sourcesContent":[null],"mappings":"AAIA,SAASA,UAAA,EAAYC,SAAA,EAAWC,WAAA,EAAaC,YAAA,EAAcC,aAAA,QAAqB;AAChF,SAASC,aAAA,QAAqB;AAC9B,SAASC,OAAA,EAASC,IAAA,QAAY;AAE9B,SAASC,aAAA,QAAqB;AAC9B,OAAOC,EAAA,MAAQ;AAEf,SAEEC,YAAA,EACAC,WAAA,EACAC,wBAAA,QACK;AAGP,MAAMC,QAAA,GAAUR,aAAA,CAAcS,MAAA,CAAAC,IAAA,CAAYC,GAAG;EACvCC,QAAA,GAAWX,OAAA,CAAQO,QAAA,CAAQK,OAAA,CAAQ,6BAA6B,CAAC;EAEjEC,WAAA,GAAcX,aAAA,CAAc;IAChCO,IAAA,EAAM;MACJK,IAAA,EAAM;MACNC,WAAA,EAAa;IACf;IACA,MAAMC,IAAA,EAAM;MACLtB,UAAA,CAAWiB,QAAQ,MACtBM,OAAA,CAAQC,KAAA,CAAMf,EAAA,CAAGgB,GAAA,CAAI,iCAA4B,CAAC,GAClDC,OAAA,CAAQC,IAAA,CAAK,CAAC;MAGhB,MAAMC,KAAA,GAAQ1B,WAAA,CAAYe,QAAQ,EAC/BY,MAAA,CAAQC,CAAA,IAAMA,CAAA,CAAEC,QAAA,CAAS,KAAK,CAAC,EAC/BC,IAAA,CAAK;MAERT,OAAA,CAAQU,IAAA,CAAK,GACbV,OAAA,CAAQU,IAAA,CAAKxB,EAAA,CAAGyB,IAAA,CAAKzB,EAAA,CAAG0B,IAAA,CAAK,mCAA4B,CAAC,CAAC,GAC3DZ,OAAA,CAAQU,IAAA,CAAK;MAEb,WAAWG,IAAA,IAAQR,KAAA,EAAO;QACxB,MAAMR,IAAA,GAAOgB,IAAA,CAAKC,OAAA,CAAQ,SAAS,EAAE;UAC/BC,IAAA,GAAO/B,IAAA,CAAKU,QAAA,EAAUmB,IAAI;QAGhC,IAAIf,WAAA,GAAc;QAClB,IAAI;UAEF,MAAMkB,KAAA,GADUpC,YAAA,CAAamC,IAAA,EAAM,OAAO,EACpBC,KAAA,CAAM,aAAa;UACrCA,KAAA,GAAQ,CAAC,MACXlB,WAAA,GAAckB,KAAA,CAAM,CAAC;QAEzB,QAAQ,CAER;QAEIlB,WAAA,IACFE,OAAA,CAAQU,IAAA,CAAK,KAAKxB,EAAA,CAAG+B,KAAA,CAAMpB,IAAI,CAAC,EAAE,GAClCG,OAAA,CAAQU,IAAA,CAAK,OAAOxB,EAAA,CAAGgC,GAAA,CAAIpB,WAAW,CAAC,EAAE,KAEzCE,OAAA,CAAQU,IAAA,CAAK,KAAKxB,EAAA,CAAG+B,KAAA,CAAMpB,IAAI,CAAC,EAAE;MAEtC;MAEAG,OAAA,CAAQU,IAAA,CAAK,GACbV,OAAA,CAAQU,IAAA,CAAKxB,EAAA,CAAGgC,GAAA,CAAI,kDAAkD,CAAC,GACvElB,OAAA,CAAQU,IAAA,CAAK;IACf;EACF,CAAC;EAEKS,UAAA,GAAalC,aAAA,CAAc;IAC/BO,IAAA,EAAM;MACJK,IAAA,EAAM;MACNC,WAAA,EAAa;IACf;IACAsB,IAAA,EAAM;MACJvB,IAAA,EAAM;QACJwB,IAAA,EAAM;QACNvB,WAAA,EAAa;QACbwB,QAAA,EAAU;QACVC,SAAA,EAAW;MACb;IACF;IACA,MAAMxB,IAAI;MAAEqB;IAAK,GAAG;MAIlB,MAAMI,KAAA,GAAQJ,IAAA,CAAKK,CAAA,CAAEC,MAAA,GAAS,IAAIN,IAAA,CAAKK,CAAA,GAAI,CAACL,IAAA,CAAKvB,IAAI;QAE/C8B,OAAA,GAAoD,EAAC;QACrDC,MAAA,GAAiD,EAAC;QAGlDC,GAAA,GAAM1B,OAAA,CAAQ0B,GAAA,CAAI;QAClBC,YAAA,GAAe9C,IAAA,CAAK6C,GAAA,EAAK,MAAM;MAGrC,WAAWhC,IAAA,IAAQ2B,KAAA,EAAO;QACxB,MAAMO,QAAA,GAAWlC,IAAA,CAAKW,QAAA,CAAS,KAAK,IAAIX,IAAA,GAAO,GAAGA,IAAI;UAGhDmC,aAAA,GAAgBhD,IAAA,CAAK8C,YAAA,EAAcC,QAAQ;UAC3CE,eAAA,GAAkBjD,IAAA,CAAKU,QAAA,EAAUqC,QAAQ;QAE/C,IAAIG,QAAA,GAA0B;QAQ9B,IANIzD,UAAA,CAAWuD,aAAa,IAC1BE,QAAA,GAAWF,aAAA,GACFvD,UAAA,CAAWwD,eAAe,MACnCC,QAAA,GAAWD,eAAA,GAGT,CAACC,QAAA,EAAU;UACbN,MAAA,CAAOO,IAAA,CAAK;YAAEtC,IAAA;YAAMI,KAAA,EAAO;UAAiB,CAAC;UAC7C;QACF;QAEA,IAAI;UACF,MAAMmC,OAAA,GAAUxD,YAAA,CAAasD,QAAA,EAAU,OAAO;UAC9CP,OAAA,CAAQQ,IAAA,CAAK;YAAEtC,IAAA;YAAMuC;UAAQ,CAAC;QAChC,SAASC,GAAA,EAAK;UACZT,MAAA,CAAOO,IAAA,CAAK;YAAEtC,IAAA;YAAMI,KAAA,EAAOqC,MAAA,CAAOD,GAAG;UAAE,CAAC;QAC1C;MACF;MAGA,IAAIT,MAAA,CAAOF,MAAA,GAAS,GAAG;QACrB,WAAW;UAAE7B;QAAK,KAAK+B,MAAA,EACrB5B,OAAA,CAAQC,KAAA,CAAMf,EAAA,CAAGgB,GAAA,CAAI,8BAAyBL,IAAI,EAAE,CAAC;QAEvDG,OAAA,CAAQU,IAAA,CAAK,GACbV,OAAA,CAAQU,IAAA,CAAKxB,EAAA,CAAGgC,GAAA,CAAI,+CAA+C,CAAC,GAGhES,OAAA,CAAQD,MAAA,KAAW,KACrBvB,OAAA,CAAQC,IAAA,CAAK,CAAC,GAEhBJ,OAAA,CAAQU,IAAA,CAAK;MACf;MAGA,SAAS6B,CAAA,GAAI,GAAGA,CAAA,GAAIZ,OAAA,CAAQD,MAAA,EAAQa,CAAA,IAAK;QACvC,MAAMC,MAAA,GAASb,OAAA,CAAQY,CAAC;QACnBC,MAAA,KAGLxC,OAAA,CAAQU,IAAA,CAAK,KAAK8B,MAAA,CAAO3C,IAAI,EAAE,GAC/BG,OAAA,CAAQU,IAAA,CAAK,GAGbV,OAAA,CAAQU,IAAA,CAAK8B,MAAA,CAAOJ,OAAO,GAGvBG,CAAA,GAAIZ,OAAA,CAAQD,MAAA,GAAS,MACvB1B,OAAA,CAAQU,IAAA,CAAK,GACbV,OAAA,CAAQU,IAAA,CAAK,KAAK,GAClBV,OAAA,CAAQU,IAAA,CAAK;MAEjB;IACF;EACF,CAAC;EAEK+B,WAAA,GAAcxD,aAAA,CAAc;IAChCO,IAAA,EAAM;MACJK,IAAA,EAAM;MACNC,WAAA,EAAa;IACf;IACAsB,IAAA,EAAM;MACJvB,IAAA,EAAM;QACJwB,IAAA,EAAM;QACNvB,WAAA,EAAa;QACbwB,QAAA,EAAU;MACZ;IACF;IACA,MAAMvB,IAAI;MAAEqB;IAAK,GAAG;MAClB,IAAI,CAACA,IAAA,CAAKvB,IAAA,EAAM;QAEdG,OAAA,CAAQU,IAAA,CAAKhB,QAAQ;QACrB;MACF;MAEA,MAAMqC,QAAA,GAAWX,IAAA,CAAKvB,IAAA,CAAKW,QAAA,CAAS,KAAK,IAAIY,IAAA,CAAKvB,IAAA,GAAO,GAAGuB,IAAA,CAAKvB,IAAI;QAC/DqC,QAAA,GAAWlD,IAAA,CAAKU,QAAA,EAAUqC,QAAQ;MAEnCtD,UAAA,CAAWyD,QAAQ,MACtBlC,OAAA,CAAQC,KAAA,CAAMf,EAAA,CAAGgB,GAAA,CAAI,8BAAyBkB,IAAA,CAAKvB,IAAI,EAAE,CAAC,GAC1DM,OAAA,CAAQC,IAAA,CAAK,CAAC,IAGhBJ,OAAA,CAAQU,IAAA,CAAKwB,QAAQ;IACvB;EACF,CAAC;EAEKQ,YAAA,GAAezD,aAAA,CAAc;IACjCO,IAAA,EAAM;MACJK,IAAA,EAAM;MACNC,WAAA,EAAa;IACf;IACAsB,IAAA,EAAM;MACJuB,GAAA,EAAK;QACHtB,IAAA,EAAM;QACNvB,WAAA,EAAa;QACb8C,OAAA,EAAS;MACX;IACF;IACA,MAAM7C,IAAI;MAAEqB;IAAK,GAAG;MAClB,MAAMS,GAAA,GAAM1B,OAAA,CAAQ0B,GAAA,CAAI;QAClBgB,aAAA,GAAgB7D,IAAA,CAAK6C,GAAA,EAAK,MAAM;QAChCiB,aAAA,GAAgBpD,QAAA;MAEtBM,OAAA,CAAQU,IAAA,CAAK,GACbV,OAAA,CAAQU,IAAA,CAAKxB,EAAA,CAAGyB,IAAA,CAAKzB,EAAA,CAAG0B,IAAA,CAAK,sBAAe,CAAC,CAAC,GAC9CZ,OAAA,CAAQU,IAAA,CAAK,GACbV,OAAA,CAAQU,IAAA,CAAKxB,EAAA,CAAGgC,GAAA,CAAI,WAAW4B,aAAa,EAAE,CAAC,GAC/C9C,OAAA,CAAQU,IAAA,CAAKxB,EAAA,CAAGgC,GAAA,CAAI,WAAW2B,aAAa,EAAE,CAAC,GAC/C7C,OAAA,CAAQU,IAAA,CAAK,GAERjC,UAAA,CAAWqE,aAAa,MAC3B9C,OAAA,CAAQC,KAAA,CAAMf,EAAA,CAAGgB,GAAA,CAAI,2DAAsD,CAAC,GAC5EC,OAAA,CAAQC,IAAA,CAAK,CAAC,IAIX3B,UAAA,CAAWoE,aAAa,MAC3B7C,OAAA,CAAQU,IAAA,CAAKxB,EAAA,CAAG6D,MAAA,CAAO,6DAAwD,CAAC,GAChFrE,SAAA,CAAUmE,aAAA,EAAe;QAAEG,SAAA,EAAW;MAAK,CAAC;MAI9C,MAAMC,WAAA,GAActE,WAAA,CAAYmE,aAAa,EAAExC,MAAA,CAAQC,CAAA,IAAMA,CAAA,CAAEC,QAAA,CAAS,KAAK,CAAC;MAE9E,IAAIyC,WAAA,CAAYvB,MAAA,KAAW,GAAG;QAC5B1B,OAAA,CAAQU,IAAA,CAAKxB,EAAA,CAAG6D,MAAA,CAAO,yCAAyC,CAAC;QACjE;MACF;MAGA,MAAMG,WAAA,GAA4B,EAAC;QAC7BC,KAAA,GAAQ;UACZC,GAAA,EAAK;UACLC,QAAA,EAAU;UACVC,SAAA,EAAW;QACb;MAEA,WAAWzC,IAAA,IAAQoC,WAAA,EAAa;QAC9B,MAAMM,UAAA,GAAavE,IAAA,CAAK8D,aAAA,EAAejC,IAAI;UACrC2C,UAAA,GAAaxE,IAAA,CAAK6D,aAAA,EAAehC,IAAI;UACrC4C,MAAA,GAAStE,YAAA,CAAaoE,UAAA,EAAYC,UAAU;QAElDL,KAAA,CAAMM,MAAM,KAEZP,WAAA,CAAYf,IAAA,CAAK;UACftC,IAAA,EAAMgB,IAAA;UACN0C,UAAA;UACAC,UAAA;UACAC,MAAA;UACAC,UAAA,EAAYtE,WAAA,CAAYmE,UAAU;UAClCI,UAAA,EAAYvE,WAAA,CAAYoE,UAAU;QACpC,CAAC;MACH;MAQA,IANAxD,OAAA,CAAQU,IAAA,CAAKxB,EAAA,CAAGyB,IAAA,CAAK,UAAU,CAAC,GAChCX,OAAA,CAAQU,IAAA,CAAK,KAAKxB,EAAA,CAAG+B,KAAA,CAAM,GAAGkC,KAAA,CAAMC,GAAG,MAAM,CAAC,EAAE,GAChDpD,OAAA,CAAQU,IAAA,CAAK,KAAKxB,EAAA,CAAG6D,MAAA,CAAO,GAAGI,KAAA,CAAME,QAAQ,WAAW,CAAC,EAAE,GAC3DrD,OAAA,CAAQU,IAAA,CAAK,KAAKxB,EAAA,CAAGgC,GAAA,CAAI,GAAGiC,KAAA,CAAMG,SAAS,YAAY,CAAC,EAAE,GAC1DtD,OAAA,CAAQU,IAAA,CAAK,GAETyC,KAAA,CAAMC,GAAA,KAAQ,KAAKD,KAAA,CAAME,QAAA,KAAa,GAAG;QAC3CrD,OAAA,CAAQU,IAAA,CAAKxB,EAAA,CAAG+B,KAAA,CAAM,yCAAoC,CAAC;QAC3D;MACF;MAGA,MAAM2C,SAAA,GAAY;QAAER,GAAA,EAAK;QAAGC,QAAA,EAAU;QAAGC,SAAA,EAAW;MAAE;MACtDJ,WAAA,CAAYzC,IAAA,CAAK,CAACoD,CAAA,EAAGC,CAAA,KAAMF,SAAA,CAAUC,CAAA,CAAEJ,MAAM,IAAIG,SAAA,CAAUE,CAAA,CAAEL,MAAM,CAAC;MAGpE,IAAIM,WAAA,GAAc;MAElB,WAAWlD,IAAA,IAAQqC,WAAA,EACjB,IAAI9B,IAAA,CAAKuB,GAAA,IAAO9B,IAAA,CAAK4C,MAAA,KAAW,aAAa;QAE3C,MAAMO,SAAA,GAAYhF,IAAA,CAAK6D,aAAa;QAC/BpE,UAAA,CAAWuF,SAAS,KACvBtF,SAAA,CAAUsF,SAAA,EAAW;UAAEhB,SAAA,EAAW;QAAK,CAAC;QAE1C,MAAMZ,OAAA,GAAUxD,YAAA,CAAaiC,IAAA,CAAK0C,UAAU;QAC5C1E,aAAA,CAAcgC,IAAA,CAAK2C,UAAA,EAAYpB,OAAO,GACtCpC,OAAA,CAAQU,IAAA,CAAKxB,EAAA,CAAG+B,KAAA,CAAM,YAAOJ,IAAA,CAAKhB,IAAI,EAAE,CAAC,GACzCkE,WAAA;MACF,OACoB,OAAM1E,wBAAA,CAAyBwB,IAAI,MAEnDkD,WAAA;MAKN/D,OAAA,CAAQU,IAAA,CAAK,GACbV,OAAA,CAAQU,IAAA,CAAKxB,EAAA,CAAGyB,IAAA,CAAKzB,EAAA,CAAG+B,KAAA,CAAM,oBAAe8C,WAAW,kBAAkB,CAAC,CAAC,GAC5E/D,OAAA,CAAQU,IAAA,CAAK;IACf;EACF,CAAC;EAEYuD,WAAA,GAAchF,aAAA,CAAc;IACvCO,IAAA,EAAM;MACJK,IAAA,EAAM;MACNC,WAAA,EAAa;IACf;IACAoE,WAAA,EAAa;MACXC,IAAA,EAAMvE,WAAA;MACNwE,GAAA,EAAKjD,UAAA;MACLJ,IAAA,EAAM0B,WAAA;MACN4B,KAAA,EAAO3B;IACT;EACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
import {
|
|
2
|
+
existsSync,
|
|
3
|
+
lstatSync,
|
|
4
|
+
mkdirSync,
|
|
5
|
+
readdirSync,
|
|
6
|
+
readFileSync,
|
|
7
|
+
rmSync,
|
|
8
|
+
symlinkSync,
|
|
9
|
+
unlinkSync,
|
|
10
|
+
writeFileSync
|
|
11
|
+
} from "node:fs";
|
|
12
|
+
import { createRequire } from "node:module";
|
|
13
|
+
import { dirname, join, relative } from "node:path";
|
|
14
|
+
import { fileURLToPath } from "node:url";
|
|
15
|
+
import { defineCommand } from "citty";
|
|
16
|
+
import pc from "picocolors";
|
|
17
|
+
import {
|
|
18
|
+
discoverScripts,
|
|
19
|
+
getAllScriptMetadata,
|
|
20
|
+
getLocalScriptsDir
|
|
21
|
+
} from "../utils/script-utils";
|
|
22
|
+
const BUILTIN_COMMANDS = [
|
|
23
|
+
{ name: "onboard", description: "setup wizard for new projects" },
|
|
24
|
+
{ name: "docs", description: "view documentation" },
|
|
25
|
+
{ name: "env:setup", description: "setup environment variables" },
|
|
26
|
+
{ name: "run", description: "run scripts in parallel" },
|
|
27
|
+
{ name: "script", description: "manage and run scripts" },
|
|
28
|
+
{ name: "sync", description: "sync fork with upstream takeout" },
|
|
29
|
+
{ name: "changed", description: "show changes since last sync" },
|
|
30
|
+
{ name: "skills", description: "manage claude code skills" },
|
|
31
|
+
{ name: "completion", description: "shell completion setup" }
|
|
32
|
+
];
|
|
33
|
+
function findScriptsPackageRoot() {
|
|
34
|
+
try {
|
|
35
|
+
const resolved = import.meta.resolve("@take-out/scripts/package.json"), packageJsonPath = fileURLToPath(new URL(resolved));
|
|
36
|
+
return join(packageJsonPath, "..", "src");
|
|
37
|
+
} catch {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
function buildSummaryDescription(localScripts, builtInScripts) {
|
|
42
|
+
const categories = /* @__PURE__ */ new Set(), keywords = /* @__PURE__ */ new Set();
|
|
43
|
+
for (const [name] of [...localScripts, ...builtInScripts])
|
|
44
|
+
keywords.add(name), name.includes("/") && categories.add(name.split("/")[0]);
|
|
45
|
+
for (const cmd of BUILTIN_COMMANDS)
|
|
46
|
+
keywords.add(cmd.name);
|
|
47
|
+
return `CLI scripts and commands reference for the tko (takeout) CLI. Use when the user asks to run scripts, manage the project, or needs to know what commands are available. tko, takeout, CLI, scripts, commands, bun tko, project tasks, automation, ${[...categories].sort().join(", ")}, ${[...keywords].sort().join(", ")}`.slice(0, 2048);
|
|
48
|
+
}
|
|
49
|
+
function buildSummaryContent(localScripts, builtInScripts, metadata) {
|
|
50
|
+
const description = buildSummaryDescription(localScripts, builtInScripts), lines = [];
|
|
51
|
+
lines.push("---"), lines.push("name: tko-scripts"), lines.push(`description: ${description}`), lines.push("---"), lines.push(""), lines.push("# tko CLI - scripts & commands"), lines.push(""), lines.push("run with `bun tko <command>` or `bun tko <script-name>`."), lines.push(""), lines.push("## built-in commands"), lines.push("");
|
|
52
|
+
for (const cmd of BUILTIN_COMMANDS)
|
|
53
|
+
lines.push(` ${cmd.name} - ${cmd.description}`);
|
|
54
|
+
lines.push("");
|
|
55
|
+
const formatSection = (title, scripts) => {
|
|
56
|
+
if (scripts.size === 0) return;
|
|
57
|
+
const categories = /* @__PURE__ */ new Map(), rootScripts = [];
|
|
58
|
+
for (const [name] of scripts)
|
|
59
|
+
if (name.includes("/")) {
|
|
60
|
+
const category = name.split("/")[0];
|
|
61
|
+
categories.has(category) || categories.set(category, []), categories.get(category).push(name);
|
|
62
|
+
} else
|
|
63
|
+
rootScripts.push(name);
|
|
64
|
+
lines.push(`## ${title}`), lines.push("");
|
|
65
|
+
for (const name of rootScripts) {
|
|
66
|
+
const meta = metadata.get(name), desc = meta?.description ? ` - ${meta.description}` : "", args = meta?.args?.length ? ` [${meta.args.join(", ")}]` : "";
|
|
67
|
+
lines.push(` ${name}${desc}${args}`);
|
|
68
|
+
}
|
|
69
|
+
for (const [category, categoryScripts] of categories) {
|
|
70
|
+
lines.push(""), lines.push(` ${category}/`);
|
|
71
|
+
for (const name of categoryScripts) {
|
|
72
|
+
const shortName = name.substring(category.length + 1), meta = metadata.get(name), desc = meta?.description ? ` - ${meta.description}` : "", args = meta?.args?.length ? ` [${meta.args.join(", ")}]` : "";
|
|
73
|
+
lines.push(` ${shortName}${desc}${args}`);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
lines.push("");
|
|
77
|
+
};
|
|
78
|
+
return formatSection("local scripts", localScripts), formatSection("built-in scripts", builtInScripts), lines.push("## usage"), lines.push(""), lines.push("```bash"), lines.push("bun tko <command> # run a built-in command"), lines.push("bun tko <script-name> # execute direct script"), lines.push(
|
|
79
|
+
"bun tko <group> <script> # execute nested script (e.g. bun tko aws health)"
|
|
80
|
+
), lines.push("bun tko run s1 s2 s3 # run multiple scripts in parallel"), lines.push("bun tko script new <path> # create a new script"), lines.push("```"), lines.push(""), lines.join(`
|
|
81
|
+
`);
|
|
82
|
+
}
|
|
83
|
+
async function generateSummary(cwd) {
|
|
84
|
+
const skillsDir = join(cwd, ".claude", "skills"), skillDir = join(skillsDir, "tko-scripts"), skillFile = join(skillDir, "SKILL.md"), localScripts = discoverScripts(getLocalScriptsDir()), builtInDir = findScriptsPackageRoot(), builtInScripts = builtInDir ? discoverScripts(builtInDir) : /* @__PURE__ */ new Map(), allScripts = new Map([...localScripts, ...builtInScripts]), metadata = await getAllScriptMetadata(allScripts), totalScripts = localScripts.size + builtInScripts.size;
|
|
85
|
+
console.info(
|
|
86
|
+
pc.dim(
|
|
87
|
+
`found ${totalScripts} scripts (${localScripts.size} local, ${builtInScripts.size} built-in) + ${BUILTIN_COMMANDS.length} commands`
|
|
88
|
+
)
|
|
89
|
+
);
|
|
90
|
+
const content = buildSummaryContent(localScripts, builtInScripts, metadata);
|
|
91
|
+
try {
|
|
92
|
+
if (readFileSync(skillFile, "utf-8") === content)
|
|
93
|
+
return console.info(` ${pc.dim("tko-scripts")} ${pc.dim("unchanged")}`), !1;
|
|
94
|
+
} catch {
|
|
95
|
+
}
|
|
96
|
+
return existsSync(skillDir) || mkdirSync(skillDir, { recursive: !0 }), writeFileSync(skillFile, content), console.info(` ${pc.green("\u2713")} tko-scripts`), !0;
|
|
97
|
+
}
|
|
98
|
+
const require2 = createRequire(import.meta.url);
|
|
99
|
+
let DOCS_DIR;
|
|
100
|
+
try {
|
|
101
|
+
DOCS_DIR = dirname(require2.resolve("@take-out/docs/package.json"));
|
|
102
|
+
} catch {
|
|
103
|
+
DOCS_DIR = "";
|
|
104
|
+
}
|
|
105
|
+
const SKILL_PREFIX = "takeout-";
|
|
106
|
+
function hasSkillFrontmatter(content) {
|
|
107
|
+
if (!content.startsWith("---")) return !1;
|
|
108
|
+
const endIndex = content.indexOf("---", 3);
|
|
109
|
+
if (endIndex === -1) return !1;
|
|
110
|
+
const frontmatter = content.slice(3, endIndex);
|
|
111
|
+
return frontmatter.includes("name:") && frontmatter.includes("description:");
|
|
112
|
+
}
|
|
113
|
+
function isDevOnly(content) {
|
|
114
|
+
if (!content.startsWith("---")) return !1;
|
|
115
|
+
const endIndex = content.indexOf("---", 3);
|
|
116
|
+
if (endIndex === -1) return !1;
|
|
117
|
+
const frontmatter = content.slice(3, endIndex);
|
|
118
|
+
return /\bdev:\s*true\b/.test(frontmatter);
|
|
119
|
+
}
|
|
120
|
+
function extractDocMeta(content) {
|
|
121
|
+
const lines = content.split(`
|
|
122
|
+
`);
|
|
123
|
+
let title = "", description = "", startLine = 0;
|
|
124
|
+
if (lines[0]?.trim() === "---") {
|
|
125
|
+
for (let i = 1; i < lines.length; i++)
|
|
126
|
+
if (lines[i]?.trim() === "---") {
|
|
127
|
+
startLine = i + 1;
|
|
128
|
+
break;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
for (let i = startLine; i < lines.length; i++) {
|
|
132
|
+
const trimmed = lines[i]?.trim() || "";
|
|
133
|
+
if (!title && trimmed.startsWith("# ")) {
|
|
134
|
+
title = trimmed.slice(2).trim();
|
|
135
|
+
continue;
|
|
136
|
+
}
|
|
137
|
+
if (title && trimmed && !trimmed.startsWith("#")) {
|
|
138
|
+
description = trimmed;
|
|
139
|
+
break;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
return { title, description };
|
|
143
|
+
}
|
|
144
|
+
function toSkillName(name) {
|
|
145
|
+
return name.toLowerCase().replace(/[^a-z0-9-]/g, "-").replace(/-+/g, "-").replace(/^-|-$/g, "").slice(0, 64);
|
|
146
|
+
}
|
|
147
|
+
function collectAllDocs(cwd) {
|
|
148
|
+
const docs = [], seen = /* @__PURE__ */ new Set(), localDocsDir = join(cwd, "docs");
|
|
149
|
+
if (existsSync(localDocsDir)) {
|
|
150
|
+
const files = readdirSync(localDocsDir).filter((f) => f.endsWith(".md"));
|
|
151
|
+
for (const file of files) {
|
|
152
|
+
const name = file.replace(/\.md$/, "");
|
|
153
|
+
docs.push({ name, path: join(localDocsDir, file), source: "local" }), seen.add(name);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
if (DOCS_DIR && existsSync(DOCS_DIR)) {
|
|
157
|
+
const files = readdirSync(DOCS_DIR).filter((f) => f.endsWith(".md"));
|
|
158
|
+
for (const file of files) {
|
|
159
|
+
const name = file.replace(/\.md$/, "");
|
|
160
|
+
seen.has(name) || docs.push({ name, path: join(DOCS_DIR, file), source: "package" });
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
return docs;
|
|
164
|
+
}
|
|
165
|
+
async function generateDocSkills(cwd, clean) {
|
|
166
|
+
const skillsDir = join(cwd, ".claude", "skills"), docs = collectAllDocs(cwd);
|
|
167
|
+
if (docs.length === 0)
|
|
168
|
+
return console.info(pc.yellow("no documentation files found")), { symlinked: 0, generated: 0, unchanged: 0 };
|
|
169
|
+
if (console.info(pc.dim(`found ${docs.length} documentation files`)), clean && existsSync(skillsDir)) {
|
|
170
|
+
const existing = readdirSync(skillsDir);
|
|
171
|
+
for (const dir of existing)
|
|
172
|
+
dir.startsWith(SKILL_PREFIX) && rmSync(join(skillsDir, dir), { recursive: !0 });
|
|
173
|
+
}
|
|
174
|
+
existsSync(skillsDir) || mkdirSync(skillsDir, { recursive: !0 });
|
|
175
|
+
let symlinked = 0, generated = 0, unchanged = 0;
|
|
176
|
+
const isDev = !!process.env.IS_TAMAGUI_DEV;
|
|
177
|
+
for (const doc of docs) {
|
|
178
|
+
const content = readFileSync(doc.path, "utf-8");
|
|
179
|
+
if (isDevOnly(content) && !isDev) continue;
|
|
180
|
+
if (hasSkillFrontmatter(content)) {
|
|
181
|
+
const nameMatch = content.match(/^---\s*\nname:\s*([^\n]+)/m);
|
|
182
|
+
if (!nameMatch) continue;
|
|
183
|
+
const skillName = nameMatch[1].trim(), skillDir = join(skillsDir, skillName), skillFile = join(skillDir, "SKILL.md");
|
|
184
|
+
existsSync(skillDir) || mkdirSync(skillDir, { recursive: !0 });
|
|
185
|
+
const relativePath = relative(skillDir, doc.path);
|
|
186
|
+
let shouldCreate = !0;
|
|
187
|
+
try {
|
|
188
|
+
lstatSync(skillFile).isSymbolicLink() && existsSync(skillFile) && readFileSync(skillFile, "utf-8") === content && (unchanged++, shouldCreate = !1), shouldCreate && unlinkSync(skillFile);
|
|
189
|
+
} catch {
|
|
190
|
+
}
|
|
191
|
+
if (!shouldCreate) continue;
|
|
192
|
+
symlinkSync(relativePath, skillFile), symlinked++;
|
|
193
|
+
const sourceLabel = doc.source === "local" ? pc.blue("local") : pc.dim("package");
|
|
194
|
+
console.info(
|
|
195
|
+
` ${pc.green("\u27F7")} ${skillName} ${sourceLabel} ${pc.dim("(symlink)")}`
|
|
196
|
+
);
|
|
197
|
+
} else {
|
|
198
|
+
const baseName = toSkillName(doc.name), skillName = `${SKILL_PREFIX}${baseName}`, skillDir = join(skillsDir, skillName), skillFile = join(skillDir, "SKILL.md");
|
|
199
|
+
existsSync(skillDir) || mkdirSync(skillDir, { recursive: !0 });
|
|
200
|
+
const { title, description } = extractDocMeta(content), skillDescription = description ? `${title}. ${description}`.slice(0, 1024) : title.slice(0, 1024), skillContent = `---
|
|
201
|
+
name: ${skillName}
|
|
202
|
+
description: ${skillDescription}
|
|
203
|
+
---
|
|
204
|
+
|
|
205
|
+
${content}
|
|
206
|
+
`;
|
|
207
|
+
let shouldWrite = !0;
|
|
208
|
+
try {
|
|
209
|
+
lstatSync(skillFile).isSymbolicLink() ? unlinkSync(skillFile) : readFileSync(skillFile, "utf-8") === skillContent && (unchanged++, shouldWrite = !1);
|
|
210
|
+
} catch {
|
|
211
|
+
}
|
|
212
|
+
if (!shouldWrite) continue;
|
|
213
|
+
writeFileSync(skillFile, skillContent), generated++;
|
|
214
|
+
const sourceLabel = doc.source === "local" ? pc.blue("local") : pc.dim("package");
|
|
215
|
+
console.info(
|
|
216
|
+
` ${pc.green("\u2713")} ${skillName} ${sourceLabel} ${pc.dim("(generated)")}`
|
|
217
|
+
);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
return { symlinked, generated, unchanged };
|
|
221
|
+
}
|
|
222
|
+
const scriptsCommand = defineCommand({
|
|
223
|
+
meta: {
|
|
224
|
+
name: "scripts",
|
|
225
|
+
description: "Generate a skill summarizing all tko scripts and commands"
|
|
226
|
+
},
|
|
227
|
+
async run() {
|
|
228
|
+
const cwd = process.cwd();
|
|
229
|
+
console.info(), console.info(pc.bold(pc.cyan("Generate scripts skill"))), console.info(), await generateSummary(cwd), console.info();
|
|
230
|
+
}
|
|
231
|
+
}), generateCommand = defineCommand({
|
|
232
|
+
meta: {
|
|
233
|
+
name: "generate",
|
|
234
|
+
description: "Generate all Claude Code skills (doc skills + summary)"
|
|
235
|
+
},
|
|
236
|
+
args: {
|
|
237
|
+
clean: {
|
|
238
|
+
type: "boolean",
|
|
239
|
+
description: "Remove existing takeout-* skills before generating",
|
|
240
|
+
default: !1
|
|
241
|
+
},
|
|
242
|
+
"skip-internal-docs": {
|
|
243
|
+
type: "boolean",
|
|
244
|
+
description: "Skip generating skills from internal documentation files",
|
|
245
|
+
default: !1
|
|
246
|
+
}
|
|
247
|
+
},
|
|
248
|
+
async run({ args }) {
|
|
249
|
+
const cwd = process.cwd(), skillsDir = join(cwd, ".claude", "skills");
|
|
250
|
+
console.info(), console.info(pc.bold(pc.cyan("Generate all skills"))), console.info();
|
|
251
|
+
let symlinked = 0, generated = 0, unchanged = 0;
|
|
252
|
+
if (!args["skip-internal-docs"]) {
|
|
253
|
+
const docStats = await generateDocSkills(cwd, args.clean);
|
|
254
|
+
symlinked = docStats.symlinked, generated = docStats.generated, unchanged = docStats.unchanged, console.info();
|
|
255
|
+
}
|
|
256
|
+
await generateSummary(cwd), console.info(), console.info(pc.bold("summary:")), symlinked > 0 && console.info(` ${pc.green(`${symlinked} symlinked`)}`), generated > 0 && console.info(
|
|
257
|
+
` ${pc.yellow(`${generated} generated`)} ${pc.dim("(add frontmatter to enable symlink)")}`
|
|
258
|
+
), unchanged > 0 && console.info(` ${pc.dim(`${unchanged} unchanged`)}`), console.info(pc.dim(` skills in ${skillsDir}`)), console.info();
|
|
259
|
+
}
|
|
260
|
+
}), skillsCommand = defineCommand({
|
|
261
|
+
meta: {
|
|
262
|
+
name: "skills",
|
|
263
|
+
description: "Manage Claude Code skills"
|
|
264
|
+
},
|
|
265
|
+
subCommands: {
|
|
266
|
+
generate: generateCommand,
|
|
267
|
+
scripts: scriptsCommand
|
|
268
|
+
}
|
|
269
|
+
});
|
|
270
|
+
export {
|
|
271
|
+
skillsCommand
|
|
272
|
+
};
|
|
273
|
+
//# sourceMappingURL=skills.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/commands/skills.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["require"]
|
|
6
|
+
}
|