markdown-to-formal-doc
Skill0 starsChanged 2 months agoMITView on GitHub
Transform a rough or AI-drafted Markdown document into a polished, formal document (technical spec, partner/customer spec, report, proposal, whitepaper) and export it to a clean Word/PDF/Google-Doc-ready file. Covers structural reshaping, format-shape decisions (prose vs bullets vs tables), human-sounding prose cleanup (removing AI tells like em-dashes, arrows, section symbols), pandoc conversion without stray artifacts, and typography. Use when asked to "make this Markdown formal", "turn this draft into a real document/spec/report", "clean up and export this doc", "de-AI this writing", or "convert Markdown to a presentable Word/Google doc".
In this repository9 other files it gives its agents.
- customer-facing-specSkill
- dispatchSkill
- explain-step-by-stepSkill
- features-roadmapSkill
- md-to-docxSkill
- plan-to-project-treeSkill
- review-planSkill
- runbookSkill
- writing-clearly-and-conciselySkill
The file
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 3 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 14
Work on a copy: Never edit the original draft.
- Distinctive: line 15
One change class at a time: Do structure, then format-shape, then prose, then export.
- Distinctive: line 24
Remove sections that don't belong in the final audience's copy (internal notes, leak-check logs, appendices, glossaries the reader won't …
- Distinctive: line 49
Every section's form is deliberate (Pass 2 confirmed).
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Markdown → Formal Document
Turn a working Markdown draft into a document you can hand to an external reader — a partner, a customer, an executive, a reviewer. The input is usually serviceable but informal: AI-drafted prose, ad-hoc formatting, stray symbols, lists where paragraphs belong. The output is a deliberate, human-sounding, properly typeset document.
This skill orchestrates five passes. Each pass has a focused reference subskill. Run them in order — structure before prose before export, because reshaping content after you've typeset it wastes work.
Operating principles
- Work on a copy. Never edit the original draft. Duplicate it to a
-working(or final-named) file first, so the source survives and you can diff. - One change class at a time. Do structure, then format-shape, then prose, then export. Mixing them produces churn and missed items.
- Propose, then apply for judgment calls. Format-shape and structural cuts are editorial — surface options and let the user decide rather than silently rewriting. Mechanical cleanups (symbols) you can just do, then report counts.
- Verify every export. A converted file is not done until you've confirmed no raw Markdown, no stray artifacts (e.g. bookmark anchors), and that tables/headings survived.
The pipeline
Pass 1 — Structure & scope
Reshape the document into a formal skeleton before touching wording.
- Give it a clear, formal title; drop draft-y metadata blocks (Audience / Status / Classification / "Last updated") unless the user wants them.
- Remove sections that don't belong in the final audience's copy (internal notes, leak-check logs, appendices, glossaries the reader won't use).
- Decide on section numbering: for a clean formal doc, prefer letting headings carry the structure (
Overview) over manual prefixes (1. Overview) — manual numbers drift as sections move. (Pandoc can auto-number at export if you want it; see Pass 5.) - Consolidate sections that say the same thing; cut low-value subsections.
See
reference/structure-and-scope.md.
Pass 2 — Format-shape decisions (prose vs bullets vs tables)
Decide, section by section, which form each block should take. A formal document is not "all prose" — it's the right form per content type. Produce a section-by-section recommendation table, mark the clear wins and the borderline calls, and let the user confirm.
See reference/format-decision.md.
Pass 3 — Prose cleanup (clarity + de-AI)
Tighten the wording and strip the signals that read as machine-generated.
- Apply Strunk-style concision. If the
writing-clearly-and-conciselyskill is available, invoke it here; otherwise usereference/symbol-cleanup.mdplus general concision. - Triage and remove AI tells — em-dashes, arrows, section symbols (
§), horizontal-rule borders — using varied replacements so the fix itself doesn't look mechanical. Seereference/symbol-cleanup.md.
Pass 4 — Convert to the target format
Export the cleaned Markdown to .docx (Google-Docs-ready) or PDF with pandoc, using tech-document defaults and the flags that prevent stray artifacts. If the md-to-docx skill is available you may delegate the raw conversion to it, but still apply the artifact fixes and verification here.
See reference/pandoc-export.md.
Pass 5 — Typography & final formatting
Apply formal-document typography in the target tool (Word / Google Docs): font pairing, heading sizes, line spacing, margins. This is where the document stops looking like an imported draft.
See reference/typography.md.
Definition of done
- Source preserved; work done on a copy.
- Every section's form is deliberate (Pass 2 confirmed).
- Zero unintended AI-tell symbols (em-dashes in prose, arrows,
§,---borders). - Exported file verified: no raw Markdown, no stray bookmark/anchor artifacts, tables and headings intact.
- Typography applied; document reads as finished, not imported.
Composes with
writing-clearly-and-concisely— deeper prose editing (Pass 3).md-to-docx— raw pandoc conversion (Pass 4). This skill is the superset workflow: it sequences those, adds the structural/format-shape/typography passes, and enforces the verify-every-export rule.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

