Senior QA
nicepkg/auto-company
Comprehensive QA and testing skill for quality assurance, test automation, and testing strategies for ReactJS, NextJS, NodeJS applications.
EXPERIMENTAL. An agent skill from Ovid/paad.
$ npx skills add Ovid/paad --skill test-roadmap -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Ovid/paad test-roadmap --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Ovid/paad.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/paad/skills/test-roadmap .claude/skills/test-roadmap && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "test-roadmap" agent skill from https://github.com/Ovid/paad/tree/main/plugins/paad/skills/test-roadmap into .claude/skills/test-roadmap/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-roadmap", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Ovid/paad/tree/main/plugins/paad/skills/test-roadmapType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Ovid/paad --skill test-roadmap -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Ovid/paad test-roadmap --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Ovid/paad.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/paad/skills/test-roadmap .agents/skills/test-roadmap && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "test-roadmap" agent skill from https://github.com/Ovid/paad/tree/main/plugins/paad/skills/test-roadmap into .agents/skills/test-roadmap/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-roadmap", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Ovid/paad --skill test-roadmap -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Ovid/paad test-roadmap --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Ovid/paad.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/paad/skills/test-roadmap .cursor/skills/test-roadmap && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "test-roadmap" agent skill from https://github.com/Ovid/paad/tree/main/plugins/paad/skills/test-roadmap into .cursor/skills/test-roadmap/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-roadmap", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Ovid/paad.git --path plugins/paad/skills/test-roadmap--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Ovid/paad --skill test-roadmap -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Ovid/paad test-roadmap --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Ovid/paad.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/paad/skills/test-roadmap .gemini/skills/test-roadmap && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "test-roadmap" agent skill from https://github.com/Ovid/paad/tree/main/plugins/paad/skills/test-roadmap into .gemini/skills/test-roadmap/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-roadmap", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Ovid/paad test-roadmapInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Ovid/paad --skill test-roadmap -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Ovid/paad.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/paad/skills/test-roadmap .github/skills/test-roadmap && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "test-roadmap" agent skill from https://github.com/Ovid/paad/tree/main/plugins/paad/skills/test-roadmap into .github/skills/test-roadmap/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-roadmap", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Ovid/paad --skill test-roadmap -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Ovid/paad test-roadmap --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Ovid/paad.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/paad/skills/test-roadmap .opencode/skills/test-roadmap && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "test-roadmap" agent skill from https://github.com/Ovid/paad/tree/main/plugins/paad/skills/test-roadmap into .opencode/skills/test-roadmap/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-roadmap", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
test-roadmapEXPERIMENTAL. An agent skill from Ovid/paad.
Test Roadmap is an agent skill from Ovid/paad. EXPERIMENTAL. Analyzes a repository and any existing test suite, grades existing tests for weakness, classifies mocks, emits a phased roadmap for building a test suite that catches real regressions, then executes those phases one at a time. Use when planning or building a test suite, assessing whether existing tests are worth anything, adding tests to a legacy codebase, or when the user mentions test coverage, test strategy, or weak tests. Not for reviewing a branch for bugs, and not for fixing the bugs it logs.
Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including reference files (for example `references/break-it-check.md`, `references/build-test-roadmap.md` and `references/execute-test-roadmap.md`). Compatibility notes: Requires git
It sits in Testing & QA, covering Test generation, Test coverage and Test strategy. It works with Git. The repository describes itself as: The practices that made software work didn't stop working. They stopped keeping up. PAAD brings them back at AI speed. The licence is MIT.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 1c48121. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Requires git
From compatibility in the SKILL.md frontmatter.
Test Roadmap loads about 2.3k tokens when it runs, and up to ~26k if it reads all its reference files. Until then it costs about 133 tokens; SKILL.md has 923 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Ovid/paad at commit 1c48121, republished under its MIT licence (© Ovid). 923 words, ~2,331 tokens.
.claude/skills/test-roadmap/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.On invocation: announce "Running paad:test-roadmap v1.31.0" before anything else.
EXPERIMENTAL SKILL. Its arguments, output paths, and behavior may change or be withdrawn in any release, including patch releases. It is not covered by the semver guarantees the other paad skills carry. Unlike every other paad skill, this one writes code and commits it — tests, one commit per phase, onto your working branch. Report rough edges at https://github.com/Ovid/paad/issues.
This file is the router. The routing itself stays dumb on purpose: one check,
two routes, nothing else. A couple of preconditions guard it first. All the
substance — grading, planning, writing tests, bug injection — lives in
references/ and loads only once routing has picked a mode.
Pre-flight and routing:
digraph route {
"Inside a git repo?" [shape=diamond];
"STOP: needs a git checkout" [shape=box, style=bold];
"Detached HEAD?" [shape=diamond];
"origin/HEAD pointer resolves?" [shape=diamond];
"Current branch == default branch?" [shape=diamond];
"Name matches a well-known primary (main/master/trunk/develop/...)?" [shape=diamond];
"ASK: is this your main development line?" [shape=diamond];
"OFFER: create a working branch" [shape=box];
"Developer agrees?" [shape=diamond];
"STOP: never build on the primary branch" [shape=box, style=bold];
"git switch -c <name>" [shape=box];
"paad/test-roadmap/test-roadmap.md exists?" [shape=diamond];
"Load references/build-test-roadmap.md (Detect, Grade, Plan, Critique, Write)" [shape=box];
"Load references/execute-test-roadmap.md (next phase, break-it-check, commit)" [shape=box];
"Inside a git repo?" -> "STOP: needs a git checkout" [label="no"];
"Inside a git repo?" -> "Detached HEAD?" [label="yes"];
"Detached HEAD?" -> "OFFER: create a working branch" [label="yes"];
"Detached HEAD?" -> "origin/HEAD pointer resolves?" [label="no"];
"origin/HEAD pointer resolves?" -> "Current branch == default branch?" [label="yes (authoritative)"];
"origin/HEAD pointer resolves?" -> "Name matches a well-known primary (main/master/trunk/develop/...)?" [label="no"];
"Current branch == default branch?" -> "OFFER: create a working branch" [label="yes"];
"Current branch == default branch?" -> "paad/test-roadmap/test-roadmap.md exists?" [label="no"];
"Name matches a well-known primary (main/master/trunk/develop/...)?" -> "OFFER: create a working branch" [label="yes"];
"Name matches a well-known primary (main/master/trunk/develop/...)?" -> "ASK: is this your main development line?" [label="no"];
"ASK: is this your main development line?" -> "OFFER: create a working branch" [label="yes / unsure"];
"ASK: is this your main development line?" -> "paad/test-roadmap/test-roadmap.md exists?" [label="no"];
"OFFER: create a working branch" -> "Developer agrees?";
"Developer agrees?" -> "STOP: never build on the primary branch" [label="no"];
"Developer agrees?" -> "git switch -c <name>" [label="yes"];
"git switch -c <name>" -> "paad/test-roadmap/test-roadmap.md exists?";
"paad/test-roadmap/test-roadmap.md exists?" -> "Load references/execute-test-roadmap.md (next phase, break-it-check, commit)" [label="yes"];
"paad/test-roadmap/test-roadmap.md exists?" -> "Load references/build-test-roadmap.md (Detect, Grade, Plan, Critique, Write)" [label="no"];
}compatibility: Requires git above means this skill needs a working git
checkout — build mode fans out grading subagents against the tree as it
stands, and execute mode's break-it-check gate runs bug injection in a
disposable git worktree. If the current directory isn't inside a git repo,
say so and stop before loading either mode file.
This skill commits as it goes — build mode commits the roadmap, execute mode
commits each phase's tests — all onto the branch you are on right now. A
half-built test suite landing on the developer's main development line is exactly
what this check prevents, the same spirit as running a code review on a feature
branch rather than on main. So before routing, confirm the current branch is a
working branch, not the primary one.
Identify the primary branch from repo signals, in order — stop at the first that decides:
git symbolic-ref -q HEAD prints nothing. There is no
branch for the suite to accumulate on at all; treat it like being on the
primary branch and offer a working branch (below).git symbolic-ref -q --short refs/remotes/origin/HEAD resolves to e.g. origin/main; strip the remote
prefix for the default branch name. If the current branch (git symbolic-ref -q --short HEAD) equals it, you are on the primary branch. This is the
authoritative signal and needs no built-in list of names.main, master, trunk, develop,
devel, and the like — examples, not a closed list, the same stance
Stage 1 takes on manifests. If the current branch name matches one, treat it
as primary. If it matches none and step 2 could not confirm, ask the
developer once, in plain words, whether this is their main development line —
never silently proceed on a branch that might be it. Being wrong toward asking
costs a keystroke; being wrong toward building on the main line is the harm
this check exists to prevent.When the current branch is the primary one (or HEAD is detached), do not route
yet. Say why in plain words — "I build the test suite up commit by commit, and
you don't want those landing on your main branch while it's half-done, so let's
put them on a working branch" — then offer to make one: propose a name
(test-roadmap is a fine default), and on the developer's OK run git switch -c <name> (or git checkout -b <name> on older git) and continue to routing. If
they decline, stop — never build or execute on the primary branch.
This is the skill's one branch: a single working branch, created at
invocation only when needed. It is not a per-phase branch — execute mode
still commits every phase onto whatever working branch you are on, and the suite
accumulates there (see references/execute-test-roadmap.md § What execute mode writes). Both mode files assume this check has already passed and never re-run
it; the guard lives here, once.
paad/test-roadmap/test-roadmap.md exists? → load references/execute-test-roadmap.md
absent → load references/build-test-roadmap.mdThat is the entire routing logic — one file existence check, two branches.
paad/test-roadmap/test-roadmap.md is the roadmap this skill itself writes at the end of
build mode, so its presence is exactly the signal that a previous run already
did Detect/Grade/Plan/Critique/Write and there is a phased plan to execute
against. Its absence means this is either the first run against this repo, or
a run after that file was deleted — either way, build it.
If it ever grows a third condition, that is a signal something has been put
in the wrong place — take it back to build-test-roadmap.md or
execute-test-roadmap.md, not to this file.
This router never loads references/break-it-check.md,
references/test-pushback.md, or references/test-theater.md directly.
Those three are loaded by whichever of the two mode files needs them, at the
point in their own protocol that needs them — not from here.
Before build mode can plan anything, it needs to know what it's planning
for. The first thing it does — Stage 1, Detect — is identify the stack from
manifests and config rather than assumption (package.json,
pyproject.toml, go.mod, Cargo.toml, Gemfile, and so on: examples, not
a closed table), then determine how tests are invoked and what test files
already exist. The skill must never hardcode a language; where it needs a
per-ecosystem fact, it looks for the signal in the repo instead of consulting
a built-in list.
The full five-stage protocol — Detect, Grade, Plan, Critique, Write — lives
in references/build-test-roadmap.md. Load it now if
paad/test-roadmap/test-roadmap.md is absent.
Load references/execute-test-roadmap.md now if paad/test-roadmap/test-roadmap.md
exists. It reads that file's ## Decisions section once, selects the next
phase per the completion protocol, and gets on with writing tests — it does
not re-detect or re-ask anything build mode already settled.
© Ovid, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (references) in plugins/paad/skills/test-roadmap of Ovid/paad.
Open the folder on GitHubat commit 1c48121
Test Roadmap next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Test Roadmap this skillOvid/paad | 131 | — | ~2.3k | Automated safety check: Pass | MIT | |
| Senior QAnicepkg/auto-company | 192 | 3 repos | ~1.1k | Automated safety check: Notes | None | |
| Designing TestsCloudAI-X/opencode-workflow | 275 | — | ~2.9k | Automated safety check: Pass | MIT | |
| Test Writer for Changed Codeposhan0126/dotclaude | 871 | — | ~1.2k | Automated safety check: Pass | MIT | |
| Senior QAalirezarezvani/claude-skills | 28k | 1 repos | ~2.1k | Automated safety check: Pass | MIT | |
| Automated Test Planningtestdouble/han | 279 | — | ~6.7k | Automated safety check: Pass | MIT |
nicepkg/auto-company
Comprehensive QA and testing skill for quality assurance, test automation, and testing strategies for ReactJS, NextJS, NodeJS applications.
CloudAI-X/opencode-workflow
Guides test strategy, TDD/BDD approaches, test coverage planning, and testing best practices.
poshan0126/dotclaude
Writes tests for newly added or changed code by reading the git diff, mapping every code path and writing one-assertion tests that match the project's conventions.
alirezarezvani/claude-skills
Generates unit tests, integration tests, and E2E tests for React/Next.js applications.
testdouble/han
Produce a standalone test plan by analyzing code for test coverage gaps and edge cases.
mattgierhart/PRD-driven-context-engineering
Define test cases BEFORE implementation, ensuring every API, business rule, and user journey has verifiable acceptance criteria during PRD v0.7 Build Execution.
Ovid/paad
A skill your agent uses when reviewing current branch for bugs before pushing or merging, when wanting a thorough multi-agent review of local changes, or when preparing work for human review.
Ovid/paad
A skill your agent uses when verifying that requirements/specs/PRDs and their implementation plans match — before starting work, after a spec or plan update, or when suspecting coverage gaps, scope…
Ovid/paad
EXPERIMENTAL. An agent skill from Ovid/paad.
Ovid/paad
EXPERIMENTAL. An agent skill from Ovid/paad.
Ovid/paad
A skill your agent uses when creating or updating a Makefile for a project, especially when standard targets (build, test, lint, format, etc.) are missing or when modifying targets that may already…
Ovid/paad
EXPERIMENTAL. An agent skill from Ovid/paad.
Works with
Categories
EXPERIMENTAL. An agent skill from Ovid/paad. Test Roadmap is an agent skill from Ovid/paad. EXPERIMENTAL.
Test Roadmap fits situations like: building a test suite; assessing whether existing tests are worth anything; adding tests to a legacy codebase; the user mentions test coverage.
Run `npx skills add Ovid/paad --skill test-roadmap -a claude-code`. Or copy the skill folder (plugins/paad/skills/test-roadmap in Ovid/paad) into .claude/skills/test-roadmap in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Ovid/paad --skill test-roadmap -a codex`. Or copy the skill folder (plugins/paad/skills/test-roadmap in Ovid/paad) into .agents/skills/test-roadmap in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Ovid/paad --skill test-roadmap -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/test-roadmap, .gemini/skills/test-roadmap, .github/skills/test-roadmap and .opencode/skills/test-roadmap in your project.
Going by SKILL.md and its folder, Test Roadmap needs the command-line tools its instructions call (git). Compatibility (from SKILL.md): Requires git.
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Test Roadmap is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.3k tokens (SKILL.md is roughly 9.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 24k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Test Roadmap: Senior QA (nicepkg/auto-company, 192 stars), Designing Tests (CloudAI-X/opencode-workflow, 275 stars), Test Writer for Changed Code (poshan0126/dotclaude, 871 stars) and Senior QA (alirezarezvani/claude-skills, 28k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Ovid (a GitHub user) maintains it in Ovid/paad, which has 131 GitHub stars. The repository holds 16 skills in this directory. The repository was last updated on October 6, 2026.
Source: Ovid/paad on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.