DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Persian Rtl — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
P

dsh-persian-rtl

Persian Rtl

Persian (Farsi) RTL fix for DeepSeek Harness: automatic per-paragraph direction and mixed-language detection (Persian text starting with English words), thinking cells, tool cells, user bubbles and question boxes.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:ireza7/dsh-persian-rtl#23fc39f4b835ae527a138ce13ec35b20c0bfc8b4
READMECompatibilityVersions

Compatibility and provenance

Persian Rtl is published as dsh-persian-rtl and currently resolves to version 1.1.0. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
9/21/2026

Versions

1.1.0stable
9/21/2026
1.0.0stable
9/19/2026

Related plugins

Loading related plugins…

Latest
1.1.0
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 1
Weekly downloads
0
Last push
9/21/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in ui-customization.

Remote Web Ui@linxin666/dsh-remote-web-uiScan-to-pair remote access for the dsh web GUI that shares one official interface: a QR beside the settings button pairs phones and PCs into the same Web GUI (a portrait-touch adaptation layer for phones, full desktop on PCs) through one-time tokens and rClient Ui Git Graph@linxin666/dsh-client-ui-git-graphExternal dsh web GUI plugin: a blank-session git branch selector + Git graph, with real host-side git operations and guards, as a dsh profile bundleWeb All@linxin666/dsh-web-allDSH Web UI 全家桶聚合插件:一键安装全部功能插件(task-board / git-graph / pet / remote-web-ui / web-ui-settings / skin-center / community-plugins / compat shim)。compat 桥接层已并入本包(src/client),无需独立 compat npm 包。Usage@linxin666/dsh-usageUsage statistics plugin for the dsh web GUI: per-provider balance and coding-plan quota detection plus a live token usage ledger, with a compact price glance card above the sidebar's Settings row

README

dsh-persian-rtl

Persian (Farsi) RTL fix for DeepSeek Harness — until RTL is handled officially.

What it does

Fully automatic per-paragraph text direction (unicode-bidi: plaintext): every paragraph follows its own first strong character — Persian paragraphs render right-to-left, English ones stay left-to-right. No buttons, no settings.

Covered surfaces:

  • Assistant answers — including while streaming
  • User + steering message bubbles — including composer submit echoes
  • Thinking / reasoning cells (turn-process members and inline reasoning, reasoning flow nodes)
  • Tool-call / tool-result cells — any data-tool row (including ask_user_question rendered inside the chat flow)
  • Question boxes + plan-review cards (composer-takeover cards)

Intelligent mixed-language detection — When a Persian sentence begins with an English word, technical term, or inline code (e.g. React یک کتابخانه است or 1. Node.js را نصب کنید), standard browser first-strong-character heuristics mistakenly classify it as LTR. The plugin dynamically analyzes character composition and enforces RTL base direction with full streaming support.

Latin runs stay intact — code, pre, kbd, and links are isolated LTR, so English words and numbers keep their order inside Persian text instead of jumping around.

Logical geometry fixed — lists, blockquotes, and task checkboxes use inline-start padding/borders, so RTL paragraphs get correctly-sided bullets, quote bars, and gaps.

The composer, sidebar, and settings are left alone, and no shipped renderer is replaced — the plugin only adds CSS.

Install

Pick whichever is easiest — no local clone needed in any of them.

Web UI: open Plugins in the sidebar → install → enter the spec:

github:ireza7/dsh-persian-rtl

Agent tool (Creator mode session):

install_bundle with target = github:ireza7/dsh-persian-rtl

CLI:

dsh plugin --profile web add github:ireza7/dsh-persian-rtl

The bundle takes effect immediately in live profiles (no restart).

Alternatives:

  • Full repo URL: https://github.com/ireza7/dsh-persian-rtl
  • From a local clone: install_bundle with target = /path/to/dsh-persian-rtl
  • From npm (if published): install_bundle with target = dsh-persian-rtl

To remove it later: remove_bundle with the bundle name.

How it works

  • A <style> element is mounted via ctx.effect providing per-paragraph direction and logical geometry fixes.
  • A high-performance, batched MutationObserver (requestAnimationFrame) monitors chat surfaces in real time to identify and correct mixed paragraphs starting with Latin runs, ensuring seamless streaming support without UI flicker.
  • Clean lifecycle management: unmounting clears the observer, timers, and removes all applied attributes leaving zero residue.

License

MIT