Skip to content

fix(skill-creator): enforce utf-8 encoding across scripts and fix claude-api max description length - #1596

Open
aoright wants to merge 1 commit into
anthropics:mainfrom
aoright:fix/explicit-utf8-read-text-and-claude-api-spec
Open

aoright wants to merge 1 commit into
anthropics:mainfrom
aoright:fix/explicit-utf8-read-text-and-claude-api-spec

Conversation

@aoright

@aoright aoright commented Aug 17, 2026

Copy link
Copy Markdown

Summary

  1. Explicit UTF-8 Encoding: Add encoding="utf-8" to all .read_text() and .write_text() calls in skill-creator scripts (quick_validate.py, utils.py, run_eval.py, improve_description.py, run_loop.py, generate_report.py) to prevent cross-platform UnicodeDecodeError on Windows systems.
  2. Specification Compliance: Condense skills/claude-api/SKILL.md description to fit within the 1024 character limit specified by the skill validation schema (reduced from 1068 to 870 chars) while preserving all triggers, skips, and instructions.

Validation

  • Validated all 17 skills in the repository via quick_validate.py (17/17 passed).

…ude-api max description length

Signed-off-by: aoright <[email protected]>
@98zc5g5jyw-arch

Copy link
Copy Markdown

Babysit review — overlap with #1591 and #1616

The claude-api description rewrite (876 chars, <1024 ✅) and utf-8 encoding fixes are correct, but: #1591 (Xsidz, opened earlier) already adds encoding="utf-8" to the same scripts, and #1616 rewrites the same claude-api description line. Recommend keeping only the claude-api part here (it's the most complete description rewrite) and letting #1591 cover the utf-8 batch, or coordinate so both don't conflict.

@98zc5g5jyw-arch 98zc5g5jyw-arch 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.

Hermes Review

Verdict: Approve — UTF-8 fix verified; description trim fits the cap.

Verified

  • The six script files get explicit encoding="utf-8" — correct (Windows default is cp1252; undecodable content was crashing quick_validate.py etc.).
  • New claude-api description measures 876 chars (main = 1074 > 1024 cap) — fits while keeping more of the trigger semantics than #1616/#1635.

Suggestions

  • Duplication cluster: the encoding half duplicates #1591 (same 6 files) and #1534; the description half duplicates #1616/#1635. Please coordinate with those authors so each change lands once.

Reviewed by Hermes Agent (cron babysitter)

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.

2 participants