# NousResearch/hermes-agent · RTL/BiDi text support across chat interfaces

## Open now

- 3 issues, 1 PR open on GitHub.
- #29047: Web dashboard: Arabic text in chat pane renders LTR with disconnected letters (no BiDi / no shaping)
- #41454: feat(tui): full RTL/Bidi support for Persian, Arabic, Hebrew, and Urdu text
- #51318: RTL/Bidi: first-strong-character heuristic breaks mixed RTL/LTR technical text — propose majority-based detection + manual toggle
- PR #41462: feat(tui): RTL/Bidi support for Persian, Arabic, Hebrew, and Urdu text

This group covers bug reports and feature work around right-to-left and bidirectional text rendering (Arabic, Persian, Hebrew, Urdu) in the web dashboard, desktop, and TUI chat interfaces. Topics include letter shaping, direction auto-detection heuristics, mixed RTL/LTR handling, and a manual toggle proposal.

## TL;DR

- 11 member(s): 3 open issue(s), 2 closed issue(s), 1 open PR(s), 1 merged PR(s), 4 PR(s) closed without merging.
- A fix was merged to main in PR #44596. Verify it addresses your case.
- **Recommended:** read PR #44596 (and any competing PRs below) before filing. Confirm the merged change covers your symptom.

## Maintainer resolution verdict

- Internal-tracker verdict over this cluster's issue members: `partially_resolved` · deciding PR(s): `pr-44596`. This is distinct from the fix status above. Weigh it yourself.

## How this cluster was grouped

- Link evidence (`STRUCTURAL_PARTIAL`): some members are connected by structural evidence (shared changed files, or a closing/superseded reference); the rest are joined by an automated relevance judgement over their text.
- Members outside that structural core may belong to a different underlying problem.
- Pairwise link density `0.14`: the share of member pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36. `1.00` means every pair is linked.

## Open related issues

- #29047: Web dashboard: Arabic text in chat pane renders LTR with disconnected letters (no BiDi / no shaping)
- #41454: feat(tui): full RTL/Bidi support for Persian, Arabic, Hebrew, and Urdu text
- #51318: RTL/Bidi: first-strong-character heuristic breaks mixed RTL/LTR technical text — propose majority-based detection + manual toggle

## Closed / duplicate issues

- #44150: \[Feature\]: Native RTL support for Arabic and mixed RTL/LTR text in Hermes Chat
- #58916: \[Bug\]: Arabic/RTL text unreadable in web dashboard chat (no BiDi reordering or letter shaping)

## Prior & competing PRs

- **#44596: feat(desktop): auto-detect RTL/bidi text direction in chat**. merged to main · fix tier `verified`
  - maintainer direction: category `merged`; implication `superseded`
  - files: `apps/desktop/src/components/assistant-ui/user-message-text.tsx`, `apps/desktop/src/styles.css`
- **#41460: Show model when delegated tasks start**. closed without merge
  - maintainer direction: category `uncategorized`; implication `needs_llm`; refs `#41462`, `#41462`, `#41454`, `#34824`, `#41462`
- **#41462: feat(tui): RTL/Bidi support for Persian, Arabic, Hebrew, and Urdu text**. open
  - maintainer direction: category `uncategorized`; implication `needs_llm`
  - files: `ui-tui/src/__tests__/text.test.ts`, `ui-tui/src/components/messageLine.tsx`, `ui-tui/src/lib/text.ts`
- **#44065: feat(desktop): per-message automatic RTL/bidi text direction**. closed without merge
  - maintainer direction: category `superseded_by_pr`; implication `superseded`; refs `#44596`
- **#44169: feat(desktop): auto-detect RTL paragraph direction in chat**. closed without merge
  - maintainer direction: category `superseded_by_pr`; implication `superseded`; refs `#44596`
- **#116432: feat(desktop): majority-vote BiDi with Vazirmatn Persian font**. closed without merge
  - maintainer direction: category `uncategorized`; implication `needs_llm`

## Fix status

- Merged to main in PR #44596 (cited above). No release data is tracked. Verify downstream.
- Fix last verified (merged) `2026-06-12`.
- Subsystem: `agent`
