Repository navigation
docs(skills): say a variable must be declared before data-var-* binds it - #7693
Open
wonjangcloud9 wants to merge 1 commit into
Open
wonjangcloud9 wants to merge 1 commit into
wonjangcloud9 wants to merge 1 commit into
Conversation
SKILL.md said copy, brand colours and swappable media are variables (`data-var-text`, `data-var-src`, `var(--id)`) without the step that makes them variables: declaring each in data-composition-variables. Following it gives unknown_variable_binding and the binding silently keeps its authored fallback. The SKILL.md line now names the declaration, and format.md's Variables section names the attribute, adds the font and image types, and shows a one-line declare-then-bind example. The hyperframes entry budget grows 64 B for the line. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
skills/hyperframes/SKILL.md("Keep it editable"): "Copy, brand colours and swappable media are variables (data-var-text,data-var-src,var(--id))." → "…are variables: declare each indata-composition-variables, then bind it (data-var-text,data-var-src,var(--id))."skills/hyperframes/references/format.md(Variables): the declare bullet names the attribute (data-composition-variables), the type list addsfontandimage(both inCompositionVariableType, missing here) and says a video or audio link is astring, and a new bullet says an undeclared bound id silently keeps its fallback (unknown_variable_binding) with a one-line declare-then-bind example.scripts/check-core-skills.mjs: hyperframes entry budget 7488 → 7552 B (+64 B, with the usual one-line reason). The entry was at 7481 B, so the new words did not fit otherwise.skills-manifest.json; one test incoreSkillContent.test.ts.Why
An agent following the SKILL.md line literally writes
<h1 data-var-text="headline">Title</h1>and stops there. On main:The lint catches it and its fix hint is right, but the skill sent the agent there: neither SKILL.md nor format.md's Variables section named the attribute (only the skeleton at the top of format.md shows it). With the declaration added, the same project checks clean (no
unknown_variable_binding) and the snapshot shows the variable's defaultHelloinstead of the authoredTitle.Related work
No existing issue or PR. Lint rule from #2054 (declarative bindings).
How
Docs only, plus the budget bump. The example lives in format.md rather than SKILL.md to keep the entry within budget.
Test plan
unknown_variable_binding, snapshot at 1 s showsHello.coreSkillContent.test.ts: new case asserts SKILL.md names`data-composition-variables`and format.md names`unknown_variable_binding`; fails on main's docs, passes here (15/15 in the file).node scripts/check-core-skills.mjs✓ (7541 / 7552 B),node --test scripts/check-core-skills.test.mjs12/12,bun scripts/lint-skills.tsno issues,check-skill-mirrorOK, oxfmt/oxlint clean, manifest regenerated.Note for merging: this and the
immediateRender: falseskill PR both change the hyperframes hash in the generatedskills-manifest.json; whichever lands second needsbun packages/cli/scripts/gen-skills-manifest.tsafter rebasing. Nothing else overlaps.🤖 Generated with Claude Code