What's missing
No markdown → terminal/ANSI renderer. Sema has markdown/to-html and the
structured markdown/headings / markdown/frontmatter, but nothing that
renders CommonMark to styled terminal text (headings, bold/italic, inline code,
fenced code blocks, bullet/numbered lists). Every terminal LLM app needs this —
agent replies are markdown — so each one re-implements a parser.
Minimal reproduction (sema 1.30.0)
$ sema -e '(markdown/to-ansi "# Hi")'
Error: Unbound variable: markdown/to-ansi
$ sema -e '(term/markdown "# Hi")'
Error: Unbound variable: term/markdown
Only the HTML/structured markdown fns are registered
(crates/sema-stdlib/src/markup.rs): markdown/to-html, markdown/headings,
markdown/frontmatter.
Why it matters
examples/sema-coder renders agent replies to the terminal and has to
special-case markdown by hand. Suggested direction: a markdown/to-ansi /
term/markdown builtin (width-aware, theme-able) reusing the pulldown-cmark
parser already vendored for markdown/to-html.
Surfaced while hardening examples/sema-coder.
What's missing
No markdown → terminal/ANSI renderer. Sema has
markdown/to-htmland thestructured
markdown/headings/markdown/frontmatter, but nothing thatrenders CommonMark to styled terminal text (headings, bold/italic, inline code,
fenced code blocks, bullet/numbered lists). Every terminal LLM app needs this —
agent replies are markdown — so each one re-implements a parser.
Minimal reproduction (sema 1.30.0)
Only the HTML/structured markdown fns are registered
(
crates/sema-stdlib/src/markup.rs):markdown/to-html,markdown/headings,markdown/frontmatter.Why it matters
examples/sema-coderrenders agent replies to the terminal and has tospecial-case markdown by hand. Suggested direction: a
markdown/to-ansi/term/markdownbuiltin (width-aware, theme-able) reusing thepulldown-cmarkparser already vendored for
markdown/to-html.Surfaced while hardening
examples/sema-coder.