Quick start
- "Migrate the appointment form to shadcn Input/Button; provide a locally reviewable result first."
- "Migrate the order details Dialog and preserve keyboard behavior; preserve existing scope and source."
- "Compare registry source with existing theme tokens; identify missing inputs and validation states."
For designers, frontend developers, and teams maintaining this workflow. Designers provide intent and assets, developers provide engineering/tooling, and the team preserves source and acceptance status during handoff.
Capability boundaries
✅ Good at handling
- Migrate the appointment form to shadcn Input/Button.
- Migrate the order details Dialog and preserve keyboard behavior.
- Compare registry source with existing theme tokens.
⚠️ Requires assets
- Target project and components.json.
- Stitch assets and current component behavior.
- Tailwind/React versions and scope to migrate.
❌ Inapplicable scenarios and handoff
- Generic React page conversion → stitch-ui-react-components.
- Native App → stitch-ui-react-native-components.
- Business login or payment services → project interface workflow, submit form behavior contract.
Workflow
- Read the current project version and Stitch HTML/screenshots, and clarify which components are to be migrated only.
- Read migration-guide first, and check the original Props, state, keyboard, and theme.
- Retrieve currently available registry tools and component sources, review dependencies and changes, then apply.
- Migrate one component according to existing cn/cva/theme conventions and preserve accessibility; validate before handling the next one.
- Run target type/lint/build and keyboard/theme checks; verify-setup.sh is only a Tailwind3 heuristic and does not mean Tailwind4 or that everything passes.
Order by dependency: source verification → local artifacts → authorized external operations → validation handoff. For multiple tasks, do the current main path first; if information is missing, output an assumptions draft first, then precisely list what is missing and its purpose, without using vague prompts like "please provide more context."
Security and result verification
Do not read unrelated account configurations or collect user passwords; credentials are provided only by the environment or authorized connectors. Use only demo data in examples; replace customer names, phone numbers, and order numbers with demo values before uploading, and check HTML, screenshots, and file metadata. Do not write keys, session cookies, full base64 text, or signed download URLs into reports/repositories. Unverified parameters, visual effects, and business numbers must not be fabricated; note sources, decision basis, actual execution, and unverified parts in the output.
- Preserve Dialog focus restoration and keyboard close.
- Actual review of registry sources and dependencies.
- Light/dark themes and focus visibility verified.
Customizable: registry, primitives, themes, variants, target components, and migration order. Value-added checks: component-by-component migration; version triage; accessibility regression checklist.
FAQ
Q1: What is the main deliverable? Appointment form label htmlFor="phone" + Input id="phone"; preserve error aria-describedby; do not write the phone number into the example.
Q2: When should another entry point be used instead? General React page conversion → stitch-ui-react-components; native App → stitch-ui-react-native-components; business login or payment services → project interface flow, submit form behavior contract.
Q3: What happens when input is missing? First provide a clearly marked draft of local assumptions, and list "Needed to supplement: target project and components.json; Stitch assets and current component behavior; Tailwind/React versions and migration scope". Write operations that depend on these inputs are not executed.
Q4: How is completion determined? Preserve Dialog focus restoration and keyboard dismissal; actually review registry sources and dependencies; light/dark themes and focus visibility are verified.
Q5: How is it customized? registry, primitives, theme, variant, target components, and migration order; when not provided, follow existing project values and mark assumptions.
Q6: Is it automatically uploaded, installed, or launched? Only perform actions covered by the current request and existing authorization; without a remote receipt, do not claim upload success, and without runtime verification, do not claim launch. Additional installation or scope expansion requires first explaining the specific impact.
Reference as needed
- When executing detailed mappings, APIs, or templates, read Extended Flow。
- When encountering failures/abnormal input, read Anti-patterns and Gotchas。
- When involving edge cases, compatibility, customization, and authorization, read In-depth FAQ。
- When complete input/output and verification scenarios are needed, read Local Application Examples。
- The local implementation basis is the source code accompanying the current skill and Pinned upstream snapshot; the structure follows Agent Skills specification. The tool's current behavior is subject to the actual schema; when not connected, do not claim to have verified online behavior.
When to use
Load this skill when the user needs to select and execute a verifiable, recoverable professional workflow for the current request . First extract the goal, input, constraints, delivery format, and acceptance criteria from the request; the description summary is: triggered when selecting, migrating, and verifying shadcn/ui primitives, themes, and registry content for Stitch-sourced React pages. For first-time general HTML-to-React conversion, use stitch-ui-react-components; do not automatically migrate unrelated projects..
Rules
- Read before write: first confirm the current state and real capabilities, then perform actions that change external state.
- Least privilege: use only the files, tools, accounts, and network scope required to complete the current step.
- Evidence first: when run results, resource IDs, versions, hashes, or test output are missing, clearly mark them as
NOT_VERIFIED。 - Idempotency first: retain request identifiers and stage status; when results are unclear, query first and do not blindly retry.
- Privacy and security: logs, examples, receipts, and error messages must not contain tokens, cookies, keys, or personally sensitive data.
Workflow
Step 1: Clarify intent
Confirm whether this skill matches the goal; if it is merely an adjacent need, hand it to a more precise skill.
Step 2: Perform precheck
Confirm the goal, input, constraints, available tools, success criteria, and failure boundaries; when any key condition is unknown, stop at the read-only stage.
Step 3: Form a plan
List the tools to be called, the objects that will change, the success criteria, and the safe exit method after failure.
Step 4: Execute the action
Execute in the minimum sufficient steps, and record evidence at key state changes; retain a traceable state or receipt for every external call.
Step 5: Verify the delivery
Output the results, verification evidence, incomplete items, risks, and clear next steps, and state facts, inferences, and unverified items separately.
Validation checklist
- The skill trigger conditions match the user's intent; adjacent tasks have not been misrouted to this skill.
- The inputs, target objects, versions, and output locations are all clear, and no required values have been replaced with guesses.
- All writes, payments, publications, or irreversible actions are within the scope of user authorization.
- The results have been verified with independent checks; "command succeeded" or "file exists" alone does not count as complete acceptance.
- The output includes actual evidence, failed/skipped items, remaining risks, and actionable next steps.
Gotchas
- Treating a plan as a result: A document or prompt does not equal actual execution; the actual execution level must be stated.
- Retrying after an error: A timeout or lost response may already have produced remote state; query first before deciding whether to retry.
- Implicit scope expansion: Batch, full-scale, publication, overwrite, and payment actions are not natural extensions of ordinary reads and writes.
- Version drift: When referencing external resources, record the version, tag, or commit; do not treat a mutable branch as release evidence.
- Stale evidence: Caches, old screenshots, and historical tests cannot prove the current environment; refresh key evidence before delivery.
Non-applicability and boundaries
Do not exceed the scope given by the user; writes, payments, publications, and irreversible actions require explicit authorization. If the request requires another skill, do not copy its body text; hand off by skill name and preserve the current task context.
Progressive disclosure
- When inputs/outputs, states, and authorization points need to be determined, read
references/workflow-contract.md。 - When a pre-delivery self-check is needed, read
references/validation-checklist.md。 - When encountering timeouts, partial success, or recovery scenarios, read
references/error-recovery.md。 - For first runs, refusal of privilege escalation, and failure recovery, refer to
examples/happy-path.md、examples/boundary-refusal.md、examples/failure-recovery.md。