vskill 1.2.4 → 1.2.7
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 +51 -3
- package/agents.json +6 -1
- package/dist/agents/agents-registry.d.ts +43 -16
- package/dist/agents/agents-registry.js +119 -33
- package/dist/agents/agents-registry.js.map +1 -1
- package/dist/agents/global-dirs.d.ts +19 -0
- package/dist/agents/global-dirs.js +53 -0
- package/dist/agents/global-dirs.js.map +1 -0
- package/dist/audit/fix-suggestions.js +6 -0
- package/dist/audit/fix-suggestions.js.map +1 -1
- package/dist/commands/add-github-bundle.d.ts +29 -0
- package/dist/commands/add-github-bundle.js +135 -0
- package/dist/commands/add-github-bundle.js.map +1 -0
- package/dist/commands/add-lockfile.d.ts +2 -0
- package/dist/commands/add-lockfile.js +1 -1
- package/dist/commands/add-lockfile.js.map +1 -1
- package/dist/commands/add.d.ts +5 -7
- package/dist/commands/add.js +207 -111
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/audit-webmcp.d.ts +25 -0
- package/dist/commands/audit-webmcp.js +167 -0
- package/dist/commands/audit-webmcp.js.map +1 -0
- package/dist/commands/doctor.d.ts +69 -0
- package/dist/commands/doctor.js +760 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/remove.js +43 -8
- package/dist/commands/remove.js.map +1 -1
- package/dist/commands/scan.js +1 -1
- package/dist/commands/scan.js.map +1 -1
- package/dist/commands/update.js +12 -4
- package/dist/commands/update.js.map +1 -1
- package/dist/discovery/github-skill-bundle.d.ts +74 -0
- package/dist/discovery/github-skill-bundle.js +323 -0
- package/dist/discovery/github-skill-bundle.js.map +1 -0
- package/dist/eval/skill-scanner.js +7 -1
- package/dist/eval/skill-scanner.js.map +1 -1
- package/dist/eval-server/install-skill-routes.js +10 -3
- package/dist/eval-server/install-skill-routes.js.map +1 -1
- package/dist/eval-server/remove-skill-routes.js +262 -29
- package/dist/eval-server/remove-skill-routes.js.map +1 -1
- package/dist/eval-server/studio-privacy.js +2 -3
- package/dist/eval-server/studio-privacy.js.map +1 -1
- package/dist/eval-server/utils/scan-install-locations.js +22 -3
- package/dist/eval-server/utils/scan-install-locations.js.map +1 -1
- package/dist/eval-ui/assets/{CreateSkillPage-BUrgworx.js → CreateSkillPage-CXDd6gDN.js} +1 -1
- package/dist/eval-ui/assets/{FindSkillsPalette-BstJ22TI.js → FindSkillsPalette-DQ6uGhFP.js} +2 -2
- package/dist/eval-ui/assets/{SearchPaletteCore-Dagnc-E7.js → SearchPaletteCore-DpHCf0mf.js} +1 -1
- package/dist/eval-ui/assets/{SkillDetailPanel-DnujVk6g.js → SkillDetailPanel-BjHFjGxg.js} +1 -1
- package/dist/eval-ui/assets/{UpdateDropdown-B7D2vXrm.js → UpdateDropdown-Cn4Vsq5d.js} +1 -1
- package/dist/eval-ui/assets/main-BmB7Zj9I.js +86 -0
- package/dist/eval-ui/index.html +1 -1
- package/dist/index.js +34 -0
- package/dist/index.js.map +1 -1
- package/dist/installer/bundle-files.d.ts +39 -2
- package/dist/installer/bundle-files.js +80 -10
- package/dist/installer/bundle-files.js.map +1 -1
- package/dist/installer/canonical.d.ts +39 -4
- package/dist/installer/canonical.js +178 -24
- package/dist/installer/canonical.js.map +1 -1
- package/dist/installer/multi-install.d.ts +11 -2
- package/dist/installer/multi-install.js +41 -9
- package/dist/installer/multi-install.js.map +1 -1
- package/dist/installer/transformers/index.d.ts +8 -0
- package/dist/installer/yaml-safe-mutate.js +48 -2
- package/dist/installer/yaml-safe-mutate.js.map +1 -1
- package/dist/lib/github-fetch.js +2 -0
- package/dist/lib/github-fetch.js.map +1 -1
- package/dist/lib/private-source.d.ts +8 -0
- package/dist/lib/private-source.js +16 -2
- package/dist/lib/private-source.js.map +1 -1
- package/dist/scanner/hidden-content.d.ts +47 -0
- package/dist/scanner/hidden-content.js +904 -0
- package/dist/scanner/hidden-content.js.map +1 -0
- package/dist/scanner/installer-hosts.d.ts +26 -0
- package/dist/scanner/installer-hosts.js +92 -0
- package/dist/scanner/installer-hosts.js.map +1 -0
- package/dist/scanner/judge-guard.d.ts +119 -0
- package/dist/scanner/judge-guard.js +481 -0
- package/dist/scanner/judge-guard.js.map +1 -0
- package/dist/scanner/patterns.d.ts +12 -0
- package/dist/scanner/patterns.js +353 -113
- package/dist/scanner/patterns.js.map +1 -1
- package/dist/scanner/repo-scanner.d.ts +4 -0
- package/dist/scanner/repo-scanner.js +4 -1
- package/dist/scanner/repo-scanner.js.map +1 -1
- package/dist/scanner/tier1.js +37 -7
- package/dist/scanner/tier1.js.map +1 -1
- package/dist/scanner/tier2-llm.d.ts +22 -4
- package/dist/scanner/tier2-llm.js +163 -23
- package/dist/scanner/tier2-llm.js.map +1 -1
- package/dist/scanner/types.d.ts +8 -0
- package/dist/webmcp/args.d.ts +34 -0
- package/dist/webmcp/args.js +87 -0
- package/dist/webmcp/args.js.map +1 -0
- package/dist/webmcp/attribution.d.ts +38 -0
- package/dist/webmcp/attribution.js +141 -0
- package/dist/webmcp/attribution.js.map +1 -0
- package/dist/webmcp/enumerate.d.ts +81 -0
- package/dist/webmcp/enumerate.js +436 -0
- package/dist/webmcp/enumerate.js.map +1 -0
- package/dist/webmcp/format.d.ts +9 -0
- package/dist/webmcp/format.js +105 -0
- package/dist/webmcp/format.js.map +1 -0
- package/dist/webmcp/merge.d.ts +49 -0
- package/dist/webmcp/merge.js +167 -0
- package/dist/webmcp/merge.js.map +1 -0
- package/dist/webmcp/score.d.ts +70 -0
- package/dist/webmcp/score.js +586 -0
- package/dist/webmcp/score.js.map +1 -0
- package/dist/webmcp/types.d.ts +92 -0
- package/dist/webmcp/types.js +8 -0
- package/dist/webmcp/types.js.map +1 -0
- package/package.json +1 -1
- package/dist/eval-ui/assets/main-DjA5gpjV.js +0 -86
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import type { PatternSeverity, ScanVerdict } from "../scanner/patterns.js";
|
|
2
|
+
export type Severity = PatternSeverity;
|
|
3
|
+
export declare const SEVERITIES: Severity[];
|
|
4
|
+
/** Annotations normalized to the WebMCP hint names. */
|
|
5
|
+
export interface ToolAnnotations {
|
|
6
|
+
readOnlyHint?: boolean;
|
|
7
|
+
consequentialHint?: boolean;
|
|
8
|
+
untrustedContentHint?: boolean;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Who registered a tool, from its script URL (see attribution.ts):
|
|
12
|
+
* the page's own site, the hosting platform's own code, a library from a
|
|
13
|
+
* public npm CDN, or another site.
|
|
14
|
+
*/
|
|
15
|
+
export type RegistrarKind = "first-party" | "platform" | "library" | "third-party";
|
|
16
|
+
/** Where we learned about a tool. */
|
|
17
|
+
export type ToolSource = "registerTool" | "cdp" | "getTools";
|
|
18
|
+
export interface WebmcpTool {
|
|
19
|
+
name: string;
|
|
20
|
+
title?: string;
|
|
21
|
+
description?: string;
|
|
22
|
+
/** Parsed JSON Schema when the page supplied valid JSON; otherwise the raw value. */
|
|
23
|
+
inputSchema?: unknown;
|
|
24
|
+
annotations: ToolAnnotations;
|
|
25
|
+
/** Script URL that called registerTool (from a captured stack trace). */
|
|
26
|
+
registeredBy?: string;
|
|
27
|
+
/** Classification of registeredBy; absent when the script URL is unknown. */
|
|
28
|
+
registeredByKind?: RegistrarKind;
|
|
29
|
+
/** Platform name when registeredByKind is "platform" (e.g. "Shopify"). */
|
|
30
|
+
registeredByPlatform?: string;
|
|
31
|
+
/** Package the CDN URL names when registeredByKind is "library" (e.g. "simple-webmcp@0.3.0"). */
|
|
32
|
+
registeredByPackage?: string;
|
|
33
|
+
/** True when registeredByKind is "third-party": another site that is neither the page's platform nor a public npm CDN. */
|
|
34
|
+
thirdParty: boolean;
|
|
35
|
+
/** Origins the tool is exposed to, when the page passed exposedTo. */
|
|
36
|
+
exposedTo?: string[];
|
|
37
|
+
sources: ToolSource[];
|
|
38
|
+
}
|
|
39
|
+
export interface WebmcpFinding {
|
|
40
|
+
id: string;
|
|
41
|
+
severity: Severity;
|
|
42
|
+
/** Tool name, or null for a page-level finding. */
|
|
43
|
+
tool: string | null;
|
|
44
|
+
message: string;
|
|
45
|
+
}
|
|
46
|
+
export interface SiteSummary {
|
|
47
|
+
toolCount: number;
|
|
48
|
+
readOnlyCount: number;
|
|
49
|
+
consequentialCount: number;
|
|
50
|
+
writeShapedCount: number;
|
|
51
|
+
thirdPartyCount: number;
|
|
52
|
+
/** Tools registered by the hosting platform's own script. */
|
|
53
|
+
platformCount: number;
|
|
54
|
+
/** Tools registered by a library loaded from a public npm CDN. */
|
|
55
|
+
libraryCount: number;
|
|
56
|
+
findingsBySeverity: Record<Severity, number>;
|
|
57
|
+
/** null when the site failed to load and nothing was enumerated. */
|
|
58
|
+
score: number | null;
|
|
59
|
+
/** ERROR when the site failed to load and nothing was enumerated. */
|
|
60
|
+
verdict: ScanVerdict | "ERROR";
|
|
61
|
+
}
|
|
62
|
+
export interface SiteReport {
|
|
63
|
+
schemaVersion: 1;
|
|
64
|
+
url: string;
|
|
65
|
+
finalUrl: string | null;
|
|
66
|
+
scannedAt: string;
|
|
67
|
+
webmcp: {
|
|
68
|
+
documentModelContext: boolean;
|
|
69
|
+
navigatorModelContext: boolean;
|
|
70
|
+
};
|
|
71
|
+
headers: {
|
|
72
|
+
permissionsPolicy: string | null;
|
|
73
|
+
};
|
|
74
|
+
/** Hosting platforms detected on the page (e.g. ["shopify"]). */
|
|
75
|
+
platforms: string[];
|
|
76
|
+
tools: WebmcpTool[];
|
|
77
|
+
findings: WebmcpFinding[];
|
|
78
|
+
summary: SiteSummary;
|
|
79
|
+
error?: string;
|
|
80
|
+
}
|
|
81
|
+
/** Raw enumeration result, before scoring. */
|
|
82
|
+
export interface EnumerationResult {
|
|
83
|
+
url: string;
|
|
84
|
+
finalUrl: string | null;
|
|
85
|
+
documentModelContext: boolean;
|
|
86
|
+
navigatorModelContext: boolean;
|
|
87
|
+
permissionsPolicy: string | null;
|
|
88
|
+
/** Hosting platforms detected on the page (e.g. ["shopify"]). */
|
|
89
|
+
platforms?: string[];
|
|
90
|
+
tools: WebmcpTool[];
|
|
91
|
+
error?: string;
|
|
92
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// vskill audit-webmcp -- shared types.
|
|
3
|
+
//
|
|
4
|
+
// The JSON report shape (schemaVersion 1) is documented in README.md under
|
|
5
|
+
// "Audit a site's WebMCP tools". Keep the two in sync.
|
|
6
|
+
// ---------------------------------------------------------------------------
|
|
7
|
+
export const SEVERITIES = ["critical", "high", "medium", "low", "info"];
|
|
8
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/webmcp/types.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,uCAAuC;AACvC,EAAE;AACF,2EAA2E;AAC3E,uDAAuD;AACvD,8EAA8E;AAM9E,MAAM,CAAC,MAAM,UAAU,GAAe,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC"}
|