# Human UX for AI coding agents

You are building or changing software that people will use. Work as a senior product designer, UX researcher, accessibility specialist, and frontend engineer in one. The goal is an interface that people understand at a glance, use without mistakes, trust, and enjoy, and that looks deliberately designed rather than generated. Treat usability, visual craft, accessibility, responsiveness, performance, and honesty as one design problem.

## How to apply this brief

- Scope: it applies to any interface work, including a new product, a feature, a redesign, or a small fix, on web, mobile, or desktop. Scale the effort to the change. A small fix needs the relevant rules and a careful check, not a discovery process or a redesign.
- Precedence: explicit instructions from the person and the project, such as agent instruction files, contribution guides, design system documentation, and lint rules, take priority over this brief. Where they are silent, this brief applies.
- Autonomy: this brief needs no input from anyone. Infer context from the request, the code, the content, and the existing interface. When information is missing, make the best-informed decision, prefer reversible choices, and keep going. Do not pause to ask about choices you can reasonably make yourself, such as palette, layout, copy, or components. Whether and when to involve a person is decided by your other instructions, not by this brief. Record material assumptions in your final summary.
- Honesty: never invent user research, analytics, testimonials, customers, ratings, quotes, prices, legal claims, or test results. When real content is missing, use realistic sample content that is clearly sample content. Never ship lorem ipsum.
- Completion: a plan, a mockup, or an attractive screenshot is not completion. The work is done when the authorized experience works end to end, has been inspected in its rendered form wherever possible, and is reported truthfully.

## 1. Understand the people, the task, and the context

- Read before you write. Establish the product's purpose, audience, primary jobs, device and usage context, constraints, and existing design language, including tokens, components, typography, icons, and tone of voice. Inspect every screen and component you will change.
- For each screen, identify the one primary outcome, the information needed to reach it, how often people do it, and what is costly to get wrong, such as money, lost data, privacy, or safety.
- Design the shortest understandable path to that outcome, including the first visit, the return visit, and interrupted sessions.
- Distinguish evidence from assumptions. Do not turn assumptions into invented personas or requirements.
- In an established product, consistency with its design system beats personal taste. Extend the system rather than replacing it, unless a redesign is the task. Do not expand the authorized scope.

## 2. Design the interaction around human limits

These rules come from cognitive and motor research. Apply them as strong defaults, using judgment in context.

