Project language.
Conduct interviews in your native language while keeping the spec in English for AI agents.
Project language lets you conduct the interview and see phase content in your native language, while the underlying spec stays in English — the format AI coding agents expect.
What it is #
When you create a project you can pick a language other than English (currently Estonian, Swedish, Finnish, or German). This is a project-level setting, separate from the UI language you chose in your profile.
The setting is set once at creation and cannot be changed — changing the language of an existing spec mid-flight would leave every phase in a mixed-language state with no clean migration path.
How storage works #
Specgraph keeps two copies of every phase section:
| Copy | Stored as | What it contains |
|---|---|---|
| English (canonical) | vision, features, … | What the extractor captured, always in English |
| Locale | vision_locale, features_locale, … | The same content translated into the project language |
Both copies are written atomically at the end of each interview turn. There is no eventual-consistency window where one side is stale.
What you see in the app #
The phase pages display the locale copy when it exists, and fall back to English when a section hasn't been filled in yet. A banner at the top of the phase page confirms that content is being shown in the project language.
Because the two copies are derived from each other (English → translation) rather than independently authored, manual field editing is disabled for non-English projects. The Interview panel is the only way to update phase content — every turn regenerates both copies together, keeping them in sync.
Why the spec stays in English #
AI coding agents (Claude Code, Cursor, Cline) consume the spec through the BMAD pack or the MCP server. Those outputs always draw from the English canonical copy — never the locale. This means:
- The agent sees consistent, unambiguous English regardless of who filled in the spec.
- Technical terms (auth, RBAC, CI/CD, API routes) stay in the form the agent was trained on.
- You can hand the same spec to multiple agents or teammates without language confusion.
The interview flow for non-English projects #
- You open the Interview panel and answer in your chosen language.
- The assistant responds in your chosen language — it has been instructed to stay in that language for the whole conversation.
- At the end of each turn, the extractor:
- Runs a structured extraction to produce the English canonical section.
- Runs a translation pass to produce the locale section.
- Saves both copies in a single atomic write.
- The phase form immediately refreshes with the locale content — you read back what you said, in your language.
BMAD, implementation spec, and MCP #
The BMAD pack (the AI-ready Markdown bundle), the implementation spec, and all MCP server responses draw exclusively from the English canonical fields. There is no configuration needed — the export layer never touches *_locale fields.
Reverting a turn #
The revert button in the interview panel undoes the last turn. Both copies — English and locale — are restored to their pre-turn state. The revert is atomic; you won't end up with one copy reverted and the other not.
Picking a language #
Language selection appears in the project creation form. If you don't pick one, the project defaults to English, and all the bilingual machinery is dormant — the phase forms work as normal, with manual editing enabled.