— MISt · HCI Focus · ACT Research Group (McGill SIS) —
Gainshin · Joshua Hsiao
profile · Apr 2026
Years shipping UX. Now studying why it breaks.
I'm finishing a Master's in Information Studies at McGill, working in Dr. Karyn Moffatt's Accessible Computing Technologies (ACT) Research Group, after years of practice shipping UX and advising AI startups. What pulled me back into research: I kept running into AI systems that were confident and wrong, and I wanted to study why people trust the wrong outputs with actual controls, not just opinions. My current work is a health-assistant prototype I built to test exactly that.
It's a conversational assistant for now. Where I actually want to take it is voice — the lab's work is with older adults, and most of them will never open a screen-first health tool, which makes me wonder whether any of the trust findings survive when the reasoning can only be heard, never seen.
LANGUAGES English (B2) · Mandarin (native) · French (basic)
01/03
— What I Bring
Practitioner Lens, Research Rigor
HCI researcher in McGill's ACT Research Group, with years of AI/UX practice behind me. I work the slow way: take a vague question, design a study around it, then build whatever prototype I need to actually run that study. The health-assistant work with Dr. Moffatt is the current example.
// 01 · what-i-bring
Evaluating Probabilistic Systems
System Fluency × Methodological Rigor
Member of McGill's ACT Research Group, studying how humans collaborate with probabilistic AI assistants, multimodal interfaces, and agentic workflows. Years in consulting taught me to quickly identify system failure modes; MISt training provides the methodological rigor to isolate variables, design mixed-method studies, and evaluate AI quality beyond traditional usability (e.g., trust calibration, error recovery, and controllability). I don't just study AI systems; I understand their underlying ML constraints and prototype alternative human-in-the-loop interaction models.
Non-Traditional Return to Research
Design → MISt → ACT Lab
I spent years shipping UX and advising AI startups before coming back to McGill — not to leave practice, but to study it properly. The lab work lets me actually run the studies I only used to sketch.
Trained in HCI Methods
Coursework + Lab Application
Through MISt coursework and ACT lab projects I've run semi-structured interviews, think-aloud protocols, heuristic audits, and qualitative coding—applied directly to AI health interfaces and agentic UX. I can follow a research plan rigorously; I also know when a finding needs a prototype, not another interview.
From Loose Criteria to Testable Artifacts
Structured Evaluation & Prototyping
My heuristic audit tool and Proxy Auditor prototypes both started as open, ambiguous prompts. I scoped the evaluation criteria, built the interfaces for inspecting AI execution traces, and versioned the code and audit artifacts on GitHub. That move — vague ask in, something runnable and reviewable out — is most of what the work actually is.
Writing as Research Infrastructure
Agent Governance Column
I publish weekly on agentic UX and privacy—AI literacy, dark patterns, governance. The point isn't the audience; it's that writing forces me to commit to a position before I've built anything, and half my arguments fall apart the moment I have to defend them in print. The ones that survive are usually what I prototype next.
Privacy & Accessibility by Design
Ethics + Compliance Foundation
Seven Mila certificates (AI Practitioner Journey, Privacy Safeguarding) plus TCPS 2 research ethics. ACT lab focus on accessible computing; my consulting work centers privacy-first agent design. Relevant when research involves health data, AI transparency, or consent-flow evaluation—not just compliance checkboxes.
"I'd rather prototype the question, write down what broke, and iterate—than ship an answer I haven't stress-tested."
Personal note
02/03
— Research Projects
Studies, Apparatus & Frameworks
Lab and course projects — but built like research. Each one takes an ambiguous question, manipulates a variable or applies an explicit criterion, and ends in something runnable.
// 02 · coursework
Proxy Auditor — Trust-Reasoning Study Apparatus
Within-Subjects Study Design & Runnable Prototype · 2025–2026
I built a working health assistant that gives screening recommendations — but the real point is what it manipulates. The same recommendation shows its reasoning two ways (a hover tooltip, or an always-visible list), and participants go through both across counterbalanced sequences of synthetic cases: colorectal screening, a couple of drug-interaction scenarios. The question is whether that format changes how well people calibrate their trust, and whether they catch it when the assistant is wrong. I wrote the protocol — vignettes, the interview guide, the rubrics for trust and error recovery — and built the apparatus itself in Cursor. Supervised by Dr. Karyn Moffatt. It's a conversational assistant for now, but the manipulation isn't tied to that; it would carry to a voice or multimodal version of the same task.
Heuristic Audit Tool + Evidence Warrant
Structured Evaluation, Grounded in Literature
This one started as "evaluate whether this AI health interface is safe" — no rubric, no criteria, figure it out. So I did two things. First I read the healthcare-decision literature (GRADE's Evidence-to-Decision framework, the DISCERN instrument) and pulled it into a structured warrant, tagging each criterion by the kind of friction it addresses and where it sits in a decision-transparency hierarchy. Then I turned that into an actual audit tool: a set of safety heuristics, the review runs, the artifacts, all versioned on GitHub, with critique framing borrowed from Google Research's UICrit dataset. What I care about is that every check traces back to a source — it isn't me deciding what "safe" means by feel.
I've published weekly on agentic UX and AI governance since 2023, for 1,000+ subscribers — a "Top 25 Rising" newsletter in 2025, and "Top 9 Rising" in design this past quarter. It's where I work ideas out in public: most of my frameworks, like the governance ladder and the writer-as-orchestrator model, got their first draft there before they showed up in anything I built. I also mentor early-career UX practitioners 1:1 on ADPlist — mostly practice at explaining research to people who don't have the jargon.
03/03
— Education
Where I'm Training
McGill MISt researcher with the ACT Research Group (Accessible Computing Technologies, School of Information Studies)—HCI track focused on accessible computing and AI health interfaces. Research funded through NSERC Discovery Grant on ethical AI for active aging; thesis work examines how replay formats shape trust in proxy audit evidence during medical decision-making.
I bridge practice and research: years advising on agentic UX and privacy-first design, now grounded in ACT lab work on accessible AI and proxy-audit trust. Most of what I study now came straight out of problems I couldn't solve as a consultant.
×
What You'd Get
Runnable research artifacts—prototypes, heuristic audit tools, interview guides, evaluation rubrics. And the habit of writing things down—protocols, decisions, what didn't work—so whoever picks up the project next isn't starting from a blank page. Everything versioned on GitHub.
×
How to Reach
Email gainshin.hsiao@mail.mcgill.ca—fastest reply. Portfolio and project samples at gainshin.github.io. Available now for human-AI interaction research, collaboration, or consulting conversations. Montreal-based · Canadian resident, no sponsorship needed.
— UX Writer's CoT · Agent Orchestration —
Curate × Orchestrate
figure 00 · thesis
Writer as Orchestrator.
No agent remembers how that interview two weeks ago got resolved. Karpathy's LLM Wiki is the pattern I kept reaching for: humans curate the sources and ask the questions; the AI does the summarizing, cross-referencing, and filing. The bet isn't new—Bush wanted the same from his 1945 Memex—it just needed something that could actually do the upkeep. And upkeep is the whole game. Knowledge nobody maintains rots, and a wiki nobody weeds is just a slower mess.
The job has already changed: every UX practitioner—PM, researcher, designer—now carries a second identity on top of the first, the UX Writer / Curator. You write in CoT, treat markdown as your interface, and orchestrate a team of agents—Design, Research, Copy, Red Team—each with its role, all sharing one wiki as their context.
AI fluency frameworks · applied across education & nonprofit work
— Wiki-as-Interface
How an AI/UX Writer's CoT Orchestrates Multiple Agents
figure 01 · flow
Ingest · Take in raw material
New PRDs, journey maps, and module lists arrive—the AI reads them, summarizes, and builds cross-references between pages; you decide whether each source is worth committing to the wiki. Specs that used to live only inside docs become knowledge an agent can query.
Query · Pull and return
Agents pull context from the wiki instead of being briefed from scratch every time; valuable answers get filed back as new pages—chat history is not knowledge, the wiki is.
Lint · Periodic audit
Run automatic checks on a schedule: contradictions between pages, orphan pages no one references, missing cross-refs. Rules live in the schema, so editing one rule scales across every page.
Guide · Feed-forward constraints
L1–L5 set out taste, discipline, and tool boundaries before the agent acts. Taste comes first, tools come second—designers develop an aesthetic before they pick up technique.
Loop · Generator cycle
Inside the guard rails, the agent runs: explore → sketch → build → show. Showing the user early beats working in isolation—every preview is a chance to converge on direction.
Sensor · Silent verification
Once the agent ships output, the system runs quality checks in the background. No issues, no noise—you only hear about it when something breaks.
01/05
— Failure Mode
The Tribal Knowledge Trap
This isn't an aesthetic problem—it's a memory problem. The HITL single-agent model holds up for a few people over a few weeks; once you cross that threshold, information starts decaying. Decisions disappear, every conversation re-briefs from scratch, and critical judgment walks out the door when people leave.
// 01 · why-it-breaks
Orphaned Decisions
No Owner, No Trail
Who decided the wording on onboarding step 3? Why can't it change? The answer lives in some Slack thread, a meeting recording, a slide buried in someone's drive. Can't find it = decide again = gamble again.
The Re-Briefing Tax
Every Conversation Starts From Zero
Every new chat, the agent forgets your persona, your design system, your legal constraints. The cost isn't the tokens—it's the attention tax of explaining the same things every single day.
Departure Amnesia
Knowledge Walks Out
The PM who knew how to talk to legal leaves, and within two months the product's copy starts drifting. Knowledge that lives only in someone's head has a lifespan equal to that person's tenure.
"Didn't We Decide This?"
The Re-Decision Loop
Someone asks it every week. Usually no one can answer. You're not making decisions, you're re-making them—because last week's decision was never filed, never backlinked, never retrievable by any agent or human.
No Single Source of Truth
Three Slightly Wrong Versions
One copy lives in Figma, another in Notion, a third in a Slack pin—each subtly different, and everyone thinks they're looking at the latest version. Multiple truths = no truth.
HITL Hits the Ceiling
The Bottleneck Moves to You
"Human supervises one agent" looks great in demos and stalls in production after a couple of weeks. The agent's iteration speed went up; your context-switching speed didn't. The bottleneck isn't the AI anymore—it's how fast you can manually curate.
"When everyone is responsible, no one is."
Agentic UX · Anthropic's $3M Rental of Open Source Elite
02/05
— The Wiki
A Three-Tier Architecture for Shared Memory
Karpathy's LLM Wiki splits cleanly into three tiers: raw material stays immutable, markdown pages get maintained by the LLM, and the schema is the rule layer itself. Clear boundaries mean clear ownership—humans decide what matters, the AI handles maintenance.
// 02 · architecture
Raw Sources
— Immutable Material
PRD / Feature List, Journey Map, Module List, Page List, User Flow. Immutable—never edited, only referenced. This is the anchor of fact—every wiki page has to trace back here.
The Wiki
— LLM-Maintained Markdown
Each page is one concept (persona/ / feature/ / decision/) or one summary. Humans curate the topics; the AI maintains cross-refs. Mutable but structured—not a chat history dump.
Schema
— Rules as Configuration
Writing style, naming conventions, cross-ref rules, lint policy. This tier is the rules themselves. Editing the schema scales further than editing each page—one patch propagates to every page on the next maintenance pass.
index.md · The Catalog
One-Line Summaries
One line of summary per page, organized by category. The entry point to the wiki—the first place an agent looks. The index decides which pages to read and which to skip, instead of scanning every file every time.
log.md · The Timeline
Append-Only Chronological
"Who wrote what, when." Old entries are never edited—new ones get appended. This makes context evolution traceable: the diff is the history. The orchestrator's audit trail.
Cross-References
The Anti-Rot Layer
[[persona/a]] wiki links, #onboarding tags, automatic backlinks. This is what stops the rot—orphan pages get caught by lint, hub pages emerge naturally, and you can find every place a concept is referenced.
Humans curate sources, ask questions, and think critically. The AI handles summarizing, cross-referencing, filing, and bookkeeping — the maintenance work that degrades human-maintained wikis over time.
— Karpathy (n.d.), LLM Wiki
"If your design system still stops at 'we have a component library' rather than machine-readable tokens and naming rules, this shift will surface your existing debt before it pays it down."
Agentic UX · Agentic UX in Practice — Part 1: Design Critique and UX_Skill Distillation
03/05
— Compression Strategy
Why Memory Belongs in the Substrate, Not the Model
The claude-design-harness doesn't rely on the model's long-term memory—it actively manages context instead. Five compression layers fire in order, from light to heavy, preserving the most important information while pulling token count down.
// 03 · harness-compresses
Remove Duplicates
Deduplicate · Lightest
Clear redundant content first—the same file read twice, the same command run three times. Cheapest move, almost no information lost. Always start here.
Summarize Tool Output
Summarize Outputs · Low
Bash returns, file reads—high volume, low density. Compress them into short summaries that keep "what was done, what conclusion came out" and drop the verbose middle.
Merge Conversation Turns
Merge Turns · Medium
Collapse multiple short turns into one. "You asked → I answered → you clarified → I clarified" becomes "the conclusion of this exchange is X." Lower turn overhead, same meaning preserved.
Generate Global Summary
Global Summary · Heavy
Produce a structured summary of the entire conversation history—task state, key decisions, open todos. Like auto-writing a checkpoint log, so the next turn can restart context from this summary.
Truncate Oldest
Truncate · Last Resort
Only as a last resort—discard the earliest turns, keep recent and critical content. Highest information loss, but sometimes the only option. The harness records "what got truncated" in the persistent view.
Light Before Heavy
Graceful Degradation
The harness doesn't reach for the heavy moves first. Levels 1–5 fire on demand: token pressure rises → dedupe; still not enough → summarize outputs; and so on. Graceful degradation, never blunt truncation.
"You need governance at the system level—and that governance has to answer a question traditional HR has never faced: are the tokens an employee burns training agents a cost or an investment?"
Agentic UX · Agentic UX in Practice — Part 3: Is $2,400 in Tokens a Cost or an Investment?
04/05
— Dual-View
Let the Harness Run the Show
The context the model sees and the history the harness stores are two separate views. The model view is lean—just the current task. The persistent view is complete—everything kept. The split keeps each model turn light while the harness never loses context.
// 04 · harness-manages
Model View
What the Model Sees
The compressed context the model actually sees this turn—only the relevant wiki pages, the compressed conversation history, and the live task state. Light, focused, rebuilt every turn.
Persistent View
What the Harness Stores
The full task history and state—every turn, every tool call, every decision trail. Stored at the harness layer, not stuffed into the context window. The model never sees it; the harness can pull any slice on demand.
Splitting the Two Views
Decoupling
This separation is the core of claude-design-harness. The model doesn't need to "remember everything"—it just focuses on this turn. The harness doesn't need to "fill the context window"—it holds the complete state and ships only what's needed.
Delivery Mechanism
How the Harness Feeds the Model
Each turn starts: the harness picks task-relevant fragments from the persistent view → applies compression (Stage 03) → assembles the model view → ships it to the context window. The harness makes the call, not the model.
Retrieval Mechanism
How the Model Requests Context
The model needs an older slice → emits a request → the harness retrieves from the persistent view → summarizes and injects it into the next turn. Pull on demand, don't preload—mirrors the wiki's query pattern.
Three Nested Layers
Wiki × Harness × Model
Wiki = the persistent layer for team-wide knowledge (shared); harness persistent view = the persistent layer for a single task (internal to the agent); model view = just this turn. Each layer has its own compression and retrieval, sitting at a different point in the stack.
figure 04 · harness for practitionersA Practitioner's View— from design specs to agent governance
FINDING
Anyone can do the left column (the auto-checkable stuff). The right column—the parts that need human judgment—is where AI/UX practitioners are irreplaceable: voice, brand mood, commercial trade-offs, edge case priority. None of this fits in a linter. It only fits in a Guide.
FINDING
Most practitioners only work the feedback half—they wait for output, then point out what's wrong. But agents need feed-forward: tell them what "right" looks like before they act. Writing a good Guide pays off more than fixing things after the fact. When something fails, fix the Guide—not just the output.
FINDING
L1 is where everything starts: turn the design judgment in your head into agent-readable docs. Skipping straight to a linter (L2) is the most common mistake—without feed-forward, agents can only trial-and-error, and no amount of feedback fixes that.
"HCI is no longer just about making systems usable—it's the only mechanism keeping them controllable."
Agentic UX · When AI Becomes a Swarm: What Interface Design Can (and Can't) Do for Governance
05/05
— The Sixty-Year Debt
Not a New Invention — a Debt Coming Due
Agentic UX isn't a 2026 invention. Its roots run back past 1997—to a sixty-year fork in how we relate to machines. This closing stage pins the term back onto its historical ground: not a new discipline, but an old governance debt coming due, and the two layers where it gets repaid are the ones this whole tab is built on—harness and governance.
// 05 · bloodline
The Mother Fork
Augmentation vs Automation · 1960s
Decades before the marketing term, the human–machine relationship already split in two. Licklider's "Man-Computer Symbiosis" (1960) and Engelbart's "Augmenting Human Intellect" (1962) on one side—amplify the human. Early AI, McCarthy and Minsky, on the other—let the machine do it, the human steps aside. Everything after is this sixty-year fork replaying in new technology. Shneiderman is Engelbart's heir; Maes is the AI line's.
Control Meets Agency
Shneiderman ↔ Maes · 1983–1997
Shneiderman (1983) coins "direct manipulation": the human must feel in full control; the system must be predictable, immediate, reversible. Maes (1994) proposes the opposite—an interface agent that acts for you, cutting your load. At CHI '97 they collide head-on. What Shneiderman refuses to concede isn't capability—it's three things: anthropomorphism breeding false mental models, unpredictability, and blurred accountability.
Horvitz Dissolves the Binary
From On/Off Switch to a Dial · 1999
The debate didn't go silent for twenty-seven years. Two years later, Horvitz's "Principles of Mixed-Initiative User Interfaces" (1999) names the Shneiderman–Maes fight in its opening line and answers it: couple automation and direct manipulation, switching control by the uncertainty of the goal and the cost of interrupting the user. The 1997 on/off switch becomes a continuous, context-tuned dial—the academic ancestor of today's Autonomy Dial.
The Debt Comes Due
Maes Won Agency · Shneiderman Won Governance · 2026
Generative AI finally gave the 90s agent vision a working substrate—Maes won the agency argument, not because Shneiderman was wrong, but because the engineering caught up. And Shneiderman's three fears, once shelved for lack of capability, all turned from paper debate into live risk the moment agents shipped at scale. That's the debt: the governance bill from the deterministic era, due with interest. Elish (2019) later did the math on his third fear—the accountability black hole.
The Operational Definition
Why This Sits Under Tab II
So the series lands on one definition: Agentic UX is the practice of redistributing control and accountability as systems shift from "human operates" to "human supervises a swarm of agents"—and the core tension is how Maes's promise of agency and Shneiderman's insistence on control get re-contracted at the harness and governance layers. Those two words are the load-bearing columns of this tab. Tab II isn't adjacent to the column; it's the contract table where the sixty-year argument gets re-signed.
Two Lineages, One Corner
Read the Map Below →
The figure plots two separate genealogies on two axes. Across the bottom: the agent debate over time (Shneiderman ↔ Maes → Horvitz → 2026)—the control-versus-agency tension. Down the left: the design worldview descending its responsibility boundary (Garrett → Mill → Campbell). Agentic UX is where the latest moment meets the deepest layer—the bottom-right corner. That corner is where this tab's system lives.
figure 05 · the sixty-year map
Where the two axes meet — the latest moment on X × the deepest layer on Y = Agentic UX. Tab II sits in this cell: not a new invention, but the point the lines converge on.
"Agentic UX isn't a pure invention—it's engineering finally catching up to a path HCI sketched out decades ago. The vision can be revived, but Shneiderman's governance warning doesn't expire just because the models got stronger."
Agentic UX · Pinning Down Agentic UX's Sixty-Year Bloodline
Curate × Orchestrate
One More Layer of Deliverables
You used to ship design files and research reports. Now you also ship wiki pages—written so the next reader sees "why this step looks like this," "which alternatives got cut," "how edge cases are handled." Next time an agent picks up the project, that wiki is its Guide. No re-briefing.
×
From Watching One Lane to Routing Many
HITL (human-in-the-loop) means watching one agent on one thread. The orchestrator runs four agents in parallel—Design, Research, Copy, Red Team—and decides who starts first, whose output feeds whose, when to merge, and when to throw something back.
×
Decisions Move From Chat to Documents
Decisions used to scatter across Slack threads, meeting recordings, and slide deck comments—unsearchable, gone the moment people left. Now they land in version-controlled markdown: queryable by agents, citable through cross-refs, and auditable by lint to catch when they go stale.
Tacit-knowledge boundary · after Son et al., CHI'24
Where Generative Tools Stop — and the loop that crosses it
Generative tools absorb the explicit layer—tokens, brand rules. The tacit why stays in a few heads; the round's real job is encoding it back so the next pass doesn't re-decide it.