Extract verify-layout as a harness-agnostic skill (atomic init for portable skills)#3689
Draft
lezama wants to merge 5 commits into
Draft
Extract verify-layout as a harness-agnostic skill (atomic init for portable skills)#3689lezama wants to merge 5 commits into
lezama wants to merge 5 commits into
Conversation
Separate a skill's portable capability knowledge from the Studio-specific tool binding. Skill bodies under skills/<name>/SKILL.md name no tools; the mapping to concrete tools lives in skill-overlays/<name>.md and loadSkills() appends it under an "In Studio" heading. Skills with no overlay load unchanged. This keeps skill bodies liftable into a shared cross-harness skill library (Studio Code/CLI/App/Web, and other agent surfaces) without rewriting, while Studio's tool names stay in Studio. Extracts the layout-verification guidance into a verify-layout skill as the first example, backed by take_screenshot / measure_elements via its overlay. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…table-skill-overlays
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
… loader YAGNI — the loader-based overlay mechanism (and its build wiring) isn't needed to ship a harness-agnostic skill. Keep verify-layout's body tool-free and put the one Studio-specific line in an inline 'In Studio' section, kept separable so the body can move to a shared cross-harness skill later. The mechanical loader/overlay can land then, when there's a second consumer to justify it. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
Related issues
How AI was used in this PR
Code and this description were drafted with Claude Code and reviewed by me.
Proposed Changes
A deliberately tiny slice: extract the layout-verification guidance into its own
verify-layoutskill whose body is harness-agnostic — it describes the capability (capture a viewport-height slice; measure the rendered DOM) and names no Studio tool. The single Studio-specific line lives in a separate "In Studio" section at the end, kept clearly separable.The point is the shape, not the size: a skill body written this way can later be lifted verbatim into a shared, cross-harness skill library that Studio and Telex both consume, while each keeps its own tool names. This is the smallest version of that idea — a real, mergeable skill, no new machinery.
Intentionally not here (YAGNI): a loader/overlay mechanism that injects the Studio section from a separate file, and the shared package itself. Those are clean follow-ups once there's a second consumer to justify them.
Testing Instructions
studio codesession, load theverify-layoutskill — confirm the body reads capability-first and the "In Studio" section names the tools.npm test -- apps/cli/ai/tests/system-prompt.test.ts— the "references only bundled skills" check covers the newverify-layoutpointer fromvisual-design.Pre-merge Checklist