mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-15 05:56:11 +00:00
* refactor(ui): move dreams page modules to agents/memory (verbatim) * refactor(ui): sidebar IA cleanup: Activity to Settings, Dreams into Agents Memory tab, single MCP mutation owner, Usage icon Folds the per-agent Dreams page into the Agents page as a Memory panel and deletes the dreams route; moves the session-scoped Activity page out of the sidebar into Settings > System next to Logs; removes the MCP enable/disable toggle from Settings > MCP so the Plugins page is the single mutation surface for config.mcp.servers; gives Usage a coins icon so it no longer collides with Overview. Closes #104590 * docs: update Control UI docs for Activity/Memory/MCP sidebar changes * fix(scripts): fail control-ui i18n sync closed on new untranslated keys without provider auth An unauthenticated ui:i18n:sync silently recorded English fallbacks, which the shipped-fallback CI gate then rejects; post-merge translation is owned by the control-ui-locale-refresh workflow. Sync now errors on new untranslated keys without a provider (OPENCLAW_CONTROL_UI_I18N_AUTH_OPTIONAL=1 opts back in), and the ui AGENTS guide documents the commit-en.ts-only contributor flow. * chore(ui): translate new sidebar keys, refresh i18n baseline, localize Memory tab expectation
21 lines
1.5 KiB
Markdown
21 lines
1.5 KiB
Markdown
# Control UI Guide
|
|
|
|
This directory owns Control UI-specific guidance that should not live in the repo root.
|
|
|
|
## i18n Rules
|
|
|
|
- Foreign-language locale bundles in `ui/src/i18n/locales/*.ts` are generated output.
|
|
- Do not hand-edit non-English locale bundles or `ui/src/i18n/.i18n/*` unless a targeted generated-output fix is explicitly requested.
|
|
- The source of truth is `ui/src/i18n/locales/en.ts` plus the generator/runtime wiring in:
|
|
- `scripts/control-ui-i18n.ts`
|
|
- `ui/src/i18n/lib/types.ts`
|
|
- `ui/src/i18n/lib/registry.ts`
|
|
- Pipeline: update English strings and locale wiring here and commit `en.ts` only; the `control-ui-locale-refresh` workflow translates and opens a generated PR after merge. Do not run `pnpm ui:i18n:sync` without provider auth (`ANTHROPIC_API_KEY`/`OPENAI_API_KEY`): CI rejects recorded English fallbacks, and sync fails closed on new untranslated keys. Run authenticated sync (and commit bundles plus `.i18n` metadata) only when the change needs it immediately, e.g. a raw-copy-baseline refresh after moving files with hardcoded strings.
|
|
- Prioritization report: `pnpm ui:i18n:report [--surface <name>] [--locale <locale>] [--top <n>]` shows current hardcoded-copy focus areas and locale fallback metadata. It is not a drift gate; use `pnpm ui:i18n:check` for that.
|
|
- If locale outputs drift, regenerate them. Do not manually translate or hand-maintain generated locale files by default.
|
|
|
|
## Scope
|
|
|
|
- Keep UI-specific rules here.
|
|
- Leave repo-global architecture, verification, and git workflow rules in the root `AGENTS.md`.
|