agentsclimarketplace

Wireframe handoff

Skill jpoindexter/wireframe-skills/skills/wireframe-handoff

The complete wireframing discipline as agent skills — /wireframe dispatcher + 7 reference skills distilled from Wireframing for Everyone (A Book Apart)

Install
npx -y skills add jpoindexter/wireframe-skills --skill wireframe-handoff

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 25 days oldThe repository was created 25 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Use when presenting wireframes to stakeholders, clients, or executives; when wireframes are ready for build and developers need a handoff; when a developer asks "what happens when..."; when annotating behavior, states, data sources, validation, or edge cases; when built screens drift from the wireframes during development; or when deciding what to spec in the wireframe versus leave to the build team. Also fires when preparing design alternatives for a sign-off meeting.

SKILL.md

14.6 KB, as published. Nobody here has run it

Wireframe Handoff — Present, Annotate, Ship

Overview

A wireframe isn't done when it's drawn — it's done when it survives three gates: presented to the people it affects, annotated so developers never guess, and followed through until the shipped screen matches the intent. Most product damage happens between phases (handoffs), not within them; this skill hardens the seams.

When to Use

  • Presenting wireframes for sign-off, alignment, or pitch — executives, clients, support, sales, QA
  • Preparing the package developers build from: annotations, states, edge cases, flows
  • During build: behavior questions, wireframe-to-code drift, last-minute changes
  • Post-release: feedback loops and retro on where communication broke
  • NOT for: in-progress design critique among the product triad — that's earlier-phase exploratory feedback, not a handoff gate
  • NOT for: hi-fi visual spec handoff (redlines, spacing, color values) — that's design-tokens territory, downstream of wireframes

Presenting Wireframes

Establish context before screen one

  • Say explicitly that structure-over-style is a deliberate choice: it keeps the room solving user problems instead of debating colors and branding.
  • Say wireframes are cheap to revise — this licenses feedback people would withhold from anything that looks finished. Late input that fixes an oversight is a win, not a derailment.
  • Show a brief evolution (problem statement → structural outline → concepts → proposal). Jumping straight to the answer is jarring to first-time viewers; origins prove diligence and build credibility.

Narrative order: problem → goal → flow → screens

  1. Project background — what created the need: the version that missed, the tool that aged out, the feature that had to land. One clear purpose statement.
  2. The user and their problem — a specific persona or use case, stated plainly. Decisions anchored to a real user read as evidence; decisions without one read as opinion.
  3. The goal — what success looks like for that user and for the business metric it moves.
  4. The flow, then the screens — walk the user's actual tasks end to end, narrating the improvement at each decision point. Show only relevant steps and forks; a complete tour of everything you tried loses the room.

Audience tailoring

AudienceLead withThey will probe
Executives / clientsBusiness metric moved, cost, risk, timelineScope, what slips, why now
DevelopersFlows, states, feasibility, novel interactionsEdge cases, data sources, effort
Support / documentationWhat changes for existing usersMigration pain, ticket volume
Sales / marketingWhat's promisable and whenDemos, differentiators, dates
QAExpected behavior per stateBoundaries, error paths, permissions

Alternatives and trust

  • Admit uncertainty. Name the areas with open questions. In a room of experts, having all the answers reads as dismissive; an incorporated suggestion converts a skeptic into an advocate.
  • Bring prepared alternatives for any area likely to face resistance — including a cheaper-to-build fallback you keep in your back pocket. Considered-and-compared beats defended-and-cornered.
  • Address the negatives yourself: tech debt incurred, deadlines at risk, teams temporarily burdened. Volunteering the costs buys the credibility your benefits claims spend.
  • Listen without defending. Understand the objection fully before responding; feeling unheard destroys goodwill faster than any design flaw.
  • Close with a recap: decisions made, questions parked, owner and next step for each. The recap is the deliverable of the meeting.

Annotation That Developers Need

A wireframe shows the happy path at rest. Annotations carry everything else. The rule: annotate anything a developer would otherwise have to guess — and nothing a standard component already defines.

