markdown-plus-author

star 13

Write or revise Markdown+ documents — plain Markdown that stays valid in any markdown viewer while adding bullet-list blocks with `**#id**` headers, inline-code `key:value` metadata, and viewer-side projection cues. Use when the user asks to write or rewrite a dev note, decision record, research report, tech spec, status report, executive brief, runbook, ADR, status report, or any AI-readable structured document; or when the user asks to convert plain Markdown or existing HTML into Markdown+. Do not use for slide decks, email drafts, or one-off short replies. Successful output is a single CommonMark-valid Markdown file whose blocks can be queried by a parser and projected into human-friendly HTML, with no `:::` fences, no raw HTML wrappers, no base64, code fences and ASCII trees preserved verbatim, and a prose companion for every figure/table/chart.

AllanYiin By AllanYiin schedule Updated 5/16/2026

name: markdown-plus-author description: Write or revise Markdown+ documents — plain Markdown that stays valid in any markdown viewer while adding bullet-list blocks with **#id** headers, inline-code key:value metadata, and viewer-side projection cues. Use when the user asks to write or rewrite a dev note, decision record, research report, tech spec, status report, executive brief, runbook, ADR, status report, or any AI-readable structured document; or when the user asks to convert plain Markdown or existing HTML into Markdown+. Do not use for slide decks, email drafts, or one-off short replies. Successful output is a single CommonMark-valid Markdown file whose blocks can be queried by a parser and projected into human-friendly HTML, with no ::: fences, no raw HTML wrappers, no base64, code fences and ASCII trees preserved verbatim, and a prose companion for every figure/table/chart.

Markdown+ Author

Act as a structured-document author who treats Markdown as the AI work surface and HTML as a human projection. Produce source that is simultaneously valid plain Markdown and richly queryable by parsers. Use when: - The user asks to write a dev note, decision record, research report, tech spec, status report, exec brief, runbook, or any AI-readable structured document in Markdown+. - The user asks to rewrite plain Markdown or HTML into Markdown+. - The user asks how Markdown+ syntax works or how to add metadata.

Do not use when:

  • The user wants a presentation deck, slides, or pptx.
  • The user wants a one-off short message, email body, or chat reply.
  • The user explicitly requests raw HTML or another non-Markdown format as the final output.
  • The user wants a paper / essay where flowing prose matters more than block-addressability.

Successful output:

  • Single Markdown file.
  • Every substantive section is a bullet-list block with **#id** header and inline-code metadata.
  • Parses cleanly in standard CommonMark viewers (GitHub, Obsidian, VS Code preview) without showing unrendered directives.
  • Every figure, table, chart, video, audio block has a prose companion paragraph.
  • All binary media referenced by relative path, never base64.
Markdown+ is not a new format. It is plain Markdown plus three habits: 1. Substantive sections are bullet-list items headed by `**#id**` with inline-code `key:value` metadata. 2. Binary media and large datasets stay external via relative paths. 3. Every figure, table, chart, KPI carries a prose companion sentence.

Three principles drive every decision:

  • Graceful degradation: source must remain valid CommonMark. Never use ::: fences, raw HTML wrappers, custom directives, or any syntax that renders as gibberish in a vanilla markdown viewer.
  • Source for AI, projection for humans: source carries semantics (metadata + prose); a viewer adds visual richness (nav, pills, gauges, callouts, cards). The source itself does not encode visual styling.
  • No inline binary: image, video, audio are always referenced by relative path. Base64 / data-URI in source is a hard lint error. SVG is a text format and is permitted inside ```svg code fences up to 16 KB; anything larger must move to an external .svg file.
Step 1: Detect input type. - Input: the user's request and any provided content. - Action: classify as `fresh_write` (no input doc), `rewrite_markdown` (plain Markdown provided), or `rewrite_html` (HTML provided). - Output: input type label + raw content. - Validation: if HTML, scan for `base64,` or `