Blog / · 3 min read
Claude Code: AskUserQuestion Now Displays Markdown
Claude Code's AskUserQuestion tool can now display markdown snippets to present diagrams, code examples, and more to users.
Thariq, developer at Anthropic, just announced a significant improvement to the AskUserQuestion tool in Claude Code: markdown snippet support.
Before: Text-Only Questions
Until now, when Claude Code needed clarification, it asked a simple question with text options. Useful, but limited for complex technical decisions.
For example, to choose between two architectures, you’d get:
Which architecture do you prefer?
1. Microservices
2. Modular Monolith
Hard to make an informed choice without seeing what it actually implies.
Now: Rich Media Visualization
With markdown support, AskUserQuestion can now display:
- Diagrams: Mermaid, ASCII art, architecture schemas
- Code examples: snippets with syntax highlighting
- Comparative tables: to weigh pros and cons
- Mockups: visual representations of interfaces
The same architecture choice becomes:
Which architecture do you prefer?
┌─────────────────────────────────────────────────────────────┐
│ Option 1: Microservices │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Auth │ │ API │ │ Worker │ │
│ │ Service │ │ Gateway │ │ Service │ │
│ └────┬────┘ └────┬────┘ └────┬────┘ │
│ │ │ │ │
│ └─────────────┼─────────────┘ │
│ │ │
│ ┌───────┴───────┐ │
│ │ Message Queue │ │
│ └───────────────┘ │
│ │
│ ✅ Independent scalability │
│ ❌ Operational complexity │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ Option 2: Modular Monolith │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────┐ │
│ │ Monolith Application │ │
│ │ ┌─────────┐ ┌─────────┐ ┌─────────┐ │ │
│ │ │ Auth │ │ API │ │ Worker │ │ │
│ │ │ Module │ │ Module │ │ Module │ │ │
│ │ └─────────┘ └─────────┘ └─────────┘ │ │
│ │ Shared Database │ │
│ └─────────────────────────────────────────┘ │
│ │
│ ✅ Deployment simplicity │
│ ❌ Limited scalability │
└─────────────────────────────────────────────────────────────┘
Concrete Use Cases
Choosing a Code Pattern
// Option 1: Factory Pattern
interface UserFactory {
create(type: string): User;
}
class DefaultUserFactory implements UserFactory {
create(type: string) {
switch(type) {
case 'admin': return new AdminUser();
case 'guest': return new GuestUser();
default: return new StandardUser();
}
}
}
// Option 2: Builder Pattern
class UserBuilder {
private user: User;
withRole(role: string) {
this.user.role = role;
return this;
}
build() {
return this.user;
}
}
Comparing Configurations
| Criteria | PostgreSQL | MongoDB |
|---|---|---|
| Relations | ✅ ACID | ❌ NoSQL |
| Flexibility | ❌ Fixed schema | ✅ Schemaless |
| Queries | ✅ Powerful SQL | ⚠️ Aggregation pipeline |
Impact on Workflow
This improvement transforms AskUserQuestion from a simple clarification tool into a true decision-making tool.
Instead of answering “I don’t know, show me more”, you can now make an informed choice by directly seeing the implications.
Usage
Developers creating skills or using Claude Code in agent mode can leverage this feature by including markdown in the markdown parameter of AskUserQuestion options.
Source: Thariq on X
Keep reading