A Claude Code workspace for designing software before you build it. You run structured design sessions with Claude acting as a devil's advocate. What comes out is an approved, self-contained spec that you take to the repo where the code lives.
Exploration → Requirements → Options → Decision → Detail → Validation → /finalize-design
ADRs at Decision · /challenge at any phase (fresh-context critic)
↓
approved spec → your code repo plans and builds from it
- Constructive opposition by default. Claude pokes at assumptions, names trade-offs and steelmans the options you dismissed. Say "ease up" or "just help me build this" to dial it down.
- Phase discipline. No solutions during exploration, no recommendations during options.
- Decisions are recorded. Significant choices get an ADR, so the reasoning survives the session.
- Critique in fresh context.
/challengesends the design doc to an agent that never saw the conversation, so it can't anchor on how you got there. - UX sessions run an inverted loop (Claude proposes, you steer) with Nielsen/WCAG and persona critics.
- The spec is the deliverable, not a plan (ADR-005). File paths, task order and code structure are decided in the code repo, by a session that can see the code.
git clone https://github.com/liteman/cc-atelier my-design-workspace
cd my-design-workspace
rm -rf .git && git init # optional: version your own design workOpen the directory in Claude Code and run:
/start-design-session
| Command | Use |
|---|---|
/start-design-session |
Start a design session |
/start-ux-session [project] |
Start a UX session |
/resume-design [project] |
Pick up where you left off |
/load-design-phase <phase> |
Jump to a phase |
/challenge [phase] |
Fresh-context assumption challenge of the design doc |
/checkpoint [project] |
Update the project's registry mid-session |
/finalize-design |
Readiness checks, ADRs, registry, and the spec handed to your code repo |
/define-agent <name> |
Create a new subagent |
/finalize-design ends with the spec path and one line to paste into a session in your code repo:
Spec:
<path>. Design is complete through spec review; start at implementation planning.
Section 9 of the spec ("Handoff to implementation planning") carries the constraints, review focus and fixed interfaces the plan must keep.
CC-Atelier works on its own. It pairs well with the superpowers skills for Claude Code:
- writing-plans turns the approved spec into an implementation plan in your code repo. It reads Section 9 of the spec directly.
- test-driven-development and requesting-code-review carry the build from there.
Without superpowers, plan from the spec with whatever planning approach you already use.
Want /finalize-design to file tickets, or /resume-design to pull requests from a tracker? Put your own
instructions in .claude/local/:
handoff.md:/finalize-designfollows it in place of the default handoff.requests.md:/resume-designuses it to list and claim incoming design requests.README.md: read at session start for anything else.
The directory is optional, and nothing in the core workflow requires it.
.claude/commands/ slash commands
.claude/design/ phase workflows, templates, conventions, challenge prompts
.claude/agents/ challenger, ux-critic, user-advocate
docs/ CC-Atelier's own ADRs
projects/{slug}/ your design output (git-ignored by default)
MIT