vskill 0.5.69 → 0.5.71

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.
@@ -2,15 +2,38 @@
2
2
  // vskill versions -- list published versions for a skill
3
3
  // ---------------------------------------------------------------------------
4
4
  import { getVersions } from "../api/client.js";
5
+ import { readLockfile } from "../lockfile/lockfile.js";
6
+ import { parseSource } from "../resolvers/source-resolver.js";
5
7
  import { bold, dim, cyan, red, green, yellow, table } from "../utils/output.js";
8
+ /**
9
+ * Resolve a short skill name (e.g. "skill-creator") to its full hierarchical
10
+ * API name (e.g. "anthropics/skills/skill-creator") using the lockfile source.
11
+ * Returns the name unchanged if it already contains slashes or isn't in the lockfile.
12
+ */
13
+ function resolveFullName(name) {
14
+ if (name.includes("/"))
15
+ return name;
16
+ const lock = readLockfile();
17
+ if (!lock)
18
+ return name;
19
+ const entry = lock.skills[name];
20
+ if (!entry?.source)
21
+ return name;
22
+ const parsed = parseSource(entry.source);
23
+ if (parsed.type === "github" || parsed.type === "github-plugin" || parsed.type === "marketplace") {
24
+ return `${parsed.owner}/${parsed.repo}/${name}`;
25
+ }
26
+ return name;
27
+ }
6
28
  export async function versionsCommand(skillName) {
7
29
  try {
8
- const versions = await getVersions(skillName);
30
+ const resolved = resolveFullName(skillName);
31
+ const versions = await getVersions(resolved);
9
32
  if (versions.length === 0) {
10
- console.log(dim("No versions found for ") + cyan(skillName));
33
+ console.log(dim("No versions found for ") + cyan(resolved));
11
34
  return;
12
35
  }
13
- console.log(bold(`Versions for ${skillName}\n`));
36
+ console.log(bold(`Versions for ${resolved}\n`));
14
37
  const headers = ["Version", "Tier", "Date"];
15
38
  const rows = versions.map((v) => {
16
39
  const tierColor = v.certTier === "CERTIFIED"
@@ -1 +1 @@
1
- {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../src/commands/versions.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,yDAAyD;AACzD,8EAA8E;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhF,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,SAAiB;IACrD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,CAAC;QAE9C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,wBAAwB,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,SAAS,IAAI,CAAC,CAAC,CAAC;QAEjD,MAAM,OAAO,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC9B,MAAM,SAAS,GACb,CAAC,CAAC,QAAQ,KAAK,WAAW;gBACxB,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU;oBACzB,CAAC,CAAC,KAAK;oBACP,CAAC,CAAC,GAAG,CAAC;YACZ,OAAO;gBACL,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;gBACf,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACrB,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,EAAE,CAAC;aAChD,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,KAAK,CACX,GAAG,CAAC,UAAU,SAAS,mCAAmC,CAAC;YACzD,GAAG,CAAC,OAAO,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CACvD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../src/commands/versions.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,yDAAyD;AACzD,8EAA8E;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhF;;;;GAIG;AACH,SAAS,eAAe,CAAC,IAAY;IACnC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpC,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;IAC5B,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IAEhC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACzC,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACjG,OAAO,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;IAClD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,SAAiB;IACrD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE7C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,wBAAwB,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC5D,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,QAAQ,IAAI,CAAC,CAAC,CAAC;QAEhD,MAAM,OAAO,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC9B,MAAM,SAAS,GACb,CAAC,CAAC,QAAQ,KAAK,WAAW;gBACxB,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU;oBACzB,CAAC,CAAC,KAAK;oBACP,CAAC,CAAC,GAAG,CAAC;YACZ,OAAO;gBACL,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;gBACf,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACrB,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,EAAE,CAAC;aAChD,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,KAAK,CACX,GAAG,CAAC,UAAU,SAAS,mCAAmC,CAAC;YACzD,GAAG,CAAC,OAAO,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CACvD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vskill",
3
- "version": "0.5.69",
3
+ "version": "0.5.71",
4
4
  "type": "module",
5
5
  "description": "Secure multi-platform AI skill installer — scan before you install",
6
6
  "bin": {