Annotation typeWhat to specifyExample
InteractionWhat every control does on click/tap/enter/hover; destination or result"Row click opens detail panel; chevron expands inline"
Component statesDefault, hover, focus, active, disabled, selected — and what triggers each"Save disabled until any field is dirty"
Screen statesEmpty, loading, partial, error, ideal — all five, per screen"Empty list: illustration + 'Create your first…' CTA"
Data sourceWhere each value originates: API field, user input, computed, cached"Balance = accounts.available, refreshed on focus"
Data rulesFormats, truncation, default sort, pagination size, max lengths"Names truncate at 40 chars with tooltip; 25/page"
ValidationWhen it fires, the rule, exact error copy (or copy owner)"On blur; 'Card number must be 16 digits'"
Edge casesLong values, zero items, 10k items, offline, concurrent edit"Two editors: last-write-wins + stale banner"
Conditional logicWhat shows/hides/changes per prior answer or context"Business account? → show VAT field, skip step 3"
PermissionsWho sees/does what; unauthorized behavior: hide vs disable vs explain"Viewers: export hidden; editors: disabled + tooltip"
MotionWhat transitions between states, duration intent, reduced-motion fallback"Panel slides in ~200ms; instant if reduced-motion"
ResponsiveWhat reflows, collapses, or hides per breakpoint; touch vs pointer deltas"Table → cards below 640px; hover actions inline"
System behaviorBack button, refresh, deep link, unsaved-changes, session expiry"Back mid-wizard restores step with data intact"
ContentReal copy vs placeholder, and who owns final wording by when"Error strings final; marketing owns hero copy"
AccessibilityFocus order, announcements, labels for icon-only controls"On error, focus moves to summary; role=alert"
PersistenceWhat survives refresh, navigation, session end"Draft autosaved per step; survives logout"

Annotation discipline

  • Number annotations and point each at its element. Prose paragraphs floating beside a screen don't survive contact with a sprint.
  • Annotate deltas, not defaults. If the design system's dropdown already defines keyboard behavior, reference the component — don't re-spec it. Re-stating the obvious buries the one note that matters.
  • Spec vs leave to build: spec behavior, rules, copy, and states (product decisions); leave implementation approach, exact pixels, and standard component internals to the build team and the design system. Over-specifying signals distrust and goes stale first.

The Handoff Package

A complete handoff contains:

  1. Annotated wireframes — every screen, every screen state (empty/loading/partial/error/ideal).
  2. Flow map — how screens connect: entry points, exits, branches, and back-navigation behavior.
  3. Edge-case inventory — the "what happens when…" list, answered in advance.
  4. Content status — final copy in place, or a named owner and date for what's pending.
  5. Open-questions log — decided vs pending, so devs know which gaps are intentional.
  6. Frontend prototype for novel interactions — coded in the product's real stack, not a prototyping tool. It aligns the team and surfaces technical problems before production time is committed. Not a developer? Ask one for a rough version.
  7. Component mapping — each wireframe control matched to its live code counterpart. Built up over a few projects, this becomes a library where translation is nearly free.
  8. Decision record — what was considered and rejected, with why, so settled questions don't get re-litigated mid-sprint.

