用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/Dev-Toolbelt/dev-team-agents --skill i18n命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | i18n |
| description | i18n/l10n — locale detection, translations, pluralization, RTL. |
Resolve the active locale by checking sources in this priority order:
/fr/checkout, /en-US/dashboard)?lang=fr)Accept-Language HTTP header (parse quality values, e.g., fr-CH, fr;q=0.9, en;q=0.8)en)Always persist a resolved locale to the user profile once they are authenticated so subsequent sessions skip header parsing.
Organize one file per locale per domain. Never put all keys in a single monolithic file.
locales/
en/
auth.json
checkout.json
common.json
errors.json
fr/
auth.json
checkout.json
...
user.welcome_message, checkout.order_summary_titleform.submit_button not label_4auth., billing., common.// Wrong
`You have ${count} ${count === 1 ? 'item' : 'items'}`
// Correct — ICU format
"cart.item_count": "{count, plural, one {# item} other {# items}}"
zero {No items})Intl.DateTimeFormat and Intl.NumberFormat — never manual string buildingnew Intl.DateTimeFormat('fr-FR', { dateStyle: 'long' }).format(date)
new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(amount)
1999 for $19.99{ amount: 1999, currency: "USD" }Intl.NumberFormat with style: 'currency'USD) alongside the symbol ($) for international audiences to avoid ambiguity| Avoid | Use instead |
|---|---|
margin-left | margin-inline-start |
padding-right | padding-inline-end |
text-align: left | text-align: start |
border-left | border-inline-start |
float: left | float: inline-start |
dir="rtl" on the <html> element for RTL localesar) and Hebrew (he) — mirroring is often imperfect without explicit testing"checkout.submit_button")user.locale)2026-05-10T14:30:00Z)Accept-Language on all API endpoints for locale-sensitive responses (e.g., localized product names)