Skip to content

Retire "Console" as the name of the end-user surface; keep a name only for the admin surface (Setup) #79

Description

@os-zhuang

Blocked-by: #78

The decision

Maintainer decision, 2026-08-18. Scope, in their words: 「对于 console 我只要改 文档和 UI 文案」 — docs and UI copy only, the /_console URL is not touched. Naming, chosen from four options: 主界面不命名 + 管理面叫 Setup.

Concretely:

  • The end-user surface gets no name. A reader opens ObjectOS, or your app — not "the Console". use/records describes opening a record in ObjectOS, not in the Console.
  • The admin surface keeps a name: Setup. That word already appears on 18 English pages, so this is mostly a matter of using it consistently rather than introducing it.

Why, so the next person does not undo it

"Console" is an operator's word — server console, admin console — and it currently covers the entire runtime UI: end users working records, views, forms and approvals; admins configuring permissions and data sources; the AI Builder; the marketplace; the Account UI. One word addressing both a business user and an administrator makes the product sound like a control panel bolted onto something else.

Large products tend not to name their main surface at all — you open Notion, not "the Notion console". The split this repository's own information architecture already makes — use/ for end users, configure/ for admins — is the split the vocabulary should make too.

Scope in this repository

English sources under content/docs/. Every occurrence needs a judgement, not a search-and-replace, because the same word is doing three different jobs:

  1. End-user context (use/**, most of build/**) — drop the noun. "In the Console, open the record" → "Open the record". Watch for sentences that become ungrammatical or lose their subject when the noun is removed.
  2. Admin context (configure/**, parts of operate/**) — becomes Setup where it names the admin surface.
  3. Not the product noun at all/_console paths, CLI output samples, packages/console, Console UI in an architecture diagram describing the served bundle. ⛔ These stay. The URL is explicitly out of scope, so any code block, curl example or path reference keeps _console exactly as it is.

Category 3 is the trap: a global replace will corrupt URLs and code samples that must not change, and those are the occurrences a reader copies and runs.

docs/TRANSLATION.md also lists Console in the never-translate glossary. Update the glossary in the same PR — for the surviving Setup, and drop the retired term rather than leaving a rule for a word that no longer appears.

Not in this repository — do not attempt from this card

The UI copy half lives elsewhere and is not dispatchable from here:

  • objectui — a case-sensitive grep for Console hits 179 files, but that count mixes the product noun with component names, type names and identifiers. Someone has to separate user-visible copy from code identifiers before that work can be sized; the number above is not a work estimate.
  • objectstackpackages/cli/src/utils/format.ts:579 prints ➜ Console: on startup, which is the first place a new user meets the word.

Both need their own cards in their own repositories, routed by triage. Filing them is not this card's job and dispatching into those lanes is not this seat's to do.

Ordering

Serial with #78, not parallel. #78 (the 17.0 alignment) touches quickstart, faq, build/data/index, reference/field-types, configure/permissions/** and more; "Console" appears across essentially the whole corpus, so the two file surfaces overlap almost completely. Correctness first: a reader currently following quickstart.mdx on Node 20 fails, which outranks a naming improvement. The rename is also easier to apply to a corrected corpus than the reverse.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions