react-doctor-100
Runs react-doctor on React codebases and iteratively fixes diagnosed issues until the project reaches a verified score of 100 without shortcuts.
Skill by Tonours
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/tonours-react-doctor-100
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: frontend, security
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/react-doctor-100
What's inside
- Skill name
react-doctor-100- Description
- Runs react-doctor on React codebases and iteratively fixes diagnosed issues until the project reaches a verified score of 100 without shortcuts. Use when the user asks to run `npx react-doctor@latest`, improve React project health, fix react-doctor findings, chase a react-doctor score, audit React performance/security/correctness/accessibility/bundle/architecture issues, or create a `/goal` to keep fixing a React project until react-doctor is clean.
- License
- MIT
- Instructions
- 118 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (3)
- SKILL.md
- react-doctor-cli.md · references/
- run_react_doctor.py · scripts/
SKILL.md (first lines)
# React Doctor 100 Use this skill to run `react-doctor` as a hard quality gate for React projects, then fix root causes until the score is verified as 100. ## Core Contract Target score 100 is not enough by itself. Completion requires: - `react-doctor` reports score `100`. - Project validation appropriate to the repo passes: tests, typecheck, lint, build, or documented equivalents. - Fixes address root causes rather than hiding diagnostics. - Remaining false positives, tool bugs, or blocked checks are reported instead of treated as success. ## Baseline Before editing: 1. Run `git status --short` in the project and preserve user changes. 2. Confirm the target is a React project through `package.json`, workspace config, or detected React dependency. 3. Detect package manager and validation scripts from project config. 4. Capture a baseline report (script path is relative to this skill's directory; the target repo is the argument): ```bash python3 scripts/run_react_doctor.py /path/to/react/repo ``` The script exits `0` only when it produced a real score. Exit `2` means bad input or no usable Node; exit `3` means react-doctor ran but no score came back, with the reason on stderr. A `score=None` is never a pass. If the script is unavailable, install the package into a scratch directory and call its binary directly — `npx react-doctor@latest` is unreliable on npm 11, which rejects the versioned name and swallows unknown flags as npm config: ```bash cd "$(mktemp -d)" && npm i react-doctor@latest ./node_modules/.bin/react-doctor /path/to/react/repo \ --json --scope full --no-respect-inline-disables --blocking none ``` Read `references/react-doctor-cli.md` when flags or output shape are unclear. ### Node prerequisite `react-doctor@0.9.12` declares `node ^20.19.0 || >=22.13.0`. Older Node (for example v22.12.0) fails the **install** with `EBADENGINE`; the binary itself still runs once installed. The script auto-selects a supported interpreter, preferring the current `node` and otherwise scanning `~/.nvm/versions/node/` and `$ASDF_DATA_DIR/installs/nodejs` (default `~/.asdf`) newest-first newest-first. If none qualifies it stops with an explicit message instead of producing an empty report. ## Fix Loop Repeat until the completion contract is proven: 1. Parse the latest report and identify the highest-impact cluster. 2. Prefer fixes in this order: correctness/security, accessibility, performance, bundle/dead code, architecture/design. 3. Make the smallest defensible change that fixes a real issue. 4. Add or update tests when behavior changes. 5. Run the narrowest useful project validation. 6. Rerun react-doctor and compare score/diagnostics against the previous report. 7. Broaden validation before declaring completion. When a diagnostic is unclear, use the `why` subcommand (`--explain` was removed in 0.9.x): ```bash ./node_modules/.bin/react-doctor why src/App.tsx:42 ``` ## No Shortcuts Do not: - add blanket `eslint-disable`, `oxlint-disable`, or similar suppressions to silence diagnostics - remove functionality only to improve the score - weaken lint, test, typecheck, build, or react-doctor configuration - hide files from analysis unless they are generated artifacts and the repo already treats them that way - pin or downgrade `react-doctor` to get an easier score - treat score `null`, missing project detection, skipped score, or `--no-score` output as success - ignore failing project validation because react-doctor is green - commit, push, amend, force-push, install hooks, or run `react-doctor install` unless the user explicitly asks Inline suppressions already in the project should be audited with `--no-respect-inline-disables` unless the user asks for a different mode. ## Monorepos For workspaces: - If the user names a package/project, scan that target first. - If no target is named, run a full scan and let react-doctor detect projects. - Use `--project <name>` only after confirming the names from the report or project config. It accepts workspace names or directory paths, comma-separated for multiple targets. - Do not fix unrelated packages just because they share a workspace. ## Recommended Goal Use this when the user asks for a reusable `/goal`: ```text /goal In the current React project, run react-doctor in full audit mode (`--scope full`), capture the baseline score/report, and iteratively fix real root-cause issues until react-doctor reports score 100 and the repo's relevant tests/typecheck/lint/build validations pass. Preserve existing behavior and user changes; do not suppress, hide, downgrade, disable, or remove functionality just to improve the score. After each fix slice, rerun the narrowest useful validation and react-doctor, then choose the next highest-impact diagnostic cluster. If score 100 is impossible because of no React project, tool failure, false positive, missing external dependency, or conflicting requirements, stop with the latest report, attempted fixes, evidence, remaining diagnostics, and the exact blocker. ``` ## Final Report End with: - baseline score and final score - files changed - diagnostic clusters fixed - validation commands and outcomes - skipped checks with reasons - remaining risks or blockers
From Tonours/etabli, MIT.
More from Tonours/etabli
- 0.570score
adr
Tonours
Records a lightweight Architecture Decision Record for a decision made in this session.
SkillAFreshness: AClaude Code +9 - 0.567score
employer-docs-writing
Tonours
Writes or rewrites pages for the employer Mintlify documentation (~/work/docs) in the corpus voice.
SkillAFreshness: AClaude Code +9 - 0.565score
thermo-nuclear-code-quality-review
Tonours
Runs an extremely strict maintainability review for abstraction quality, giant files, and spaghetti-condition growth.
SkillAFreshness: AClaude Code +9 - 0.561score
spec
Tonours
Writes or revises employer specs, technical Epics and design docs from the bundled templates.
SkillAFreshness: AClaude Code +9 - 0.561score
coolify
Tonours
Manages Coolify Cloud via its official CLI (servers, apps, databases, deployments, logs, env, backups).
SkillAFreshness: AClaude Code +9 - 0.561score
write-direct
Tonours
Writes or rewrites internal docs and messages in Anthony's direct, informal voice (French by default).
SkillAFreshness: AClaude Code +9 - 0.561score
code-quality
Tonours
Runs the bounded convention and stack-quality pass on a diff.
SkillAFreshness: AClaude Code +9 - 0.560score
implement
Tonours
Implements an existing READY PLAN.md without replanning.
SkillAFreshness: AClaude Code +9 - 0.560score
pr-council-review
Tonours
Runs a three-pass review of one PR (code-review + thermo-nuclear, then forest:validator as the council), dry-run by default.
SkillAFreshness: AClaude Code +9 - 0.560score
adversary
Tonours
Red-teams a PLAN.md, diff or design as a hostile challenger.
SkillAFreshness: AClaude Code +9 - 0.557score
plan-implement
Tonours
Plans, then implements the same task in one run once PLAN.md is READY.
SkillAFreshness: AClaude Code +9 - 0.556score
employer-backend-suite
Tonours
Routes employer server, agent-nodejs, BFF, MCP, OAuth/JWT, permissions v4, workflow execution and Zendesk work to existing KB notes.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 17, 2026 (11 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/Tonours/etabli
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Tonours
- 0.570score
adr
Tonours
Records a lightweight Architecture Decision Record for a decision made in this session.
SkillAFreshness: AClaude Code +9 - 0.567score
employer-docs-writing
Tonours
Writes or rewrites pages for the employer Mintlify documentation (~/work/docs) in the corpus voice.
SkillAFreshness: AClaude Code +9 - 0.565score
thermo-nuclear-code-quality-review
Tonours
Runs an extremely strict maintainability review for abstraction quality, giant files, and spaghetti-condition growth.
SkillAFreshness: AClaude Code +9 - 0.561score
spec
Tonours
Writes or revises employer specs, technical Epics and design docs from the bundled templates.
SkillAFreshness: AClaude Code +9 - 0.561score
coolify
Tonours
Manages Coolify Cloud via its official CLI (servers, apps, databases, deployments, logs, env, backups).
SkillAFreshness: AClaude Code +9 - 0.561score
code-quality
Tonours
Runs the bounded convention and stack-quality pass on a diff.
SkillAFreshness: AClaude Code +9
Cite this page
react-doctor-100 skill. Agent Mart. https://agentmart.dev/skills/tonours-react-doctor-100 (last updated 2026-10-24)