aiux
ToolToolCoursesCoursesNewsNewsSavedSaved
Menu

Explore

  • Map
  • Patterns
  • Skills
  • Open source↗

Courses

  • ›Claude Code
    Overview

    Setup

    • Sign In to Claude Code
    • Install Node.js
    • Install Claude Code

    Figma ↔ Code

    • Set Up Figma MCP
    • Turn Figma Frames into Code
    • Using Figma Links in Prompts
    • Figma to Code Best Practices
    • Bring Code Back to Figma

    Prototype

    • Start Your First Claude Code Session
    • Create Your Project Folder
    • Generate Your First Prototype
    • See Your Prototype Live
    • Get Back to Editing

    GitHub

    • Create a GitHub Account
    • Create a Repository on GitHub
    • Connect Your Local Project to GitHub
    • Save Your Changes Going Forward
    • Share Your Work (Let Claude Code Handle Git)

    Best Practices

    • How to Describe Your Design to Claude Code
    • Testing Your Prototype
    • Iterating Based on Feedback
    • Handing Off Work to Developers
    • Troubleshooting Common Issues
  • ›Cursor
    Overview

    Setup

    • Download and Install Cursor
    • Navigate the Interface
    • Edit Code with AI Assistance

    Prototype

    • Use Tab Completions
    • Chat with AI (Cmd+L)
    • Make Inline Edits (Cmd+K)
    • Build with Composer

    Design-to-code

    • Convert Designs to Components
    • Build Frontend with React and Tailwind

    Best Practices

    • Customize Your Workspace
    • Master Advanced Features
    • Best Practices and Team Workflows
  • ›GitHub Copilot
    Overview

    Setup

    • Install GitHub Copilot
    • Your First Code Suggestion
    • Workspace Setup for Designers

    Core Features

    • Autocomplete & Code Completions
    • Chat for Design Questions
    • Inline Code Explanations

    Prototyping Workflows

    • From Design to Interactive Prototype
    • Building Responsive & Interactive Layouts

    Developer Collaboration

    • Reviewing Developer Code
    • Communicating with Your Dev Team
  • ›GitHub
    Overview

    Setup

    • Create Your GitHub Account
    • Install Git on Your Computer
    • Understanding Git Basics

    Core Features

    • Clone Your First Repository
    • Making and Committing Changes
    • Working with Branches

    Developer Collaboration

    • Creating Pull Requests
    • Reviewing and Merging PRs

    Best Practices

    • Handling Merge Conflicts
    • GitHub Workflow for Design Teams
  • ›Build a Conversational UI
    Overview

    Foundations

    • What Is Conversational UI? (And What It Isn't)
    • Anatomy of a Chat Interface

    Building

    • Building Message Bubbles in React
    • Typing Indicators & Streaming Responses
    • Suggested Prompts & Conversation Starters

    Advanced Patterns

    • Managing Conversation Context
    • Error Handling & Fallback Design
    • Voice Interface Design Patterns

    Ship It

    • Accessibility in Conversational UI
    • Putting It All Together - Architecture Checklist
    • Agentic Conversational UI - When AI Takes Actions
  • ›Claude Design
    Overview

    Setup

    • What Claude Design Is (and Isn't)
    • Your First Prompt: The Four-Part Framework
    • Importing Assets: Screenshots, Docs, and Codebases

    Iteration

    • Iterating via Conversation
    • Inline Comments and Direct Edits
    • Tweaks: Explore Variations Without Chat

    Design-system

    • Extracting Your Design System
    • Publishing and Applying Your Design System
    • Team & Enterprise Setup

    Workflows

    • Prompt to Interactive Prototype
    • Prompt to Pitch Deck
    • Handoff to Claude Code for Implementation
  • ›Using AI UX Skills
    Overview

    Foundations

    • What Is Claude Code?
    • What a Claude Code Skill Is
    • Patterns Teach You, Skills Teach Your Agent

    Setup

    • Install a Skill Pack

    Core Features

    • How Triggering Works

    Best Practices

    • Working With Skills Day to Day
  • ›Claude Docs
    Overview

    Foundations

    • What a Doc Is, and Why It Is Not a Chat

    Working

    • The Anchored Comment: Brief It by Pointing
    • Watching It Work
    • Tabs, Sharing, and the Two Names Problem

    Judgement

    • When a Doc Is the Wrong Ask
  • ›Claude Slides
    Overview

    Foundations

    • The Question Slides Asks First

    Setup

    • The Empty Picker, and the Legacy Trap

    Working

    • Skipping the System, and What You Get
    • Editing by Comment, on a Canvas

    Handoff

    • The Export, Inspected

What’s new

  • Muse hits 5M and Claude Design sync
  • OpenAI Dots and Zombie UI
  • Shopify Agent Checkouts and Humane Design
  • All →

Topics

  • Adaptive & Intelligent Systems
  • Human-AI Collaboration
  • Trustworthy & Reliable AI
  • Natural Interaction
  • Performance & Efficiency
  • Privacy & Control
  • Accessibility & Inclusion
  • Safety & Harm Prevention
Previous: Trust CalibrationNext: Agent Status & Monitoring
Human-AI CollaborationAgentic

Mixed-Initiative Control

Design interaction models where control flows seamlessly between human and agent - supporting parallel work zones, interruptible agent activity, and natural handoffs without formal 'take over' actions.

What is Mixed-Initiative Control?

In traditional AI, either the human is in control (typing prompts, making decisions) or the AI is (generating responses). But agentic workflows require fluid back-and-forth - the agent works on a task, the human jumps in to adjust, the agent continues from the adjusted state. The challenge is designing interfaces where both human and agent can act without stepping on each other. This is especially difficult in collaborative documents, code editors, and planning tools where both parties might be working on the same artifact simultaneously. Mixed-Initiative Control provides clear control indicators, interrupt-without-disruption capability, parallel work zones, seamless handoffs, and explicit conflict resolution. Human input always takes precedence, and the agent should never block the human from interacting.

Problem

Traditional AI is turn-based - either human or AI is in control. Agentic workflows require fluid back-and-forth where both can work simultaneously on the same artifact, with the human able to interrupt and redirect at any point.

Solution

Design interfaces with clear control indicators, interruptible agent activity, parallel work zones, seamless handoffs, and explicit conflict resolution. Human input always takes precedence, and agent activity never blocks the human.

Real-World Mixed-Initiative Control Examples

Implementation

Practice in Courses

Claude Code

Claude Code Course for Designers

23 lessons, free course

Claude Design

Claude Design Course

12 lessons, free course

When to use Mixed-Initiative Control, and when it backfires

Use it when

  • Both parties genuinely need to touch the same artifact: a doc, a canvas, a code file where the agent drafts and the human refines in the same pass.
  • The agent's work is long-running and the human will want to redirect mid-flight, not wait for it to finish and start over.
  • Interrupting is the normal case, not the exception. If the human only ever reviews at the end, you want a review gate, not shared control.

Don't, or minimize, when

  • A turn-based flow already fits: the human asks, the agent answers, the human asks again. Forcing concurrency onto that just adds cursors nobody needs.
  • The action is irreversible or destructive. Shared initiative over a 'delete production data' button is a way to lose an argument about who pressed it.
  • You cannot make ownership of each region visible and atomic. Without that, mixed initiative is not collaboration, it is two editors racing for the same line.

The trap

The silent tug-of-war: the human edits a paragraph, the agent's loop wakes up, decides that paragraph is still its job, and overwrites the edit. Or both sides see the cursor sitting there and each assumes the other has the wheel, so nothing moves. Neither field ever has one owner, so every region has two owners or none. This is strictly worse than turn-taking: the human loses work they watched themselves type, and learns the only safe move is to stop the agent entirely. Shared control with unclear ownership does not feel collaborative, it feels haunted.

Take it into your own product

  1. 1

    One owner per region, and show it.

    Every editable section, field, or block has exactly one owner at a time: you, the agent, or nobody. Render it as a color or a label so anyone can answer 'who has this right now' at a glance. A region two parties can both edit is not shared, it is contested, and contested regions are where work gets lost.

  2. 2

    Human input always wins, instantly.

    The moment you touch a region the agent is writing, the agent releases it and stops in the same tick. It does not queue its change to land after you pause. It discards it. The rule users have to be able to trust is simple: you never lose a keystroke to the agent.

  3. 3

    Make the handback explicit, both ways.

    'I fixed this, carry on from here' is a real action the human takes, not something the agent guesses at. And when the agent finishes a region it hands control to nobody, not silently back to itself. Implicit handoffs are how the agent ends up holding a wheel the human thought they had reclaimed.

  4. 4

    Surface conflicts, never auto-merge.

    When you and the agent both changed the same thing, show it and let the human decide. A silent merge feels clever until it quietly overwrites the sentence someone watched themselves type. The cost of a visible conflict prompt is seconds. The cost of a silent one is trust.

  5. 5

    Keep a visible activity log.

    Mixed initiative without attribution is just confusion with extra cursors. A running 'AI updated the headline / you took over the CTA' log lets the human reconstruct who did what, which is the whole reason shared control is safe to use at all.

Save as a Claude skill

Save Mixed-Initiative Control as a Claude skill

Saved skills collect on your dashboard, ready to download one at a time or as a pack for your repo. Once a skill is in place, Claude Code applies it whenever you work on a surface this pattern covers.

30-second check

Check if your product already has this pattern

Upload a screenshot. We'll tell you which of the 38 patterns your AI interface uses and where the gaps are.

Audit My Design

Take all 38 patterns as Claude skills

Get the whole library as skill files, so Claude applies these patterns while it builds instead of after you catch them in review.

  • One skill file per pattern, all 38
  • Drop them in .claude/skills and Claude applies them as it builds
  • Daily AI UX newsletter (unsubscribe anytime)

More in Human-AI Collaboration

Contextual Assistance

Offer timely, proactive help and suggestions based on user context, history, and needs.

Human-in-the-Loop

Balance automation with human oversight for critical decisions, ensuring AI augments human judgment.

Augmented Creation

Empower users to create content with AI as a collaborative partner.

Want More Patterns Like This?

Daily AI UX news and new pattern breakdowns, straight to your inbox. Unsubscribe anytime.

Previous PatternTrust CalibrationNext PatternAgent Status & Monitoring

aiux

AI UX patterns from shipped products. Demos, code, and real examples.

Have an idea? Share feedback

Get daily AI UX news

Services

  • Audit my product
  • Request an audit

Resources

  • All Patterns
  • Browse Categories
  • Contribute
  • Claude Code Skills
  • AI Interaction Toolkit
  • Agent Readability Audit
  • Newsletter
  • Documentation
  • Figma Make Prompts
  • Designer Guides
  • Events
  • Design System
  • All Resources →

Company

  • About Us
  • Privacy Policy
  • Terms of Service
  • Contact

Links

  • Portfolio
  • GitHub
  • LinkedIn
  • More Resources

Copyright © 2026 All Rights Reserved.

Used by:
Claude
Claude
Figma
Figma
Notion
Notion

Collaborative Document Editor

A collaborative document interface showing human and agent cursors, parallel editing zones, and a handoff mechanism for seamless mixed-initiative control.

Toggle to code view to see the implementation details.