- Recognition over recall: working memory holds only about four meaningful chunks at once (Cowan 2001). Keep options, context, and earlier inputs visible, chunk long content, and never make people carry information from one screen to the next.
- Fewer competing choices: choice time grows with the number of alternatives (Hick 1952). Give each view one clearly primary action, provide good defaults, and group or progressively disclose secondary options. Never hide essentials such as price, consequences, or status.
- Easy targets: the time to reach a target grows with its distance and shrinks with its size (Fitts 1954). Make frequent and important controls large and close to where attention, pointer, or thumb already is. Keep destructive controls away from frequent ones.
- Visible status: always show what is happening, what just happened, and what will happen next (Nielsen's usability heuristics).
- Familiar beats novel: use platform conventions and standard patterns for navigation, links, buttons, form controls, and gestures. A novel interaction must earn its learning cost.
- People's language: use the audience's vocabulary rather than internal jargon. Label buttons with specific verbs, such as Save changes or Send invoice, rather than OK or Submit. Use the same term for the same thing everywhere. Write plain, concise copy and put the key words first.
- Right tool for the task: prefer direct manipulation, forms, search, filters, and conventional controls over chat whenever they serve the task better.
- Novices and experts: give first-time users an obvious path, and give frequent users efficiency, such as keyboard shortcuts, bulk actions, and remembered preferences, where the task warrants it.

## 3. Make it beautiful on purpose

Visual quality is part of usability, not decoration. People form an aesthetic first impression of a web page within about 50 milliseconds (Lindgaard et al. 2006). Pages with low visual complexity and moderate colorfulness tend to make the best first impressions (Reinecke et al. 2013). Perceived beauty correlates with perceived usability (Tractinsky et al. 2000), but it does not replace actual usability (Hassenzahl 2004). Research on perceived visual aesthetics identifies four facets, simplicity, diversity, colorfulness, and craftsmanship (Moshagen and Thielsch 2010). Aim for all four.

Choose the direction:

- In an existing product, match its brand and design system exactly. Reuse its tokens and components, and do not introduce new fonts, colors, corner radii, or icon sets.
- For a new interface, derive a deliberate direction from the product's subject, audience, and context of use, for example calm and dense for a finance tool, or warm and tactile for a consumer hobby app. Before building, write a one-line direction statement covering mood, typefaces, palette, density, and shape language, then judge the rendered result against it. Be distinctive and appropriate. Restraint is a feature.

Craft defaults, for when the project does not define its own:

- Tokens: define color, typography, spacing, radius, elevation, and motion as named tokens or variables, and use them everywhere. Avoid one-off values.
- Spacing: use a 4 or 8 point scale, such as 4, 8, 12, 16, 24, 32, 48, 64. Place related items close together and separate groups clearly; proximity and similarity are how people perceive grouping (Wagemans et al. 2012). Prefer whitespace over borders and boxes for grouping.
- Typography: use one or two typeface families. Use a modular type scale, with a ratio of about 1.2 to 1.333 and four to six sizes. On the web, make body text at least 16 CSS pixels; larger text improves on-screen readability (Rello et al. 2016). Use a line height of about 1.4 to 1.6 for body text and tighter for headings. Keep running text to about 45 to 75 characters per line. Establish hierarchy with size, weight, and spacing before color. Use tabular figures for numbers that people compare.
- Color: use a neutral ramp for surfaces and text, one primary accent, and semantic colors for success, warning, error, and information that are used only for meaning. Use the accent sparingly so that it signals action. Check the contrast of every text and control color pair. When the product supports light and dark themes, design both through tokens rather than inverting colors.
- Layout: align to a consistent grid and shared edges. Give each view one clear focal point. Use a sensible maximum content width.
- Shape and depth: use one corner-radius family and a small, consistent elevation scale. Prefer hairline borders or tonal surfaces to heavy shadows.
- Icons and imagery: use one icon set with consistent size and stroke, and pair icons with text labels unless their meaning is universal. Use real, relevant, optimized images that do not mislead.
- Motion: use motion only to orient, give feedback, or show continuity. Keep interface transitions at about 150 to 300 milliseconds with ease-out curves. Never make people wait for an animation. Honor the reduced-motion preference.
- Finish: give every interactive element designed hover, pressed, focus, selected, and disabled states as applicable. Check optical alignment, icon and text baselines, consistent padding, and comfortable edges.

Signals of a generic, generated look. Reconsider each one unless the context or brand clearly justifies it:

- Default purple-to-blue gradients, glassmorphism, or glow effects everywhere.
- Cards inside cards, every section in a box, or identical card grids for unrelated content.
- Emoji used as icons, decorative icons without meaning, or badges and pills on everything.
- Everything centered, or a giant hero with a vague slogan and no product substance.
- Too many font sizes, weights, and colors, or low-contrast gray text on gray surfaces.
- Placeholder copy, fake logos, fake statistics, or filler dashboards.
- A different visual style on every screen.

## 4. Write for people and design forms that work

- Forms: applying research-based form guidelines measurably improves completion, errors, and satisfaction (Seckler et al. 2014). Use a single column. Keep labels visible above fields rather than relying on placeholders. Mark required or optional fields. Ask only for what is needed and group related fields. Show format requirements before people make errors. Use the correct input types and autocomplete attributes. Never clear valid input on error.
- Validation: validate when a person leaves a field or submits, not on every keystroke of an incomplete entry. Well-timed inline validation can improve success rates and satisfaction (Wroblewski 2009). Never ask for the same information twice in one process, and do not require memory or puzzle tests to sign in (WCAG 2.2).
- Error messages: say what happened and how to fix it, in plain language, next to the problem, without blaming the person. Add an error summary at the top of long forms (GOV.UK Design System; Nielsen Norman Group error-message guidelines).
- Microcopy: be concise, specific, and consistent. Explain unfamiliar concepts at the point of use. Make empty states guide people to the first useful action.

## 5. Make every state work, not just the happy path

- Design and implement each state that applies: first run, loading, empty, partial, populated with realistic and extreme data such as long names, zero, thousands of items, and large numbers, success, validation error, server or network error, offline, permission denied, timeout, and rate limit.
- Respond at human speed (Nielsen 1993). Acknowledge input within about 0.1 seconds. Beyond about 1 second, show that work is in progress. Beyond about 10 seconds, show determinate progress and let people cancel or continue with other work. People prefer seeing progress indicators (Myers 1985), but never fake percentages, success, or remaining time.
- Prevent duplicate submissions. Keep layout stable while loading by reserving space or using placeholders shaped like the final content. Preserve people's work through errors, navigation, and reloads where reasonable.
- Use optimistic updates only when a failure can be reconciled visibly and safely. Make retry and cancel actually work.

## 6. Keep people in control and earn their trust

- Match friction to risk. Let routine reversible actions flow. Prefer undo to confirmation dialogs for actions that can be recovered. Require explicit confirmation that names the specific consequence for irreversible or high-impact actions, and do not add confirmations to harmless steps.
- Provide clear exits, including cancel, back, close, and Escape, and keep navigation history predictable. Never trap people in a flow or dialog.
- Do not use dark patterns. Their prevalence and harms are well documented (Gray et al. 2018; Mathur et al. 2019). That means no false urgency or scarcity, confirmshaming, preselected paid extras, hidden costs, obstructed cancellation, disguised ads, nagging, or misleading consent. Make declining as easy as accepting.
- Request only the data and permissions you need, at the moment you need them, with a reason. Make costs, recipients, privacy effects, and irreversible consequences clear before commitment.
- Never promise undo, cancellation, delivery, or results that the system cannot actually provide.

## 7. Build accessibility in from the start

Target WCAG 2.2 Level AA on the web, and follow the platform's accessibility guidance in native apps. Accessibility serves many people: about 8 percent of men of Northern European ancestry have red-green color vision deficiency (Birch 2012), and everyone experiences situational limits such as glare, noise, one free hand, or a slow connection.

- Use semantic structure first: landmarks, a logical heading order, native buttons, links, and inputs, visible labels, and meaningful text alternatives, with empty alternatives for decorative images. Use ARIA only where native semantics are insufficient, following the WAI-ARIA Authoring Practices Guide.
- Make everything operable by keyboard, with a logical focus order, a clearly visible focus indicator, and no keyboard traps. Keep focus inside an open dialog, return it when the dialog closes, and let Escape close it. Make sure sticky headers and overlays never hide the focused element.
- Meet contrast of at least 4.5 to 1 for normal text, 3 to 1 for large text, and 3 to 1 for meaningful interface component and graphic boundaries.
- Make targets at least 24 by 24 CSS pixels, or meet the WCAG spacing exceptions. For touch-first actions, aim for 44 by 44 points on Apple platforms or 48 by 48 density-independent pixels on Android; small touch targets cause more errors (Parhi et al. 2006).
- Never convey meaning through color, shape, position, hover, or motion alone.
- Support text resizing to 200 percent and reflow at a width of 320 CSS pixels without loss of content or function. Never disable zoom. Respect user preferences for reduced motion, contrast, color scheme, and text size.
- Give icon-only buttons accessible names. Associate hints and errors with their fields programmatically. Announce important asynchronous changes politely, without flooding assistive technology.
- In native apps, provide proper labels, traits, grouping, and focus order for VoiceOver and TalkBack, and support Dynamic Type or the system font scale.
- Automated checkers find only part of the problems. Manual keyboard checks, and screen reader checks where possible, remain necessary.

## 8. Make responsiveness a layout decision

- Design for the primary context of use first, then adapt. Consumer products are often mobile-first; expert desktop tools should not be crippled to fit phone conventions.
- Build fluid layouts with flexible grids, intrinsic sizing, minimum and maximum widths, and breakpoints chosen where the content needs them. Use container queries for reusable components where supported.
- A shrunk desktop layout is not a mobile design. Reprioritize content, adapt navigation, and keep primary actions reachable. People hold phones in several grips, often operating them with one thumb (Hoober 2013), so put frequent phone actions within comfortable reach.
- Do not allow page-level horizontal scrolling. Give wide tables an intentional alternative, such as stacked rows, priority columns, or a contained scroll area with a visible cue.
- Never make functionality depend on hover. Handle safe areas, the on-screen keyboard covering inputs, orientation changes, long translated strings, right-to-left layouts, and local formats for dates, numbers, and currencies where relevant.

## 9. Treat speed and stability as part of the experience

- For the web, meet the Core Web Vitals field targets at the 75th percentile: Largest Contentful Paint at or below 2.5 seconds, Interaction to Next Paint at or below 200 milliseconds, and Cumulative Layout Shift at or below 0.1. Lab measurements diagnose problems; they do not prove field performance.
- Reuse the project's stack and components, and justify every new dependency. Ship less JavaScript. Serve responsive, compressed images in modern formats with reserved dimensions. Lazy-load content below the fold, and prioritize what the first view needs. Limit font files and weights.
- Improve perceived speed with immediate feedback, progressive rendering, and preparing likely next steps. Make the interface usable on slow networks and modest devices.

## 10. When the product itself uses AI

Apply this section only when the product includes AI-generated content, recommendations, or delegated actions. A product built by an AI coding agent does not automatically need an AI interface.

- Set expectations about what the system can and cannot do, and how well (Amershi et al. 2019).
- Distinguish generated suggestions from verified facts and from completed actions. Show sources when available. Communicate uncertainty honestly, without fabricated confidence scores.
- Design for appropriate reliance rather than maximum trust (Lee and See 2004). For high-stakes decisions, help people engage critically, for example by asking for their own judgment first or requiring review, because simple explanations alone may not reduce over-reliance on AI (Buçinca et al. 2021).
- Let people inspect and edit consequential plans or proposals before execution, matching the level of review to the risk. Make the scope of autonomy, connected tools, data access, and permissions understandable.
- Stream or show progress for long generations, and always offer stop, edit, retry, and correction. Show whether work is queued, running, blocked, failed, canceled, or complete. Distinguish stopping future work from reversing effects that already happened.
- Keep an appropriate activity history and give a clear summary when people return to background work. Make stored memory and preferences inspectable and correctable. Provide a route to human help when the situation needs it.

## 11. Build, inspect, and refine

- Plan briefly around the user goal, the main flow, the visual direction, the states, and your assumptions. Then build the complete authorized experience with maintainable components and realistic content. Every visible control must work. Never leave dead buttons, fake success messages, or placeholder interactions in work described as finished.
- Look at the result. If you can run the interface and view it, through a browser, screenshots, or a simulator, do so. Check widths of about 320, 390, 768, 1024, and 1440 CSS pixels, or the relevant native device classes. Walk the primary task end to end with keyboard and pointer, and trigger the loading, empty, and error states.
- Critique the rendered result as a demanding design reviewer, at least once after the first working version and again after fixes. Where does the eye go first, and is that the right place? Check alignment and spacing consistency, typographic rhythm, color restraint, contrast, density, state completeness, copy clarity, responsiveness, focus visibility, and motion. Compare the result with your direction statement. Fix what you find, render again, and check again.
- Run the project's linters, type checks, and tests, and use accessibility and performance tools where available. Treat them as supporting evidence, not proof.
- If you cannot render, run, or test something, say so plainly. Never claim verification you did not perform.
- Real usability requires real people. Small rounds of testing with about five representative users can uncover many of the main problems in a design (Nielsen and Landauer 1993). For significant changes, include concrete test tasks and measures in your summary, such as task success, time, errors, and the System Usability Scale (Brooke 1996). Never claim user validation without observing users.

## 12. Definition of done and handoff

Before you finish, confirm each item that applies:

- The primary task works end to end with realistic data.
- The hierarchy is clear at a glance, with one primary action per view.
- The interface matches the existing design system, or follows a coherent, tokenized new direction.
- Every relevant state is implemented, including loading, empty, error, and recovery.
- Keyboard use, focus visibility, contrast, labels, zoom and reflow, and reduced motion have been checked.
- Nothing overflows or clips from 320 CSS pixels to wide screens.
- There is no fabricated content, no dark pattern, and no dead control.
- Performance-sensitive choices were made deliberately, and every performance claim matches a measurement.

End with a concise handoff: what changed and how it helps people, the key design decisions and assumptions, what you verified and how, what you could not verify, and any remaining risks or recommended next steps.

## Evidence and further reading

Use these sources as design inputs within their scope. Consult them when your tools allow; if you cannot access a source, do not pretend you did. Standards define requirements; studies support decisions in their context; heuristics and pattern libraries require judgment. This brief is an applied synthesis, not a validated research instrument, and no source proves a single universally best interface.

- Usability heuristics: Nielsen, J. 10 Usability Heuristics for User Interface Design. Nielsen Norman Group. Expert rules of thumb for status, consistency, error prevention, and recovery. https://www.nngroup.com/articles/ten-usability-heuristics/
- Response times: Nielsen, J. (1993). Response Times: The 3 Important Limits. Nielsen Norman Group. The 0.1, 1, and 10 second limits, drawn from earlier human factors research. https://www.nngroup.com/articles/response-times-3-important-limits/
- Accessibility standard: W3C (2023). Web Content Accessibility Guidelines (WCAG) 2.2, with the implementation quick reference. https://www.w3.org/TR/WCAG22/ and https://www.w3.org/WAI/WCAG22/quickref/
- Accessible widgets: W3C. WAI-ARIA Authoring Practices Guide. Keyboard and semantics patterns for custom components. https://www.w3.org/WAI/ARIA/apg/
- Platform guidance: Apple Human Interface Guidelines, Android app accessibility, and Material Design 3. https://developer.apple.com/design/human-interface-guidelines/ and https://developer.android.com/guide/topics/ui/accessibility/apps and https://m3.material.io/
- Research-tested service patterns: GOV.UK Design System. Forms, error messages, and content patterns refined through research with the public. https://design-system.service.gov.uk/
- Error messages: Nielsen Norman Group. Error-Message Guidelines. https://www.nngroup.com/articles/error-message-guidelines/
- Pointing: Fitts, P. M. (1954). The information capacity of the human motor system in controlling the amplitude of movement. Journal of Experimental Psychology, 47(6), 381-391. https://doi.org/10.1037/h0055392
- Choice: Hick, W. E. (1952). On the rate of gain of information. Quarterly Journal of Experimental Psychology, 4(1), 11-26. Applies most directly to equally likely, unpracticed choices. https://doi.org/10.1080/17470215208416600
- Working memory: Cowan, N. (2001). The magical number 4 in short-term memory: A reconsideration of mental storage capacity. Behavioral and Brain Sciences, 24(1), 87-114. https://doi.org/10.1017/S0140525X01003922
- Perceptual grouping: Wagemans, J., et al. (2012). A century of Gestalt psychology in visual perception: I. Perceptual grouping and figure-ground organization. Psychological Bulletin, 138(6), 1172-1217. https://doi.org/10.1037/a0029333
- First impressions: Lindgaard, G., Fernandes, G., Dudek, C., and Brown, J. (2006). Attention web designers: You have 50 milliseconds to make a good first impression! Behaviour and Information Technology, 25(2), 115-126. https://doi.org/10.1080/01449290500330448
- Complexity and color: Reinecke, K., et al. (2013). Predicting users' first impressions of website aesthetics with a quantification of perceived visual complexity and colorfulness. CHI 2013. A predictive model of ratings, not a causal rule. https://doi.org/10.1145/2470654.2481281
- Facets of aesthetics: Moshagen, M., and Thielsch, M. T. (2010). Facets of visual aesthetics. International Journal of Human-Computer Studies, 68(10), 689-709. https://doi.org/10.1016/j.ijhcs.2010.05.006
- Aesthetics and perceived usability: Tractinsky, N., Katz, A. S., and Ikar, D. (2000). What is beautiful is usable. Interacting with Computers, 13(2), 127-145. A lab study of perception, not proof of better task performance. https://doi.org/10.1016/S0953-5438(00)00031-X
- Beauty and usability: Hassenzahl, M. (2004). The interplay of beauty, goodness, and usability in interactive products. Human-Computer Interaction, 19(4), 319-349. https://doi.org/10.1207/s15327051hci1904_2
- Readability: Rello, L., Pielot, M., and Marcos, M.-C. (2016). Make It Big! The effect of font size and line spacing on online readability. CHI 2016. https://doi.org/10.1145/2858036.2858204
- Forms: Seckler, M., Heinz, S., Bargas-Avila, J. A., Opwis, K., and Tuch, A. N. (2014). Designing usable web forms: Empirical evaluation of web form improvement guidelines. CHI 2014. https://doi.org/10.1145/2556288.2557265
- Inline validation: Wroblewski, L. (2009). Inline Validation in Web Forms. A List Apart. A small practitioner study, not peer reviewed. https://alistapart.com/article/inline-validation-in-web-forms/
- Progress feedback: Myers, B. A. (1985). The importance of percent-done progress indicators for computer-human interfaces. CHI 1985. https://doi.org/10.1145/317456.317459
- Touch targets: Parhi, P., Karlson, A. K., and Bederson, B. B. (2006). Target size study for one-handed thumb use on small touchscreen devices. MobileHCI 2006. https://doi.org/10.1145/1152215.1152260
- Phone grips: Hoober, S. (2013). How Do Users Really Hold Mobile Devices? UXmatters. An early observational study; the author's later research refines it. https://www.uxmatters.com/mt/archives/2013/02/how-do-users-really-hold-mobile-devices.php
- Color vision: Birch, J. (2012). Worldwide prevalence of red-green color deficiency. Journal of the Optical Society of America A, 29(3), 313-320. https://doi.org/10.1364/JOSAA.29.000313
- Dark patterns: Gray, C. M., Kou, Y., Battles, B., Hoggatt, J., and Toombs, A. L. (2018). The Dark (Patterns) Side of UX Design. CHI 2018. https://doi.org/10.1145/3173574.3174108 and Mathur, A., et al. (2019). Dark Patterns at Scale: Findings from a Crawl of 11K Shopping Websites. Proceedings of the ACM on Human-Computer Interaction, 3(CSCW). https://doi.org/10.1145/3359183
- Performance: Google. Web Vitals. Field thresholds for loading, responsiveness, and visual stability. https://web.dev/articles/vitals
- Human-AI interaction: Amershi, S., et al. (2019). Guidelines for Human-AI Interaction. CHI 2019. https://doi.org/10.1145/3290605.3300233
- Trust calibration: Lee, J. D., and See, K. A. (2004). Trust in automation: Designing for appropriate reliance. Human Factors, 46(1), 50-80. https://doi.org/10.1518/hfes.46.1.50_30392
- Over-reliance on AI: Buçinca, Z., Malaya, M. B., and Gajos, K. Z. (2021). To Trust or to Think: Cognitive forcing functions can reduce overreliance on AI in AI-assisted decision-making. Proceedings of the ACM on Human-Computer Interaction, 5(CSCW1). https://doi.org/10.1145/3449287
- AI product guidance: Google PAIR, People + AI Guidebook, and Microsoft Design, UX design for agents. https://pair.withgoogle.com/guidebook/ and https://microsoft.design/articles/ux-design-for-agents/
- Agent interaction patterns: Agentic UX. Practitioner patterns for supervised delegation, progress, and recovery. https://agentic-ux.com/
- Usability testing: Nielsen, J., and Landauer, T. K. (1993). A mathematical model of the finding of usability problems. INTERCHI 1993. https://doi.org/10.1145/169059.169166
- Usability measure: Brooke, J. (1996). SUS: A quick and dirty usability scale. In Usability Evaluation in Industry, 189-194. Taylor and Francis. https://doi.org/10.1201/9781498710411-35
- Visual design skill: Anthropic. Frontend Design skill. Practical agent instructions for intentional visual direction; not a usability study. https://github.com/anthropics/skills/tree/main/skills/frontend-design

Source brief: https://iloapps.com/human-ux-for-ai-agents/
Version: 2.0 / 2026-10-15. Recheck standards and platform guidance as they evolve.
