Make Markdown first-class in the composer and message bubbles #6

Open
opened 2026-08-21 08:28:48 +00:00 by kayg · 0 comments
Owner

Goal

Make Markdown the first-class message format in both the composer and rendered bubbles.

Composer

  • Markdown-aware plain-text editing with predictable Return / Shift-Return behavior.
  • Syntax affordances for links, inline code, lists, and fenced blocks without turning the composer into a rich-text document editor.
  • Optional lightweight preview; editing must always preserve the exact source sent to Hermes.

Bubbles

  • Render Markdown by default for both roles, including lists, tables, links, block quotes, inline code, and fenced code.
  • Preserve current performance rule: never reparse the whole assistant message on every streamed delta; parse at stable boundaries/completion.
  • Sanitize or safely ignore unsupported constructs; no WebView.

Acceptance

Source typed into the composer round-trips exactly, rendered output is native/selectable, and long streamed Markdown does not hitch scrolling.

## Goal Make Markdown the first-class message format in both the composer and rendered bubbles. ## Composer - Markdown-aware plain-text editing with predictable Return / Shift-Return behavior. - Syntax affordances for links, inline code, lists, and fenced blocks without turning the composer into a rich-text document editor. - Optional lightweight preview; editing must always preserve the exact source sent to Hermes. ## Bubbles - Render Markdown by default for both roles, including lists, tables, links, block quotes, inline code, and fenced code. - Preserve current performance rule: never reparse the whole assistant message on every streamed delta; parse at stable boundaries/completion. - Sanitize or safely ignore unsupported constructs; no WebView. ## Acceptance Source typed into the composer round-trips exactly, rendered output is native/selectable, and long streamed Markdown does not hitch scrolling.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
kayg/hermternal-apple#6
No description provided.