docs/agi/skills/autonomous-ui-inspection/SKILL.md
# Skill: autonomous-ui-inspection ## Scope Use this skill for **reliable, agent-friendly UI inspection**: - Visual: Screenshots via browser tools. - Numeric: Bounding boxes, styles, overflow detection. **Does:** - Capture screenshots of rendered UI. - Extract layout metrics for validation. - Provide evidence for UI changes. **Does Not:** - Make styling changes (that's a separate task). - Run full E2E test suites. ## Inputs - URL or HTML file path. - "Ready" selector (e.g., `.control-loaded`)
npx skillsauth add metabench/jsgui3-html docs/agi/skills/autonomous-ui-inspectionInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill for reliable, agent-friendly UI inspection:
Does:
Does Not:
.control-loaded).Start server (if needed):
npm run dev
Navigate to URL using browser subagent.
Capture screenshot:
Create/run a Puppeteer script:
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('http://localhost:3000/control-demo');
// Wait for ready
await page.waitForSelector('.control-loaded');
// Get metrics
const metrics = await page.evaluate(() => {
const el = document.querySelector('.my-control');
const rect = el.getBoundingClientRect();
return {
width: rect.width,
height: rect.height,
isOverflowing: el.scrollWidth > el.clientWidth
};
});
console.log(JSON.stringify(metrics, null, 2));
await browser.close();
})();
After inspection, present findings to user:
node tools/dev/ui-pick.js "Looks correct" "Needs adjustment" --theme=wlilo
tools
# Skill: ui-pick-prompting ## Scope Use the ui-pick tool to present structured choices to the user. **Does:** - Show GUI picker with options. - Wait for user selection. - Return structured result (selection, cancelled, etc.). **Does Not:** - Handle complex multi-step wizards. - Manage state between prompts. ## Inputs - Options array (strings or objects with label/value/description). - Theme (optional): `wlilo` (dark) or `bright` (light). ## Procedure ### Via HTTP (Current Session) ```power
development
# Skill: typescript-types ## Scope Create and maintain TypeScript declaration files (.d.ts) for jsgui3-html components. **Does:** - Generate .d.ts files for controls and modules - Define interfaces for specs, params, and return types - Update package.json exports for TypeScript consumers - Maintain backward compatibility with JavaScript users **Does Not:** - Convert source files to TypeScript - Add runtime type checking - Handle complex generic patterns ## Inputs - File or module to type (e.
development
# Skill: theme-system-integration ## Scope Add theme support to existing controls or integrate theming into new features. **Does:** - Define params schemas for controls - Register variants in the variant registry - Integrate `resolve_params` for merge priority - Add CSS variable hooks and data attributes - Test theme inheritance and override behavior **Does Not:** - Create controls from scratch (see jsgui3-control-creation skill) - Handle runtime theme switching animations ## Inputs - Contro
testing
# Skill: session-discipline ## Scope Maintain structured notes across agent sessions to ensure continuity and knowledge transfer. **Does:** - Initialize session folders with standard structure. - Track active work, findings, and follow-ups. - Enable future agents to resume work seamlessly. **Does Not:** - Persist state between AI context windows (that's the purpose of the docs). - Replace version control (still commit changes). ## Session Structure Each session lives in `docs/sessions/<date