# Conventions for Claude Code running inside LINQPad ## Output formatting: avoid bold and headings The LINQPad Claude pane renders the ANSI bold attribute as light gray on a white background, which is effectively unreadable. This is not fixable via the Claude theme: the terminal markdown renderer applies `wt.bold()` with no colour, so no theme key controls it. Both of these are affected: - `**bold text**` -> rendered via `wt.bold()` - `#`/`##` headings -> also rendered via `wt.bold()` (level 1 adds italic+underline) Therefore, when responding: - Do NOT use `**bold**` for emphasis. - Do NOT use markdown headings (`#`, `##`, `###`) as section titles. - For emphasis or key terms, prefer `inline code`. Backticks map to the `permission` theme colour, so they render in a readable blue. - To separate sections, use a plain-text label line, a list, or a horizontal rule (`---`) instead of a heading. These render fine and may be used freely: - tables - bullet and numbered lists - fenced code blocks - `inline code` - horizontal rules - links ## Rationale Verified by inspecting the terminal markdown renderer embedded in `C:\Users\Stephen\.local\bin\claude.exe`: case "strong": return wt.bold(...) // no colour applied case "heading": return (depth===1 ? wt.bold.italic.underline : wt.bold)(...) case "codespan": return to("permission", t)(text) // themeable case "em": return wt.italic(...) The likely underlying cause is xterm.js's `drawBoldTextInBrightColors` option (enabled by default), which substitutes the bright palette variant for bold text, giving near-white text on a white background.