diff --git a/src/shared/skill-path-resolver.test.ts b/src/shared/skill-path-resolver.test.ts index a9815b7fd..7bc08d340 100644 --- a/src/shared/skill-path-resolver.test.ts +++ b/src/shared/skill-path-resolver.test.ts @@ -149,4 +149,16 @@ describe("resolveSkillPathReferences", () => { //#then expect(result).toBe("Inspect @data/../../../secret/") }) + + it("does not resolve npx --package=@scope/pkg as skill path", () => { + //#given + const content = "npx --package=@scope/pkg" + const basePath = "/skills/frontend" + + //#when + const result = resolveSkillPathReferences(content, basePath) + + //#then + expect(result).toBe("npx --package=@scope/pkg") + }) }) diff --git a/src/shared/skill-path-resolver.ts b/src/shared/skill-path-resolver.ts index 6d088171d..008ac0e8f 100644 --- a/src/shared/skill-path-resolver.ts +++ b/src/shared/skill-path-resolver.ts @@ -9,7 +9,7 @@ function looksLikeFilePath(path: string): boolean { export function resolveSkillPathReferences(content: string, basePath: string): string { const normalizedBase = basePath.endsWith("/") ? basePath.slice(0, -1) : basePath return content.replace( - /(? { if (!looksLikeFilePath(relativePath)) return match const resolvedPath = resolve(normalizedBase, relativePath)