Skip to content

Knowledge

Project knowledge is what Sonenta knows about your product in order to translate it well and keep quality consistent. It comes in three layers:

  • Project context (project level): product description, audience, tone, conventions and register. The frame every translation respects.
  • The glossary (term level): terms and their enforced translations, or terms not to translate. Each entry carries a term, per-locale translations, a rule_type (translation, do_not_translate or forbidden), a case_sensitive option and a note.
  • Per-string hints (key level): a key's description field carries a translation hint for that specific string, useful for ambiguous cases.

The translation agent (sonenta-i18n) consumes this knowledge; the sonenta-knowledge agent builds and maintains it.

Three complementary paths:

  • The dashboard: edit the glossary and project context by hand.
  • The MCP tools: glossary (glossary_list, glossary_create, glossary_update, glossary_delete) and context (project_context_get, project_context_set). Note: project_context_set replaces the whole context document, so the right pattern is get, then merge, then set (the agent handles this).
  • The sonenta-knowledge agent: it reads your source strings and repo docs, then writes the glossary and context via MCP, 0 AI credits. It is non-destructive: it proposes and confirms before overwriting. Three modes: INIT (bootstrap from scratch), AUDIT (state and gaps, read-only), MAINTAIN (new terms, inconsistent usage, context drift, it proposes the updates).
  • Define the glossary early: it locks your terminology.
  • Mark brand terms and do-not-translate terms (rule_type do_not_translate or forbidden).
  • Give a clear context: audience, tone, register.
  • Add per-string hints (the key's description) for ambiguous cases.
  • Keep the knowledge current as the product evolves (MAINTAIN mode).

A few prompts for sonenta-knowledge:

Using sonenta-knowledge, bootstrap the project knowledge from my source strings and my README.

Add "Sonenta" to the glossary as do_not_translate, and "tableau de bord" with the English translation "dashboard".

Set the project context: audience = developers, tone = direct, register = professional.

Review my glossary and propose the missing brand terms.