Design Collaboration
Use this skill when visual style, UX direction, or an external design pass
should be coordinated before or alongside implementation.
Design collaboration is issue-backed. Use github-plan for durable design
state: product context, design requests, returned critique, accepted direction,
implementation constraints, PR links, browser QA evidence, tradeoffs, and
closeout state.
Use ../references/every-code-formatting.md when drafting design requests,
issue comments, critique summaries, and closeout notes so design state remains
compact, point-in-time, and recoverable from GitHub.
Do not create local handoff Markdown files. Repos should hold product and
implementation facts; GitHub planning issues should hold active design workflow
state.
Core Split
External design collaborator owns:
- visual direction and mood
- composition and layout concepts
- typography and color direction
- interaction feel and polish
- making the surface not ugly
The coding agent owns:
- product context and user workflow
- required states and acceptance criteria
- technical constraints and existing repo patterns
- implementation feasibility
- browser validation, accessibility, responsive behavior, and final QA
GitHub Issue Model
Use github-plan before creating or updating design work:
- Think in chat first when the direction is still fuzzy.
- Search existing planning/design issues before creating a new one.
- Create or update one canonical issue when the design work should persist.
- For broad redesigns, use a parent issue plus sub-issues for independent
surfaces, states, implementation tracks, or validation work.
- Use
Current Status as the recovery point for future sessions.
- Link implementation PRs with
Refs #123 unless auto-close is clearly
intended and validation can conclusively finish the issue.
- Before closeout, update the issue with accepted direction, evidence,
remaining work, and stale/related issue cleanup.
Design issues should use the normal github-plan headings, with design-specific
content inside them:
Objective: product goal, audience, target surface, and why the design work
matters.
Finish Line: observable done state for the designed and implemented UI.
Current Status: state, next action, blocker or waiting condition, and last
verification.
Scope: included surfaces/states and explicit non-goals.
Acceptance Criteria: functional, visual, responsive, accessibility, and
implementation criteria.
Relationships: parent/sub-issues, blockers, design comments, PRs, previews,
and related docs.
Validation: browser QA steps, screenshots, viewport checks, and evidence.
Decisions: accepted design direction, tokens, interaction patterns, and
intentional deviations from drafts.
Open Questions: unresolved product, visual, technical, or ownership choices.
Design Request Content
When asking Claude Design, Codex, or another collaborator for a pass,
place the request in the canonical issue or an issue comment. Include only the
sections needed for the task:
- target collaborator and requested output: critique, visual direction, mockup,
tokens, component plan, or implementation notes
- product/repo, audience, target surface, route, and relevant paths
- current problems, UX friction, and visual issues
- primary user goal, primary actions, secondary actions, and first-view priority
- required states: default, empty, loading, error, dense data, success,
mobile/narrow, and role or mode variants
- technical constraints: framework, component system, styling system, assets,
browser/device requirements, and things that cannot change
- visual direction: brand cues, references, things to avoid, style freedom, and
product-specific assets or iconography tied to the product name, domain, and
purpose rather than generic marks
- accessibility and usability needs: keyboard/touch, contrast/readability,
motion sensitivity, density, and scanning needs
- requested response format: summary, hierarchy, tokens, state notes,
assumptions, tradeoffs, and implementation guidance
For first-pass design work, bias toward product context, required states,
hierarchy, design tokens, and response format. Avoid over-prescribing framework
implementation unless it is a hard constraint.
For second-pass or implementation-prep work, convert the accepted design into
concrete UI tasks, preserve backend/API constraints, and note any intentional
departures from the draft in Decisions.
When the user has asked to read or prepare from a design brief and then
explicitly says to implement it, start coding, or move to implementation, move
into the work instead of asking for another confirmation unless a real blocker
or scope ambiguity remains. Do not treat a bare "go" or "go ahead" as
implementation approval by itself.
Consuming Returned Design
Do not blindly trust returned UI/design output.
- Compare it against the issue acceptance criteria and required states.
- Preserve existing product and repo constraints when resolving conflicts.
- If the returned design is beautiful but incomplete, request the missing states
in the issue or issue comments.
- If the returned design is not implementable, reduce it to the closest
shippable version and record the tradeoff.
- Update
Decisions, Acceptance Criteria, Validation, and Current Status
instead of leaving conclusions only in chat.
- Use
browser-ui-review after implementation and attach or reference browser
evidence before signoff.
- Finish passes should leave reviewable proof for key states, accessibility
basics, responsive behavior, and destructive-action safety when relevant.
Repo Documentation Boundary
Repository docs should not describe skill workflows or active design plans.
Keep repo docs for durable product and implementation facts such as:
- design tokens and component conventions
- route structure and target surfaces
- accessibility requirements specific to the product
- backend/API constraints that affect UI behavior
- accepted, stable UI policy that applies beyond one workstream
Do not add repo docs that say which skill to use, create local handoff files, or
mirror active issue checklists. If a repo contains stale design-handoff
instructions or legacy handoff*.md files, replace them with stable
product/repo facts or move active work into the canonical GitHub planning
issue.
Workflow
- Use
github-plan to search for existing relevant planning issues.
- Decide whether the design need is ephemeral chat or durable issue-backed
work.
- Create or update the canonical design issue when durable state is needed.
- Add the design request or critique prompt to the issue or an issue comment.
- Evaluate returned design against acceptance criteria, constraints, and
required states.
- Implement when the user explicitly asks for implementation, when the
accepted direction is already captured and execution is the requested next
step, or after an explicitly requested external design pass has been
accepted. Do not treat a bare "go" or "go ahead" as sufficient approval to
switch into implementation.
- Validate with
browser-ui-review across relevant interactions and viewports.
- Update the issue with accepted decisions, evidence, PR links, and remaining
work before closeout.
1---2name: design-collaboration3description: Use when the user wants UI/UX design collaboration, Claude Design, Codex design tools, first/second design passes, mockups, visual direction, critique, or an outside collaborator to draft or review UI before implementation. Use github-plan issues as the durable design record.4---56# Design Collaboration78Use this skill when visual style, UX direction, or an external design pass9should be coordinated before or alongside implementation.1011Design collaboration is issue-backed. Use `github-plan` for durable design12state: product context, design requests, returned critique, accepted direction,13implementation constraints, PR links, browser QA evidence, tradeoffs, and14closeout state.1516Use `../references/every-code-formatting.md` when drafting design requests,17issue comments, critique summaries, and closeout notes so design state remains18compact, point-in-time, and recoverable from GitHub.1920Do not create local handoff Markdown files. Repos should hold product and21implementation facts; GitHub planning issues should hold active design workflow22state.2324## Core Split2526External design collaborator owns:2728- visual direction and mood29- composition and layout concepts30- typography and color direction31- interaction feel and polish32- making the surface not ugly3334The coding agent owns:3536- product context and user workflow37- required states and acceptance criteria38- technical constraints and existing repo patterns39- implementation feasibility40- browser validation, accessibility, responsive behavior, and final QA4142## GitHub Issue Model4344Use `github-plan` before creating or updating design work:45461. Think in chat first when the direction is still fuzzy.472. Search existing planning/design issues before creating a new one.483. Create or update one canonical issue when the design work should persist.494. For broad redesigns, use a parent issue plus sub-issues for independent50 surfaces, states, implementation tracks, or validation work.515. Use `Current Status` as the recovery point for future sessions.526. Link implementation PRs with `Refs #123` unless auto-close is clearly53 intended and validation can conclusively finish the issue.547. Before closeout, update the issue with accepted direction, evidence,55 remaining work, and stale/related issue cleanup.5657Design issues should use the normal `github-plan` headings, with design-specific58content inside them:5960- `Objective`: product goal, audience, target surface, and why the design work61 matters.62- `Finish Line`: observable done state for the designed and implemented UI.63- `Current Status`: state, next action, blocker or waiting condition, and last64 verification.65- `Scope`: included surfaces/states and explicit non-goals.66- `Acceptance Criteria`: functional, visual, responsive, accessibility, and67 implementation criteria.68- `Relationships`: parent/sub-issues, blockers, design comments, PRs, previews,69 and related docs.70- `Validation`: browser QA steps, screenshots, viewport checks, and evidence.71- `Decisions`: accepted design direction, tokens, interaction patterns, and72 intentional deviations from drafts.73- `Open Questions`: unresolved product, visual, technical, or ownership choices.7475## Design Request Content7677When asking Claude Design, Codex, or another collaborator for a pass,78place the request in the canonical issue or an issue comment. Include only the79sections needed for the task:8081- target collaborator and requested output: critique, visual direction, mockup,82 tokens, component plan, or implementation notes83- product/repo, audience, target surface, route, and relevant paths84- current problems, UX friction, and visual issues85- primary user goal, primary actions, secondary actions, and first-view priority86- required states: default, empty, loading, error, dense data, success,87 mobile/narrow, and role or mode variants88- technical constraints: framework, component system, styling system, assets,89 browser/device requirements, and things that cannot change90- visual direction: brand cues, references, things to avoid, style freedom, and91 product-specific assets or iconography tied to the product name, domain, and92 purpose rather than generic marks93- accessibility and usability needs: keyboard/touch, contrast/readability,94 motion sensitivity, density, and scanning needs95- requested response format: summary, hierarchy, tokens, state notes,96 assumptions, tradeoffs, and implementation guidance9798For first-pass design work, bias toward product context, required states,99hierarchy, design tokens, and response format. Avoid over-prescribing framework100implementation unless it is a hard constraint.101102For second-pass or implementation-prep work, convert the accepted design into103concrete UI tasks, preserve backend/API constraints, and note any intentional104departures from the draft in `Decisions`.105106When the user has asked to read or prepare from a design brief and then107explicitly says to implement it, start coding, or move to implementation, move108into the work instead of asking for another confirmation unless a real blocker109or scope ambiguity remains. Do not treat a bare "go" or "go ahead" as110implementation approval by itself.111112## Consuming Returned Design113114Do not blindly trust returned UI/design output.115116- Compare it against the issue acceptance criteria and required states.117- Preserve existing product and repo constraints when resolving conflicts.118- If the returned design is beautiful but incomplete, request the missing states119 in the issue or issue comments.120- If the returned design is not implementable, reduce it to the closest121 shippable version and record the tradeoff.122- Update `Decisions`, `Acceptance Criteria`, `Validation`, and `Current Status`123 instead of leaving conclusions only in chat.124- Use `browser-ui-review` after implementation and attach or reference browser125 evidence before signoff.126- Finish passes should leave reviewable proof for key states, accessibility127 basics, responsive behavior, and destructive-action safety when relevant.128129## Repo Documentation Boundary130131Repository docs should not describe skill workflows or active design plans.132133Keep repo docs for durable product and implementation facts such as:134135- design tokens and component conventions136- route structure and target surfaces137- accessibility requirements specific to the product138- backend/API constraints that affect UI behavior139- accepted, stable UI policy that applies beyond one workstream140141Do not add repo docs that say which skill to use, create local handoff files, or142mirror active issue checklists. If a repo contains stale design-handoff143instructions or legacy `handoff*.md` files, replace them with stable144product/repo facts or move active work into the canonical GitHub planning145issue.146147## Workflow1481491. Use `github-plan` to search for existing relevant planning issues.1502. Decide whether the design need is ephemeral chat or durable issue-backed151 work.1523. Create or update the canonical design issue when durable state is needed.1534. Add the design request or critique prompt to the issue or an issue comment.1545. Evaluate returned design against acceptance criteria, constraints, and155 required states.1566. Implement when the user explicitly asks for implementation, when the157 accepted direction is already captured and execution is the requested next158 step, or after an explicitly requested external design pass has been159 accepted. Do not treat a bare "go" or "go ahead" as sufficient approval to160 switch into implementation.1617. Validate with `browser-ui-review` across relevant interactions and viewports.1628. Update the issue with accepted decisions, evidence, PR links, and remaining163 work before closeout.