feat: add external-resource-context skill, ui-analyzer agent, and recipe-front-adjust#122
Merged
feat: add external-resource-context skill, ui-analyzer agent, and recipe-front-adjust#122
Conversation
Introduce a cross-cutting skill that captures access methods for resources outside the repository (design origin, design system, API schema, IaC source, secrets, visual verification environment, etc.) and persists them where downstream agents can find them deterministically. The skill defines: - Two-tier storage: docs/project-context/external-resources.md for environment-stable facts; per-feature External Resources Used sections inside UI Spec or Design Doc for feature-specific identifiers. - Single-source-of-truth rule: feature-tier sections reference project tier by label and never duplicate URLs / MCP names / access commands. - Hearing protocol with file-existence branching (absent → full hearing; present → confirm update first, then optional diff hearing). - Two-phase hearing: structured AskUserQuestion per axis (with 対象外/N/A as a choice) then a single self-declaration prompt for resources the structured questions did not cover. - Domain references (frontend/backend/api/infra) so unused domains do not consume context. Templates: ui-spec-template adds a top-level External Resources Used section; design-template adds an External Resources Used subsection under Background and Context. Registered in dev-workflows, dev-workflows-frontend, dev-skills. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…gents Add external-resource-context to the skills frontmatter of agents that write or consume documents containing the External Resources Used section, and add explicit body integration where the agent's workflow needs to consult external resources. Writers (UI Spec / Design Doc): - ui-spec-designer: load skill; Step 4 fills the External Resources Used section by reading the project-tier file and listing only feature-specific identifiers. - technical-designer / technical-designer-frontend: load skill; new Gate 0 subsection "External Resources Integration" mirrors the Agreement Checklist gate and instructs the agent to read the project tier and carry forward the feature subset, escalating when the project-tier file is missing. Implementers / verifiers: - task-executor / task-executor-frontend: load skill; task-executor- frontend gets a body section "External Resources Consultation" defining the lookup order (consuming document section -> project tier -> declared access mechanism) and an escalation path when a needed resource is unspecified. - quality-fixer / quality-fixer-frontend: load skill so visual verification environment and other access methods are recognized during quality checks. Other readers (code-verifier, document-reviewer, work-planner, codebase-analyzer) consult the saved file directly via the Read tool and do not load the skill, keeping their preloaded context budgets unchanged. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Add a frontend-only specialist that analyzes existing UI code for facts the general codebase-analyzer does not cover: visual component structure, DOM order at call sites, props/variant patterns, CSS layout state (flex/grid, gap, wrap, logical properties), state x display matrices, display conditions (feature flags, role/permission, route, region/tenant, page context), i18n format and key conventions, accessibility attributes, and generated UI artifact readiness. Designed to run in parallel with codebase-analyzer before frontend design. The two agents have complementary scopes — codebase-analyzer owns data, contracts, dependencies, and quality assurance mechanisms; ui-codebase-analyzer owns the visual and interaction surface. Output is a JSON object whose focusAreas[] entries the consumer prefixes with `ui:` to disambiguate from codebase-analyzer's facts (prefixed `code:`). technical-designer-frontend's Input Parameters section is updated to accept both inputs and merge their focusAreas into a single Fact Disposition Table. Registered in dev-workflows-frontend (frontend-only). The subagents-orchestration-guide skill lists the agent, adds a Call Example, and notes the parallel invocation pattern. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…-adjust Update recipe-front-design Step 1.5 to run the external-resource-context hearing protocol with file-existence branching (absent → full hearing; present → confirm update first, then optional diff hearing). Update Step 3 to invoke codebase-analyzer and ui-codebase-analyzer in parallel, passing both JSON outputs to technical-designer-frontend with `code:` and `ui:` prefixes on fact_id values. Add recipe-front-adjust as a separate, lighter recipe for UI adjustment workflows on already-implemented features. Its scope is hearing → UI fact collection → scale judgment → optional work plan → handoff to the implementation phase. It does not run task execution or quality fixing itself; the implementation recipe owns those gates. The handoff message names the next recipe in user-facing text only, keeping the recipe body free of cross-recipe internal references. Scale judgment uses documentation-criteria's Creation Decision Matrix: 1-2 files run inline; 3-5 files require an approved work plan; 6+ files or any ADR condition trigger an escalation back to the full design phase. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ication
Three coordinated changes addressing single-responsibility, MCP tool
access constraints, and tier separation between recipes.
1. Rename ui-codebase-analyzer to ui-analyzer with expanded scope
- Scope now covers external UI sources (design origin, design
system catalog, guidelines) fetched via MCP/URL/file in addition
to the original codebase analysis.
- Tools field switches from allowlist to disallowedTools (Write,
Edit, MultiEdit, NotebookEdit denied) so the agent inherits the
parent session's MCP access. Heavy fetches stay inside the
subagent's own context window.
- Output JSON schema gains an externalResources section recording
fetch_status per axis (designOrigin, designSystem, guidelines,
visualVerification).
- Dependency-direction principle preserved: the skill carries the
protocol; the agent body trusts the skill.
2. Restructure recipe-front-adjust to a self-execution pattern
- Adjustment work depends on iterative MCP-driven verification
(fetch design source, compare, refine, re-verify). Subagents
using a tools allowlist cannot perform this loop because their
allowlist excludes MCP. Delegating implementation to the standard
task-executor-frontend would break the loop.
- The recipe now runs the adjustment edits and MCP verification in
the parent session itself, and delegates only steps that do not
require MCP: ui-analyzer (UI fact gathering with inherited MCP
access), work-planner (3-5 file plan creation), and
quality-fixer-frontend (typecheck/lint/test).
- Core Identity changes from "I am an orchestrator" to "I am a
guided executor" to reflect the actual responsibility shape.
- The recipe is end-to-end: it does not hand off to other
implementation recipes.
3. Update recipe-front-design, recipe-fullstack-implement, and
monorepo-flow.md to use ui-analyzer
- codebase-analyzer and ui-analyzer now run in parallel before
ui-spec-designer (so UI Spec authoring can consume external
source fetched_summaries) and feed technical-designer-frontend
for the Design Doc phase.
- Hearing step is added before fact gathering in both flows.
- monorepo-flow.md's Large/Medium tables and prompt templates
reference ui-analyzer alongside codebase-analyzer.
4. Trim duplicated protocol text from agents and templates
- ui-spec-designer, technical-designer, technical-designer-frontend,
and task-executor-frontend now reference the
external-resource-context skill in one line instead of repeating
its protocol.
- ui-spec-template and design-template's External Resources Used
sections drop the explanatory prose and keep just the structural
placeholder.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Review identified critical execution-precision issues. Apply fixes in
priority order.
P1 — execution-correctness (was broken):
1. ui-analyzer frontmatter MCP inheritance bug. The agent had both
tools: (allowlist) and disallowedTools: set, so per Claude Code
semantics the final tool set was the intersection — MCP tools
were excluded despite the body claiming inheritance. Remove the
tools: field; rely on disallowedTools alone so the parent
session's MCP set is inherited. The agent's core purpose
(containing heavy MCP fetches in its own context) only works
after this fix.
2. recipe-front-adjust task_file contract. Previous text instructed
the orchestrator to pass "synthesized scope description" as
task_file when no work plan exists. quality-fixer-frontend
expects task_file to be a path and uses filesModified for write
set scope; a non-path falls back to git diff HEAD, which is
empty after per-unit commits. Branch the prompt: Branch A omits
task_file and passes filesModified explicitly; Branch B passes
both an actual plan path and filesModified.
3. Backend executor and quality-fixers loaded the skill in
frontmatter without a corresponding body section to act on it.
Add concise External Resources Consultation sections to
task-executor (backend), quality-fixer, and quality-fixer-frontend
matching the pattern already present in task-executor-frontend.
The trigger phrase in task-executor-frontend itself is also
tightened from "When the task references an external resource"
to a concrete trigger naming the task file's Investigation
Targets, Dependencies, and external-resources file references.
P2 — branching and routing precision:
4. Scale judgment in recipe-front-adjust used filesAnalyzed as the
evidence base, but ui-analyzer's filesAnalyzed is the read set,
not the write set. Add candidateWriteSet[] (with confidence
labels) to ui-analyzer's output schema; recipe-front-adjust now
confirms the write set with the user via AskUserQuestion before
applying the Creation Decision Matrix. Workflow Overview and
Completion Criteria reflect the new step.
5. recipe-front-adjust Execution Protocol bullet 1 mixed delegated
and non-delegated items inside a single "Delegate" list. Split
into "Delegate to subagents" and "Run in the parent session" so
readers cannot mistake the hearing step for a delegated call.
6. Naming drift: technical-designer-frontend Input Parameters
referenced "ui-codebase-analyzer" after the rename to ui-analyzer.
Rename the section header and prose to match.
7. ui-analyzer prompt in recipe-front-adjust set scale: 'unknown',
which is not a value requirement-analyzer's enum produces.
Change to 'small' so downstream branching that consults scale
has a defined value to work with.
P3 — style and precision polish:
8. Positive-form rewrites for four BP-001 violations in skill and
agent text (feature-tier ownership rule, hearing responsibility,
MCP unavailable handling, heavy-fetch limit).
9. Feature-tier format unified: skill body example now points to
the table format defined in references/template.md instead of
demonstrating a free-form alternative.
10. ui-analyzer Quality Checklist gains explicit guidance that
sections outside the affected scope should be emitted as empty
arrays / minimal placeholders — preventing speculative
enumeration that bloats the output for small adjustments.
11. recipe-front-adjust MCP wording: previous text generalized
"subagents whose tools allowlist excludes MCP". Clarify that
the verification loop's multi-step shape is what makes a single
subagent call insufficient, while ui-analyzer (a one-shot
subagent using disallowedTools) does inherit MCP correctly.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Several recently-added passages explain *why* the configuration is what it is, rather than *what* the agent or recipe should do. The agent already has the configuration in its frontmatter and the protocol in the loaded skill, so the explanatory prose only consumes context budget without changing execution. Remove or compress: - ui-analyzer "Tool Scope" section (frontmatter is the source of truth; the agent does not decide its own tool set). - ui-analyzer "Boundary with codebase-analyzer" filler sentences; keep the routing table and the disambiguation rule. - ui-analyzer Step 12 "candidate vs commitment" rationale; the recipe owns that distinction. - recipe-front-adjust Context paragraph compressed; the lengthy comparison to other recipes was framing for human readers. - recipe-front-adjust "Why this differs from other recipes" block removed entirely — the protocol bullets above already define the action shape. - recipe-front-adjust Step 5 leading sentence (Subagents are not used here because...) removed; the heading already states "(parent session)". - recipe-front-adjust Step 1 / Step 2 / Step 3 narrative leads trimmed; numbered steps and Agent invocation blocks carry the action. - recipe-front-adjust Step 6 task_file rationale paragraph removed; the Branch A / Branch B prompt construction is the action and stands alone. - quality-fixer / quality-fixer-frontend Consultation sections trimmed: drop the "(e.g., ...)" example lists; the trigger condition + action + escalation rule is the actual content. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- candidateWriteSet[] added to subagents-orchestration-guide ui-analyzer key fields list. recipe-front-adjust depends on this field for scale judgment, but it was missing from the orchestrator- facing summary, risking lookup failure. - recipe-front-adjust drops the subagents-orchestration-guide reference. The recipe runs the adjustment loop in the parent session and is not a delegating orchestrator, so referencing the guide pulled the model toward the standard "delegate everything" pattern. Replace "Parse the response per subagents-orchestration- guide" with self-contained quality-fixer-frontend response routing that includes the blocked-reason discrimination. - Branch B task_file is clarified as a supplementary hint; filesModified is the primary scope. quality-fixer-frontend's Quality Assurance Mechanisms lookup uses task_file when it points to a document with that section, but the file scope itself is always driven by filesModified. - AskUserQuestion option c (edit list manually) for write-set confirmation now explicitly instructs a follow-up plain message asking the user to paste the edited list. AskUserQuestion is a single-round structured-choice tool; the follow-up turn was implicit before. - Decision Matrix in Step 3 gains a 0-files branch. When candidateWriteSet[] is empty (the adjustment request did not map to any existing file), escalate to the user instead of falling through the matrix. - ui-analyzer Quality Checklist drops the trailing "not enumerated speculatively" phrase. The preceding positive form "emitted as empty arrays / minimal placeholders" already defines the expected behavior; the negative tail violates BP-001. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Two BP-001 violations remained in recipe-front-adjust scope section. Convert both to positive form so the recipe body carries no negative references to other recipes or out-of-scope items. - Responsibility Boundary previously ended with "it does not hand off to other implementation recipes." That phrasing pulls the model toward the recipes it negates. Replace with a positive statement of what this recipe owns: parent session owns edits, verification loops, quality-result routing, and commits. - "Out of scope:" section is reframed as an Escalation Boundary. The rule "escalate to the full frontend design phase when X" is the same constraint stated as a positive trigger condition. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Apply four in-body compressions identified in review. References/ moves are intentionally avoided because Claude Code's progressive disclosure does not reliably load reference files mid-flow. A. recipe-front-adjust:114 — convert "When the user has not configured an MCP that the verification step would normally use" to "When MCP access is unavailable for the verification step" so the fallback condition reads positively. C. ui-analyzer Quality Checklist — trim items that restate the procedural Steps 1-12 and keep only the gates that test final output integrity (per-axis fetch_status, candidateWriteSet presence, focusAreas evidence pointers, scope-out empty arrays, single-JSON output). H. technical-designer-frontend Implementation Sample Standards — the agent already loads typescript-rules and frontend-ai-guide skills, which carry the canonical React patterns. Replace the 45-line code sample with a short directive that defers to those skills for concrete patterns. L. technical-designer and technical-designer-frontend Quality Checklist — drop items that restate Gate 0-3 enforcement (which blocks at the corresponding Mandatory Process subsection) and keep items that test final-output completeness only. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…tion checklist item Two follow-up corrections from the latest review. - technical-designer-frontend Implementation Sample directive previously read "defer to those skills rather than duplicating sample code in the design document". The phrasing could be misread as forbidding code examples in Design Docs entirely. The intent is the inverse: sample code is permitted in Design Docs, but it should follow the canonical patterns carried by the loaded skills. Replace with the positive form "When sample code is needed, keep it minimal and follow concrete patterns from those skills." - The Quality Checklist trim in the previous commit dropped the Fact Disposition Table self-check from both technical-designer and technical-designer-frontend. Gate 1 enforces table population during creation, but a final self-check entry catches population gaps that survive the gate. Restore one checklist line in both files under "All modes". Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Bump every version field (root package.json, marketplace.json plugin
entries, generated plugin.json files) from 0.17.1 to 0.18.0 to release
the work in this branch.
README updates:
- Add a "Which plugin should I start with?" decision table at the top
of Quick Start so the install path is decided in one read.
- Hoist the common claude + marketplace add steps and inline
/reload-plugins next to each plugin install so the order matches
the actual command flow.
- Drop the previous "What These Plugins Do" section. The same
pipeline was rendered four times across the README; remove the
duplicated phase list and keep the Mermaid figure plus the seven
step "Behind the Scenes" list.
- Move the UI Spec rationale next to /recipe-front-design and add a
concrete failure example (combined screen with mixed
loading / error states).
- Add /recipe-front-adjust and ui-analyzer to the recipe and agent
tables; add the External Resource Context entry to Built-in Best
Practices.
- Trim the FAQ entries that duplicated Quick Start content.
- Add a one line caption under each Mermaid figure.
- Drop emoji from Mermaid nodes; keep section heading emoji.
- Replace contrastive "X, not Y" phrasings with positive forms; drop
remaining em dashes.
- Quote the trapezoid-looking node label in the reverse engineering
Mermaid figure ("/recipe-reverse-engineer") so Mermaid does not
parse it as a parallelogram shape.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
technical-designer-frontend's Input Parameters section named ui-analyzer directly when describing the UI Analysis input. The sibling Codebase Analysis entry uses "from codebase analysis phase" (a phase reference), and agent body content should not name other agents directly per the recipe -> agent -> skill dependency direction. Change "from ui-analyzer" to "from UI analysis phase" so the two sibling inputs share the same phase-based naming. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…escriptions Comprehensive cleanup of cross-tier references that violate the recipe -> agent -> skill dependency direction, and a few precision improvements that surfaced during multi-pass review. Dependency direction: - Remove agent -> agent and skill -> agent references from agent bodies and template files. The reciprocally-isolated subagent context cannot see other agents' definitions, so cross-references contribute no execution value while risking misinformation. The ui-analyzer "Boundary with codebase-analyzer" section, the ui-spec-designer downstream-justification line, work-planner's task-decomposer/ui-spec-designer mentions, plan-template / ui-spec-template / e2e.md downstream-agent justifications are all removed. Cataloging skills (subagents-orchestration-guide, task-analyzer) keep their references because that is their core responsibility. - Remove agent -> recipe reference. ui-analyzer's "calling recipe's responsibility" is now "calling workflow's responsibility". - Remove skill -> skill references from non-cataloging skill content. The two-tier file is documented locally where it appears (templates, e2e.md). L1/L2/L3 levels in design-template are inlined instead of referencing the implementation-approach skill. plan-template's Phase Division Criteria stays as a same-skill reference; Quality Check Workflow is described inline. - Replace ui-analyzer Input Parameters phrasing in technical-designer-frontend from "from ui-analyzer" to "from UI analysis phase" so the input descriptor names a phase rather than the producing agent. Quality Checklists: - Restore Prerequisite common ADRs / Change impact map / Error handling strategy in the Create/update mode lists for technical-designer and technical-designer-frontend. These are document content checks, not gate enforcement, so the earlier trim was over-aggressive. - Add Integration points enumeration and Quality Assurance Mechanisms adopted/noted status to the All modes lists. Both feed downstream consumers and the previous Data-contracts-only line did not guarantee enumeration. recipe-fullstack-implement / monorepo-flow: - Consolidate the recipe's Steps 3-5 (hearing, fact gathering, UI Spec) into the single "Design through Planning Phase" pointer at monorepo-flow.md. The previous text duplicated steps that the flow table already covers, risking double-execution. Orchestration guide: - Add external resource hearing and ui-analyzer to the Large and Medium planning flows so the guide matches the actual recipe shape. - Mark ui-analyzer's focusAreas[] as raw fact_id; consumers apply the ui: prefix when merging with codebase analysis facts. This resolves the producer-vs-consumer prefix ambiguity. Templates / references: - Remove "対象外 / not applicable" Japanese tokens from the external-resource-context skill (SKILL.md, four domain references, template.md). Replaced with "Not applicable" so the skill text stays English-only. - Inline L1/L2/L3 verification levels in design-template. - Replace plan-template's abstract "documentation and quality skills loaded by the agent" pointer with self-contained descriptions of phase division and per-phase quality checks. Descriptions: - external-resource-context description: restore "Captures and persists" verb pair so the persistence behavior is visible at skill-selection time. Replace "downstream agents" with "downstream work" for portability across plugins. Add "secret store" to the user-mention list to match the body. - recipe-front-adjust description: compress from 409 to 111 chars to match the slash-menu style of sibling recipe entries (66-94 chars). The skill is disable-model-invocation so the long trigger phrase block was unnecessary. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The Feature-Tier Template section in external-resource-context's template.md duplicated content already owned by ui-spec-template.md and design-template.md. The skill's responsibility is the protocol (storage location, ownership rule, reference order); the format of the section appended to a UI Spec or Design Doc is owned by those document templates. SKILL.md's Output Format section already states the placement and heading rules for the feature-tier section, so removing the duplicated template here loses no information. Side effects of removal: - Single source of truth for the feature-tier table format. Column changes only require editing ui-spec-template.md and design-template.md. - template.md now scopes itself to the project-tier file only, matching its callers. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Two corrections that surfaced after the MCP-bias and prefix-ownership cleanup landed. - recipe-front-adjust line 89: Branch A previously instructed carrying ui-analyzer focusAreas with the "ui: prefix preserved", which contradicts the design that ui-analyzer emits raw fact_id and consumers apply prefixes only when merging with codebase analysis. Reword as raw fact_id with prefix application gated to Fact Disposition Table merges, which Branch A does not perform. - recipe-front-adjust line 115: the loop's convergence criterion required the adjustment to match the design source. Design Origin axis allows "Existing implementation only" and "Not applicable", so the criterion now also accepts a user-confirmed adjustment target when no separate design source exists. - Add a Task Registration block before Step 1 so the recipe's multi-step flow is trackable through TaskCreate / TaskUpdate. - Remove MCP-centric framing across recipe-front-adjust and external-resource-context's frontend reference and template. Verification now reads as "verification" or "verification against the design source" rather than "MCP-driven verification". The Step 5 checklist examples list MCP, CLI, URL, file, and Storybook as parallel access methods; the fallback paragraph treats no declared automated method as the trigger for manual confirmation rather than treating MCP as the default. - Drop tool-specific names from cross-cutting skill content. References to "Playwright / Cypress" and "pnpm exec playwright" are removed so the external-resource-context skill stays language-and-tooling-agnostic across the three plugins. - Remove the duplicated Feature-Tier Template section from external-resource-context references; the feature-tier format is owned by ui-spec-template and design-template. Co-Authored-By: Claude Opus 4.7 (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.
Summary
external-resource-contextthat captures access methods for resources outside the repository (design source, design system, API schema, IaC source, secret store, visual verification environment, etc.) in a two-tier file:docs/project-context/external-resources.mdfor environment-stable facts and per-featureExternal Resources Usedsections inside UI Spec / Design Doc. Distributed across all three plugins (dev-workflows,dev-workflows-frontend,dev-skills).ui-analyzerthat reads the project's external-resources file, fetches design / design-system / guideline sources via inherited MCP access (usesdisallowedToolsso the parent's tool set carries through), and analyzes the existing UI codebase. Runs in parallel withcodebase-analyzerfor frontend and fullstack design./recipe-front-adjustfor UI adjustment workflows on already-implemented features. The edit / MCP-verify / refine loop runs in the parent session because that loop needs MCP access on every iteration; subagents handle one-shot tasks (UI fact gathering, work plan creation, quality checks). Scale is judged from a user-confirmed write set against the documentation-criteria Creation Decision Matrix.recipe-front-design,recipe-fullstack-implement, andmonorepo-flow.mdare updated to invoke the external-resource hearing protocol andui-analyzeralongsidecodebase-analyzer.External Resources Usedsection (UI Spec: top-level; Design Doc: subsection of Background and Context).task-executor,task-executor-frontend,quality-fixer, andquality-fixer-frontendconsult the project-tier external-resources file via the new skill when their work references it.Why
AI agents understand the codebase but not the external resources surrounding it. Asking the user about MCP access, design source location, or schema source on every recipe run wastes context and creates inconsistency between agents. The skill captures these once in a deterministic location that downstream agents read directly, and the
ui-analyzeragent uses inherited MCP access to fetch heavy design source content inside its own context window so the parent session stays focused.UI adjustment work has a different shape from full design or full build. It is bounded in scope but requires an iterative loop comparing the live code against a design source. The standard
task-executor-frontenduses atoolsallowlist that excludes MCP, so the verification loop cannot run there.recipe-front-adjustkeeps the loop in the parent session and delegates only the steps that fit a single subagent call.Tool Inheritance Note
ui-analyzerusesdisallowedTools: Write, Edit, MultiEdit, NotebookEditand omits thetoolsallowlist entirely. Per Claude Code documentation, when bothtoolsanddisallowedToolsare set, the final tool set is the intersection, which excludes MCP. UsingdisallowedToolsalone lets the parent session's full MCP set carry through. This was caught and fixed during review.Test plan
pnpm syncregenerates plugin trees consistentlypnpm sync:checkreports all plugin subdirectories in syncpnpm check:skills-indexreports all 11 skills consistentvalidate-pluginspasses formarketplace.jsonand everyplugin.jsondev-workflows-frontend@0.18.0and run/recipe-front-adjustagainst a sample componentdev-workflows-frontend@0.18.0and run/recipe-front-designend to end to verify hearing + parallel analyzer integration🤖 Generated with Claude Code