Markdown renderer auto-linkifies plain text with TLD-like patterns (filenames, identifiers)

Resolved 💬 6 comments Opened Apr 26, 2026 by ylisfirst Closed Jun 3, 2026
_This issue was drafted with assistance from Claude Code (Opus 4.7) at the user's request._

Summary

Claude Code's markdown renderer auto-converts plain text resembling URLs into clickable links, even when the text is clearly a filename or identifier.

Reproduction

  1. Paste terminal output into a chat message, e.g. ls -la containing a file named tablet.pub or README.md.
  2. The renderer converts tablet.pub[tablet.pub](http://tablet.pub), and similarly mangles *.md filenames.

Affected patterns observed: any token with a registered TLD suffix (.pub, .sh, .io, .dev, .md — Moldova ccTLD, etc.) — extremely common in filenames, package names, identifiers. The .md case is especially painful: it hits virtually every Markdown filename in any repo (README.md, CHANGELOG.md, CLAUDE.md).

Expected

Either:

  • (a) a setting in settings.json / env var / CLI flag to disable linkify (equivalent to linkify: false in markdown-it), or
  • (b) heuristic that suppresses linkification inside code-like contexts and for tokens lacking a scheme/path.

Actual

No documented option exists. Only workaround is wrapping every such token in backticks manually.

Environment

  • Claude Code CLI on Windows 11
  • Reproduces consistently

Related

  • #29188 (OSC 8 mis-emission)
  • #20823 (long URLs unclickable when wrapped)
  • #37808 (link text expands to full URL in tables)
  • #41015 (URL Handler config request)

These together suggest the link-rendering layer needs more user-facing configuration knobs.

View original on GitHub ↗

This issue has 6 comments on GitHub. Read the full discussion on GitHub ↗