Repository navigation
feat(subagents): add ui-designer builtin preset and template chip - #292
Conversation
Add a fifth builtin subagent, ui-designer, distilled from the UI Design Agent Kit methodology: preserve the project's established design system (or write a small design contract when none exists), implement the whole interaction including every reachable state, keep motion purposeful with reduced-motion variants, and verify the rendered result in BrowserPreview before reporting. The preset grants Read, Glob, Grep, BrowserPreview, Bash, Edit and Write at 80 max turns, ships in lockstep in SUBAGENT_PRESETS (shared, UI starter values) and BUILTIN_SUBAGENT_DOCUMENTS (agent-runtime, the prompt the sidecar loads), gains the hyphenated-id catalog entry (presetUiDesignerName / presetUiDesignerDesc) across all eight locales, and updates the en/zh spec pairs for the settings sheet, the runtime catalog and the E2E-142 preconditions.
vastsa
left a comment
There was a problem hiding this comment.
Reviewed the refreshed head 396becc. The ui-designer preset preserves the existing builtin/user precedence and permission model; the landing test correction now covers all five builtins and the designer capability contract. Isolated current-main validation passed Agent Runtime 363/363, Shared 498/498, Desktop 1494/1494, docs locale checks, smoke E2E 18/18 with 2 live-model cases skipped without a key, and subagents E2E 19/19. Required JS, Rust, and docs checks are green.
|
Thank you for the isolated validation and the approval — glad the preset landed cleanly alongside the precedence/permission model. Noted on the verification numbers (Agent Runtime 363/363, Shared 498/498, Desktop 1494/1494, smoke 18/18 + subagents 19/19). Two market prototype PRs (#285, #290) received your boundary/semantics findings; fixes are starting now and will come back with per-point evidence before re-requesting review. |
What
Adds a fifth builtin subagent,
ui-designer, as a "start from template" chip next to Explorer / Code reviewer / Test runner / Fixer.The delegate takes one interface task with its brief and returns a working, browser-checked implementation — the same kind of self-contained, delegable phase
fixercovers (ADR 0089), for the case where the main agent hands off visual work instead of doing it inline at full context cost. The prompt distills a UI-delivery workflow: preserve the project's established design system (existing tokens outrank the delegate's own taste), write a small design contract when none exists (semantic tokens, 4px/8px rhythm, Do/Don't rules), implement the whole interaction including every reachable state, keep motion purposeful with reduced-motion variants, and verify the rendered result inBrowserPreviewat desktop and mobile widths before reporting. The report follows the existing<summary>/<changes>/<verification>convention. It is adapted from the author's open-source UI Design Agent Kit, reworked for the delegate's tool set and the no-user-mid-run delegate model.Read, Glob, Grep, BrowserPreview, Bash, Edit, WriteatmaxTurns: 80— write-capable likefixer, plusBrowserPreviewso it can check its own rendered output.BrowserPreviewis already inSUBAGENT_ASSIGNABLE_TOOLSand the host-side tool vocabulary; no host (Rust) change.SUBAGENT_PRESETS(shared, the editor's starter values) andBUILTIN_SUBAGENT_DOCUMENTS(agent-runtime, the prompt the sidecar loads) carry identical name/description/tools/maxTurns/body — verified field-by-field by script. The hyphenated id resolves through the editor's catalog map (presetUiDesignerName/presetUiDesignerDesc) with copy in all eight locales.maxTurnstable / write-capable wording (correcting the stale "only writable builtin" phrasing), and E2E-142's precondition list.Deliberately not changed
decisions-log.mdkeeps its historical D201 "four builtins" wording — it records the decision as made at the time.SubagentRunlifecycle as the other builtins (catalog cap 16 leaves headroom at five).Verification
pnpm -r testgreen on the final HEAD: desktop 1463, agent-runtime 363, shared 498, plugin-sdk 224, i18n 23 (8-locale catalog parity), agent-host 34, plugin-devkit 46 — 0 failures. Updated tests: shared presets (five ids; Edit/Write granted only to fixer + ui-designer), agent-runtime builtin parse (five names; mutating =[fixer, ui-designer]; BrowserPreview present), desktop source-contract test (preset id list, tools/maxTurns, body spot-check).desktop typecheck,lint,docs:check(77 en/zh pairs) green. No Rust change.E2E disposition per AGENTS §15 (fork PR):