replica-test — Claude Code skill: clone testing and setup
Tests every flow in an app clone, builds a test plan, runs end-to-end checks, and records reproducible bugs with evidence.
npx skills add Jakeschincariol/replica-skill --skill replica-test -a claude-codeWhat replica-test does
The skill reads flows from replica/recon.md, then writes replica/test-plan.md, replica/bugs.md, and end-to-end specs in e2e/. Each flow gets a happy path, applicable edge cases, and negative cases. Bug reports include severity, exact steps, expected and actual results, plus evidence.
Automation uses Playwright against the local dev server with seed data. Specs use roles and labels for selectors, fail on console errors and any 5xx response, and run an accessibility scan through @axe-core/playwright; setup also uses @playwright/test and Chromium. Run the suite with npx playwright test.
The remaining checks are manual: incoming emails, OAuth with real providers, end-to-end payments, and visual glitches. The rule is direct: test the clone, not the original app’s servers. That means the local copy must be ready for a browser pass.
What it helps with
- map every clone flow into test cases
- write Playwright specs for the local app
- check flows that cannot be automated
- record reproducible bugs with severity levels
- rerun the suite after fixes
Example prompts for the agent
- Test my clone using the flows in
replica/recon.mdand write the test plan. - Create Playwright end-to-end specs for every flow you can automate, then list the manual checks.
- Find reproducible bugs, save them to
replica/bugs.md, and assign S1–S4 severity.
How to install replica-test
1Skills CLI (Vercel)
npx skills add Jakeschincariol/replica-skill --skill replica-test -a claude-code2Manually: put the files in place
~/.claude/skills/replica-test/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/replica-test/
1Skills CLI (Vercel)
npx skills add Jakeschincariol/replica-skill --skill replica-test -a codex2Manually: put the files in place
.agents/skills/replica-test/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add Jakeschincariol/replica-skill --skill replica-test -a cursor2Manually: put the files in place
.cursor/skills/replica-test/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install Jakeschincariol/replica-skill replica-test2Manually: put the files in place
.github/skills/replica-test/SKILL.md1Skills CLI (Vercel)
npx skills add Jakeschincariol/replica-skill --skill replica-test -a gemini-cli2Platform CLI
gemini skills install https://github.com/Jakeschincariol/replica-skill --path replica-testManually: put the files in place
.devin/skills/replica-test/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add Jakeschincariol/replica-skill --skill replica-test -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about replica-test
How do I install replica-test in Claude Code?
Run npx skills add Jakeschincariol/replica-skill --skill replica-test -a claude-code, then run npx skills add Jakeschincariol/replica-skill --skill replica-test -a claude-code again. The skill file is at ~/.claude/skills/replica-test/SKILL.md.
What does replica-test do?
It checks the clone’s flows, creates a test plan, writes Playwright specs where possible, and records reproducible bugs in replica/bugs.md. It uses a manual browser pass for scenarios that cannot be automated.
Which cases does replica-test handle manually?
Manual checks cover incoming email, OAuth with real providers, end-to-end payments, and visual glitches. If no browser tool is available, the agent gives the user a checklist and waits for answers.
Source text
SKILL.md · MIT
---
name: replica-test
description: >-
Clicks through every flow of an app clone and tests it for bugs: a test plan
generated from the recon flows with happy paths and edge cases, Playwright
end-to-end tests where possible, a browser click-through where not, and bug
reports in a fixed format with severity, steps and evidence. Use when the
user says "test my clone", "find bugs", "QA this", "click through
everything", "write e2e tests", "does it work", or after /replica-build or
/replica-backend.
---
# replica-test
Reads the flows in `replica/recon.md`. Writes `replica/test-plan.md`,
`replica/bugs.md`, and end-to-end tests in the project (`e2e/`). Templates in
this folder: `test-plan.md`, `bug-report.md`, `e2e.example.spec.ts`.
## The rule
**Test your clone, not the original.** Never load test, fuzz, script or
hammer the original app's servers. Using the original by hand, as a normal
user, to see how it behaves is fine.
## Step 1: the plan
For every flow F01, F02... in the recon map, write:
- **Happy path**: the steps, and what the user should see at the end.
- **Edge cases** that apply. Go down this list for every flow:
empty input, very long input, emoji and accents, two tabs at once,
double click on submit, back button mid-flow, refresh mid-flow, slow
network, offline, expired session, second user's data (must be invisible),
time zones and daylight saving, mobile width, keyboard only, screen reader
labels.
- **Negative cases**: wrong password, card declined (Stripe test card
`4000 0000 0000 0002`), permission denied, deleted record.
Number every case: F01-H1, F01-E3, F01-N2.
## Step 2: automate what you can
Playwright, one spec per flow, against the local dev server with seed data.
Use roles and labels for selectors (`getByRole('button', { name: 'Book' })`),
never CSS classes. See `e2e.example.spec.ts`.
```bash
npm i -D @playwright/test && npx playwright install chromium
npx playwright test
```
Add to every spec: fail on console errors, fail on any 5xx response, and an
axe accessibility scan (`@axe-core/playwright`) on each screen.
## Step 3: click through the rest
What cannot be automated (emails arriving, OAuth with real providers,
payments end to end, visual glitches) gets a manual pass. If a browser tool is
available, drive the local clone with it and screenshot each step. Otherwise
give the user the checklist and wait for answers.
## Step 4: report bugs
Every bug goes in `replica/bugs.md` in the `bug-report.md` format: an ID, a
severity, exact steps, expected, actual, evidence. Severity:
| | means |
| --- | --- |
| S1 | data loss, security hole, payments wrong, core flow blocked |
| S2 | a feature broken, no workaround |
| S3 | broken with a workaround, or visibly wrong |
| S4 | cosmetic |
Only report what you reproduced. "Might be an issue" goes in a separate
"to check" list.
## Step 5: fix loop
Fix S1 and S2 first. For every fix: write the failing test first, fix, watch
it pass, keep the test. Re-run the whole suite after each batch. Update
`bugs.md` with the commit that fixed each one.
## Output
`test-plan.md`, the specs, `bugs.md`, and a summary: cases run, passed,
failed, bugs by severity, fixed so far. Ship nothing with an open S1. Next:
`/replica-diff`.
© Jakeschincariol · MIT · Jakeschincariol/replica-skill