# Masked Kunsiquat Crm Orbit2 I18N Curator

> I18n Curator

- Skill: `tomevault-io/masked-kunsiquat-crm-orbit2-i18n-curator` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/masked-kunsiquat-crm-orbit2-i18n-curator`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/masked-kunsiquat-crm-orbit2-i18n-curator/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/masked-kunsiquat-crm-orbit2-i18n-curator

---


# I18n Curator

## Overview

Maintain consistent, stable translation keys and UI copy while keeping backend
data locale-neutral.

## Workflow

1) Identify needed keys
- Ensure UI uses `t("key")` and remove hard-coded strings.
- Prefer stable, semantic keys (no UI text in keys).

2) Update `en.json`
- Keep casing consistent (Title Case for labels, sentence case for messages).
- Avoid abbreviations that hurt translation.
- Keep placeholders consistent (`{name}`, `{count}`).

3) Update mapping files
- If adding enums/status/type/event keys, update:
  - `CRMOrbit/i18n/enums.ts`
  - `CRMOrbit/i18n/events.ts`

4) Validate
- Scan for missing keys and dead keys.
- Confirm no translated strings are persisted in domain state or events.

## Guardrails

- Keys are stable once released.
- No translated strings in Automerge, events, reducers, persistence.
- If other locales must be updated, ask before editing.
- Per the coding guidelines, files in **/views/**/*.{ts,tsx} must be "read-only projections that subscribe to Automerge changes — never mutate domain state, apply business logic, emit events, or localize strings directly."

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/masked-kunsiquat) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-15 -->

