You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/ha_mcp/settings_ui/AGENTS.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -38,6 +38,7 @@ Any reachable HA instance works for `HOMEASSISTANT_URL` / `HOMEASSISTANT_TOKEN`.
38
38
-`settings.js` — the client script, injected into `<script>__HA_MCP_JS__</script>`. Not served as a separate asset.
39
39
-`settings.css` — the stylesheet, injected into `<style>__HA_MCP_CSS__</style>`.
40
40
-`_i18n.py` and `locales/*.json` — auto-discovered translation catalogs. English is the per-key fallback for `messages`. Adding a language is not a single-file change: it ships on all four translated surfaces or not at all. Its `tool_groups` and `tools` sections must end up exact — the post-merge locale-sync workflow fills and verifies them, so a near-empty catalog may merge, though not a `meta`-only one: the `Decision` and `PredicateOp` words, the sentence those words are interpolated into, and one reader-addressing key are all checked ungated against the shipped catalogs — and `en.json` is the wrong starting point because it carries both of those empty by design. See `locales/README.md` for the procedure and the repository-root `AGENTS.md` § Translations for the rules CI enforces. The wheel, sdist and binary declarations match the locale directory by pattern, so a new catalog needs no packaging edit — but keep those patterns intact when touching packaging.
41
+
-`tlh` is the only best-effort locale: it is excluded from machine translation and its locale-specific validation is warning-only. Invalid Klingon is skipped or falls back to English; every other locale remains strict. Keep this exception centralized in `_locale_policy.py`.
0 commit comments