@vibe-agent-toolkit/agent-skills 0.1.30-rc.2 → 0.1.31-rc.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 +3 -1
- package/dist/validators/code-registry.d.ts +1 -1
- package/dist/validators/code-registry.d.ts.map +1 -1
- package/dist/validators/code-registry.js +3 -0
- package/dist/validators/code-registry.js.map +1 -1
- package/dist/validators/compat-detectors.d.ts +32 -0
- package/dist/validators/compat-detectors.d.ts.map +1 -0
- package/dist/validators/compat-detectors.js +158 -0
- package/dist/validators/compat-detectors.js.map +1 -0
- package/dist/validators/skill-validator.d.ts.map +1 -1
- package/dist/validators/skill-validator.js +13 -20
- package/dist/validators/skill-validator.js.map +1 -1
- package/dist/validators/types.d.ts +1 -1
- package/dist/validators/types.d.ts.map +1 -1
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -156,7 +156,9 @@ The validator checks for:
|
|
|
156
156
|
#### Warnings (Non-Blocking)
|
|
157
157
|
|
|
158
158
|
- `SKILL_TOO_LONG` - Skill exceeds 5000 lines
|
|
159
|
-
- `
|
|
159
|
+
- `COMPAT_REQUIRES_LOCAL_SHELL` - References Write, Edit, Bash, or NotebookEdit tools (see [validation-codes.md](../../docs/validation-codes.md#compat_requires_local_shell))
|
|
160
|
+
- `COMPAT_REQUIRES_BROWSER_AUTH` - Requires a browser login flow (MSAL, cloud SSO, OAuth redirect) (see [validation-codes.md](../../docs/validation-codes.md#compat_requires_browser_auth))
|
|
161
|
+
- `COMPAT_REQUIRES_EXTERNAL_CLI` - Invokes an unbundled external CLI (az, aws, gcloud, kubectl, docker, terraform, gh, op) (see [validation-codes.md](../../docs/validation-codes.md#compat_requires_external_cli))
|
|
160
162
|
|
|
161
163
|
See [Best Practices Guide](../../docs/guides/agent-skills-best-practices.md) for detailed guidance.
|
|
162
164
|
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
export type IssueSeverity = 'error' | 'warning' | 'ignore';
|
|
12
12
|
/** Non-ignore severities actually emitted to consumers. */
|
|
13
13
|
export type EmittedSeverity = Exclude<IssueSeverity, 'ignore'>;
|
|
14
|
-
export type IssueCode = 'LINK_OUTSIDE_PROJECT' | 'LINK_TARGETS_DIRECTORY' | 'LINK_TO_NAVIGATION_FILE' | 'LINK_TO_GITIGNORED_FILE' | 'LINK_MISSING_TARGET' | 'LINK_TO_SKILL_DEFINITION' | 'LINK_DROPPED_BY_DEPTH' | 'PACKAGED_UNREFERENCED_FILE' | 'PACKAGED_BROKEN_LINK' | 'SKILL_LENGTH_EXCEEDS_RECOMMENDED' | 'SKILL_TOTAL_SIZE_LARGE' | 'SKILL_TOO_MANY_FILES' | 'REFERENCE_TOO_DEEP' | 'DESCRIPTION_TOO_VAGUE' | 'NO_PROGRESSIVE_DISCLOSURE' | 'ALLOW_EXPIRED' | 'ALLOW_UNUSED';
|
|
14
|
+
export type IssueCode = 'LINK_OUTSIDE_PROJECT' | 'LINK_TARGETS_DIRECTORY' | 'LINK_TO_NAVIGATION_FILE' | 'LINK_TO_GITIGNORED_FILE' | 'LINK_MISSING_TARGET' | 'LINK_TO_SKILL_DEFINITION' | 'LINK_DROPPED_BY_DEPTH' | 'PACKAGED_UNREFERENCED_FILE' | 'PACKAGED_BROKEN_LINK' | 'SKILL_LENGTH_EXCEEDS_RECOMMENDED' | 'SKILL_TOTAL_SIZE_LARGE' | 'SKILL_TOO_MANY_FILES' | 'REFERENCE_TOO_DEEP' | 'DESCRIPTION_TOO_VAGUE' | 'NO_PROGRESSIVE_DISCLOSURE' | 'COMPAT_REQUIRES_BROWSER_AUTH' | 'COMPAT_REQUIRES_LOCAL_SHELL' | 'COMPAT_REQUIRES_EXTERNAL_CLI' | 'ALLOW_EXPIRED' | 'ALLOW_UNUSED';
|
|
15
15
|
export interface CodeRegistryEntry {
|
|
16
16
|
defaultSeverity: EmittedSeverity;
|
|
17
17
|
description: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-registry.d.ts","sourceRoot":"","sources":["../../src/validators/code-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE3D,2DAA2D;AAC3D,MAAM,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;AAE/D,MAAM,MAAM,SAAS,GAEjB,sBAAsB,GACtB,wBAAwB,GACxB,yBAAyB,GACzB,yBAAyB,GACzB,qBAAqB,GACrB,0BAA0B,GAE1B,uBAAuB,GACvB,4BAA4B,GAC5B,sBAAsB,GAEtB,kCAAkC,GAClC,wBAAwB,GACxB,sBAAsB,GACtB,oBAAoB,GACpB,uBAAuB,GACvB,2BAA2B,GAE3B,eAAe,GACf,cAAc,CAAC;AAEnB,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,eAAe,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,SAAS,EAAE,MAAM,CAAC;CACnB;AASD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,SAAS,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"code-registry.d.ts","sourceRoot":"","sources":["../../src/validators/code-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE3D,2DAA2D;AAC3D,MAAM,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;AAE/D,MAAM,MAAM,SAAS,GAEjB,sBAAsB,GACtB,wBAAwB,GACxB,yBAAyB,GACzB,yBAAyB,GACzB,qBAAqB,GACrB,0BAA0B,GAE1B,uBAAuB,GACvB,4BAA4B,GAC5B,sBAAsB,GAEtB,kCAAkC,GAClC,wBAAwB,GACxB,sBAAsB,GACtB,oBAAoB,GACpB,uBAAuB,GACvB,2BAA2B,GAE3B,8BAA8B,GAC9B,6BAA6B,GAC7B,8BAA8B,GAE9B,eAAe,GACf,cAAc,CAAC;AAEnB,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,eAAe,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,SAAS,EAAE,MAAM,CAAC;CACnB;AASD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,SAAS,EAAE,iBAAiB,CAyH9D,CAAC"}
|
|
@@ -25,6 +25,9 @@ export const CODE_REGISTRY = {
|
|
|
25
25
|
REFERENCE_TOO_DEEP: entry('warning', 'Bundled link graph exceeds the recommended depth; deeply nested references hurt discoverability.', 'Flatten the reference structure or allow if depth is intentional.', 'reference_too_deep'),
|
|
26
26
|
DESCRIPTION_TOO_VAGUE: entry('warning', 'SKILL.md description is too short to reliably trigger the skill.', 'Expand the description with concrete triggers and use cases.', 'description_too_vague'),
|
|
27
27
|
NO_PROGRESSIVE_DISCLOSURE: entry('warning', 'Long SKILL.md with no linked references; progressive disclosure recommended.', 'Move background detail into linked resources and reference them from SKILL.md.', 'no_progressive_disclosure'),
|
|
28
|
+
COMPAT_REQUIRES_BROWSER_AUTH: entry('warning', 'Skill appears to require an interactive browser login flow (MSAL, cloud provider SSO, OAuth redirect).', 'Document the requirement prominently and allow via validation.allow if the browser flow is the intended mechanism. Surfaces without a browser (Claude Chat, Cowork) cannot run this skill.', 'compat_requires_browser_auth'),
|
|
29
|
+
COMPAT_REQUIRES_LOCAL_SHELL: entry('warning', 'Skill references a local-shell or local-environment tool (Bash/Edit/Write/NotebookEdit) or invokes a shell directly.', 'Document that this skill requires a local runtime (Claude Code), or allow the code via validation.allow if the shell dependency is intentional.', 'compat_requires_local_shell'),
|
|
30
|
+
COMPAT_REQUIRES_EXTERNAL_CLI: entry('warning', 'Skill invokes an external CLI binary not bundled with the skill (az, aws, gcloud, kubectl, docker, terraform, gh, op).', 'Document the required CLI as a prerequisite, or allow via validation.allow if the dependency is intentional. External CLIs may not be present on every runtime.', 'compat_requires_external_cli'),
|
|
28
31
|
ALLOW_EXPIRED: entry('warning', "A validation.allow entry's expires date is in the past; the allowance still applies but should be re-reviewed.", 'Re-review the allow entry: extend expires, remove the entry, or fix the underlying issue. Upgrade severity to error for zero-tolerance expiry.', 'allow_expired'),
|
|
29
32
|
ALLOW_UNUSED: entry('warning', 'A validation.allow entry did not match any emitted issue; the allow entry is dead weight.', 'Remove the entry or fix the pattern. Upgrade severity to error to block on unused allow entries.', 'allow_unused'),
|
|
30
33
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-registry.js","sourceRoot":"","sources":["../../src/validators/code-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"code-registry.js","sourceRoot":"","sources":["../../src/validators/code-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AA0CH,MAAM,KAAK,GAAG,CACZ,eAAgC,EAChC,WAAmB,EACnB,GAAW,EACX,MAAc,EACK,EAAE,CAAC,CAAC,EAAE,eAAe,EAAE,WAAW,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;AAEzF,MAAM,CAAC,MAAM,aAAa,GAAyC;IACjE,oBAAoB,EAAE,KAAK,CACzB,OAAO,EACP,0DAA0D,EAC1D,gIAAgI,EAChI,sBAAsB,CACvB;IACD,sBAAsB,EAAE,KAAK,CAC3B,OAAO,EACP,2DAA2D,EAC3D,0GAA0G,EAC1G,wBAAwB,CACzB;IACD,uBAAuB,EAAE,KAAK,CAC5B,SAAS,EACT,yGAAyG,EACzG,wIAAwI,EACxI,yBAAyB,CAC1B;IACD,uBAAuB,EAAE,KAAK,CAC5B,OAAO,EACP,sFAAsF,EACtF,8HAA8H,EAC9H,yBAAyB,CAC1B;IACD,mBAAmB,EAAE,KAAK,CACxB,OAAO,EACP,mFAAmF,EACnF,yGAAyG,EACzG,qBAAqB,CACtB;IACD,wBAAwB,EAAE,KAAK,CAC7B,OAAO,EACP,kGAAkG,EAClG,2FAA2F,EAC3F,0BAA0B,CAC3B;IACD,qBAAqB,EAAE,KAAK,CAC1B,SAAS,EACT,8FAA8F,EAC9F,gKAAgK,EAChK,uBAAuB,CACxB;IACD,0BAA0B,EAAE,KAAK,CAC/B,OAAO,EACP,2EAA2E,EAC3E,kJAAkJ,EAClJ,4BAA4B,CAC7B;IACD,oBAAoB,EAAE,KAAK,CACzB,OAAO,EACP,gHAAgH,EAChH,wJAAwJ,EACxJ,sBAAsB,CACvB;IACD,gCAAgC,EAAE,KAAK,CACrC,SAAS,EACT,2FAA2F,EAC3F,mGAAmG,EACnG,kCAAkC,CACnC;IACD,sBAAsB,EAAE,KAAK,CAC3B,SAAS,EACT,0DAA0D,EAC1D,+FAA+F,EAC/F,wBAAwB,CACzB;IACD,oBAAoB,EAAE,KAAK,CACzB,SAAS,EACT,oDAAoD,EACpD,iFAAiF,EACjF,sBAAsB,CACvB;IACD,kBAAkB,EAAE,KAAK,CACvB,SAAS,EACT,kGAAkG,EAClG,mEAAmE,EACnE,oBAAoB,CACrB;IACD,qBAAqB,EAAE,KAAK,CAC1B,SAAS,EACT,kEAAkE,EAClE,8DAA8D,EAC9D,uBAAuB,CACxB;IACD,yBAAyB,EAAE,KAAK,CAC9B,SAAS,EACT,8EAA8E,EAC9E,gFAAgF,EAChF,2BAA2B,CAC5B;IACD,4BAA4B,EAAE,KAAK,CACjC,SAAS,EACT,wGAAwG,EACxG,4LAA4L,EAC5L,8BAA8B,CAC/B;IACD,2BAA2B,EAAE,KAAK,CAChC,SAAS,EACT,sHAAsH,EACtH,iJAAiJ,EACjJ,6BAA6B,CAC9B;IACD,4BAA4B,EAAE,KAAK,CACjC,SAAS,EACT,wHAAwH,EACxH,iKAAiK,EACjK,8BAA8B,CAC/B;IACD,aAAa,EAAE,KAAK,CAClB,SAAS,EACT,gHAAgH,EAChH,gJAAgJ,EAChJ,eAAe,CAChB;IACD,YAAY,EAAE,KAAK,CACjB,SAAS,EACT,2FAA2F,EAC3F,kGAAkG,EAClG,cAAc,CACf;CACF,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compat smell detectors.
|
|
3
|
+
*
|
|
4
|
+
* Pure module: (content, filePath) -> ValidationIssue[]. Each detector
|
|
5
|
+
* decides whether to fire; description/fix/reference come from
|
|
6
|
+
* CODE_REGISTRY, mirroring walker-to-issues.ts. Detectors wire into
|
|
7
|
+
* skill-validator in Phase 3 and flow through validation.severity /
|
|
8
|
+
* validation.allow like every other framework code.
|
|
9
|
+
*/
|
|
10
|
+
import type { ValidationIssue } from './types.js';
|
|
11
|
+
declare const COMPAT_CODES: readonly ["COMPAT_REQUIRES_BROWSER_AUTH", "COMPAT_REQUIRES_LOCAL_SHELL", "COMPAT_REQUIRES_EXTERNAL_CLI"];
|
|
12
|
+
type CompatCode = (typeof COMPAT_CODES)[number];
|
|
13
|
+
declare function makeIssue(code: CompatCode, filePath: string, evidence: string): ValidationIssue;
|
|
14
|
+
/**
|
|
15
|
+
* Iterate over fenced code blocks. Yields {language, body, line} for each
|
|
16
|
+
* fence. Used by shell + external-CLI detectors in later tasks.
|
|
17
|
+
*/
|
|
18
|
+
declare function iterCodeBlocks(content: string): Generator<{
|
|
19
|
+
language: string;
|
|
20
|
+
body: string;
|
|
21
|
+
line: number;
|
|
22
|
+
}>;
|
|
23
|
+
export declare function detectBrowserAuth(content: string, filePath: string): ValidationIssue[];
|
|
24
|
+
export declare function detectLocalShell(content: string, filePath: string): ValidationIssue[];
|
|
25
|
+
export declare function detectExternalCLI(content: string, filePath: string): ValidationIssue[];
|
|
26
|
+
/**
|
|
27
|
+
* Run every compat detector and return the concatenated issue list.
|
|
28
|
+
* Deduplicates by (code, location) so overlapping patterns don't double-fire.
|
|
29
|
+
*/
|
|
30
|
+
export declare function runCompatDetectors(content: string, filePath: string): ValidationIssue[];
|
|
31
|
+
export { COMPAT_CODES, iterCodeBlocks, makeIssue, type CompatCode };
|
|
32
|
+
//# sourceMappingURL=compat-detectors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compat-detectors.d.ts","sourceRoot":"","sources":["../../src/validators/compat-detectors.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,QAAA,MAAM,YAAY,0GAIR,CAAC;AAEX,KAAK,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhD,iBAAS,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,CAUxF;AAED;;;GAGG;AACH,iBAAU,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CASrG;AAgDD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,EAAE,CAOtF;AACD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,EAAE,CAiCrF;AACD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,EAAE,CAiBtF;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,EAAE,CAevF;AAED,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,UAAU,EAAE,CAAC"}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compat smell detectors.
|
|
3
|
+
*
|
|
4
|
+
* Pure module: (content, filePath) -> ValidationIssue[]. Each detector
|
|
5
|
+
* decides whether to fire; description/fix/reference come from
|
|
6
|
+
* CODE_REGISTRY, mirroring walker-to-issues.ts. Detectors wire into
|
|
7
|
+
* skill-validator in Phase 3 and flow through validation.severity /
|
|
8
|
+
* validation.allow like every other framework code.
|
|
9
|
+
*/
|
|
10
|
+
import { CODE_REGISTRY } from './code-registry.js';
|
|
11
|
+
const COMPAT_CODES = [
|
|
12
|
+
'COMPAT_REQUIRES_BROWSER_AUTH',
|
|
13
|
+
'COMPAT_REQUIRES_LOCAL_SHELL',
|
|
14
|
+
'COMPAT_REQUIRES_EXTERNAL_CLI',
|
|
15
|
+
];
|
|
16
|
+
function makeIssue(code, filePath, evidence) {
|
|
17
|
+
const entry = CODE_REGISTRY[code];
|
|
18
|
+
return {
|
|
19
|
+
severity: entry.defaultSeverity,
|
|
20
|
+
code,
|
|
21
|
+
message: `${entry.description} (detected: ${evidence})`,
|
|
22
|
+
location: filePath,
|
|
23
|
+
fix: entry.fix,
|
|
24
|
+
reference: entry.reference,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Iterate over fenced code blocks. Yields {language, body, line} for each
|
|
29
|
+
* fence. Used by shell + external-CLI detectors in later tasks.
|
|
30
|
+
*/
|
|
31
|
+
function* iterCodeBlocks(content) {
|
|
32
|
+
const CODE_BLOCK_RE = /^```(\w*)\n([\s\S]*?)^```/gm;
|
|
33
|
+
let match;
|
|
34
|
+
while ((match = CODE_BLOCK_RE.exec(content)) !== null) {
|
|
35
|
+
const language = match[1] ?? '';
|
|
36
|
+
const body = match[2] ?? '';
|
|
37
|
+
const line = content.slice(0, match.index).split('\n').length;
|
|
38
|
+
yield { language, body, line };
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
const LOCAL_SHELL_TOOLS = ['Bash', 'Edit', 'Write', 'NotebookEdit'];
|
|
42
|
+
// Minimal frontmatter peek for the allowed-tools list. Skill-validator
|
|
43
|
+
// does full YAML parsing elsewhere; here we only need the one field,
|
|
44
|
+
// so a narrow regex is cheaper than re-parsing.
|
|
45
|
+
const FRONTMATTER_RE = /^---\n([\s\S]*?)\n---/;
|
|
46
|
+
const ALLOWED_TOOLS_RE = /^allowed-tools:\s*\[([^\]]*)\]/m;
|
|
47
|
+
function allowedToolsList(content) {
|
|
48
|
+
const fm = FRONTMATTER_RE.exec(content);
|
|
49
|
+
if (!fm)
|
|
50
|
+
return [];
|
|
51
|
+
const fmBody = fm[1] ?? '';
|
|
52
|
+
const at = ALLOWED_TOOLS_RE.exec(fmBody);
|
|
53
|
+
if (!at)
|
|
54
|
+
return [];
|
|
55
|
+
const raw = at[1] ?? '';
|
|
56
|
+
return raw.split(',').map(s => s.trim()).filter(s => s.length > 0);
|
|
57
|
+
}
|
|
58
|
+
const PROSE_TOOL_RE = /\b(Bash|Edit|Write|NotebookEdit)\s+tool\b/;
|
|
59
|
+
const SHELL_LANGUAGES = new Set(['bash', 'sh', 'shell', 'zsh']);
|
|
60
|
+
// Unbundled CLI binaries. Narrow initial list — start with what real adopters
|
|
61
|
+
// already use (avonrisk-sdlc uses az), grow only when community scanning
|
|
62
|
+
// (workstream B) surfaces new patterns.
|
|
63
|
+
const EXTERNAL_BINARIES = ['az', 'aws', 'gcloud', 'kubectl', 'docker', 'terraform', 'gh', 'op'];
|
|
64
|
+
function binaryLineRE(binary) {
|
|
65
|
+
// Start of line or after a shell separator (space/tab/;|&), followed by whitespace/EOL.
|
|
66
|
+
// This prevents matching `az-foo` or `gh-cli`.
|
|
67
|
+
// eslint-disable-next-line security/detect-non-literal-regexp -- whitelist of literals
|
|
68
|
+
return new RegExp(String.raw `(^|[\s;|&])${binary}(\s|$)`, 'm');
|
|
69
|
+
}
|
|
70
|
+
// Browser-auth patterns: interactive OAuth/device-code flows that assume a
|
|
71
|
+
// local browser. Non-browser auth (bearer tokens, service-principal secrets)
|
|
72
|
+
// is portable and intentionally NOT flagged.
|
|
73
|
+
const BROWSER_AUTH_PATTERNS = [
|
|
74
|
+
{ re: /\bfrom\s+msal\b/, label: "Python 'msal' import" },
|
|
75
|
+
{ re: /@azure\/msal-(node|browser|common)/, label: 'JS @azure/msal-* import' },
|
|
76
|
+
{ re: /(^|[\s;|&])az\s+login\b/m, label: "'az login' in shell" },
|
|
77
|
+
{ re: /(^|[\s;|&])gcloud\s+auth\s+login\b/m, label: "'gcloud auth login' in shell" },
|
|
78
|
+
{ re: /(^|[\s;|&])aws\s+sso\s+login\b/m, label: "'aws sso login' in shell" },
|
|
79
|
+
{ re: /\bwebbrowser\.open\s*\(/, label: 'webbrowser.open() call' },
|
|
80
|
+
];
|
|
81
|
+
// Per-code detectors implemented in Tasks 4-6:
|
|
82
|
+
export function detectBrowserAuth(content, filePath) {
|
|
83
|
+
for (const { re, label } of BROWSER_AUTH_PATTERNS) {
|
|
84
|
+
if (re.test(content)) {
|
|
85
|
+
return [makeIssue('COMPAT_REQUIRES_BROWSER_AUTH', filePath, label)];
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return [];
|
|
89
|
+
}
|
|
90
|
+
export function detectLocalShell(content, filePath) {
|
|
91
|
+
const issues = [];
|
|
92
|
+
const push = (evidence) => {
|
|
93
|
+
issues.push(makeIssue('COMPAT_REQUIRES_LOCAL_SHELL', filePath, evidence));
|
|
94
|
+
};
|
|
95
|
+
const tools = allowedToolsList(content);
|
|
96
|
+
const matchedTool = tools.find(t => LOCAL_SHELL_TOOLS.includes(t));
|
|
97
|
+
if (matchedTool) {
|
|
98
|
+
push(`allowed-tools includes ${matchedTool}`);
|
|
99
|
+
}
|
|
100
|
+
if (PROSE_TOOL_RE.test(content)) {
|
|
101
|
+
push('prose references a local-shell tool by name');
|
|
102
|
+
}
|
|
103
|
+
for (const block of iterCodeBlocks(content)) {
|
|
104
|
+
if (SHELL_LANGUAGES.has(block.language.toLowerCase())) {
|
|
105
|
+
push(`fenced ${block.language} code block`);
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
// Dedupe inside the detector: runCompatDetectors also dedupes across
|
|
110
|
+
// detectors, but keeping this local keeps per-detector output tight
|
|
111
|
+
// for standalone callers and tests.
|
|
112
|
+
const seen = new Set();
|
|
113
|
+
return issues.filter(i => {
|
|
114
|
+
const key = `${i.code}|${i.location ?? ''}`;
|
|
115
|
+
if (seen.has(key))
|
|
116
|
+
return false;
|
|
117
|
+
seen.add(key);
|
|
118
|
+
return true;
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
export function detectExternalCLI(content, filePath) {
|
|
122
|
+
for (const block of iterCodeBlocks(content)) {
|
|
123
|
+
const lang = block.language.toLowerCase();
|
|
124
|
+
if (!SHELL_LANGUAGES.has(lang) && lang !== '')
|
|
125
|
+
continue;
|
|
126
|
+
for (const bin of EXTERNAL_BINARIES) {
|
|
127
|
+
if (binaryLineRE(bin).test(block.body)) {
|
|
128
|
+
return [
|
|
129
|
+
makeIssue('COMPAT_REQUIRES_EXTERNAL_CLI', filePath, `external CLI invocation '${bin}' in fenced code block`),
|
|
130
|
+
];
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
return [];
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Run every compat detector and return the concatenated issue list.
|
|
138
|
+
* Deduplicates by (code, location) so overlapping patterns don't double-fire.
|
|
139
|
+
*/
|
|
140
|
+
export function runCompatDetectors(content, filePath) {
|
|
141
|
+
const raw = [
|
|
142
|
+
...detectBrowserAuth(content, filePath),
|
|
143
|
+
...detectLocalShell(content, filePath),
|
|
144
|
+
...detectExternalCLI(content, filePath),
|
|
145
|
+
];
|
|
146
|
+
const seen = new Set();
|
|
147
|
+
const out = [];
|
|
148
|
+
for (const issue of raw) {
|
|
149
|
+
const key = `${issue.code}|${issue.location ?? ''}`;
|
|
150
|
+
if (seen.has(key))
|
|
151
|
+
continue;
|
|
152
|
+
seen.add(key);
|
|
153
|
+
out.push(issue);
|
|
154
|
+
}
|
|
155
|
+
return out;
|
|
156
|
+
}
|
|
157
|
+
export { COMPAT_CODES, iterCodeBlocks, makeIssue };
|
|
158
|
+
//# sourceMappingURL=compat-detectors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compat-detectors.js","sourceRoot":"","sources":["../../src/validators/compat-detectors.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-validator.d.ts","sourceRoot":"","sources":["../../src/validators/skill-validator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"skill-validator.d.ts","sourceRoot":"","sources":["../../src/validators/skill-validator.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAA8B,eAAe,EAAmB,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGjH;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA2EvF;AAqPD,4EAA4E;AAC5E,MAAM,WAAW,iBAAiB;IAChC,mFAAmF;IACnF,cAAc,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,OAAO,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;CACd;AAsID;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,SAAS,MAAM,EAAE,EACpC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,GAChC,iBAAiB,EAAE,CAarB"}
|
|
@@ -3,6 +3,7 @@ import { basename, dirname } from 'node:path';
|
|
|
3
3
|
import { parseMarkdown, resolveLocalHref } from '@vibe-agent-toolkit/resources';
|
|
4
4
|
import { safePath } from '@vibe-agent-toolkit/utils';
|
|
5
5
|
import { parseFrontmatter } from '../parsers/frontmatter-parser.js';
|
|
6
|
+
import { runCompatDetectors } from './compat-detectors.js';
|
|
6
7
|
import { validateFrontmatterRules, validateFrontmatterSchema } from './frontmatter-validation.js';
|
|
7
8
|
import { NAVIGATION_FILE_PATTERNS } from './validation-rules.js';
|
|
8
9
|
/**
|
|
@@ -55,6 +56,8 @@ export async function validateSkill(options) {
|
|
|
55
56
|
issues.push(...validateFrontmatterSchema(frontmatter, isVATGenerated), ...validateFrontmatterRules(frontmatter));
|
|
56
57
|
// Validate warning-level rules (skill-specific)
|
|
57
58
|
validateWarningRules(content, lineCount, skillPath, issues);
|
|
59
|
+
// Compat smells (warning-severity; flows through validation.allow like other framework codes)
|
|
60
|
+
issues.push(...runCompatDetectors(content, skillPath));
|
|
58
61
|
// Transitive link traversal (BFS)
|
|
59
62
|
const skillDir = options.rootDir ?? dirname(skillPath);
|
|
60
63
|
const linkedFiles = await traverseLinks(skillPath, skillDir, issues);
|
|
@@ -176,6 +179,15 @@ async function traverseLinks(skillPath, skillDir, issues) {
|
|
|
176
179
|
}
|
|
177
180
|
const processed = processFileLinks(parseResult, currentPath, skillDir, issues, visited);
|
|
178
181
|
queue.push(...processed.newPaths);
|
|
182
|
+
// Compat smells for linked files (root SKILL.md handled by the top-level invocation).
|
|
183
|
+
// Re-read raw file content so fenced code blocks remain intact for detectors.
|
|
184
|
+
if (currentPath !== resolvedSkillPath) {
|
|
185
|
+
// eslint-disable-next-line security/detect-non-literal-fs-filename -- currentPath verified existent by BFS predecessor
|
|
186
|
+
const linkedContent = fs.readFileSync(currentPath, 'utf-8');
|
|
187
|
+
const linkedCompatIssues = runCompatDetectors(linkedContent, currentPath);
|
|
188
|
+
processed.fileIssues.push(...linkedCompatIssues);
|
|
189
|
+
issues.push(...linkedCompatIssues);
|
|
190
|
+
}
|
|
179
191
|
// Record linked file result (skip SKILL.md itself — it's the root)
|
|
180
192
|
if (currentPath !== resolvedSkillPath) {
|
|
181
193
|
linkedFiles.push({
|
|
@@ -371,7 +383,7 @@ export function extractImplicitReferences(_skillDir, unreferencedFiles, visitedF
|
|
|
371
383
|
}
|
|
372
384
|
return results;
|
|
373
385
|
}
|
|
374
|
-
function validateWarningRules(
|
|
386
|
+
function validateWarningRules(_content, lineCount, skillPath, issues) {
|
|
375
387
|
// Check if skill is too long (>5000 lines)
|
|
376
388
|
const MAX_SKILL_LINES = 5000;
|
|
377
389
|
if (lineCount > MAX_SKILL_LINES) {
|
|
@@ -383,25 +395,6 @@ function validateWarningRules(content, lineCount, skillPath, issues) {
|
|
|
383
395
|
fix: 'Consider breaking skill into multiple smaller skills or using reference files',
|
|
384
396
|
});
|
|
385
397
|
}
|
|
386
|
-
// Check for console-incompatible features
|
|
387
|
-
const toolPatterns = [
|
|
388
|
-
{ tool: 'Write', pattern: /\bWrite\s+tool\b/i },
|
|
389
|
-
{ tool: 'Edit', pattern: /\bEdit\s+tool\b/i },
|
|
390
|
-
{ tool: 'Bash', pattern: /\bBash\s+tool\b/i },
|
|
391
|
-
{ tool: 'NotebookEdit', pattern: /\bNotebookEdit\s+tool\b/i },
|
|
392
|
-
];
|
|
393
|
-
for (const { tool, pattern } of toolPatterns) {
|
|
394
|
-
if (pattern.test(content)) {
|
|
395
|
-
issues.push({
|
|
396
|
-
severity: 'warning',
|
|
397
|
-
code: 'SKILL_CONSOLE_INCOMPATIBLE',
|
|
398
|
-
message: `Skill references "${tool}" tool which is not available in console mode`,
|
|
399
|
-
location: skillPath,
|
|
400
|
-
fix: 'Add note that skill requires IDE/CLI mode, or make skill console-compatible',
|
|
401
|
-
});
|
|
402
|
-
break; // Only report once
|
|
403
|
-
}
|
|
404
|
-
}
|
|
405
398
|
}
|
|
406
399
|
function buildMetadata(frontmatter, lineCount) {
|
|
407
400
|
const metadata = { lineCount };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-validator.js","sourceRoot":"","sources":["../../src/validators/skill-validator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skill-validator.js","sourceRoot":"","sources":["../../src/validators/skill-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ export type IssueSeverity = RegistryIssueSeverity;
|
|
|
5
5
|
/** Codes outside the overridable framework — structural reports. */
|
|
6
6
|
export type InfoCode = 'FILE_STRUCTURE_REPORT' | 'RESOURCE_INVENTORY' | 'METADATA_SUMMARY' | 'SKILL_IMPLICIT_REFERENCE' | 'SKILL_UNREFERENCED_FILE';
|
|
7
7
|
/** Codes outside the overridable framework — structural prerequisites / errors that are not subject to severity overrides. */
|
|
8
|
-
export type NonOverridableCode = 'SKILL_MISSING_FRONTMATTER' | 'SKILL_MISSING_NAME' | 'SKILL_MISSING_DESCRIPTION' | 'SKILL_NAME_INVALID' | 'SKILL_NAME_RESERVED_WORD' | 'SKILL_NAME_XML_TAGS' | 'SKILL_DESCRIPTION_XML_TAGS' | 'SKILL_DESCRIPTION_TOO_LONG' | 'SKILL_DESCRIPTION_EMPTY' | 'SKILL_MISCONFIGURED_LOCATION' | 'LINK_INTEGRITY_BROKEN' | 'PATH_STYLE_WINDOWS' | 'INVALID_FRONTMATTER' | 'MISSING_NAME' | 'RESERVED_WORD_IN_NAME' | 'FILENAME_COLLISION' | 'DUPLICATE_FILES_DEST' | 'PLUGIN_MISSING_MANIFEST' | 'PLUGIN_INVALID_JSON' | 'PLUGIN_INVALID_SCHEMA' | 'PLUGIN_MISSING_VERSION' | 'MARKETPLACE_MISSING_MANIFEST' | 'MARKETPLACE_INVALID_JSON' | 'MARKETPLACE_INVALID_SCHEMA' | 'MARKETPLACE_MISSING_LICENSE' | 'MARKETPLACE_MISSING_README' | 'MARKETPLACE_MISSING_CHANGELOG' | 'MARKETPLACE_MISSING_VERSION' | 'REGISTRY_MISSING_FILE' | 'REGISTRY_INVALID_JSON' | 'REGISTRY_INVALID_SCHEMA' | 'UNKNOWN_FORMAT' | 'SKILL_TOO_LONG' | 'REFERENCE_MISSING_TOC' | 'DESCRIPTION_FIRST_PERSON' | 'RESOURCE_UNREACHABLE'
|
|
8
|
+
export type NonOverridableCode = 'SKILL_MISSING_FRONTMATTER' | 'SKILL_MISSING_NAME' | 'SKILL_MISSING_DESCRIPTION' | 'SKILL_NAME_INVALID' | 'SKILL_NAME_RESERVED_WORD' | 'SKILL_NAME_XML_TAGS' | 'SKILL_DESCRIPTION_XML_TAGS' | 'SKILL_DESCRIPTION_TOO_LONG' | 'SKILL_DESCRIPTION_EMPTY' | 'SKILL_MISCONFIGURED_LOCATION' | 'LINK_INTEGRITY_BROKEN' | 'PATH_STYLE_WINDOWS' | 'INVALID_FRONTMATTER' | 'MISSING_NAME' | 'RESERVED_WORD_IN_NAME' | 'FILENAME_COLLISION' | 'DUPLICATE_FILES_DEST' | 'PLUGIN_MISSING_MANIFEST' | 'PLUGIN_INVALID_JSON' | 'PLUGIN_INVALID_SCHEMA' | 'PLUGIN_MISSING_VERSION' | 'MARKETPLACE_MISSING_MANIFEST' | 'MARKETPLACE_INVALID_JSON' | 'MARKETPLACE_INVALID_SCHEMA' | 'MARKETPLACE_MISSING_LICENSE' | 'MARKETPLACE_MISSING_README' | 'MARKETPLACE_MISSING_CHANGELOG' | 'MARKETPLACE_MISSING_VERSION' | 'REGISTRY_MISSING_FILE' | 'REGISTRY_INVALID_JSON' | 'REGISTRY_INVALID_SCHEMA' | 'UNKNOWN_FORMAT' | 'SKILL_TOO_LONG' | 'REFERENCE_MISSING_TOC' | 'DESCRIPTION_FIRST_PERSON' | 'RESOURCE_UNREACHABLE';
|
|
9
9
|
/** Full code space: registry codes (overridable) + info codes + structural/non-overridable codes. */
|
|
10
10
|
export type IssueCode = RegistryIssueCode | InfoCode | NonOverridableCode;
|
|
11
11
|
export interface ValidationIssue {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/validators/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,IAAI,iBAAiB,EAAE,aAAa,IAAI,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAEjH,YAAY,EAAE,SAAS,IAAI,iBAAiB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1F,iEAAiE;AACjE,MAAM,MAAM,aAAa,GAAG,qBAAqB,CAAC;AAElD,oEAAoE;AACpE,MAAM,MAAM,QAAQ,GAChB,uBAAuB,GACvB,oBAAoB,GACpB,kBAAkB,GAClB,0BAA0B,GAC1B,yBAAyB,CAAC;AAE9B,8HAA8H;AAC9H,MAAM,MAAM,kBAAkB,GAC1B,2BAA2B,GAC3B,oBAAoB,GACpB,2BAA2B,GAC3B,oBAAoB,GACpB,0BAA0B,GAC1B,qBAAqB,GACrB,4BAA4B,GAC5B,4BAA4B,GAC5B,yBAAyB,GACzB,8BAA8B,GAC9B,uBAAuB,GACvB,oBAAoB,GACpB,qBAAqB,GACrB,cAAc,GACd,uBAAuB,GACvB,oBAAoB,GACpB,sBAAsB,GACtB,yBAAyB,GACzB,qBAAqB,GACrB,uBAAuB,GACvB,wBAAwB,GACxB,8BAA8B,GAC9B,0BAA0B,GAC1B,4BAA4B,GAC5B,6BAA6B,GAC7B,4BAA4B,GAC5B,+BAA+B,GAC/B,6BAA6B,GAC7B,uBAAuB,GACvB,uBAAuB,GACvB,yBAAyB,GACzB,gBAAgB,GAChB,gBAAgB,GAChB,uBAAuB,GACvB,0BAA0B,GAC1B,sBAAsB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/validators/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vibe-agent-toolkit/agent-skills",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.31-rc.1",
|
|
4
4
|
"description": "Build, validate, and package agent skills in the Agent Skills format",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -28,10 +28,10 @@
|
|
|
28
28
|
"typecheck": "tsc --noEmit"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@vibe-agent-toolkit/agent-config": "0.1.
|
|
32
|
-
"@vibe-agent-toolkit/agent-schema": "0.1.
|
|
33
|
-
"@vibe-agent-toolkit/resources": "0.1.
|
|
34
|
-
"@vibe-agent-toolkit/utils": "0.1.
|
|
31
|
+
"@vibe-agent-toolkit/agent-config": "0.1.31-rc.1",
|
|
32
|
+
"@vibe-agent-toolkit/agent-schema": "0.1.31-rc.1",
|
|
33
|
+
"@vibe-agent-toolkit/resources": "0.1.31-rc.1",
|
|
34
|
+
"@vibe-agent-toolkit/utils": "0.1.31-rc.1",
|
|
35
35
|
"adm-zip": "^0.5.16",
|
|
36
36
|
"picomatch": "^4.0.3",
|
|
37
37
|
"yaml": "^2.6.1",
|