@toolr/seedr 0.1.0 → 0.1.2
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/{chunk-55GDCCIE.js → chunk-LA6GTMJY.js} +47 -6
- package/dist/cli.js +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/package.json +2 -2
|
@@ -290,28 +290,68 @@ var claudeConverter = {
|
|
|
290
290
|
// src/converters/copilot.ts
|
|
291
291
|
var copilotConverter = {
|
|
292
292
|
convert(skill) {
|
|
293
|
-
|
|
293
|
+
const { frontmatter, body } = skill;
|
|
294
|
+
const lines = [];
|
|
295
|
+
if (frontmatter.name) {
|
|
296
|
+
lines.push(`# ${frontmatter.name}`, "");
|
|
297
|
+
}
|
|
298
|
+
if (frontmatter.description) {
|
|
299
|
+
lines.push(frontmatter.description, "");
|
|
300
|
+
}
|
|
301
|
+
lines.push(body);
|
|
302
|
+
return lines.join("\n");
|
|
294
303
|
}
|
|
295
304
|
};
|
|
296
305
|
|
|
297
306
|
// src/converters/gemini.ts
|
|
298
307
|
var geminiConverter = {
|
|
299
308
|
convert(skill) {
|
|
300
|
-
|
|
309
|
+
const { frontmatter, body } = skill;
|
|
310
|
+
const lines = [];
|
|
311
|
+
if (frontmatter.name) {
|
|
312
|
+
lines.push(`# ${frontmatter.name}`, "");
|
|
313
|
+
}
|
|
314
|
+
if (frontmatter.description) {
|
|
315
|
+
lines.push(`> ${frontmatter.description}`, "");
|
|
316
|
+
}
|
|
317
|
+
lines.push("## Instructions", "", body);
|
|
318
|
+
return lines.join("\n");
|
|
301
319
|
}
|
|
302
320
|
};
|
|
303
321
|
|
|
304
322
|
// src/converters/codex.ts
|
|
305
323
|
var codexConverter = {
|
|
306
324
|
convert(skill) {
|
|
307
|
-
|
|
325
|
+
const { frontmatter, body } = skill;
|
|
326
|
+
const lines = [];
|
|
327
|
+
lines.push("# Agent Instructions", "");
|
|
328
|
+
if (frontmatter.name) {
|
|
329
|
+
lines.push(`**Name:** ${frontmatter.name}`);
|
|
330
|
+
}
|
|
331
|
+
if (frontmatter.description) {
|
|
332
|
+
lines.push(`**Description:** ${frontmatter.description}`);
|
|
333
|
+
}
|
|
334
|
+
if (frontmatter.name || frontmatter.description) {
|
|
335
|
+
lines.push("");
|
|
336
|
+
}
|
|
337
|
+
lines.push("## Behavior", "", body);
|
|
338
|
+
return lines.join("\n");
|
|
308
339
|
}
|
|
309
340
|
};
|
|
310
341
|
|
|
311
342
|
// src/converters/opencode.ts
|
|
312
343
|
var opencodeConverter = {
|
|
313
344
|
convert(skill) {
|
|
314
|
-
|
|
345
|
+
const { frontmatter, body } = skill;
|
|
346
|
+
const lines = [];
|
|
347
|
+
if (frontmatter.name) {
|
|
348
|
+
lines.push(`# ${frontmatter.name}`, "");
|
|
349
|
+
}
|
|
350
|
+
if (frontmatter.description) {
|
|
351
|
+
lines.push(frontmatter.description, "");
|
|
352
|
+
}
|
|
353
|
+
lines.push("---", "", body);
|
|
354
|
+
return lines.join("\n");
|
|
315
355
|
}
|
|
316
356
|
};
|
|
317
357
|
|
|
@@ -354,9 +394,10 @@ async function getSkillContent(item, tool) {
|
|
|
354
394
|
const canonicalContent = await getItemContent(item);
|
|
355
395
|
return convertSkillToTool(canonicalContent, tool);
|
|
356
396
|
}
|
|
357
|
-
async function writeSkillFile(item,
|
|
397
|
+
async function writeSkillFile(item, tool, content, destPath, method) {
|
|
398
|
+
const canSymlink = tool === "claude" && item.sourceType === "toolr";
|
|
358
399
|
const sourcePath = getItemSourcePath(item);
|
|
359
|
-
if (method === "symlink" &&
|
|
400
|
+
if (method === "symlink" && canSymlink && sourcePath) {
|
|
360
401
|
await installFile(sourcePath, destPath, "symlink");
|
|
361
402
|
} else {
|
|
362
403
|
await ensureDir(dirname3(destPath));
|
package/dist/cli.js
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -76,8 +76,8 @@ interface ParsedSkill {
|
|
|
76
76
|
/**
|
|
77
77
|
* Skill Converter Registry
|
|
78
78
|
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
79
|
+
* Strategy pattern implementation for converting skills between AI tool formats.
|
|
80
|
+
* The canonical format is Claude Code's markdown with YAML frontmatter.
|
|
81
81
|
*
|
|
82
82
|
* To add a new tool:
|
|
83
83
|
* 1. Create a new converter file (e.g., newtool.ts)
|
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@toolr/seedr",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Seed your projects with AI configurations",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -24,7 +24,6 @@
|
|
|
24
24
|
"clean": "rm -rf dist"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@seedr/shared": "workspace:*",
|
|
28
27
|
"chalk": "^5.3.0",
|
|
29
28
|
"commander": "^12.1.0",
|
|
30
29
|
"fs-extra": "^11.2.0",
|
|
@@ -34,6 +33,7 @@
|
|
|
34
33
|
"simple-git": "^3.27.0"
|
|
35
34
|
},
|
|
36
35
|
"devDependencies": {
|
|
36
|
+
"@seedr/shared": "workspace:*",
|
|
37
37
|
"@types/fs-extra": "^11.0.4",
|
|
38
38
|
"@types/inquirer": "^9.0.7",
|
|
39
39
|
"@types/node": "^22.10.0",
|