From claw-content
Mixed Hebrew/English RTL handling for Claw fleet bots. Use when composing messages with Hebrew text, handling BiDi, formatting code blocks in Hebrew context, or when user mentions 'Hebrew', 'RTL', 'right to left', 'עברית', 'BiDi', or when outputting mixed Hebrew/English text.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claw-content:hebrew-rtlThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Rules and patterns for correct bidirectional (BiDi) text handling when composing messages that mix Hebrew and English.
Rules and patterns for correct bidirectional (BiDi) text handling when composing messages that mix Hebrew and English.
The Unicode Bidirectional Algorithm (UBA) determines display order:
When auto-detection fails, use invisible direction markers:
Usually works automatically. The English word appears LTR within the RTL flow. Add LRM before/after the English segment only if direction breaks visibly.
Example: הפרויקט נקרא OpenClaw והוא עובד renders correctly because "OpenClaw" is a single LTR island.
Problem case: הפרויקט נקרא OpenClaw. — the period may attach to the wrong side. Fix: הפרויקט נקרא OpenClaw. (LRM before period).
Numbers are always LTR. Simple numbers in Hebrew text work fine: יש 42 הודעות displays correctly.
Problem case: Numbers with surrounding punctuation — parentheses, brackets, slashes. (42) in Hebrew context can render as )42(. Fix: Wrap with LRM: (42).
URLs are always LTR. They usually display correctly as LTR islands.
Problem case: Hebrew text ending with a period, immediately followed by a URL. The period gets pulled into the URL or appears between the URL and Hebrew text. Fix: Add LRM after the Hebrew period and before the URL.
Inline code (backtick-wrapped) is LTR. The backtick characters are neutral and can be swallowed by RTL context.
Problem case: הרץ את `npm install` — backticks may render incorrectly. Fix: Add LRM before opening backtick: הרץ את followed by the backticked code.
Code inside fenced code blocks (triple backticks) is always LTR, regardless of content. This is correct behavior — code should never be RTL.
Rules:
```. Some renderers misparse the backticks in RTL context without the gap..1, .2, .3. This is correct behavior.| Mistake | Cause | Fix |
|---|---|---|
Reversed parentheses: )( instead of () | Neutral characters inherit RTL | Wrap with LRM: () |
| Period at wrong end of sentence | Period is neutral, attaches to RTL | Add LRM before period: text. |
| English word at line start instead of end | Paragraph direction set to LTR | Ensure first character is Hebrew, or prefix with RLM |
| Colon appearing on wrong side | Colon is neutral | Add RLM after the Hebrew word before colon: שם: |
| Broken markdown bold in Hebrew | * is neutral, BiDi pairs break | Ensure no direction change between * markers |
| Emoji resetting direction mid-sentence | Emoji are neutral characters | Add RLM after emoji if Hebrew follows: 🧠 נירון |
Read references/platform-rules.md for detailed rules per platform (Slack, Telegram, WhatsApp, Discord). Each platform handles RTL differently — what works in Telegram may break in Slack.
Key differences:
npx claudepluginhub thamam/clawhub-marketplace --plugin claw-contentGuides writing translatable source strings: avoid concatenation traps, use ICU MessageFormat for plurals, externalize all UI text.
Guides mrkdwn syntax, message structure, thread etiquette, and tone for effective Slack messages in dev workflows.
Switches to ultra-compressed Russian mode for technical responses. Uses pro-drop pronouns, dashes, short adjectives, imperatives, instrumental case. Cuts output 65-80% accurately. Activate via /cavemanov or phrases.