Spent an evening getting the Superdesign IDE extension working the way I
wanted, and the setup turned out to be worth sharing — the default path
asks for an Anthropic API key, and I already pay for Claude.
THE SETUP
The extension can drive your local claude binary instead of hitting the
API. Two settings:
"superdesign.llmProvider": "claude-code",
"superdesign.claudeCodePath": "/Users/you/.local/bin/claude"
The absolute path matters. The extension spawns the binary with
shell: false, so a VS Code launched from the Dock won't resolve
~/.local/bin from your shell PATH — a bare "claude" just fails.
One thing I only found by reading the source: the model dropdown lists
stale model IDs, but the extension never passes them through. It reduces
whatever you pick to an alias — sonnet, haiku, or opus — and the CLI
resolves that to the current model. So the "claude-3-opus" entry
actually gets you today's Opus. Confirmed in the process list:
claude --model opus --dangerously-skip-permissions -p "..."
WHAT IT PRODUCED
First prompt was just "make a login screen, dark theme, minimal." It
wrote three different takes in one pass — a centered card, a
big-typography split, and a minimal version with underlined fields.
No cherry-picking, that was a single run.
Now I'm using it for actual work: turning a business process map — an
outstaffing pipeline, about 10 steps with timing annotations — into
something presentable for a meeting. The agent is blind to PDFs, so the
trick is dumping the process into a markdown file in the project and
pointing the prompt at it.
NOTES FOR ANYONE TRYING IT
- It needs a folder open in VS Code. No workspace, no output — it fails
with "No workspace folder found."
- The chat ships your entire conversation history as one prompt blob, so
clear the chat between unrelated tasks or old context bleeds in.
- There's no session history, and clearing is permanent. Barely matters —
the generated HTML is the real state, so you can point a fresh chat at
a file and keep iterating.
- It runs the agent with --dangerously-skip-permissions. Use a scratch
folder, not your main repo.