A separate, governance-only console for AcornOps platform administrators. It manages recoverable workspace suspension, existing-user workspace access and roles, plan assignment, and platform-admin audit history without exposing tenant logs, target details, sessions, runs, commands, or workload controls. Workspace limits remain tied to the selected plan.
The browser uses the same React, TypeScript, Vite, Tailwind, Lucide, and
supporting-library foundation as the Management Console. Its domain-neutral UI
tokens and primitives are replicated into the local packages/ui workspace so
the consoles remain visually and behaviorally consistent without coupling
deployments to a sibling checkout.
npm run devOpen http://127.0.0.1:4173. Local development uses deterministic mock data by default. No dependencies or credentials are required.
For a real control-plane connection:
ADMIN_CONSOLE_DATA_MODE=control-plane \
CONTROL_PLANE_ADMIN_BASE_URL=https://control-plane.example.com \
CONTROL_PLANE_ADMIN_TOKEN=replace-me \
npm startThe browser only calls same-origin /admin-console-api/* routes. The server maps those routes to a fixed /admin/v1/* allowlist and keeps the upstream token server-side.
npm run validateRepository guidance: AGENTS.md, the current requirements, docs/index.md, docs/DEVELOPMENT.md, docs/OPERATIONS.md, and docs/contracts/README.md. Platform context lives in the parent system-architecture.md.
Start with AGENTS.md and the current requirements, then use docs/index.md for architecture, security, reliability, plans, and handoff guidance. Product changes use the repo-local platform-admin-change workflow; shared skills are synchronized from the acornops-workspace repository.