Superpowers
CoreMain engineering workflow for planning, implementation, review, and testing.
Use when: Every serious coding project.
A private reference page for starting new products, retrofitting ongoing repos, choosing skills, and copying the right CLAUDE.md instructions for each phase.
Use this as a repeatable setup ritual whenever a project starts or an old repo needs Claude configuration.
codex CLI for image generation, and install agent-browser as the browser tool. Keep Playwright MCP around only as a fallback.docs/ or a focused CLAUDE.md add-on.Install these where Claude can read the repo, edit files, run checks, and verify the product in the browser.
Main engineering workflow for planning, implementation, review, and testing.
Use when: Every serious coding project.
Keeps terminal-agent output compact and token-efficient.
Use when: Use normal/compact for coding. Avoid Ultra for design, UX, copy, strategy, and legal review.
Small compressed subagents for focused investigation, review, and isolated edits.
Use when: Use for narrow research, code review, diff review, or isolated implementation tasks.
Raises UI quality: layout, typography, hierarchy, color, and non-generic visual direction.
Use when: Landing pages, dashboards, onboarding, pricing pages, component design.
Use only selected skills: ui-design, design-systems, interaction-design, visual-critique.
Use when: Design-heavy work. Do not install the full suite by default.
Image generation. Shells out to the codex CLI, which calls OpenAI gpt-image-2 on a ChatGPT subscription. No API key.
Use when: Any hero image, logo, avatar, mockup, illustration, or visual reference. Not for 1px placeholders or charts.
Art-direction layers on top of gpt-image-bridge: brand boards and logo systems, web section comps, mobile screen flows.
Use when: Brand identity work, landing page comps (one image per section), app screen concepts.
Main browser tool. Native Rust CDP CLI + MCP server: open, snapshot, click, fill, screenshot, eval. Ref-based element selection, axe-core audits, Web Vitals, React introspection, multi-session isolation.
Use when: Any UI behavior, form, responsive layout, accessibility audit, or pre-launch QA task.
Secondary browser driver: navigate, click, type, fill forms, snapshot, screenshot, console and network inspection.
Use when: When agent-browser is unavailable, or when you specifically need Playwright console/network tooling.
Troubleshooting skill for the "Chromium distribution chrome is not found" MCP startup error.
Use when: Only when falling back to Playwright MCP and it refuses to start. Otherwise stay on agent-browser.
Technical SEO, metadata, schema, content quality, local/international SEO, AI-search readiness.
Use when: Before launch and after major content/page changes.
Conversion, landing-page persuasion, funnel thinking, growth experiments, copy improvements.
Use when: Landing pages, pricing, homepage, activation flows, analytics/event ideas.
Ad account/campaign audit and paid acquisition optimization.
Use when: Only after validation or when real campaign exports exist.
Legal/compliance review support. Better in Claude app unless the repo directly needs legal docs edited.
Use when: Privacy, terms, cookies, SaaS contracts, claims review, licenses. Not a lawyer replacement.
Use these for strategy, voice, content, positioning, and legal/compliance thinking before implementation.
Voice builder, profile optimizer, post writer, newsletter voice, launch content.
Best for: Claude app first. Use Claude Code only if content lives in the repo.
Positioning, ICP, offer, landing-page angle, objection handling, funnel strategy.
Best for: Claude app for strategy; Claude Code for implementation and page copy edits.
Privacy, terms, GDPR/cookie notes, marketing claims, license risk review.
Best for: Claude app for review and reasoning; Claude Code only to implement final text/components.
Visual direction, critique, UX/page structure before coding.
Best for: Claude app for broad direction; Claude Code for turning it into components.
Paid acquisition brainstorms, ad angles, campaign audit after data exists.
Best for: Claude app for ad ideas; Claude Code for exports, campaign reports, and landing-page fixes.
These can be useful later, but they create workflow overlap or context noise if installed too early.
GStack in the main project workflow. Test it in a separate project first.
Full Owl designer-skills suite. Start with 4 design skills only.
Full claude-for-legal inside every repo. Prefer a small legal-risk-review checklist.
claude-ads before the product has traffic, validation, or campaign data.
One giant CLAUDE.md with every phase. Use root routing + phase files/skills instead.
Each phase should produce persistent files in docs/ so future Claude sessions do not have to rediscover the project.
Skills: marketingskills, social-media-skills, optional legal-risk-review
Outputs:
docs/product/idea.mddocs/product/icp.mddocs/product/positioning.mddocs/product/offer.mddocs/marketing/content-angles.mdSkills: Superpowers, Caveman normal, marketingskills lightly
Outputs:
docs/product/requirements.mddocs/product/mvp-scope.mddocs/product/user-stories.mddocs/product/non-goals.mdSkills: frontend-design, ui-design, design-systems, interaction-design, visual-critique, imagegen-frontend-web/mobile, brandkit
Outputs:
docs/design/design-direction.mddocs/design/component-system.mddocs/design/page-wireframes.mddesign/refs/*.pngsrc/components/*Skills: Superpowers, Caveman, Cavecrew, agent-browser
Outputs:
Working appTestsREADME.md.env.exampledocs/dev/deployment-notes.mdSkills: agent-browser, Playwright MCP as fallback, Cavecrew for focused checks
Outputs:
docs/qa/browser-qa.mdScreenshot notesBug listFixes verified in browserSkills: claude-seo, marketingskills, agent-browser
Outputs:
docs/marketing/seo-audit.mdmetadata/schema fixeslanding copy improvementsanalytics events checklistSkills: legal-risk-review or claude-for-legal
Outputs:
docs/legal/legal-risk-notes.mdprivacy/cookie/terms notesclaims to verifyimplementation TODOsSkills: social-media-skills, marketingskills
Outputs:
docs/marketing/launch-plan.mdLinkedIn postsnewsletter draftshort-form postslaunch announcementSkills: claude-ads, marketingskills, agent-browser
Outputs:
docs/marketing/ad-angles.mdcampaign auditlanding-page test ideastracking recommendationsSkills: Superpowers, marketingskills, claude-seo
Outputs:
docs/product/retro.mddocs/product/next-iteration.mdprioritized backlogClaude Code ships with no image tool and one browser driver that can fail on Linux. This is the working setup for both.
Shells out to the codex CLI, which calls OpenAI gpt-image-2. Auth is a ChatGPT subscription, so there is no API key and no API spend — it burns ChatGPT message quota.
Prereqs: npm install -g @openai/codex, then codex login until codex login status says "Logged in using ChatGPT".
Main tool for all UI verification: open, snapshot, click, fill, screenshot, eval. Native Rust CDP daemon, ref-based element selection, axe-core audits, Web Vitals, React introspection.
Rule: never claim a UI change works without a browser pass. Screenshot desktop and a mobile width.
~/.claude/skills/gpt-image-bridge/bin/gpt-image-2 \
"<dense art-directed prompt>" \
/abs/path/design/refs/hero.png \
[--size 1536x1024]Absolute output path only. Runs 4–6 minutes, so use the 600000 ms Bash timeout or background it. Read the PNG back before coding against it. Skip --size unless the layout demands a ratio.
All of them call gpt-image-bridge underneath. Never use it for 1px placeholders, solid colors, or charts — write those in code.
npm install -g agent-browser
agent-browser install
# as a Claude Code skill
npx skills add vercel-labs/agent-browser
# or as an MCP server
agent-browser mcp --tools allNo Node runtime at execution time. Ref-based element selection (@e1, @e2), embedded axe-core accessibility audits, Web Vitals, React introspection, --session isolation for parallel checks, and cloud browser providers (Browserbase, Browser Use, Kernel, AgentCore).
Error: Chromium distribution 'chrome' is not
found at /opt/google/chrome/chrome
Run "npx playwright install chrome"Only reach for Playwright when agent-browser is unavailable. If it throws the error above: the official plugin runsnpx @playwright/mcp@latest with no args and always wants real Google Chrome. System chromium does not satisfy it, and pluginConfigs in settings.json is silently ignored for this plugin. Install real Chrome, confirm/opt/google/chrome/chrome exists, then fully restart Claude Code — an MCP reconnect is not enough. Do not sink time into it; go back to agent-browser.
{
"mcpServers": {
"agent-browser": {
"command": "agent-browser",
"args": ["mcp", "--tools", "all"]
}
}
}Tools: agent_browser_open, agent_browser_snapshot, agent_browser_click,agent_browser_fill, agent_browser_screenshot, agent_browser_eval,agent_browser_close.
Copy the root file first. Then copy phase-specific templates only when that phase starts.
Use this at the root of a new project. Keep it short and let skills handle detailed workflows.
CLAUDE.md# Project Instructions
## Project goal
This repo is an end-to-end product project. Claude should help with product planning, design, implementation, SEO, QA, launch, and iteration.
## Workflow owner
Default engineering workflow:
- Use Superpowers for planning, implementation, testing, and review.
- Use Caveman for concise communication during coding.
- Do not use Caveman Ultra for design, UX, copywriting, product strategy, legal review, or marketing strategy.
- Use Cavecrew only for focused investigation, review, or isolated edits.
## Skill routing
### Product and planning
Use product-discovery or project docs when defining:
- target user
- problem
- MVP
- feature scope
- launch plan
### Design
Use frontend-design and selected design skills when working on:
- landing pages
- dashboards
- UI components
- visual hierarchy
- spacing, typography, color, layout
- mobile responsiveness
Before coding major UI, produce a compact design plan:
- audience
- page job
- visual direction
- typography
- palette
- layout
- key components
- anti-generic critique
### Development
Use Superpowers as the main workflow for:
- feature implementation
- refactors
- tests
- architecture decisions
- debugging
### Image generation
Claude Code has no native image tool. Use gpt-image-bridge, which shells out to the codex CLI (OpenAI gpt-image-2, ChatGPT subscription, no API key).
Call it directly:
`~/.claude/skills/gpt-image-bridge/bin/gpt-image-2 "<dense art-directed prompt>" <absolute-output-path.png> [--size WxH]`
Rules:
- Output path must be absolute. Throwaways in /tmp, kept assets in design/.
- Calls take 4-6 minutes. Set the Bash timeout to 600000 ms or run it in the background.
- Read the PNG back into context after it is generated, before coding against it.
- Omit --size unless a specific aspect ratio is required.
- Do not use it for 1px placeholders, solid colors, or charts. Write those in code.
For art direction, drive it through brandkit (identity), imagegen-frontend-web (one image per landing section), or imagegen-frontend-mobile (app screens).
### Browser QA
Use Vercel agent-browser whenever UI behavior or visual correctness matters.
Verify changes in a real browser before claiming completion.
Setup:
`npm install -g agent-browser && agent-browser install`
`npx skills add vercel-labs/agent-browser`
It is also the right tool for accessibility audits (axe-core), Web Vitals, React introspection, and isolated parallel sessions.
Playwright MCP is the fallback. If it fails to start with "Chromium distribution 'chrome' is not found", install real Google Chrome and fully restart Claude Code (an MCP reconnect is not enough) — or just stay on agent-browser.
### SEO
Use claude-seo for:
- technical SEO
- metadata
- schema
- content quality
- local SEO
- international SEO
- launch audits
Use marketingskills for:
- conversion
- copywriting
- landing page persuasion
- funnel improvements
- analytics/event ideas
### Legal and compliance
Do not give final legal conclusions.
Use legal-risk-review only to identify issues to verify:
- privacy
- cookies
- terms
- refunds
- user data
- regulated claims
- AI-generated content
- open-source licenses
### Social and launch content
Use social/content skills for:
- launch posts
- LinkedIn content
- newsletter drafts
- content repurposing
- voice consistency
## Conflict rule
User request > project CLAUDE.md > active slash command > skill defaults.
Only one high-level workflow should own the task at a time.
If two skills overlap, choose based on the routing above.
## Output expectations
For every substantial task:
- state what changed
- mention files edited
- mention tests or browser checks run
- mention remaining risks or TODOs
Paste this into CLAUDE.md or docs/project/retrofit.md when adding Claude to an existing project.
CLAUDE.md add-on or docs/project/retrofit.md# Ongoing Project Retrofit Instructions
## First task before changing code
Before implementing new features, audit the existing project.
Produce:
- docs/project/current-state.md
- docs/project/architecture.md
- docs/project/risk-list.md
- docs/project/setup-notes.md
## Audit checklist
Inspect:
- framework and package manager
- app routes/pages
- data model and persistence
- auth and permissions
- environment variables, without reading secrets directly
- deployment setup
- tests and scripts
- styling system
- SEO metadata
- analytics/tracking
- error handling
- accessibility and responsive behavior
## Rules
- Do not rewrite the architecture unless there is a clear reason.
- Prefer small, reversible changes.
- Preserve existing conventions unless they are actively harmful.
- Before editing, explain the smallest safe plan.
- After editing, run the relevant checks.
- If UI is changed, verify in the browser with agent-browser (Playwright MCP as fallback).
Use this as a temporary phase file or section when working on UI/UX-heavy tasks.
docs/design/design-playbook.md or CLAUDE.md add-on# Design Phase Instructions
## Goal
Create interfaces that look intentional, modern, and production-ready. Avoid generic AI-generated UI.
## Use these skills
- frontend-design
- ui-design
- design-systems
- interaction-design
- visual-critique
For visual references and comps:
- imagegen-frontend-web for landing pages (one horizontal image per section, never several sections in one image)
- imagegen-frontend-mobile for app screens in phone mockups
- brandkit for logo systems and brand boards
- gpt-image-bridge underneath all of them
Store generated references in design/refs/ and Read them back before writing components.
Do not use Caveman Ultra during this phase.
## Design plan required before coding
For each major page or flow, produce:
- target audience
- page job
- emotional tone
- layout structure
- typography direction
- color palette direction
- spacing rhythm
- primary components
- mobile behavior
- one signature visual detail
- anti-generic critique
## Implementation expectations
- Use the existing design system if present.
- If no design system exists, create minimal tokens for spacing, radius, type scale, and colors.
- Make mobile excellent, not just acceptable.
- Use real copy, not lorem ipsum, when possible.
- Verify important UI states in the browser.
## Output
Create or update:
- docs/design/design-direction.md
- docs/design/component-system.md
- screenshots or browser QA notes when useful
Use when preparing a site/product for launch or improving an existing landing page.
docs/marketing/launch-seo-playbook.md or CLAUDE.md add-on# Launch, SEO, and Conversion Instructions
## Goal
Prepare the product for launch with clear messaging, strong technical SEO, and conversion-focused pages.
## Skill routing
Use claude-seo for:
- technical SEO
- metadata
- schema
- sitemap/robots checks
- canonical URLs
- structured data
- content quality
- local/international SEO when relevant
Use marketingskills for:
- positioning
- headlines
- offer clarity
- objections
- CTAs
- pricing page logic
- funnel improvements
- analytics/event ideas
Use agent-browser (or Playwright MCP as fallback) for:
- checking the live or local page
- screenshots
- mobile viewport review
- form and CTA verification
- console errors and failed network requests
## Required outputs
Create or update:
- docs/marketing/seo-audit.md
- docs/marketing/conversion-review.md
- docs/marketing/launch-checklist.md
## Launch checklist
Verify:
- page titles and meta descriptions
- Open Graph and social previews
- schema markup when useful
- sitemap and robots policy
- canonical URLs
- favicon and manifest
- analytics/events
- form success/error states
- mobile layout
- page speed basics
- privacy/cookie links when needed
Drop this in any repo where Claude generates images or verifies UI in a browser. Includes agent-browser setup and the Playwright fallback fix.
docs/dev/visual-tooling.md or CLAUDE.md add-on# Image Generation and Browser Tooling
## Image generation
Claude Code has no built-in image tool. Images come from gpt-image-bridge, which shells out to the codex CLI and calls OpenAI gpt-image-2. Auth is the user's ChatGPT subscription, not an API key, so calls burn ChatGPT message quota instead of billed credits.
### Prerequisites
- codex CLI installed: `npm install -g @openai/codex` (or `brew install codex` on macOS)
- `codex login status` reports "Logged in using ChatGPT"
- image_generation feature on: `codex features list | grep image_generation`
- Works on macOS, Linux, WSL, and Windows via Git Bash
### Direct call
```
~/.claude/skills/gpt-image-bridge/bin/gpt-image-2 "<prompt>" <absolute-output-path.png> [--size WxH]
```
Rules:
- Prompt must be dense and art-directed: composition, lighting, camera/lens, mood, style reference. Terse prompts produce generic output.
- Output path must be absolute. /tmp for throwaways, design/refs/ for kept assets.
- Runtime is 4-6 minutes. Use the maximum Bash timeout (600000 ms) or run it in the background and poll.
- Read the PNG back into context before coding against it.
- Skip --size unless a specific aspect ratio is required.
- Never use it for 1px placeholders, solid-color images, or charts. Write those in code.
### Art-direction skills on top
- brandkit: logo systems, brand boards, identity decks
- imagegen-frontend-web: landing page comps, ONE horizontal image per section
- imagegen-frontend-mobile: app screens inside phone mockups
- design-taste-frontend: pulls images in when a build brief needs them
## Browser automation
The main browser tool is Vercel agent-browser: a native Rust CDP CLI with its own MCP server. No Node runtime needed, ref-based element selection (@e1, @e2) built for agents, embedded axe-core accessibility audits, Web Vitals, React introspection, multi-session isolation, and cloud browser providers (Browserbase, Browser Use, Kernel, AgentCore).
### Install
```
npm install -g agent-browser
agent-browser install
```
As a Claude Code skill (auto-fetches instructions matching the installed CLI version):
```
npx skills add vercel-labs/agent-browser
```
As an MCP server:
```json
{
"mcpServers": {
"agent-browser": {
"command": "agent-browser",
"args": ["mcp", "--tools", "all"]
}
}
}
```
Tools: agent_browser_open, agent_browser_snapshot, agent_browser_click, agent_browser_fill, agent_browser_screenshot, agent_browser_eval, agent_browser_close.
### Standard QA loop
1. Start the dev server in the background.
2. agent_browser_open on the local URL.
3. agent_browser_snapshot for structure, agent_browser_screenshot for visuals.
4. Re-check at a mobile viewport width.
5. Run the accessibility audit and Web Vitals when the page is close to done.
6. Fix, reload, re-verify. Do not claim done without a verified pass.
Use `--session <name>` to keep parallel checks isolated from each other.
## Playwright MCP fallback
Only when agent-browser is unavailable, or when the task specifically needs Playwright's console/network tooling: browser_navigate, browser_click, browser_type, browser_fill_form, browser_snapshot, browser_take_screenshot, browser_console_messages, browser_network_requests, browser_evaluate, browser_resize, browser_wait_for, browser_tabs.
Known startup failure:
```
Error: Chromium distribution 'chrome' is not found at /opt/google/chrome/chrome
Run "npx playwright install chrome"
```
The official plugin runs `npx @playwright/mcp@latest` with no args and always wants real Google Chrome. System chromium does not satisfy it. Editing pluginConfigs in settings.json does nothing — that plugin declares no user_config schema.
Fix order:
1. Install real Google Chrome (Debian/Ubuntu: the google-chrome-stable .deb; Arch: AUR google-chrome), confirm `ls /opt/google/chrome/chrome`, then fully restart Claude Code. An MCP reconnect is not enough.
2. Do not sink time into it — go back to agent-browser.
## Rule
Never claim a UI change works without a browser check. Never generate an image without reading it back first.
Start in Claude app before opening the repo. Then copy the outputs into docs/.
Prompt for Claude appI am starting an end-to-end product project.
Help me define:
1. target user / ICP
2. painful problem
3. current alternatives
4. sharp positioning
5. offer
6. MVP scope
7. non-goals
8. landing page angle
9. launch channels
10. obvious legal/privacy risks to verify
Output the result as files I can later create in my repo:
- docs/product/idea.md
- docs/product/icp.md
- docs/product/positioning.md
- docs/product/offer.md
- docs/product/mvp-scope.md
- docs/marketing/content-angles.md
- docs/legal/legal-risk-notes.md
Use after adding CLAUDE.md to a new or existing repo.
Prompt for Claude Code terminalWe are configuring this project for end-to-end development.
First, read the repo structure and create a compact project map.
Do not make code changes yet.
Then produce:
- docs/project/current-state.md
- docs/project/architecture.md
- docs/project/setup-notes.md
- docs/project/next-steps.md
After that, propose the smallest safe next task.
Use the CLAUDE.md routing rules for skills and workflows.
Quick reference for what belongs in terminal Claude vs Claude app.
docs/project/skill-install-checklist.md# Skill Installation Checklist
## Claude Code / terminal agent
Core:
- Superpowers
- Caveman
- Cavecrew
Design:
- Anthropic frontend-design
- Owl ui-design
- Owl design-systems
- Owl interaction-design
- Owl visual-critique
Image generation:
- gpt-image-bridge (requires codex CLI + ChatGPT login)
- brandkit
- imagegen-frontend-web
- imagegen-frontend-mobile
Execution and QA:
- Vercel agent-browser (main browser tool, plus a11y/Web Vitals/React introspection)
- Playwright MCP (fallback driver)
- playwright-chrome-not-found (troubleshooting only)
Marketing and SEO:
- marketingskills
- claude-seo
Optional later:
- claude-ads
- small custom legal-risk-review skill
- GStack in a separate test project only
## Claude app
Strategy and content:
- social-media-skills voice-builder
- social-media-skills post-writer
- social-media-skills profile-optimizer
- marketingskills
Legal/compliance review:
- claude-for-legal only when needed
Design strategy:
- frontend-design or selected design skills if useful
## Do not install by default
- Full Owl suite
- Full claude-for-legal inside every repo
- claude-ads before there is validation or campaign data
- GStack as the default workflow
This keeps instructions, project memory, design decisions, SEO work, and launch material organized.
project/
CLAUDE.md
docs/
project/
current-state.md
architecture.md
setup-notes.md
next-steps.md
product/
idea.md
icp.md
positioning.md
offer.md
requirements.md
mvp-scope.md
user-stories.md
non-goals.md
design/
design-direction.md
component-system.md
page-wireframes.md
marketing/
seo-audit.md
conversion-review.md
content-angles.md
launch-plan.md
launch-checklist.md
legal/
legal-risk-notes.md
qa/
browser-qa.md
.claude/
skills/
product-discovery/
landing-page-build/
seo-audit/
launch-content/
legal-risk-review/
browser-qa/