synth-doctor SKILL.md skillA
synth-doctor from vibeic/vibe-ic is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add vibeic/vibe-ic/synth-doctor@git:20261025.18d4c5dPins git:20261025.18d4c5d in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- vibeic/vibe-ic
- Path
vibe-ic-marketplace/plugins/vibe-ic/skills/synth-doctor/SKILL.md- Versions recorded
- 3
- Latest version
- git:20261025.18d4c5d, committed Oct 25, 2026
- First version recorded
- Jun 13, 2026
- Size
- 15,930 bytes
- Repository stars
- 32
- License
- Apache-2.0
Automatically diagnose and fix EDA tool failures. Parses Yosys synthesis and OpenROAD P&R logs, classifies errors into known patterns, and provides actionable fix commands. Triggers when: synthesis fails, P&R fails, 'why did synth fail', 'fix synthesis error', 'DRC violation', or any EDA tool error during Phase 2. Proactively suggest this when any Phase 2 tool returns non-zero exit code.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# Synth Doctor — EDA Error Classifier + Auto-Fix
Automatically diagnose EDA tool failures and provide actionable fix suggestions.
## Tools
### synth_doctor.py — Yosys Synthesis Errors
**Run the program — do not re-derive the classification by hand.** The 10-pattern
log→fix table below is implemented deterministically in
`programs/synth_doctor.py`; invoke it on any Yosys synth log and it emits
`{matched_pattern, canonical_fix, confidence}` per finding (chip-AGNOSTIC,
identical every run):
```bash
python3 programs/synth_doctor.py synth.log # human diagnosis
python3 programs/synth_doctor.py synth.log --fix # include the canonical fix recipe
python3 programs/synth_doctor.py synth.log --json # machine output {matched_pattern, canonical_fix, confidence}
```
Importable too: `from synth_doctor import diagnose; diagnose(open('synth.log').read())`.
Verdicts: `CLEAN` (no known signature — note the deny-list + length-floor mean a
clean log NEVER false-alerts), `DIAGNOSED` (≥1 known pattern, fix + confidence
attached), `MANUAL_REVIEW` (only an unrecognised error → `UNKNOWN`, no auto-fix),
`MISSING` (log file absent — graceful, exit 2, no crash). `confidence` is the
…Read the whole file at its exact version.
How to install
mdr add vibeic/vibe-ic/synth-doctor@sha256:09d00aed01bd1308The line at the top of this page pins the label git:20261025.18d4c5d, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_o37t5uqrgituz5g4)
3 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 3 versions of this file, between Jun 13, 2026 and Oct 25, 2026, about one every 67 days.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| git:20261025.18d4c5d latest | 2026-10-25 | 18d4c5d | 15,930 B | A | view · diff |
| git:20260825.9926828 | 2026-08-25 | 9926828 | 14,269 B | A | view · diff |
| git:20260613.86cacb4 | 2026-06-13 | 86cacb4 | 11,741 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (15930 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
vibeic/vibe-ic · 32 stars · license Apache-2.0 · pushed 2026-11-08 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_o37t5uqrgituz5g4 GET https://markdownregistry.com/api/v1/resolve?ref=vibeic/vibe-ic/synth-doctor GET https://markdownregistry.com/api/v1/blob/09d00aed01bd1308d0eebd8fcc8fb2f220c7947d26f7870c73b2e17d9efb8193
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.