Agent skill

Persian UI Copy

by TronIsHere in TronIsHere/vibefarsiui

Write Persian (Farsi) UI microcopy: button labels, field labels and placeholders, validation and error messages, empty states, loading and success toasts, confirmations, notifications.

MITAuto-check: warningsWriting & Content

Install Persian UI Copy

The automated check flagged lines worth reading first. See the safety section below.

skills CLI
$ npx skills add TronIsHere/vibefarsiui --skill persian-ui-copy -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install TronIsHere/vibefarsiui persian-ui-copy --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/TronIsHere/vibefarsiui.git skills-src && mkdir -p .claude/skills && cp -r skills-src/registry/skills/persian-ui-copy .claude/skills/persian-ui-copy && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
persian-ui-copy
GitHub stars
212
Token cost
~1.6k tokens
SKILL.md length
843 words
Files
1
Skills in repo
7
Repo updated
First seen
Licence
MIT

At a glance

Write Persian (Farsi) UI microcopy: button labels, field labels and placeholders, validation and error messages, empty states, loading and success toasts, confirmations, notifications.

  • Works in 10 steps: Choose the product register once → Glossary (English → Persian UI) → Buttons and actions → …
  • Translating any user-facing string for an Iranian product (متن دکمه، پیام خطا، لیبل فرم، ترجمهی رابط کاربری، فارسیسازی)
  • SKILL.md covers 1. Choose the product register…, 2. Glossary (English → Persian…, 3. Buttons and actions and 4. Forms, plus 6 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Persian UI Copy is an agent skill from TronIsHere/vibefarsiui. Write Persian (Farsi) UI microcopy: button labels, field labels and placeholders, validation and error messages, empty states, loading and success toasts, confirmations, notifications. Use whenever generating or translating any user-facing string for an Iranian product (متن دکمه، پیام خطا، لیبل فرم، ترجمهی رابط کاربری، فارسیسازی). Includes an English→Persian UI glossary so «Login» becomes «ورود» and «Submit» becomes «ثبت», never a literal translation.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Writing & Content, covering Translation. The licence is MIT.

When your agent uses it

  • Translating any user-facing string for an Iranian product (متن دکمه، پیام خطا، لیبل فرم، ترجمهی رابط کاربری، فارسیسازی)
  • Tasks that involve Translation

Example prompts

  • “/persian-ui-copy”

Workflow steps

10 steps, taken from the step headings in SKILL.md.

  1. Choose the product register once
  2. Glossary (English → Persian UI)
  3. Buttons and actions
  4. Forms
  5. Confirmations and dialogs
  6. Empty, loading, success, failure
  7. Numbers, money, dates inside copy
  8. Wording hygiene
  9. Before / after
  10. Checklist

What it can do on your machine

Read from SKILL.md and the folder at commit 7d56b50. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Persian UI Copy loads about 1.6k tokens when it runs. Until then it costs about 118 tokens; SKILL.md has 843 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~118
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: warnings

The automated check found patterns that need a careful read before installing.

  • WarningContains zero-width charactersSKILL.md:8
    خطا، لیبل فرم، ترجمه⟨U+200C⟩ی رابط کاربری، فارسی⟨U+200C⟩سازی). Includes an English→Persian
  • WarningContains zero-width charactersSKILL.md:23
    B, admin panels, government, health | می⟨U+200C⟩شود، کنید، است |
  • WarningContains zero-width charactersSKILL.md:24
    ps, shops, social, onboarding | میشه، می⟨U+200C⟩تونید، کنید |
  • WarningContains zero-width charactersSKILL.md:26
    duct. «ذخیره شد» next to «پروفایلت آماده⟨U+200C⟩ست» in the
  • WarningContains zero-width charactersSKILL.md:35
    | Sign up / Register | ثبت⟨U+200C⟩نام | with ZWNJ |
  • WarningContains zero-width charactersSKILL.md:46
    | Search | جست⟨U+200C⟩وجو | with ZWNJ; «جستجو» is common but less correct |
  • WarningContains zero-width charactersSKILL.md:47
    | Filter / Sort | فیلتر / مرتب⟨U+200C⟩سازی | |
  • WarningContains zero-width charactersSKILL.md:51
    | Notifications | اعلان⟨U+200C⟩ها | |
  • WarningContains zero-width charactersSKILL.md:53
    | Order / Orders | سفارش / سفارش⟨U+200C⟩ها | |
  • WarningContains zero-width charactersSKILL.md:61
    | Resend code | ارسال دوباره⟨U+200C⟩ی کد | |

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from TronIsHere/vibefarsiui at commit 7d56b50, republished under its MIT licence (© TronIsHere). 843 words, ~1,601 tokens.

