get-skill 1.3.9 → 1.3.10

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/CHANGELOG.md CHANGED
@@ -2,6 +2,11 @@
2
2
 
3
3
  All notable changes to `get-skill` (published as `skillmds` until 1.3.6) are documented here. Versions follow [semver](https://semver.org).
4
4
 
5
+ ## 1.3.10
6
+
7
+ - **find-skills is now find-a-skill.** SkillMD's skill-finder shared its name with Vercel's widely installed `find-skills`, and both go into the same `~/.agents/skills` folder, so for anyone who already had Vercel's the offer after an install could only fail. It is now `skillmd/find-a-skill`, the old `skillmd/find-skills` address redirects to it, and an earlier install under the old name counts as already added.
8
+ - **A failed follow-up install says why.** When the find-a-skill offer can't install, the message gives the reason (for example a folder already in the way) instead of "try later", along with the command to add it yourself.
9
+
5
10
  ## 1.3.9
6
11
 
7
12
  - **A new look.** `npx get-skill` on its own now opens with the SkillMD logo, its two orange squares dropping into place, and the menu right under it. Any key skips the animation, which takes under a second.
package/dist/cli.js CHANGED
@@ -1945,22 +1945,29 @@ var clackUI = {
1945
1945
  return isCancel(answer) ? null : answer;
1946
1946
  }
1947
1947
  };
1948
- var FIND_SKILLS = "skillmd/find-skills";
1948
+ var FIND_A_SKILL = "skillmd/find-a-skill";
1949
+ var FIND_A_SKILL_SOURCES = [`registry:${FIND_A_SKILL}`, "registry:skillmd/find-skills"];
1950
+ function failureReason(r) {
1951
+ const blocked = r.blocked[0]?.reason;
1952
+ if (blocked) return blocked;
1953
+ const lines = stripAnsi(r.output).split(/\r?\n/).map((l) => l.trim()).filter(Boolean);
1954
+ return lines.at(-1);
1955
+ }
1949
1956
  async function offerFindSkills(source, flags, run2, ui, deps) {
1950
1957
  if (!ui.confirm || run2.exitCode !== 0 || !run2.written.length || !run2.scope || !run2.agents?.length) return;
1951
- if (source.replace(/^registry:/, "").toLowerCase() === FIND_SKILLS) return;
1958
+ if (FIND_A_SKILL_SOURCES.includes(`registry:${source.replace(/^registry:/, "").toLowerCase()}`)) return;
1952
1959
  const cfg = readConfig(flags.home);
1953
1960
  if (cfg.findSkillsOffered) return;
1954
1961
  const global = run2.scope === "global";
1955
1962
  const lock = readLock({ global, cwd: flags.cwd, home: flags.home });
1956
- if (Object.values(lock.skills).some((e) => e.source === `registry:${FIND_SKILLS}`)) return;
1963
+ if (Object.values(lock.skills).some((e) => FIND_A_SKILL_SOURCES.includes(e.source))) return;
1957
1964
  try {
1958
1965
  writeConfig({ ...cfg, findSkillsOffered: true }, flags.home);
1959
1966
  } catch {
1960
1967
  }
1961
- const yes = await ui.confirm("Also add find-skills, so your agent can look for more skills on SkillMD when a task needs one?");
1968
+ const yes = await ui.confirm("Also add find-a-skill, so your agent can look for more skills on SkillMD when a task needs one?");
1962
1969
  if (!yes) return;
1963
- const r = await runAdd(FIND_SKILLS, {
1970
+ const r = await runAdd(FIND_A_SKILL, {
1964
1971
  ...flags,
1965
1972
  yes: true,
1966
1973
  json: false,
@@ -1971,7 +1978,8 @@ async function offerFindSkills(source, flags, run2, ui, deps) {
1971
1978
  project: !global,
1972
1979
  agent: run2.agents
1973
1980
  }, deps);
1974
- ui.message(r.exitCode === 0 ? `${pc10.green(GLYPH.ok)} find-skills added` : pc10.yellow(`${GLYPH.warn} find-skills could not be added. Try later: npx get-skill add ${FIND_SKILLS}`));
1981
+ const why = r.exitCode === 0 ? "" : failureReason(r);
1982
+ ui.message(r.exitCode === 0 ? `${pc10.green(GLYPH.ok)} find-a-skill added` : pc10.yellow(`${GLYPH.warn} find-a-skill was not added${why ? `: ${why}` : ""}. To add it yourself: npx get-skill add ${FIND_A_SKILL}`));
1975
1983
  }
1976
1984
  async function runAddWithUI(source, flags, opts = {}) {
1977
1985
  const term = opts.term ?? { ...realTerminal(), env: flags.env ?? process.env };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "get-skill",
3
- "version": "1.3.9",
3
+ "version": "1.3.10",
4
4
  "description": "Find, install, lint and publish Agent Skills (SKILL.md) from skillmd.com: the get-skill CLI and MCP server.",
5
5
  "license": "MIT",
6
6
  "author": "SkillMD",