Install any skill in seconds. Free to start, no credit card required.
Get Started Free →FDA Quality System Regulation (21 CFR 820 / QMSR) audit-prep playbook for medical devices. Use when an FDA inspection is announced, when preparing for the new QMSR (2026), or when a 483 / Warning Letter response is needed.
.claude/skills/borghei-fda-qsr-audit-prep/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-08 | ✗→✓ | ▲ Improved | 110% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 201% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 196% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 420% | 0% |
| case-23 | ✗→✓ | ▲ Improved | 202% | 0% |
Operational playbook for FDA inspection preparation under Quality System Regulation (21 CFR 820) and the transitioning Quality Management System Regulation (QMSR, fully effective 2026, harmonizing with ISO 13485:2016).
When to use this skill vs. fda-consultant-specialist:
| Situation | Skill applies | |-----------|---------------| | FDA inspection announced (or unannounced visit imminent) | Yes — start immediately | | Form 483 observation received | Yes — scripts/qsr_readiness_score.py to assess + plan response | | Warning Letter received | Yes — plus engage outside FDA counsel | | Annual readiness assessment | Yes — periodic sprint | | Building QMS from scratch | Use ra-qm-team/fda-consultant-specialist | | Medical device submission (510k / PMA) | Use ra-qm-team/fda-consultant-specialist |
Week 1: Inventory, walkthrough rehearsal, gap remediation
Week 2: Inspection week (front room + back room operation)Weeks 1-2: Readiness assessment + 483 / WL prior issue review
Weeks 3-6: Gap remediation (DHF, CAPA, complaint records, etc.)
Weeks 7-8: Mock inspection + final remediation + inspection prep- 483: 15 business days to respond (then ongoing)
- Warning Letter: 15 business days to respond (then full corrective action plan)
- Approach: Acknowledge + investigate root cause + corrective action plan + commitment + evidence| 21 CFR 820 Subpart | Topic | Audit focus | |--------------------|-------|-------------| | Subpart B | Quality system | Management responsibility, quality policy, planning | | Subpart C | Design controls | Design history file (DHF), design reviews, V&V | | Subpart D | Document controls | Document approval, change control, distribution | | Subpart E | Purchasing controls | Supplier qualification, agreements, evaluations | | Subpart F | Identification and traceability | Product ID, lot/batch traceability | | Subpart G | Production and process controls | Process validation, environmental controls, equipment maintenance | | Subpart H | Acceptance activities | Receiving, in-process, finished device acceptance | | Subpart I | Nonconforming product | Identification, segregation, disposition | | Subpart J | Corrective and preventive action (CAPA) | CAPA process, root cause analysis, effectiveness verification | | Subpart K | Labeling and packaging | Label inspection, packaging validation | | Subpart L | Handling, storage, distribution | Procedures, shelf-life, distribution records | | Subpart M | Records | Device Master Record (DMR), Device History Record (DHR), QSR records | | Subpart N | Servicing | Servicing procedures, complaint review | | Subpart O | Statistical techniques | Sampling, statistical methods |
QMSR transition (effective Feb 2026): Harmonizes 21 CFR 820 with ISO 13485:2016. Adds requirements for risk management (ISO 14971), software lifecycle (IEC 62304), usability (IEC 62366).
Before running the audit-prep, confirm these inputs. If any is unknown or vague, ASK — do not assume:
Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the readiness assessment.
python3 scripts/qsr_readiness_score.py --config qsr-controls.yamlpython3 scripts/dhf_completeness_checker.py --dhf device-dhf.yamlSee references/483-warning-letter-prevention.md for prevention patterns + response templates.
| Script | Purpose | |--------|---------| | scripts/qsr_readiness_score.py | Score current QSR/QMSR state per subpart | | scripts/dhf_completeness_checker.py | Validate Design History File completeness per device |
ra-qm-team/fda-consultant-specialist — deep FDA program (510k, PMA, QMSR build)ra-qm-team/quality-manager-qms-iso13485 — ISO 13485 QMS (QMSR harmonized)ra-qm-team/risk-management-specialist — ISO 14971 (required for QMSR)ra-qm-team/capa-officer — CAPA process specialistra-qm-team/qms-audit-expert — internal/external QMS auditsra-qm-team/audit-prep/compliance-readiness — multi-framework readiness| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-05 | fail→fail | 23,984 | 16,569 | -31% | 1 | 1 | 0% | 3,853 | 4,411 | +14% | 0 | 0 | — |
case-01 | fail→fail | 27,816 | 19,110 | -31% | 1 | 1 | 0% | 4,247 | 4,729 | +11% | 0 | 0 | — |
case-02 | fail→fail | 25,787 | 23,343 | -9% | 1 | 1 | 0% | 3,747 | 5,316 | +42% | 0 | 0 | — |
case-03 | fail→fail | 21,619 | 18,929 | -12% | 1 | 1 | 0% | 3,385 | 4,651 | +37% | 0 | 0 | — |
case-04 | fail→fail | 18,603 | 18,285 | -2% | 1 | 1 | 0% | 3,087 | 5,129 | +66% | 0 | 0 | — |
case-06 | fail→fail | 25,895 | 34,639 | +34% | 1 | 1 | 0% | 4,267 | 7,519 | +76% | 0 | 0 | — |
case-07 | fail→fail | 21,760 | 19,827 | -9% | 1 | 1 | 0% | 3,117 | 5,079 | +63% | 0 | 0 | — |
case-08 | fail→pass | 14,480 | 19,498 | +35% | 1 | 1 | 0% | 2,274 | 4,775 | +110% | 0 | 0 | — |
case-09 | fail→pass | 9,755 | 14,395 | +48% | 1 | 1 | 0% | 1,389 | 4,182 | +201% | 0 | 0 | — |
case-10 | pass→fail | 21,476 | 25,192 | +17% | 1 | 1 | 0% | 3,085 | 5,567 | +80% | 0 | 0 | — |
case-11 | fail→pass | 4,849 | 3,813 | -21% | 1 | 1 | 0% | 842 | 2,496 | +196% | 0 | 0 | — |
case-12 | fail→pass | 2,532 | 2,327 | -8% | 1 | 1 | 0% | 438 | 2,279 | +420% | 0 | 0 | — |
case-13 | pass→pass | 12,714 | 14,330 | +13% | 1 | 1 | 0% | 2,434 | 4,508 | +85% | 0 | 0 | — |
case-14 | pass→pass | 9,767 | 10,760 | +10% | 1 | 1 | 0% | 1,568 | 3,610 | +130% | 0 | 0 | — |
case-15 | pass→pass | 10,835 | 9,562 | -12% | 1 | 1 | 0% | 1,809 | 3,446 | +90% | 0 | 0 | — |
case-16 | pass→pass | 5,338 | 6,576 | +23% | 1 | 1 | 0% | 939 | 2,941 | +213% | 0 | 0 | — |
case-17 | pass→pass | 11,730 | 11,802 | +1% | 1 | 1 | 0% | 1,895 | 3,915 | +107% | 0 | 0 | — |
case-18 | pass→pass | 8,615 | 8,382 | -3% | 1 | 1 | 0% | 1,368 | 3,275 | +139% | 0 | 0 | — |
case-19 | pass→pass | 10,017 | 15,668 | +56% | 1 | 1 | 0% | 1,517 | 4,300 | +183% | 0 | 0 | — |
case-20 | pass→pass | 9,604 | 18,093 | +88% | 1 | 1 | 0% | 1,349 | 4,724 | +250% | 0 | 0 | — |
case-21 | pass→pass | 11,951 | 3,823 | -68% | 1 | 1 | 0% | 1,909 | 2,561 | +34% | 0 | 0 | — |
case-22 | fail→fail | 16,360 | 20,295 | +24% | 1 | 1 | 0% | 2,297 | 4,957 | +116% | 0 | 0 | — |
case-23 | fail→pass | 6,296 | 6,488 | +3% | 1 | 1 | 0% | 959 | 2,892 | +202% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted. The headline lift of +17 percentage points is the difference between those two pass rates over the 23 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.