Skip to content

fix(plugin): trim SKILL.md description to fit the 1024-char skill spec limit - #493

Merged
padak merged 1 commit into
mainfrom
claude/issue-447-15e11f
Jul 20, 2026
Merged

fix(plugin): trim SKILL.md description to fit the 1024-char skill spec limit#493
padak merged 1 commit into
mainfrom
claude/issue-447-15e11f

Conversation

@padak

@padak padak commented Jul 20, 2026

Copy link
Copy Markdown
Member

Fixes #447.

Problem

Loading the kbagent skill into Claude Desktop fails with:

field 'description' in SKILL.md must be at most 1024 characters

The frontmatter description in plugins/kbagent/skills/kbagent/SKILL.md had grown to 5069 characters — mostly an ever-growing list of trigger keywords. The Agent Skills spec caps description at 1024 characters and Claude Desktop enforces it at load time, so past the limit the skill fails to load entirely and the extra keywords contribute zero trigger surface.

Fix

  • Rewrote the description to 965 characters (folded YAML scalar). It still names every command domain (configs, jobs, lineage, MCP tools, branches, workspaces, GitOps sync, sharing, secrets encryption, Storage tables/files, data apps, flows/schedules, members, feature flags, data streams, scoped tokens, semantic layer, dev portal) plus the highest-value trigger keywords.
  • Added tests/test_skill_frontmatter.py — a static compliance test that parses the frontmatter with yaml.safe_load (same folding as the loaders) and fails CI if the description ever exceeds 1024 characters again. This closes the gap where nothing guarded the limit: make skill-check only verifies the auto-generated decision table.

No behavioral CLI change; no version bump (can ride the next release).

Verification

  • uv run pytest tests/test_skill_frontmatter.py -v — 4 passed
  • uv run ruff check + ruff format --check — clean
  • python scripts/generate_skill.py — idempotent, no drift in the auto-generated table

Open in Devin Review

…c limit

Claude Desktop rejects the kbagent skill with "field 'description' in
SKILL.md must be at most 1024 characters" because the frontmatter
description had grown to 5069 characters of trigger keywords. Over the
limit the skill fails to load entirely, so the extra keywords added no
trigger surface at all.

Rewrite the description to 965 characters covering the same command
domains plus the highest-value triggers, and add a static compliance
test (tests/test_skill_frontmatter.py) so CI fails if the description
ever exceeds the limit again.

Fixes #447

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Open in Devin Review

@padak
padak merged commit b8a31d6 into main Jul 20, 2026
5 checks passed
@padak
padak deleted the claude/issue-447-15e11f branch July 20, 2026 12:48
padak added a commit that referenced this pull request Jul 20, 2026
Backfills changelog entries for ten PRs merged since v0.66.1 without a
version bump (#465 #486 #487 #488 #490 #492 #493 #494 #495 + #500),
attributed to their bump windows (0.67.0 / 0.70.0 / 0.70.1 / 0.71.0),
and aligns the version at 0.71.0 as the catch-up release: 0.67.0-0.70.1
were merged to main but never tagged or published, so auto-update users
are still on 0.66.1. The v0.71.0 tag + GitHub Release follow.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Loading the kbagent skill into Claude Desktop fails with error

1 participant