The package is necessary, not sufficient: walk through it together with the dev team. Combing through the experience side by side beats weeks of ticket and chat ping-pong (Jenny Wen's working-with-engineers advice, cited in the source).

Following Through

  • Be present for early build. Review the first coded screens against the wireframes while divergence is cheap to correct.
  • Budget slack for late changes. New stress cases will surface during development; a schedule with zero iteration room converts each one into a crisis.
  • Handle drift by diagnosis, not objection. When built ≠ wireframed, ask why first: a feasibility discovery is information (update the wireframe), a miscommunication is a process gap (fix the handoff channel). Only then is it an error.
  • A behavior question with no answer is a new wireframe. When a developer asks "what happens when…" and the package is silent, the answer belongs in an updated frame or annotation — a chat reply evaporates and the next developer asks again.
  • Post-release, plug into the feedback stream. Get access to the support team's issue tracker or regular reports; frequency × severity of reported problems is your next iteration's input. No research team required.
  • Retro on the seams. Classify what went wrong: within a phase (wrong requirements, buggy code) or between phases (misunderstanding, misplaced expectations)? Within-phase imperfection usually ships fine; between-phase communication failure is what makes products suffer. Fix the handoff, assume good intent, never blame the person.

Required Context

  • Who the audience is — stakeholders need the story, developers need the spec.
  • What the build team already has — a design system answers half the questions before you annotate.
  • Every state the screens can enter — empty, loading, error, partial, permission-denied.
  • Where data comes from, and what is computed, cached, or user-entered.
  • What is genuinely undecided, so you don't spec a guess as a requirement.

Evaluation Procedure

  1. Establish context first — problem, users, constraints — before showing a frame.
  2. Walk the flow entry to exit; confirm no screen in the path is missing.
  3. Annotate deltas, not defaults: reference the design system rather than restating it.
  4. Cover every state, and the off-screen experiences (emails, notifications, timeouts).
  5. Name data sources and validation rules per field.
  6. Hand it to someone who wasn't in the room. If they need you, it isn't done.
  7. Record what's undecided and who decides it, rather than leaving it implied.
  8. After build starts, check the built screens against the wireframe and log the drift.

Output Format

Audience: <stakeholders | developers>  ·  Fidelity: late-phase
Context: problem <…> users <…> constraints <…>
Flow: <entry> → … → <exit>  (screens: <n>, none missing)
Per screen: purpose · primary action · states (empty/loading/error/partial)
Annotations: behaviour · data source · validation · edge cases · accessibility
Deltas from the design system: <only these are specced>
Undecided: <item → who decides → by when>
Stands alone: <verified by whom>

Quick Reference

SituationDo
Opening a presentationContext first: why structure over style, why feedback is still cheap
Ordering the presentationProblem → goal → flow → screens; relevant decision points only
Contested design areaBring prepared alternatives, including a cheaper fallback
Room full of expertsName your open questions before they do
Q&AListen fully, don't defend; close with decisions + owners + next steps
Dev asks "what happens when X"Answer in the wireframe (annotation or new frame), never only in chat
Novel interactionFrontend prototype in the product's real stack
Deciding what to annotateAnything a dev would guess; skip what the component library defines
Built screen differs from wireframeDiagnose first: feasibility discovery vs miscommunication vs error
Coding has startedStay engaged: joint walkthroughs, early-build reviews, slack for changes
Post-releaseIssue-tracker access; rank feedback by frequency × severity
Project retroClassify failures within-phase vs between-phase; fix the seam

Anti-Patterns

MistakeFix
Jumping straight to the proposed designShow brief evolution — origins build credibility
Touring every option you ever triedOnly the relevant steps and decision forks
Polished visuals at the approval stageReads as finished; structure invites the feedback you need
Projecting certainty on open questionsName them — collaborators become advocates
Hiding the costs (debt, slipped dates)Volunteer them; honesty compounds into trust
Handoff = file link dropped in chatAnnotated package + a live walkthrough together
Annotating only the happy pathFive screen states + edge-case inventory, per screen
Re-specifying standard component behaviorAnnotate deltas; reference the design system
Answering behavior questions in chatUpdate the wireframe — chat answers evaporate
Disappearing once coding startsEarly-build reviews; schedule slack for stress cases
Treating all drift as developer errorDiagnose: feasibility find vs miscommunication vs mistake
Blaming individuals in the retroTeam owns what ships; strengthen the handoff instead
Treating wireframes as the deliverableThey're a thinking-and-communication tool; the product is the deliverable

Companion Skills

SituationCo-fire
Choosing the controls that appear in the frameswireframe-elements
Specifying the full per-component state matrixcomponents-and-states
Annotating empty, zero-data, and loading statesflow-empty-states
Annotating error states and writing error copyflow-errors
Handing off visual specs (spacing, color, type)design-tokens
Annotating focus order, announcements, labelsaccessibility-and-inclusive-design
Final copy for labels, errors, empty statesux-writing-and-content
Agreeing loading/failure architecture with devsdec-rendering-architecture

"Design isn't finished until somebody is using it." — Brenda Laurel

Handoff is not the finish line; shipping to a user is. Everything in this skill exists to keep the idea intact across that last gap.

Distilled from Wireframing for Everyone (Michael Angeles, Leon Barnard, Billy Carlson — A Book Apart, 2023), extended with production practice.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.