Download SKILL.mdSave it as .claude/skills/persian-ui-copy/SKILL.md (or your agent's skills folder).
name
persian-ui-copy
description
Write Persian (Farsi) UI microcopy: button labels, field labels and placeholders, validation and error messages, empty states, loading and success toasts, confirmations, notifications. Use whenever generating or translating any user-facing string for an Iranian product (متن دکمه، پیام خطا، لیبل فرم، ترجمه‌ی رابط کاربری، فارسی‌سازی). Includes an English→Persian UI glossary so «Login» becomes «ورود» and «Submit» becomes «ثبت», never a literal translation.

Persian UI copy (متن رابط کاربری)

Interface strings are short, so every wrong word is loud. Models produce two failure types: literal translations («ارسال نمایید» for Submit) and mismatched register (a bureaucratic error under a friendly form). This skill fixes both.

1. Choose the product register once

RegisterUse forVerb style
Formal-but-human (default)Banking, B2B, admin panels, government, healthمیشود، کنید، است
Light conversationalConsumer apps, shops, social, onboardingمیشه، میتونید، کنید

Hold it across the whole product. «ذخیره شد» next to «پروفایلت آمادهست» in the same screen is the mixing error. Imperatives («ذخیره کنید»، «بزنید») are the same in both registers.

2. Glossary (English → Persian UI)

EnglishPersianNote
Login / Sign inورودnot «لاگین»
Sign up / Registerثبتنامwith ZWNJ
Log outخروج
Submitثبت / ارسال«ثبت» for forms that save, «ارسال» for messages
Saveذخیره
Cancelانصراف«لغو» for cancelling an order
Deleteحذف
Editویرایش
Continue / Nextادامه / بعدی
Back / Previousبازگشت / قبلی
Done / Finishتمام / پایان
Retryتلاش دوباره
Searchجستوجوwith ZWNJ; «جستجو» is common but less correct
Filter / Sortفیلتر / مرتبسازی
Settingsتنظیمات
Profile / Accountپروفایل / حساب کاربری
Dashboardداشبورد
Notificationsاعلانها
Cart / Checkoutسبد خرید / پرداخت
Order / Ordersسفارش / سفارشها
Add to cartافزودن به سبد
Buy nowخرید
Price / Totalقیمت / جمع کل
Discount / Couponتخفیف / کد تخفیف
Email / Passwordایمیل / رمز عبور
Phone numberشماره موبایل«شماره تلفن» only for landlines
Verification codeکد تأیید
Resend codeارسال دوبارهی کد
Address / Postal codeآدرس / کد پستی
Upload / Downloadآپلود / دانلود«بارگذاری» is fine for formal
Loading…در حال بارگذاری…
Help / Supportراهنما / پشتیبانی
Terms / Privacyقوانین و مقررات / حریم خصوصی
Yes / Noبله / خیرavoid on buttons; see section 5
OKباشه (light) / تأیید (formal)

3. Buttons and actions

  • One verb, no «کلیک کنید»: «ذخیره»، «ادامه»، «پرداخت». The label is the outcome, not the gesture.
  • Primary action first in the reading order (right side in RTL), secondary «انصراف» after it.
  • Destructive actions name the object: «حذف سفارش» not «حذف»، and the confirm dialog repeats it.
  • Persian labels run longer than English. Leave room; never truncate a button.

4. Forms

  • Label above the field, always visible; placeholder is an example, not a label: label «شماره موبایل», placeholder «مثلاً ۰۹۱۲۳۴۵۶۷۸۹».
  • Required fields: mark optional ones with «(اختیاری)» instead of starring everything.
  • Error text sits under the field and says what to change: «شماره موبایل باید ۱۱ رقم باشد و با ۰۹ شروع شود.» Never «خطا!»، never «مقدار نامعتبر است»، never «Oops».
  • Helper text is one short sentence: «کد تأیید به این شماره پیامک میشود.»
  • Password rules are listed before the user fails them.
  • Do not tell users «فقط با حروف انگلیسی» unless the backend truly requires it.

5. Confirmations and dialogs

  • Title asks the real question: «سفارش حذف شود؟»
  • Buttons carry the action, not yes/no: «حذف کن» / «منصرف شدم» (light) or «حذف» / «انصراف» (formal).
  • One sentence of consequence if it matters: «این کار قابل بازگشت نیست.»
Show full SKILL.md (358 more words)Show less

6. Empty, loading, success, failure

StatePatternExample
Emptywhat goes here + the next action«هنوز سفارشی ثبت نکردهاید. اولین سفارش را از فروشگاه شروع کنید.»
Loading«در حال …» + ellipsis«در حال ارسال…»
Success toastshort past tense«ذخیره شد»، «کد ارسال شد»
Failure toastwhat failed + what to do«اتصال برقرار نشد. دوباره تلاش کنید.»
Offlineplain«اینترنت قطع است.»
404plain + a way out«این صفحه وجود ندارد. به خانه برگردید.»

Never «مشکلی پیش آمد» alone; say which thing and what next.

7. Numbers, money, dates inside copy

  • Persian digits: «۳ کالا»، «۲ ساعت پیش». Thousands with «٬»: «۱٬۲۵۰٬۰۰۰».
  • Unit after the number: «۱۲٬۰۰۰ تومان». Never «$», never «Toman».
  • Percent after the number with «٪»: «۲۰٪ تخفیف».
  • Dates Jalali: «۲۹ شهریور ۱۴۰۵»، relative «دیروز»، «۳ روز پیش».
  • Plurals with numbers stay singular: «۳ کالا» not «۳ کالاها».
  • Counts of one: «۱ پیام جدید» is fine; «یک پیام جدید» reads warmer.

8. Wording hygiene

  • Address the user with «شما» verbs; the verb carries it, so do not repeat «شما» in every sentence. No «کاربر گرامی».
  • No تعارف in UI («لطفاً» once per screen at most; «خواهشمندیم» never).
  • No exclamation marks on errors; at most one «!» on a celebration.
  • ZWNJ everywhere it belongs: میشود، ثبتنام، اعلانها، سفارشها.
  • Persian «،» «؟» and «گیومه»; no em dashes.
  • Latin brand names stay Latin («Google»، «PayPing»); Persian brands stay Persian («زرینپال»).
  • Keep one term per concept across the product: pick «سفارش» or «خرید», not both for the same object.

9. Before / after

Prompt❌✅
Submit button on a signup formارسال نماییدثبتنام
Invalid phoneشماره تلفن وارد شده نامعتبر میباشدشماره موبایل باید ۱۱ رقم باشد و با ۰۹ شروع شود.
Empty orders listهیچ دادهای یافت نشدهنوز سفارشی ثبت نکردهاید.
Delete confirmآیا مطمئن هستید؟ بله / خیرسفارش حذف شود؟ حذف / انصراف
Saved toastعملیات با موفقیت انجام شدذخیره شد
Price12,000 Toman۱۲٬۰۰۰ تومان

10. Checklist

  1. Register chosen and consistent across the screen.
  2. Every label from the glossary or a deliberate deviation.
  3. Errors say what to fix; empty states say what to do next.
  4. Persian digits, units after numbers, Jalali dates.
  5. ZWNJ, Persian punctuation, no exclamation on errors.

© TronIsHere, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. 22 hidden characters (zero-width or bidirectional) removed. Raw file

Files

Just SKILL.md in registry/skills/persian-ui-copy of TronIsHere/vibefarsiui.

Open the folder on GitHubat commit 7d56b50

Compare with similar skills

Persian UI Copy next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Persian UI Copy compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Persian UI Copy this skillTronIsHere/vibefarsiui212—~1.6kAutomated safety check: WarnMIT
Translation Diff ExportDevolutions/UniGetUI26k—~1.1kAutomated safety check: PassMIT
Sync Translationssymfony/symfony31k—~1.9kAutomated safety check: PassMIT
Translation Diff ImportDevolutions/UniGetUI26k—~750Automated safety check: PassMIT
Translation Diff TranslateDevolutions/UniGetUI26k—~934Automated safety check: PassMIT
Generate Translationspayloadcms/payload45k—~1.1kAutomated safety check: PassMIT

Similar skills

  • Translation Diff Export

    Devolutions/UniGetUI

    Compares UniGetUI JSON locale files against English, identifies untranslated or source-changed keys, and generates patch, reference, and handoff files for a target language.

    26k GitHub stars~1.1k tokensUpdated today
    Writing & ContentAuto-check passed
  • Sync Translations

    symfony/symfony

    Synchronize translation catalogs across maintained Symfony branches: find messages that newer branches added to the English catalogs but that are still missing from the oldest maintained branch…

    31k GitHub stars~1.9k tokensUpdated today
    Writing & ContentAuto-check passed
  • Translation Diff Import

    Devolutions/UniGetUI

    Merges translated key-value pairs from a UniGetUI JSON localization patch back into the full language file and validates the merged result.

    26k GitHub stars~750 tokensUpdated today
    Writing & ContentAuto-check passed
  • Translation Diff Translate

    Devolutions/UniGetUI

    Translates a sparse UniGetUI JSON language patch, writes completed entries into the working copy, preserves placeholders and terminology, and prepares the patch for merge-back.

    26k GitHub stars~934 tokensUpdated today
    Writing & ContentAuto-check passed
  • Generate Translations

    payloadcms/payload

    A skill your agent uses when new translation keys are added to packages to generate new translations strings

    45k GitHub stars~1.1k tokensUpdated today
    Writing & ContentAuto-check passed
  • Drives long-form fiction, scripts, storyboards, interactive films and long-document translation through InkOS, with every change made by a typed action.

    10k GitHub starsUsed in 1 repo~1.1k tokens
    Writing & ContentAuto-check passed

More from TronIsHere/vibefarsiui

  • Iran Validation

    TronIsHere/vibefarsiui

    Validate and format Iranian identifiers correctly: national ID (کد ملی) checksum, mobile numbers (۰۹…), landlines with area codes, IBAN / Sheba (شبا) mod-97, bank card numbers with Luhn and…

    212 GitHub stars~1.8k tokensUpdated today
    Auto-check: warnings
  • Jalali Calendar

    TronIsHere/vibefarsiui

    Handle dates and times for Iranian users: the Jalali / Solar Hijri calendar (تقویم شمسی، هجری خورشیدی), Saturday-first weeks, Tehran time (+03:30, no DST), Persian month and weekday names…

    212 GitHub stars~1.6k tokensUpdated today
    Auto-check: warnings
  • Persian Formal

    TronIsHere/vibefarsiui

    Write formal Persian that still sounds human: proposals, contracts, invoices, official letters (نامه اداری), formal email, company website copy, terms and policies.

    212 GitHub stars~1.7k tokensUpdated today
    Auto-check: warnings
  • Persian SEO

    TronIsHere/vibefarsiui

    Technical and on-page SEO for Persian (Farsi) websites: lang and hreflang for fa-IR, RTL-safe metadata, Persian titles and descriptions, slug and URL strategy for Persian content, ZWNJ and keyword…

    212 GitHub stars~1.7k tokensUpdated today
    Auto-check: warnings
  • Persian Conversational

    TronIsHere/vibefarsiui

    Write colloquial written Persian (محاورهنویسی): the Farsi people actually type in chat, Instagram captions, Telegram posts, consumer-app onboarding and friendly support replies.

    212 GitHub stars~1.5k tokensUpdated today
    Auto-check: warnings
  • Persian Rtl UI

    TronIsHere/vibefarsiui

    Build right-to-left Persian (Farsi) UI in React and Tailwind the way an Iranian product team would: logical CSS only, Persian fonts without letter-spacing, Persian digits and «تومان», Jalali dates…

    212 GitHub stars~1.7k tokensUpdated today
    Auto-check: warnings

Questions about Persian UI Copy

What does Persian UI Copy do?

Write Persian (Farsi) UI microcopy: button labels, field labels and placeholders, validation and error messages, empty states, loading and success toasts, confirmations, notifications. Persian UI Copy is an agent skill from TronIsHere/vibefarsiui. Write Persian (Farsi) UI microcopy: button labels, field labels and placeholders, validation and error messages, empty states, loading and success toasts, confirmations, notifications.

When should I use Persian UI Copy?

Persian UI Copy fits situations like: translating any user-facing string for an Iranian product (متن دکمه، پیام خطا، لیبل فرم، ترجمهی رابط کاربری، فارسیسازی); tasks that involve Translation.

How do I install Persian UI Copy in Claude Code?

Run `npx skills add TronIsHere/vibefarsiui --skill persian-ui-copy -a claude-code`. Or copy the skill folder (registry/skills/persian-ui-copy in TronIsHere/vibefarsiui) into .claude/skills/persian-ui-copy in your project. Claude Code loads it when a task matches its description.

How do I install Persian UI Copy in Codex?

Run `npx skills add TronIsHere/vibefarsiui --skill persian-ui-copy -a codex`. Or copy the skill folder (registry/skills/persian-ui-copy in TronIsHere/vibefarsiui) into .agents/skills/persian-ui-copy in your project. Codex loads it when a task matches its description.

Can I use Persian UI Copy in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add TronIsHere/vibefarsiui --skill persian-ui-copy -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/persian-ui-copy, .gemini/skills/persian-ui-copy, .github/skills/persian-ui-copy and .opencode/skills/persian-ui-copy in your project.

What does Persian UI Copy need to run?

SKILL.md names no scripts, command-line tools or credentials: Persian UI Copy is instructions for the agent only.

Does Persian UI Copy access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Persian UI Copy safe to install?

Our automated static check of SKILL.md flagged 10 warning(s): contains zero-width characters. Read the flagged lines before installing; the check is not a guarantee either way.

What licence does Persian UI Copy use?

Persian UI Copy is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Persian UI Copy use?

About 1.6k tokens (SKILL.md is roughly 6.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Persian UI Copy?

Skills that share tags, products or a category with Persian UI Copy: Translation Diff Export (Devolutions/UniGetUI, 26k stars), Sync Translations (symfony/symfony, 31k stars), Translation Diff Import (Devolutions/UniGetUI, 26k stars) and Translation Diff Translate (Devolutions/UniGetUI, 26k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Persian UI Copy?

TronIsHere (a GitHub user) maintains it in TronIsHere/vibefarsiui, which has 212 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 10, 2026.

Source: TronIsHere/vibefarsiui on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.