Commit Graph

1 Commits

  • fix(coding-agent): strip skill wrapper XML from HTML export user messages (#4234)
    Skill slash commands store a structural <skill>...</skill> wrapper in raw
    user messages. The TUI uses parseSkillBlock() to split this into separate
    SkillInvocationMessageComponent and UserMessageComponent siblings, but the
    HTML export renderer passed the full raw text through markdown, causing
    broken/dangling XML tags to appear in exported HTML.
    
    Add parseSkillBlock() to the export template and render skill-invocation
    and user-message as separate sibling blocks:
    - Sidebar tree shows skill name + user prompt separately
    - Content area shows a clickable skill-invocation block (collapsed by
      default, markdown content on expand) followed by the user message
    - Copy-link button preserved on the wrapper element
    - Toggle tools (O key) expands/collapses skill invocations alongside
      compaction and tool output blocks