@kynetic-ai/spec 0.7.0 → 0.9.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/agents/adapters.d.ts +2 -0
- package/dist/agents/adapters.d.ts.map +1 -1
- package/dist/agents/adapters.js +18 -0
- package/dist/agents/adapters.js.map +1 -1
- package/dist/agents/spawner.d.ts +2 -0
- package/dist/agents/spawner.d.ts.map +1 -1
- package/dist/agents/spawner.js +4 -2
- package/dist/agents/spawner.js.map +1 -1
- package/dist/cli/commands/ralph.d.ts +48 -0
- package/dist/cli/commands/ralph.d.ts.map +1 -1
- package/dist/cli/commands/ralph.js +344 -86
- package/dist/cli/commands/ralph.js.map +1 -1
- package/dist/cli/commands/session/commands.d.ts.map +1 -1
- package/dist/cli/commands/session/commands.js +8 -0
- package/dist/cli/commands/session/commands.js.map +1 -1
- package/dist/cli/commands/session/compact.d.ts +13 -0
- package/dist/cli/commands/session/compact.d.ts.map +1 -0
- package/dist/cli/commands/session/compact.js +207 -0
- package/dist/cli/commands/session/compact.js.map +1 -0
- package/dist/cli/commands/session/log.d.ts +2 -0
- package/dist/cli/commands/session/log.d.ts.map +1 -1
- package/dist/cli/commands/session/log.js +12 -2
- package/dist/cli/commands/session/log.js.map +1 -1
- package/dist/cli/commands/setup-seeding.d.ts +6 -3
- package/dist/cli/commands/setup-seeding.d.ts.map +1 -1
- package/dist/cli/commands/setup-seeding.js +20 -4
- package/dist/cli/commands/setup-seeding.js.map +1 -1
- package/dist/cli/commands/setup.d.ts +3 -2
- package/dist/cli/commands/setup.d.ts.map +1 -1
- package/dist/cli/commands/setup.js +10 -90
- package/dist/cli/commands/setup.js.map +1 -1
- package/dist/cli/commands/skill-install.d.ts.map +1 -1
- package/dist/cli/commands/skill-install.js +104 -1
- package/dist/cli/commands/skill-install.js.map +1 -1
- package/dist/lib/codex-config.d.ts +14 -0
- package/dist/lib/codex-config.d.ts.map +1 -0
- package/dist/lib/codex-config.js +88 -0
- package/dist/lib/codex-config.js.map +1 -0
- package/dist/parser/agent-detection.d.ts +14 -0
- package/dist/parser/agent-detection.d.ts.map +1 -0
- package/dist/parser/agent-detection.js +118 -0
- package/dist/parser/agent-detection.js.map +1 -0
- package/dist/parser/setup-status.d.ts +4 -3
- package/dist/parser/setup-status.d.ts.map +1 -1
- package/dist/parser/setup-status.js +4 -10
- package/dist/parser/setup-status.js.map +1 -1
- package/dist/parser/shadow.d.ts.map +1 -1
- package/dist/parser/shadow.js +22 -31
- package/dist/parser/shadow.js.map +1 -1
- package/dist/parser/skill-render.d.ts +23 -1
- package/dist/parser/skill-render.d.ts.map +1 -1
- package/dist/parser/skill-render.js +126 -17
- package/dist/parser/skill-render.js.map +1 -1
- package/dist/ralph/subagent.d.ts +2 -0
- package/dist/ralph/subagent.d.ts.map +1 -1
- package/dist/ralph/subagent.js +2 -0
- package/dist/ralph/subagent.js.map +1 -1
- package/dist/ralph/wrap-up.d.ts +2 -0
- package/dist/ralph/wrap-up.d.ts.map +1 -1
- package/dist/ralph/wrap-up.js +1 -0
- package/dist/ralph/wrap-up.js.map +1 -1
- package/dist/sessions/store.d.ts +67 -0
- package/dist/sessions/store.d.ts.map +1 -1
- package/dist/sessions/store.js +396 -16
- package/dist/sessions/store.js.map +1 -1
- package/package.json +2 -1
- package/plugin/.claude-plugin/marketplace.json +1 -1
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/plugin/plugins/kspec/skills/create-workflow/SKILL.md +10 -0
- package/plugin/plugins/kspec/skills/plan/SKILL.md +10 -0
- package/plugin/plugins/kspec/skills/review/SKILL.md +2 -0
- package/plugin/plugins/kspec/skills/task-work/SKILL.md +10 -0
- package/plugin/plugins/kspec/skills/triage-automation/SKILL.md +1 -0
- package/templates/skills/create-workflow/SKILL.md +12 -2
- package/templates/skills/manifest.yaml +11 -0
- package/templates/skills/observations/SKILL.md +2 -2
- package/templates/skills/plan/SKILL.md +15 -5
- package/templates/skills/reflect/SKILL.md +1 -1
- package/templates/skills/review/SKILL.md +4 -2
- package/templates/skills/task-work/SKILL.md +16 -6
- package/templates/skills/triage/SKILL.md +1 -1
- package/templates/skills/triage/docs/inbox.md +1 -1
- package/templates/skills/triage/docs/observations.md +1 -1
- package/templates/skills/triage-automation/SKILL.md +2 -1
- package/templates/skills/triage-inbox/SKILL.md +3 -3
- package/templates/skills/writing-specs/SKILL.md +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shadow.d.ts","sourceRoot":"","sources":["../../src/parser/shadow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"shadow.d.ts","sourceRoot":"","sources":["../../src/parser/shadow.ts"],"names":[],"mappings":"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"}
|
package/dist/parser/shadow.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* - All kspec read/write operations target .kspec/
|
|
9
9
|
* - Changes auto-commit to shadow branch
|
|
10
10
|
*/
|
|
11
|
-
import { exec, execSync, spawn } from "node:child_process";
|
|
11
|
+
import { exec, execSync, spawn, spawnSync } from "node:child_process";
|
|
12
12
|
import * as fs from "node:fs/promises";
|
|
13
13
|
import * as path from "node:path";
|
|
14
14
|
import { promisify } from "node:util";
|
|
@@ -17,6 +17,17 @@ import { isBatchMode } from "../cli/batch-context.js";
|
|
|
17
17
|
const __filename = fileURLToPath(import.meta.url);
|
|
18
18
|
const __dirname = path.dirname(__filename);
|
|
19
19
|
const execAsync = promisify(exec);
|
|
20
|
+
function runGitSync(cwd, args) {
|
|
21
|
+
const result = spawnSync("git", args, {
|
|
22
|
+
cwd,
|
|
23
|
+
stdio: ["ignore", "pipe", "pipe"],
|
|
24
|
+
encoding: "utf-8",
|
|
25
|
+
});
|
|
26
|
+
return {
|
|
27
|
+
ok: !result.error && result.status === 0,
|
|
28
|
+
stdout: (result.stdout || "").toString(),
|
|
29
|
+
};
|
|
30
|
+
}
|
|
20
31
|
// Import getVerboseMode for checking CLI --debug-shadow flag
|
|
21
32
|
// We use a getter function to avoid issues with circular dependencies
|
|
22
33
|
let getVerboseModeFunc = null;
|
|
@@ -83,48 +94,28 @@ export function isDebugMode(verboseFlag) {
|
|
|
83
94
|
* Check if we're in a git repository
|
|
84
95
|
*/
|
|
85
96
|
export async function isGitRepo(dir) {
|
|
86
|
-
|
|
87
|
-
execSync("git rev-parse --git-dir", {
|
|
88
|
-
cwd: dir,
|
|
89
|
-
stdio: ["pipe", "pipe", "pipe"],
|
|
90
|
-
encoding: "utf-8",
|
|
91
|
-
});
|
|
92
|
-
return true;
|
|
93
|
-
}
|
|
94
|
-
catch {
|
|
95
|
-
return false;
|
|
96
|
-
}
|
|
97
|
+
return runGitSync(dir, ["rev-parse", "--git-dir"]).ok;
|
|
97
98
|
}
|
|
98
99
|
/**
|
|
99
100
|
* Get the git root directory
|
|
100
101
|
*/
|
|
101
102
|
export function getGitRoot(dir) {
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
cwd: dir,
|
|
105
|
-
stdio: ["pipe", "pipe", "pipe"],
|
|
106
|
-
encoding: "utf-8",
|
|
107
|
-
}).trim();
|
|
108
|
-
return result;
|
|
109
|
-
}
|
|
110
|
-
catch {
|
|
103
|
+
const result = runGitSync(dir, ["rev-parse", "--show-toplevel"]);
|
|
104
|
+
if (!result.ok) {
|
|
111
105
|
return null;
|
|
112
106
|
}
|
|
107
|
+
return result.stdout.trim();
|
|
113
108
|
}
|
|
114
109
|
/**
|
|
115
110
|
* Check if a branch exists
|
|
116
111
|
*/
|
|
117
112
|
export async function branchExists(dir, branchName) {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
}
|
|
125
|
-
catch {
|
|
126
|
-
return false;
|
|
127
|
-
}
|
|
113
|
+
return runGitSync(dir, [
|
|
114
|
+
"show-ref",
|
|
115
|
+
"--verify",
|
|
116
|
+
"--quiet",
|
|
117
|
+
`refs/heads/${branchName}`,
|
|
118
|
+
]).ok;
|
|
128
119
|
}
|
|
129
120
|
/**
|
|
130
121
|
* Check if a directory is a valid git worktree
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../src/parser/shadow.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../src/parser/shadow.ts"],"names":[],"mappings":"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"}
|
|
@@ -154,6 +154,20 @@ export declare function getSkillSubdir(skillId: string, origin?: string, platfor
|
|
|
154
154
|
* Convenience wrapper for LoadedSkill objects (Claude Code platform).
|
|
155
155
|
*/
|
|
156
156
|
export declare function getClaudeCodeSkillSubdir(skill: LoadedSkill): string;
|
|
157
|
+
/**
|
|
158
|
+
* Format a platform-specific invocation for a skill id.
|
|
159
|
+
* - Claude: core skills use /kspec:<id>, others use /<id>
|
|
160
|
+
* - Codex: uses $<rendered-name>, where rendered-name may include core namespace
|
|
161
|
+
*/
|
|
162
|
+
export declare function formatSkillInvocation(skillId: string, platform: string, origin?: LoadedSkill["origin"]): string;
|
|
163
|
+
/**
|
|
164
|
+
* Resolve portable reference tokens in text for a target platform.
|
|
165
|
+
* Token syntax: {skill:<id>}
|
|
166
|
+
*
|
|
167
|
+
* `currentSkillOrigin` is optional and used as a fallback when a referenced
|
|
168
|
+
* skill isn't present in `skillOrigins` (primarily for core template rendering).
|
|
169
|
+
*/
|
|
170
|
+
export declare function resolveSkillReferenceTokensForPlatform(body: string, platform: string, skillOrigins?: Map<string, LoadedSkill["origin"]>, currentSkillOrigin?: LoadedSkill["origin"]): string;
|
|
157
171
|
/**
|
|
158
172
|
* Check if two contents are equal (for idempotency check)
|
|
159
173
|
*/
|
|
@@ -161,7 +175,11 @@ export declare function contentsEqual(a: string, b: string): boolean;
|
|
|
161
175
|
/**
|
|
162
176
|
* Recursively copy a directory
|
|
163
177
|
*/
|
|
164
|
-
|
|
178
|
+
type FileContentTransform = (relativePath: string, content: string) => string;
|
|
179
|
+
export declare function copyDirectory(src: string, dest: string, options?: {
|
|
180
|
+
baseSrc?: string;
|
|
181
|
+
transformFileContent?: FileContentTransform;
|
|
182
|
+
}): Promise<void>;
|
|
165
183
|
/**
|
|
166
184
|
* Compute SHA256 hash of content
|
|
167
185
|
* AC: @skill-drift-detection ac-5 - Hash computation for render tracking
|
|
@@ -265,6 +283,10 @@ interface BaseRenderConfig {
|
|
|
265
283
|
paths: string[];
|
|
266
284
|
contentChanged: boolean;
|
|
267
285
|
}>;
|
|
286
|
+
/** Optional: transform source skill body content before rendering */
|
|
287
|
+
transformBody?: (body: string, skill: LoadedSkill) => string;
|
|
288
|
+
/** Optional: transform markdown content in supporting directories during copy */
|
|
289
|
+
transformSupportingFileContent?: (relativePath: string, content: string, skill: LoadedSkill) => string;
|
|
268
290
|
/** Optional: additional hash computation for drift check */
|
|
269
291
|
getAdditionalDriftContent?: (skillDir: string) => Promise<string | null>;
|
|
270
292
|
/** If true, also write legacy .render-hash for backward compatibility */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-render.d.ts","sourceRoot":"","sources":["../../src/parser/skill-render.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAMH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,
|
|
1
|
+
{"version":3,"file":"skill-render.d.ts","sourceRoot":"","sources":["../../src/parser/skill-render.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,7 +35,7 @@ import * as crypto from "node:crypto";
|
|
|
35
35
|
import * as fs from "node:fs/promises";
|
|
36
36
|
import * as path from "node:path";
|
|
37
37
|
import yaml from "yaml";
|
|
38
|
-
import { loadSkillContent } from "./meta.js";
|
|
38
|
+
import { loadMetaContext, loadSkillContent } from "./meta.js";
|
|
39
39
|
/**
|
|
40
40
|
* Marker comment that identifies skill directories managed by kspec
|
|
41
41
|
*/
|
|
@@ -122,6 +122,54 @@ export function getSkillSubdir(skillId, origin, platform) {
|
|
|
122
122
|
export function getClaudeCodeSkillSubdir(skill) {
|
|
123
123
|
return getSkillSubdir(skill.id, skill.origin, "claude-code");
|
|
124
124
|
}
|
|
125
|
+
const SKILL_REFERENCE_TOKEN_RE = /\{skill:([a-z0-9][a-z0-9-]*)\}/g;
|
|
126
|
+
/**
|
|
127
|
+
* Build a map of skill id -> origin for reference token resolution.
|
|
128
|
+
*/
|
|
129
|
+
async function loadSkillOrigins(ctx) {
|
|
130
|
+
const meta = await loadMetaContext(ctx);
|
|
131
|
+
const origins = new Map();
|
|
132
|
+
for (const skill of meta.skills) {
|
|
133
|
+
origins.set(skill.id, skill.origin);
|
|
134
|
+
}
|
|
135
|
+
return origins;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Format a platform-specific invocation for a skill id.
|
|
139
|
+
* - Claude: core skills use /kspec:<id>, others use /<id>
|
|
140
|
+
* - Codex: uses $<rendered-name>, where rendered-name may include core namespace
|
|
141
|
+
*/
|
|
142
|
+
export function formatSkillInvocation(skillId, platform, origin) {
|
|
143
|
+
switch (platform) {
|
|
144
|
+
case "claude-code":
|
|
145
|
+
return origin === "core" ? `/kspec:${skillId}` : `/${skillId}`;
|
|
146
|
+
case "codex":
|
|
147
|
+
return `$${getSkillSubdir(skillId, origin, "codex")}`;
|
|
148
|
+
default:
|
|
149
|
+
return `/${skillId}`;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Resolve portable reference tokens in text for a target platform.
|
|
154
|
+
* Token syntax: {skill:<id>}
|
|
155
|
+
*
|
|
156
|
+
* `currentSkillOrigin` is optional and used as a fallback when a referenced
|
|
157
|
+
* skill isn't present in `skillOrigins` (primarily for core template rendering).
|
|
158
|
+
*/
|
|
159
|
+
export function resolveSkillReferenceTokensForPlatform(body, platform, skillOrigins = new Map(), currentSkillOrigin) {
|
|
160
|
+
return body.replace(SKILL_REFERENCE_TOKEN_RE, (_match, refId) => {
|
|
161
|
+
// If reference isn't in loaded meta, core templates usually point to core skills.
|
|
162
|
+
const referencedOrigin = skillOrigins.get(refId) ?? (currentSkillOrigin === "core" ? "core" : undefined);
|
|
163
|
+
return formatSkillInvocation(refId, platform, referencedOrigin);
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Resolve portable reference tokens in skill body content.
|
|
168
|
+
* Token syntax: {skill:<id>}
|
|
169
|
+
*/
|
|
170
|
+
function resolveSkillReferenceTokens(body, platform, skill, skillOrigins) {
|
|
171
|
+
return resolveSkillReferenceTokensForPlatform(body, platform, skillOrigins, skill.origin);
|
|
172
|
+
}
|
|
125
173
|
/**
|
|
126
174
|
* Get the target directory for rendered skills on main branch.
|
|
127
175
|
* Core skills on claude-code are plugin-provided (returns null).
|
|
@@ -141,20 +189,30 @@ function getRenderedSkillPath(projectRoot, skillId, origin) {
|
|
|
141
189
|
export function contentsEqual(a, b) {
|
|
142
190
|
return a.trim() === b.trim();
|
|
143
191
|
}
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
export async function copyDirectory(src, dest) {
|
|
192
|
+
function isMarkdownFile(filePath) {
|
|
193
|
+
return filePath.endsWith(".md");
|
|
194
|
+
}
|
|
195
|
+
export async function copyDirectory(src, dest, options) {
|
|
148
196
|
const entries = await fs.readdir(src, { withFileTypes: true });
|
|
197
|
+
const baseSrc = options?.baseSrc || src;
|
|
149
198
|
for (const entry of entries) {
|
|
150
199
|
const srcPath = path.join(src, entry.name);
|
|
151
200
|
const destPath = path.join(dest, entry.name);
|
|
152
201
|
if (entry.isDirectory()) {
|
|
153
202
|
await fs.mkdir(destPath, { recursive: true });
|
|
154
|
-
await copyDirectory(srcPath, destPath);
|
|
203
|
+
await copyDirectory(srcPath, destPath, { ...options, baseSrc });
|
|
155
204
|
}
|
|
156
205
|
else {
|
|
157
|
-
|
|
206
|
+
const transformFileContent = options?.transformFileContent;
|
|
207
|
+
if (transformFileContent && isMarkdownFile(srcPath)) {
|
|
208
|
+
const srcContent = await fs.readFile(srcPath, "utf-8");
|
|
209
|
+
const relativePath = path.relative(baseSrc, srcPath).replaceAll(path.sep, "/");
|
|
210
|
+
const transformed = transformFileContent(relativePath, srcContent);
|
|
211
|
+
await fs.writeFile(destPath, transformed, "utf-8");
|
|
212
|
+
}
|
|
213
|
+
else {
|
|
214
|
+
await fs.copyFile(srcPath, destPath);
|
|
215
|
+
}
|
|
158
216
|
}
|
|
159
217
|
}
|
|
160
218
|
}
|
|
@@ -236,9 +294,13 @@ export async function checkSkillDrift(specDir, projectRoot, skillId, origin) {
|
|
|
236
294
|
* Recursively check if two directories have the same contents
|
|
237
295
|
*/
|
|
238
296
|
export async function directoriesEqual(src, dest) {
|
|
297
|
+
return directoriesEqualWithTransform(src, dest);
|
|
298
|
+
}
|
|
299
|
+
async function directoriesEqualWithTransform(src, dest, options) {
|
|
239
300
|
try {
|
|
240
301
|
const srcEntries = await fs.readdir(src, { withFileTypes: true });
|
|
241
302
|
const destEntries = await fs.readdir(dest, { withFileTypes: true });
|
|
303
|
+
const baseSrc = options?.baseSrc || src;
|
|
242
304
|
// Different number of entries = not equal
|
|
243
305
|
if (srcEntries.length !== destEntries.length) {
|
|
244
306
|
return false;
|
|
@@ -253,12 +315,17 @@ export async function directoriesEqual(src, dest) {
|
|
|
253
315
|
const srcPath = path.join(src, srcEntry.name);
|
|
254
316
|
const destPath = path.join(dest, srcEntry.name);
|
|
255
317
|
if (srcEntry.isDirectory() && destEntry.isDirectory()) {
|
|
256
|
-
if (!(await
|
|
318
|
+
if (!(await directoriesEqualWithTransform(srcPath, destPath, { ...options, baseSrc }))) {
|
|
257
319
|
return false;
|
|
258
320
|
}
|
|
259
321
|
}
|
|
260
322
|
else if (srcEntry.isFile() && destEntry.isFile()) {
|
|
261
|
-
|
|
323
|
+
let srcContent = await fs.readFile(srcPath, "utf-8");
|
|
324
|
+
const transformFileContent = options?.transformFileContent;
|
|
325
|
+
if (transformFileContent && isMarkdownFile(srcPath)) {
|
|
326
|
+
const relativePath = path.relative(baseSrc, srcPath).replaceAll(path.sep, "/");
|
|
327
|
+
srcContent = transformFileContent(relativePath, srcContent);
|
|
328
|
+
}
|
|
262
329
|
const destContent = await fs.readFile(destPath, "utf-8");
|
|
263
330
|
if (!contentsEqual(srcContent, destContent)) {
|
|
264
331
|
return false;
|
|
@@ -285,7 +352,7 @@ const SUPPORTING_DIRS = ["references", "scripts", "assets", "docs"];
|
|
|
285
352
|
* AC: @platform-renderer-trait ac-3 - Supporting directories copied to platform output
|
|
286
353
|
* AC: @claude-code-renderer-extended ac-7 - references/, scripts/, assets/ copied
|
|
287
354
|
*/
|
|
288
|
-
async function copySupportingDirectories(sourceSkillDir, targetSkillDir, dryRun) {
|
|
355
|
+
async function copySupportingDirectories(sourceSkillDir, targetSkillDir, dryRun, transformFileContent) {
|
|
289
356
|
const results = {};
|
|
290
357
|
for (const dirName of SUPPORTING_DIRS) {
|
|
291
358
|
const sourceDir = path.join(sourceSkillDir, dirName);
|
|
@@ -310,7 +377,10 @@ async function copySupportingDirectories(sourceSkillDir, targetSkillDir, dryRun)
|
|
|
310
377
|
}
|
|
311
378
|
else {
|
|
312
379
|
// Compare directories
|
|
313
|
-
const equal = await
|
|
380
|
+
const equal = await directoriesEqualWithTransform(sourceDir, targetDir, {
|
|
381
|
+
baseSrc: sourceSkillDir,
|
|
382
|
+
transformFileContent,
|
|
383
|
+
});
|
|
314
384
|
results[dirName] = equal ? "unchanged" : "updated";
|
|
315
385
|
}
|
|
316
386
|
// Apply changes
|
|
@@ -319,7 +389,10 @@ async function copySupportingDirectories(sourceSkillDir, targetSkillDir, dryRun)
|
|
|
319
389
|
await fs.rm(targetDir, { recursive: true, force: true });
|
|
320
390
|
}
|
|
321
391
|
await fs.mkdir(targetDir, { recursive: true });
|
|
322
|
-
await copyDirectory(sourceDir, targetDir
|
|
392
|
+
await copyDirectory(sourceDir, targetDir, {
|
|
393
|
+
baseSrc: sourceSkillDir,
|
|
394
|
+
transformFileContent,
|
|
395
|
+
});
|
|
323
396
|
}
|
|
324
397
|
}
|
|
325
398
|
catch {
|
|
@@ -349,6 +422,7 @@ async function copySupportingDirectories(sourceSkillDir, targetSkillDir, dryRun)
|
|
|
349
422
|
export async function renderClaudeCodeSkill(ctx, projectRoot, skill, options = {}) {
|
|
350
423
|
const dryRun = options.dryRun ?? false;
|
|
351
424
|
const storeHash = options.storeHash ?? false;
|
|
425
|
+
const skillOrigins = await loadSkillOrigins(ctx);
|
|
352
426
|
const targetDir = getRenderedSkillPath(projectRoot, skill.id, skill.origin);
|
|
353
427
|
// Core skills are plugin-provided; skip local render
|
|
354
428
|
if (!targetDir) {
|
|
@@ -388,8 +462,9 @@ export async function renderClaudeCodeSkill(ctx, projectRoot, skill, options = {
|
|
|
388
462
|
const contentWithoutFrontmatter = frontmatterMatch
|
|
389
463
|
? sourceContent.slice(frontmatterMatch[0].length)
|
|
390
464
|
: sourceContent;
|
|
465
|
+
const transformedBody = resolveSkillReferenceTokens(contentWithoutFrontmatter, "claude-code", skill, skillOrigins);
|
|
391
466
|
// AC: @claude-code-renderer ac-1, ac-3 - Build rendered content with frontmatter + verbatim body
|
|
392
|
-
const renderedContent = `${frontmatter}\n${KSPEC_MANAGED_MARKER}\n${
|
|
467
|
+
const renderedContent = `${frontmatter}\n${KSPEC_MANAGED_MARKER}\n${transformedBody}`;
|
|
393
468
|
// Check if target exists and compare for idempotency
|
|
394
469
|
let targetExists = false;
|
|
395
470
|
let targetContent = "";
|
|
@@ -423,7 +498,7 @@ export async function renderClaudeCodeSkill(ctx, projectRoot, skill, options = {
|
|
|
423
498
|
}
|
|
424
499
|
// AC: @claude-code-renderer-extended ac-7 - Copy supporting directories (references/, scripts/, assets/, docs/)
|
|
425
500
|
const sourceSkillDir = path.join(ctx.specDir, "skills", skill.id);
|
|
426
|
-
const supportingDirsAction = await copySupportingDirectories(sourceSkillDir, targetDir, dryRun);
|
|
501
|
+
const supportingDirsAction = await copySupportingDirectories(sourceSkillDir, targetDir, dryRun, (_relativePath, content) => resolveSkillReferenceTokens(content, "claude-code", skill, skillOrigins));
|
|
427
502
|
// For backward compatibility, also expose docsAction
|
|
428
503
|
const docsAction = supportingDirsAction.docs || "skipped";
|
|
429
504
|
return {
|
|
@@ -587,7 +662,10 @@ export async function renderSkillBase(ctx, projectRoot, skill, options, config,
|
|
|
587
662
|
const contentWithoutFrontmatter = frontmatterMatch
|
|
588
663
|
? sourceContent.slice(frontmatterMatch[0].length)
|
|
589
664
|
: sourceContent;
|
|
590
|
-
|
|
665
|
+
const transformedBody = config.transformBody
|
|
666
|
+
? config.transformBody(contentWithoutFrontmatter, skill)
|
|
667
|
+
: contentWithoutFrontmatter;
|
|
668
|
+
renderedContent = `${frontmatter}\n${KSPEC_MANAGED_MARKER}\n${transformedBody}`;
|
|
591
669
|
}
|
|
592
670
|
// Idempotency check
|
|
593
671
|
let targetExists = false;
|
|
@@ -638,7 +716,9 @@ export async function renderSkillBase(ctx, projectRoot, skill, options, config,
|
|
|
638
716
|
}
|
|
639
717
|
// Copy supporting directories
|
|
640
718
|
const sourceSkillDir = path.join(ctx.specDir, "skills", skill.id);
|
|
641
|
-
const supportingDirsAction = await copySupportingDirectories(sourceSkillDir, targetDir, dryRun
|
|
719
|
+
const supportingDirsAction = await copySupportingDirectories(sourceSkillDir, targetDir, dryRun, config.transformSupportingFileContent
|
|
720
|
+
? (relativePath, content) => config.transformSupportingFileContent(relativePath, content, skill)
|
|
721
|
+
: undefined);
|
|
642
722
|
for (const [dirName, dirAction] of Object.entries(supportingDirsAction)) {
|
|
643
723
|
if (dirAction !== "skipped") {
|
|
644
724
|
paths.push(path.join(targetDir, dirName));
|
|
@@ -749,10 +829,13 @@ export const claudeCodeRenderer = {
|
|
|
749
829
|
skipCode: "plugin-provided",
|
|
750
830
|
};
|
|
751
831
|
}
|
|
832
|
+
const skillOrigins = await loadSkillOrigins(ctx);
|
|
752
833
|
// Project/local skills render to .claude/skills/
|
|
753
834
|
const result = await renderSkillBase(ctx, projectRoot, skill, options, {
|
|
754
835
|
platform: this.platform,
|
|
755
836
|
generateFrontmatter,
|
|
837
|
+
transformBody: (body, loadedSkill) => resolveSkillReferenceTokens(body, this.platform, loadedSkill, skillOrigins),
|
|
838
|
+
transformSupportingFileContent: (_relativePath, content, loadedSkill) => resolveSkillReferenceTokens(content, this.platform, loadedSkill, skillOrigins),
|
|
756
839
|
writeLegacyHash: true,
|
|
757
840
|
}, this.defaultOutputDir, skill.id);
|
|
758
841
|
return result;
|
|
@@ -771,11 +854,20 @@ export const claudeCodeRenderer = {
|
|
|
771
854
|
*/
|
|
772
855
|
function generateCodexFrontmatter(skill) {
|
|
773
856
|
const frontmatter = {
|
|
774
|
-
name: skill.id,
|
|
857
|
+
name: getSkillSubdir(skill.id, skill.origin, "codex"),
|
|
775
858
|
description: skill.description || skill.name,
|
|
776
859
|
};
|
|
777
860
|
return `---\n${yaml.stringify(frontmatter).trim()}\n---`;
|
|
778
861
|
}
|
|
862
|
+
/**
|
|
863
|
+
* Backward-compatibility conversion for legacy core content.
|
|
864
|
+
* Example: /kspec:task-work -> $kspec-task-work
|
|
865
|
+
*/
|
|
866
|
+
function transformLegacyCodexCoreReferences(body) {
|
|
867
|
+
return body.replace(/\/kspec:([a-z0-9][a-z0-9-]*)/g, (_match, skillId) => {
|
|
868
|
+
return `$kspec-${skillId}`;
|
|
869
|
+
});
|
|
870
|
+
}
|
|
779
871
|
/**
|
|
780
872
|
* Generate Codex sidecar openai.yaml content from platform_config.codex
|
|
781
873
|
* AC: @codex-renderer ac-2 - sidecar agents/openai.yaml with Codex config fields
|
|
@@ -837,10 +929,27 @@ export const codexRenderer = {
|
|
|
837
929
|
async render(ctx, projectRoot, skill, options = {}) {
|
|
838
930
|
// Pre-compute sidecar content so it's available for both hash and write
|
|
839
931
|
const sidecarContent = generateCodexSidecarYaml(skill);
|
|
932
|
+
const skillOrigins = await loadSkillOrigins(ctx);
|
|
840
933
|
const codexSubdir = getSkillSubdir(skill.id, skill.origin, "codex");
|
|
841
934
|
return renderSkillBase(ctx, projectRoot, skill, options, {
|
|
842
935
|
platform: this.platform,
|
|
843
936
|
generateFrontmatter: generateCodexFrontmatter,
|
|
937
|
+
// Resolve portable {skill:<id>} tokens for all skills.
|
|
938
|
+
// Keep legacy /kspec:* rewrite only for core skills for backward compatibility.
|
|
939
|
+
transformBody: (body, loadedSkill) => {
|
|
940
|
+
const tokenResolved = resolveSkillReferenceTokens(body, this.platform, loadedSkill, skillOrigins);
|
|
941
|
+
if (loadedSkill.origin === "core") {
|
|
942
|
+
return transformLegacyCodexCoreReferences(tokenResolved);
|
|
943
|
+
}
|
|
944
|
+
return tokenResolved;
|
|
945
|
+
},
|
|
946
|
+
transformSupportingFileContent: (_relativePath, content, loadedSkill) => {
|
|
947
|
+
const tokenResolved = resolveSkillReferenceTokens(content, this.platform, loadedSkill, skillOrigins);
|
|
948
|
+
if (loadedSkill.origin === "core") {
|
|
949
|
+
return transformLegacyCodexCoreReferences(tokenResolved);
|
|
950
|
+
}
|
|
951
|
+
return tokenResolved;
|
|
952
|
+
},
|
|
844
953
|
// AC: @skill-drift-detection-improvements ac-1 - Include sidecar in hash
|
|
845
954
|
getAdditionalHashContent: () => sidecarContent,
|
|
846
955
|
// AC: @codex-renderer ac-2, ac-3 - Write sidecar agents/openai.yaml
|