mirror of
https://github.com/alirezarezvani/claude-skills.git
synced 2026-09-07 08:26:02 +00:00
- fda-consultant-specialist: QMSR transition (eff. 2026-02-02) correctly framed; legacy QSR sections mapped to ISO 13485:2016 clauses (17-row mapping) - risk-management-specialist: ALARP-with-cost-benefit replaced by AFAP per EU MDR Annex I GSPR 1-4 + EN ISO 14971:2019/A11 - eu-ai-act-specialist: Art. 5(1)(f) sample corrected (workplace, not retail); both dual-published copies kept byte-identical - financial-analyst: 4 scripts now read bundled sample shape (and flat shape), exit non-zero on missing data; verified real outputs (ROE 25%, DCF $13.90/sh) - deal-desk: fixed-COGS margin math unified across script/reference/SKILL.md; margin scoring recalibrated (30% discount on 80% GM now scores 25, not 37) - senior-qa/backend/frontend + email-template-builder: 8 corrupted code literals from past bulk YAML-quoting sweep reconstructed - google-workspace-cli: install coordinates fixed to verified upstream (@googleworkspace/cli); phantom subcommands replaced with verified syntax - project-management: fabricated Atlassian MCP tool names replaced with the 30 real Remote MCP tools; new canonical references/atlassian-mcp-tools.md; unavailable capabilities routed to UI/REST; orphaned scripts wired - command-guide: retired (documented a different repo's ecosystem) - markdown-html: stale v2.10.0 'foundation' text replaced; routing now targets the shipped converters; never hand-render - webinar_funnel_scorer.py: argparse added (--help/--sample/stdin) - handoff redaction linter: missing 17th pattern (private CIDR) added https://claude.ai/code/session_019AJddAL1NADWMXsy1qNPQF
58 lines
3.2 KiB
Markdown
58 lines
3.2 KiB
Markdown
---
|
||
description: Top-level markdown-to-HTML router. Classifies the input markdown (document / review / slides), checks the design-system onboarding gate + 100-line threshold, then forks context to the right converter sub-skill via the markdown-html-orchestrator skill. Returns a ≤100-word digest with input lines, output path, design style, top features used, and one forcing question.
|
||
argument-hint: "<path to markdown file>"
|
||
---
|
||
|
||
# /cs:markdown-html — Markdown-to-HTML router
|
||
|
||
Route this conversion through the `markdown-html-orchestrator` skill:
|
||
|
||
**$ARGUMENTS**
|
||
|
||
## Pre-flight gates (refuse and surface, never override)
|
||
|
||
1. **Input < 100 lines.** Markdown still wins below the threshold (Shihipar). Refuse with the line count + recommendation to keep as markdown.
|
||
2. **Design-system not onboarded.** Surface `python3 markdown-html/skills/design-system/scripts/onboard.py` and re-prompt after.
|
||
3. **Output directory unwritable.** Refuse; let the user fix the path or re-onboard.
|
||
|
||
## Routing (deterministic, two-signal threshold)
|
||
|
||
| Signal class | Filename hints | Content signals | Sub-skill |
|
||
|---|---|---|---|
|
||
| DOCUMENT | `report.md`, `spec.md`, `rfc-*.md`, `*-doc.md`, `*-analysis.md`, `*-explainer.md` | `## Table of Contents`, `^# `, `^## `, table rows, GFM callouts | `md-document` |
|
||
| REVIEW | `review.md`, `*-pr-*.md`, `*.diff.md`, `code-review*.md` | ` ```diff `, `^[-+]{3} `, `^@@`, `> [!BLOCKER]/[!MAJOR]/[!MINOR]/[!NIT]`, `LGTM`/`nit:`/`blocker:` | `md-review` |
|
||
| SLIDES | `deck.md`, `slides.md`, `*-talk.md`, `presentation*.md` | `^---$` ≥ 3, `<!-- notes:`, H1 cadence ≥ 5 with median gap ≤ 12 lines | `md-slides` |
|
||
|
||
Pipeline:
|
||
|
||
```bash
|
||
python3 markdown-html/skills/markdown-html-orchestrator/scripts/doctype_classifier.py \
|
||
--input "$ARGUMENTS" --output json \
|
||
| python3 markdown-html/skills/markdown-html-orchestrator/scripts/route_explainer.py
|
||
|
||
python3 markdown-html/skills/markdown-html-orchestrator/scripts/output_path_resolver.py \
|
||
--input "$ARGUMENTS" --doctype <verdict>
|
||
```
|
||
|
||
1. Silent-route only when winner ≥ 3 AND (runner-up = 0 OR winner ≥ 2× runner-up).
|
||
2. Single signal or tie → one clarifying question with a recommended answer.
|
||
3. No signals → ask which lane, recommend `md-document` as the safe default.
|
||
|
||
## Output (≤ 100-word digest)
|
||
|
||
- Input lines + doctype
|
||
- Output path (resolved by `output_path_resolver.py`)
|
||
- Design style + brand primary applied (from `config_loader.py`)
|
||
- Top 3 features used (sticky TOC, scrollspy, code-copy, severity badges, presenter mode, etc.)
|
||
- One forcing question for the user (cite Shihipar / WCAG / Lupton / Tufte)
|
||
|
||
## Hard rules
|
||
|
||
- Never silently chain two converters. Pick one, finish, ask before chaining.
|
||
- Never override a `REFUSE` from `route_explainer.py`.
|
||
- Never invent brand colors when the user hasn't onboarded. Surface onboarding.
|
||
- Output is single-file HTML. External CDN is limited to Google Fonts + Prism.js.
|
||
|
||
## Status
|
||
|
||
All five skills are live (orchestrator + `design-system` + the three converters). This command runs the classifier + design-system gate, then hands the conversion to the routed converter sub-skill (`/cs:md-document`, `/cs:md-review`, or `/cs:md-slides`). Never render HTML inline — the converter scripts own the rendering.
|