claudekit-cli 4.0.0-dev.1 → 4.0.0-dev.2

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/cli-manifest.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "4.0.0-dev.1",
3
- "generatedAt": "2026-05-07T15:21:16.194Z",
2
+ "version": "4.0.0-dev.2",
3
+ "generatedAt": "2026-05-07T18:05:52.152Z",
4
4
  "commands": {
5
5
  "agents": {
6
6
  "name": "agents",
package/dist/index.js CHANGED
@@ -55509,6 +55509,11 @@ var init_skill_schema = __esm(() => {
55509
55509
  maxLength: 512,
55510
55510
  description: "Human-readable description of the skill and when to use it"
55511
55511
  },
55512
+ when_to_use: {
55513
+ type: "string",
55514
+ maxLength: 1024,
55515
+ description: "Additional invocation context appended to description in Claude Code skill listings"
55516
+ },
55512
55517
  "user-invocable": {
55513
55518
  type: "boolean",
55514
55519
  description: "Whether the skill appears in the user slash-command menu. False keeps it available for agent invocation."
@@ -62354,7 +62359,7 @@ var package_default;
62354
62359
  var init_package = __esm(() => {
62355
62360
  package_default = {
62356
62361
  name: "claudekit-cli",
62357
- version: "4.0.0-dev.1",
62362
+ version: "4.0.0-dev.2",
62358
62363
  description: "CLI tool for bootstrapping and updating ClaudeKit projects",
62359
62364
  type: "module",
62360
62365
  repository: {
@@ -84254,6 +84259,7 @@ async function scanSkills2(skillsDir2) {
84254
84259
  skills.push({
84255
84260
  id: normalizeSkillId(rawName, fallbackId),
84256
84261
  description: typeof data.description === "string" ? data.description : "",
84262
+ whenToUse: typeof data.when_to_use === "string" ? data.when_to_use : "",
84257
84263
  file,
84258
84264
  userInvocable: typeof data["user-invocable"] === "boolean" ? data["user-invocable"] : undefined
84259
84265
  });
@@ -84315,9 +84321,17 @@ function estimateListingChars(skills, maxDescChars) {
84315
84321
  if (skills.length === 0)
84316
84322
  return 0;
84317
84323
  return skills.reduce((sum, skill) => {
84318
- return sum + skill.id.length + LISTING_OVERHEAD_PER_SKILL + Math.min(skill.description.length, maxDescChars);
84324
+ return sum + skill.id.length + LISTING_OVERHEAD_PER_SKILL + Math.min(getListingText(skill).length, maxDescChars);
84319
84325
  }, skills.length - 1);
84320
84326
  }
84327
+ function getListingText(skill) {
84328
+ if (!skill.whenToUse)
84329
+ return skill.description;
84330
+ if (!skill.description)
84331
+ return skill.whenToUse;
84332
+ return `${skill.description}
84333
+ ${skill.whenToUse}`;
84334
+ }
84321
84335
  function requiredBudgetFraction(listingChars, contextTokens = CONTEXT_FLOOR_TOKENS) {
84322
84336
  if (listingChars <= 0)
84323
84337
  return DEFAULT_BUDGET_FRACTION;
@@ -84441,7 +84455,7 @@ function buildSkillOverridesCheck(settingsPath, read) {
84441
84455
  if (!read.settings || !Object.prototype.hasOwnProperty.call(read.settings, "skillOverrides")) {
84442
84456
  return pass("ck-skill-overrides-policy", "Skill Overrides Policy", "No skillOverrides configured");
84443
84457
  }
84444
- return warn("ck-skill-overrides-policy", "Skill Overrides Policy", "Project settings contain skillOverrides", [{ id: "skillOverrides", description: "", file: settingsPath }], "Remove skillOverrides and manage listing pressure with skillListingBudgetFraction, skillListingMaxDescChars, and inventory cleanup.");
84458
+ return warn("ck-skill-overrides-policy", "Skill Overrides Policy", "Project settings contain skillOverrides", [{ id: "skillOverrides", description: "", whenToUse: "", file: settingsPath }], "Remove skillOverrides and manage listing pressure with skillListingBudgetFraction, skillListingMaxDescChars, and inventory cleanup.");
84445
84459
  }
84446
84460
  function buildUserInvocationCheck(activeSkills) {
84447
84461
  const disabled = activeSkills.filter((skill) => skill.userInvocable === false);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claudekit-cli",
3
- "version": "4.0.0-dev.1",
3
+ "version": "4.0.0-dev.2",
4
4
  "description": "CLI tool for bootstrapping and updating ClaudeKit projects",
5
5
  "type": "module",
6
6
  "repository": {