skilld 0.3.2 → 0.4.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.
- package/README.md +9 -8
- package/dist/_chunks/detect-imports.mjs +51 -37
- package/dist/_chunks/detect-imports.mjs.map +1 -1
- package/dist/_chunks/{pool.mjs → pool2.mjs} +7 -2
- package/dist/_chunks/pool2.mjs.map +1 -0
- package/dist/_chunks/releases.mjs +278 -33
- package/dist/_chunks/releases.mjs.map +1 -1
- package/dist/_chunks/utils.d.mts +54 -1
- package/dist/_chunks/utils.d.mts.map +1 -1
- package/dist/_chunks/yaml.mjs +24 -0
- package/dist/_chunks/yaml.mjs.map +1 -0
- package/dist/agent/index.d.mts +11 -1
- package/dist/agent/index.d.mts.map +1 -1
- package/dist/agent/index.mjs +2 -2
- package/dist/cli.mjs +496 -50
- package/dist/cli.mjs.map +1 -1
- package/dist/retriv/index.mjs +1 -1
- package/dist/retriv/index.mjs.map +1 -1
- package/dist/sources/index.d.mts +2 -2
- package/dist/sources/index.mjs +2 -2
- package/package.json +1 -1
- package/dist/_chunks/pool.mjs.map +0 -1
- package/dist/_chunks/sync-parallel.mjs +0 -296
- package/dist/_chunks/sync-parallel.mjs.map +0 -1
package/dist/_chunks/utils.d.mts
CHANGED
|
@@ -47,6 +47,59 @@ interface EntryFile {
|
|
|
47
47
|
*/
|
|
48
48
|
declare function resolveEntryFiles(packageDir: string): Promise<EntryFile[]>;
|
|
49
49
|
//#endregion
|
|
50
|
+
//#region src/sources/git-skills.d.ts
|
|
51
|
+
/**
|
|
52
|
+
* Git repo skill source — parse inputs + fetch pre-authored skills from repos
|
|
53
|
+
*
|
|
54
|
+
* Supports GitHub shorthand (owner/repo), full URLs, SSH, GitLab, and local paths.
|
|
55
|
+
* Skills are pre-authored SKILL.md files — no doc resolution or LLM generation needed.
|
|
56
|
+
*/
|
|
57
|
+
interface GitSkillSource {
|
|
58
|
+
type: 'github' | 'gitlab' | 'git-ssh' | 'local';
|
|
59
|
+
owner?: string;
|
|
60
|
+
repo?: string;
|
|
61
|
+
/** Direct path to a specific skill (from /tree/ref/path URLs) */
|
|
62
|
+
skillPath?: string;
|
|
63
|
+
/** Branch/tag parsed from URL */
|
|
64
|
+
ref?: string;
|
|
65
|
+
/** Absolute path for local sources */
|
|
66
|
+
localPath?: string;
|
|
67
|
+
}
|
|
68
|
+
interface RemoteSkill {
|
|
69
|
+
/** From SKILL.md frontmatter `name` field, or directory name */
|
|
70
|
+
name: string;
|
|
71
|
+
/** From SKILL.md frontmatter `description` field */
|
|
72
|
+
description: string;
|
|
73
|
+
/** Path within repo (e.g., "skills/web-design-guidelines") */
|
|
74
|
+
path: string;
|
|
75
|
+
/** Full SKILL.md content */
|
|
76
|
+
content: string;
|
|
77
|
+
/** Supporting files (scripts/, references/, assets/) */
|
|
78
|
+
files: Array<{
|
|
79
|
+
path: string;
|
|
80
|
+
content: string;
|
|
81
|
+
}>;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Detect whether an input string is a git skill source.
|
|
85
|
+
* Returns null for npm package names (including scoped @scope/pkg).
|
|
86
|
+
*/
|
|
87
|
+
declare function parseGitSkillInput(input: string): GitSkillSource | null;
|
|
88
|
+
/**
|
|
89
|
+
* Parse name and description from SKILL.md frontmatter.
|
|
90
|
+
*/
|
|
91
|
+
declare function parseSkillFrontmatterName(content: string): {
|
|
92
|
+
name?: string;
|
|
93
|
+
description?: string;
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Fetch skills from a git source. Returns list of discovered skills + commit SHA.
|
|
97
|
+
*/
|
|
98
|
+
declare function fetchGitSkills(source: GitSkillSource, onProgress?: (msg: string) => void): Promise<{
|
|
99
|
+
skills: RemoteSkill[];
|
|
100
|
+
commitSha?: string;
|
|
101
|
+
}>;
|
|
102
|
+
//#endregion
|
|
50
103
|
//#region src/sources/types.d.ts
|
|
51
104
|
/**
|
|
52
105
|
* Doc resolver types
|
|
@@ -417,5 +470,5 @@ declare function normalizeRepoUrl(url: string): string;
|
|
|
417
470
|
*/
|
|
418
471
|
declare function extractBranchHint(url: string): string | undefined;
|
|
419
472
|
//#endregion
|
|
420
|
-
export { NpmPackageInfo as $, downloadLlmsDocs as A, isGhAvailable as B, readLocalDependencies as C, resolvePackageDocs as D, resolveLocalPackageDocs as E, parseMarkdownLinks as F, fetchReadme as G, MIN_GIT_DOCS as H, GitHubIssue as I, validateGitDocsWithLlms as J, fetchReadmeContent as K, fetchGitHubIssues as L, fetchLlmsTxt as M, fetchLlmsUrl as N, resolvePackageDocsWithAttempts as O, normalizeLlmsLinks as P, LocalDependency as Q, formatIssueAsMarkdown as R, parseVersionSpecifier as S, resolveInstalledVersion as T, fetchGitDocs as U, GitDocsResult as V, fetchGitHubRepoMeta as W, LlmsContent as X, FetchedDoc as Y, LlmsLink as Z, fetchLatestVersion as _, normalizeRepoUrl as a,
|
|
473
|
+
export { NpmPackageInfo as $, downloadLlmsDocs as A, isGhAvailable as B, readLocalDependencies as C, resolvePackageDocs as D, resolveLocalPackageDocs as E, parseMarkdownLinks as F, fetchReadme as G, MIN_GIT_DOCS as H, GitHubIssue as I, validateGitDocsWithLlms as J, fetchReadmeContent as K, fetchGitHubIssues as L, fetchLlmsTxt as M, fetchLlmsUrl as N, resolvePackageDocsWithAttempts as O, normalizeLlmsLinks as P, LocalDependency as Q, formatIssueAsMarkdown as R, parseVersionSpecifier as S, resolveInstalledVersion as T, fetchGitDocs as U, GitDocsResult as V, fetchGitHubRepoMeta as W, LlmsContent as X, FetchedDoc as Y, LlmsLink as Z, fetchLatestVersion as _, normalizeRepoUrl as a, fetchGitSkills as at, fetchPkgDist as b, GitHubRelease as c, EntryFile as ct, DOC_OVERRIDES as d, fetchGitHubDiscussions as dt, ResolveAttempt as et, DocOverride as f, formatDiscussionAsMarkdown as ft, ResolveStep as g, ResolveOptions as h, isGitHubRepoUrl as i, RemoteSkill as it, extractSections as j, searchNpmPackages as k, fetchReleaseNotes as l, resolveEntryFiles as lt, LocalPackageInfo as m, extractBranchHint as n, ResolvedPackage as nt, parseGitHubUrl as o, parseGitSkillInput as ot, getDocOverride as p, generateDiscussionIndex as pt, isShallowGitDocs as q, fetchText as r, GitSkillSource as rt, verifyUrl as s, parseSkillFrontmatterName as st, $fetch as t, ResolveResult as tt, generateReleaseIndex as u, GitHubDiscussion as ut, fetchNpmPackage as v, readLocalPackageInfo as w, getInstalledSkillVersion as x, fetchNpmRegistryMeta as y, generateIssueIndex as z };
|
|
421
474
|
//# sourceMappingURL=utils.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.mts","names":[],"sources":["../../src/sources/discussions.ts","../../src/sources/entries.ts","../../src/sources/types.ts","../../src/sources/github.ts","../../src/sources/issues.ts","../../src/sources/llms.ts","../../src/sources/npm.ts","../../src/sources/overrides.ts","../../src/sources/releases.ts","../../src/sources/utils.ts"],"mappings":";;;;;;AAuBA;UAAiB,iBAAA;EACf,IAAA;EACA,MAAA;AAAA;AAAA,UAGe,gBAAA;EACf,MAAA;EACA,KAAA;EACA,IAAA;EACA,QAAA;EACA,SAAA;EACA,GAAA;EACA,WAAA;EACA,QAAA;EACA,MAAA;EACA,WAAA,EAAa,iBAAA;AAAA;;;;;iBAOO,sBAAA,CACpB,KAAA,UACA,IAAA,UACA,KAAA,YACC,OAAA,CAAQ,gBAAA;AAJX;;;AAAA,iBAiEgB,0BAAA,CAA2B,CAAA,EAAG,gBAAA;;;;;iBA+C9B,uBAAA,CAAwB,WAAA,EAAa,gBAAA;;;UCrJpC,SAAA;EACf,IAAA;EACA,OAAA;EACA,IAAA;AAAA;;;;iBAoCoB,iBAAA,CAAkB,UAAA,WAAqB,OAAA,CAAQ,SAAA;;;;;;
|
|
1
|
+
{"version":3,"file":"utils.d.mts","names":[],"sources":["../../src/sources/discussions.ts","../../src/sources/entries.ts","../../src/sources/git-skills.ts","../../src/sources/types.ts","../../src/sources/github.ts","../../src/sources/issues.ts","../../src/sources/llms.ts","../../src/sources/npm.ts","../../src/sources/overrides.ts","../../src/sources/releases.ts","../../src/sources/utils.ts"],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
const NEEDS_QUOTING = /[:"'\\\n\r\t#{}[\],&*!|>%@`]/;
|
|
2
|
+
function yamlEscape(value) {
|
|
3
|
+
if (!NEEDS_QUOTING.test(value)) return value;
|
|
4
|
+
return `"${value.replace(/\\/g, "\\\\").replace(/"/g, "\\\"").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/\t/g, "\\t")}"`;
|
|
5
|
+
}
|
|
6
|
+
function yamlUnescape(raw) {
|
|
7
|
+
const trimmed = raw.trim();
|
|
8
|
+
if (!trimmed) return "";
|
|
9
|
+
if (trimmed.startsWith("\"") && trimmed.endsWith("\"")) return trimmed.slice(1, -1).replace(/\\n/g, "\n").replace(/\\r/g, "\r").replace(/\\t/g, " ").replace(/\\"/g, "\"").replace(/\\\\/g, "\\");
|
|
10
|
+
if (trimmed.startsWith("'") && trimmed.endsWith("'")) return trimmed.slice(1, -1);
|
|
11
|
+
return trimmed;
|
|
12
|
+
}
|
|
13
|
+
function yamlParseKV(line) {
|
|
14
|
+
const trimmed = line.trim();
|
|
15
|
+
const colonIdx = trimmed.indexOf(":");
|
|
16
|
+
if (colonIdx === -1) return null;
|
|
17
|
+
const key = trimmed.slice(0, colonIdx).trim();
|
|
18
|
+
const rawValue = trimmed.slice(colonIdx + 1);
|
|
19
|
+
if (!key) return null;
|
|
20
|
+
return [key, yamlUnescape(rawValue)];
|
|
21
|
+
}
|
|
22
|
+
export { yamlParseKV as n, yamlUnescape as r, yamlEscape as t };
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=yaml.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yaml.mjs","names":[],"sources":["../../src/core/yaml.ts"],"sourcesContent":["/**\n * Minimal YAML value escaping/unescaping for our hand-rolled parsers.\n *\n * Handles the characters that break naive `:` splitting and quote stripping:\n * colons, quotes, newlines, backslashes.\n */\n\n/** Characters that require double-quoting in YAML values */\nconst NEEDS_QUOTING = /[:\"'\\\\\\n\\r\\t#{}[\\],&*!|>%@`]/\n\n/**\n * Escape a value for safe YAML emission. Always double-quotes if the value\n * contains any special characters; returns unquoted for simple values.\n */\nexport function yamlEscape(value: string): string {\n if (!NEEDS_QUOTING.test(value))\n return value\n // Escape backslashes first, then double quotes, then control chars\n const escaped = value\n .replace(/\\\\/g, '\\\\\\\\')\n .replace(/\"/g, '\\\\\"')\n .replace(/\\n/g, '\\\\n')\n .replace(/\\r/g, '\\\\r')\n .replace(/\\t/g, '\\\\t')\n return `\"${escaped}\"`\n}\n\n/**\n * Parse a raw YAML value string back to its actual value.\n * Handles double-quoted (with escapes), single-quoted, and unquoted values.\n */\nexport function yamlUnescape(raw: string): string {\n const trimmed = raw.trim()\n if (!trimmed)\n return ''\n\n // Double-quoted: process escape sequences\n if (trimmed.startsWith('\"') && trimmed.endsWith('\"')) {\n return trimmed.slice(1, -1)\n .replace(/\\\\n/g, '\\n')\n .replace(/\\\\r/g, '\\r')\n .replace(/\\\\t/g, '\\t')\n .replace(/\\\\\"/g, '\"')\n .replace(/\\\\\\\\/g, '\\\\')\n }\n\n // Single-quoted: no escape processing, just strip quotes\n if (trimmed.startsWith('\\'') && trimmed.endsWith('\\''))\n return trimmed.slice(1, -1)\n\n return trimmed\n}\n\n/**\n * Parse a YAML `key: value` line, correctly handling colons inside quoted values.\n * Returns [key, value] or null if not a valid KV line.\n */\nexport function yamlParseKV(line: string): [string, string] | null {\n const trimmed = line.trim()\n // Find the first `: ` or `:\\n` or `:$` — the YAML key-value separator\n const colonIdx = trimmed.indexOf(':')\n if (colonIdx === -1)\n return null\n const key = trimmed.slice(0, colonIdx).trim()\n const rawValue = trimmed.slice(colonIdx + 1)\n if (!key)\n return null\n return [key, yamlUnescape(rawValue)]\n}\n"],"mappings":"AAQA,MAAM,gBAAgB;AAMtB,SAAgB,WAAW,OAAuB;AAChD,KAAI,CAAC,cAAc,KAAK,MAAM,CAC5B,QAAO;AAQT,QAAO,IANS,MACb,QAAQ,OAAO,OAAO,CACtB,QAAQ,MAAM,OAAM,CACpB,QAAQ,OAAO,MAAM,CACrB,QAAQ,OAAO,MAAM,CACrB,QAAQ,OAAO,MAAM,CACL;;AAOrB,SAAgB,aAAa,KAAqB;CAChD,MAAM,UAAU,IAAI,MAAM;AAC1B,KAAI,CAAC,QACH,QAAO;AAGT,KAAI,QAAQ,WAAW,KAAI,IAAI,QAAQ,SAAS,KAAI,CAClD,QAAO,QAAQ,MAAM,GAAG,GAAG,CACxB,QAAQ,QAAQ,KAAK,CACrB,QAAQ,QAAQ,KAAK,CACrB,QAAQ,QAAQ,IAAK,CACrB,QAAQ,QAAQ,KAAI,CACpB,QAAQ,SAAS,KAAK;AAI3B,KAAI,QAAQ,WAAW,IAAK,IAAI,QAAQ,SAAS,IAAK,CACpD,QAAO,QAAQ,MAAM,GAAG,GAAG;AAE7B,QAAO;;AAOT,SAAgB,YAAY,MAAuC;CACjE,MAAM,UAAU,KAAK,MAAM;CAE3B,MAAM,WAAW,QAAQ,QAAQ,IAAI;AACrC,KAAI,aAAa,GACf,QAAO;CACT,MAAM,MAAM,QAAQ,MAAM,GAAG,SAAS,CAAC,MAAM;CAC7C,MAAM,WAAW,QAAQ,MAAM,WAAW,EAAE;AAC5C,KAAI,CAAC,IACH,QAAO;AACT,QAAO,CAAC,KAAK,aAAa,SAAS,CAAC"}
|
package/dist/agent/index.d.mts
CHANGED
|
@@ -231,6 +231,16 @@ declare function installSkillForAgents(skillName: string, skillContent: string,
|
|
|
231
231
|
installed: AgentType[];
|
|
232
232
|
paths: string[];
|
|
233
233
|
};
|
|
234
|
+
/**
|
|
235
|
+
* Create relative symlinks from each detected agent's skills dir to the shared .skills/ dir.
|
|
236
|
+
* Only targets agents whose config dir already exists in the project.
|
|
237
|
+
* Replaces existing symlinks, skips real directories (user's custom skills).
|
|
238
|
+
*/
|
|
239
|
+
declare function linkSkillToAgents(skillName: string, sharedDir: string, cwd: string): void;
|
|
240
|
+
/**
|
|
241
|
+
* Remove per-agent symlinks for a skill when removing from shared dir.
|
|
242
|
+
*/
|
|
243
|
+
declare function unlinkSkillFromAgents(skillName: string, cwd: string): void;
|
|
234
244
|
//#endregion
|
|
235
245
|
//#region src/agent/targets/types.d.ts
|
|
236
246
|
interface FrontmatterField {
|
|
@@ -287,5 +297,5 @@ interface AgentTarget {
|
|
|
287
297
|
//#region src/agent/targets/registry.d.ts
|
|
288
298
|
declare const targets: Record<AgentType, AgentTarget>;
|
|
289
299
|
//#endregion
|
|
290
|
-
export { type AgentTarget, type AgentType, type CustomPrompt, FILE_PATTERN_MAP, type FrontmatterField, type ModelInfo, type OptimizeDocsOptions, type OptimizeModel, type OptimizeResult, SECTION_MERGE_ORDER, SECTION_OUTPUT_FILES, type SkillMetadata, type SkillOptions, type SkillSection, type StreamProgress, targets as agents, buildAllSectionPrompts, buildSectionPrompt, computeSkillDirName, detectImportedPackages, detectInstalledAgents, detectTargetAgent, generateSkillMd, getAgentVersion, getAvailableModels, getModelLabel, getModelName, installSkillForAgents, optimizeDocs, sanitizeName };
|
|
300
|
+
export { type AgentTarget, type AgentType, type CustomPrompt, FILE_PATTERN_MAP, type FrontmatterField, type ModelInfo, type OptimizeDocsOptions, type OptimizeModel, type OptimizeResult, SECTION_MERGE_ORDER, SECTION_OUTPUT_FILES, type SkillMetadata, type SkillOptions, type SkillSection, type StreamProgress, targets as agents, buildAllSectionPrompts, buildSectionPrompt, computeSkillDirName, detectImportedPackages, detectInstalledAgents, detectTargetAgent, generateSkillMd, getAgentVersion, getAvailableModels, getModelLabel, getModelName, installSkillForAgents, linkSkillToAgents, optimizeDocs, sanitizeName, unlinkSkillFromAgents };
|
|
291
301
|
//# sourceMappingURL=index.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/agent/prompts/optional/types.ts","../../src/agent/prompts/prompt.ts","../../src/agent/prompts/skill.ts","../../src/agent/types.ts","../../src/agent/clis/types.ts","../../src/agent/clis/index.ts","../../src/agent/detect.ts","../../src/agent/detect-imports.ts","../../src/agent/install.ts","../../src/agent/targets/types.ts","../../src/agent/targets/registry.ts"],"mappings":";UAciB,YAAA;EACf,OAAA;EACA,IAAA;AAAA;;;KCRU,YAAA;;cAGC,oBAAA,EAAsB,MAAA,CAAO,YAAA;;cAQ7B,mBAAA,EAAqB,YAAA;AAAA,UAEjB,uBAAA;EACf,WAAA;;EAEA,QAAA;EAhBsB;EAkBtB,OAAA;EAVD;EAYC,SAAA;EAjBiC;EAmBjC,cAAA;EAXW;EAaX,WAAA;;EAEA,YAAA;EAf4C;EAiB5C,QAAA;EAfsC;EAiBtC,QAAA;EAI2B;EAF3B,cAAA;EAhBA;EAkBA,YAAA,GAAe,YAAA;AAAA;;;;
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/agent/prompts/optional/types.ts","../../src/agent/prompts/prompt.ts","../../src/agent/prompts/skill.ts","../../src/agent/types.ts","../../src/agent/clis/types.ts","../../src/agent/clis/index.ts","../../src/agent/detect.ts","../../src/agent/detect-imports.ts","../../src/agent/install.ts","../../src/agent/targets/types.ts","../../src/agent/targets/registry.ts"],"mappings":"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"}
|
package/dist/agent/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as
|
|
1
|
+
import { _ as detectInstalledAgents, a as optimizeDocs, b as targets, c as computeSkillDirName, d as sanitizeName, f as unlinkSkillFromAgents, g as buildSectionPrompt, h as buildAllSectionPrompts, i as getModelName, l as installSkillForAgents, m as SECTION_OUTPUT_FILES, n as getAvailableModels, o as generateSkillMd, p as SECTION_MERGE_ORDER, r as getModelLabel, s as FILE_PATTERN_MAP, t as detectImportedPackages, u as linkSkillToAgents, v as detectTargetAgent, y as getAgentVersion } from "../_chunks/detect-imports.mjs";
|
|
2
2
|
import "../_chunks/config.mjs";
|
|
3
3
|
import "../_chunks/storage.mjs";
|
|
4
|
-
export { FILE_PATTERN_MAP, SECTION_MERGE_ORDER, SECTION_OUTPUT_FILES, targets as agents, buildAllSectionPrompts, buildSectionPrompt, computeSkillDirName, detectImportedPackages, detectInstalledAgents, detectTargetAgent, generateSkillMd, getAgentVersion, getAvailableModels, getModelLabel, getModelName, installSkillForAgents, optimizeDocs, sanitizeName };
|
|
4
|
+
export { FILE_PATTERN_MAP, SECTION_MERGE_ORDER, SECTION_OUTPUT_FILES, targets as agents, buildAllSectionPrompts, buildSectionPrompt, computeSkillDirName, detectImportedPackages, detectInstalledAgents, detectTargetAgent, generateSkillMd, getAgentVersion, getAvailableModels, getModelLabel, getModelName, installSkillForAgents, linkSkillToAgents, optimizeDocs, sanitizeName, unlinkSkillFromAgents };
|