Skip to content

Admin dashboard

Terminal retirement — local implementation, 2026-10-20

Section titled “Terminal retirement — local implementation, 2026-10-20”

The current working tree removes interactive terminals and Redis while preserving command/script Remote Actions and authorized session/transcript history with existing retention. Admin has a read-only history viewer; Core advertises no terminal capability and legacy terminal operations cannot create work. This implementation is local and awaits user testing; older published implementation descriptions below remain historical. See the retirement plan and evidence.1

The admin is a Vite + React 18 SPA, not Svelte. It uses React Router, Radix/shadcn-style UI primitives, TanStack Table and Chart.js. It manages organizations, customers, projects and project-scoped tasks and presents activity, screenshot, report, delivery and technology analytics.23

  • src/pages/: lazy-loaded route-level screens.
  • src/components/: feature and UI components.
  • src/lib/api/client.ts: centralized backend client.
  • src/providers/: authentication and theme contexts.
  • src/lib/types.ts: admin-specific types.

The Management navigation includes a dedicated /tasks route. It consumes the provider-neutral work-item API for project selection, server-side listing and filtering, native creation and workflow-status updates; changing the selected project clears the previous rows and remounts the table request lifecycle so the visible result cannot remain bound to the prior project. The backend remains the authorization boundary.24

The primary sidebar is organized around product tasks rather than implementation areas: Overview, Team, Work, Customers and Administration expose ten destinations. Related views share URL-backed tabs: Time & activity contains entries and insights; Delivery contains team, portfolio and agent activity; Customers contains directory and allocations; Operations contains the control center and diagnostics; Settings contains organization configuration and data import. Reports is the customer/report-model workspace. Previous standalone URLs redirect to their corresponding tab, while person, project and customer details remain contextual routes outside the sidebar.5

TstTable is the React table contract. Every consumer declares a stable ID, named preset and local/remote data authority. Reports, AI Debug, Tasks, Users, Projects, Customers, Agent Telemetry and Report Models use bounded remote queries; CTO portfolio/WIP and Delivery summaries use the local analytics preset. Customer detail/contact/engagement/visibility/allocation workflows and report definition/template/run/approval/delivery/schedule/bundle operations are present.36

Projects and Users expose a shared Import from GitHub action only when an active organization connection exists. The action opens an on-demand searchable dialog with imported-state annotations, filtered bulk selection and the backend’s 100-resource batch boundary.7

Operations is a status-first workspace rather than a linear collection of administration forms. Its primary navigation separates Devices, Compliance, Local AI and Remote access; nested task navigation keeps policy, assignments, creation and history distinct. Devices no longer exposes SSH controls in the local implementation; Remote access retains command/script launch, library, audit and read-only terminal history. The earlier direct-shell design is retired by the accepted removal request.1

The Agent governance tab of Operations also lists the organization’s repository bindings used for agent attribution: registered bindings (created by members from the desktop) and bindings derived from the repositories projects declare through their external links, each with its project, declared fingerprints (worktree, remote URL, repository root), priority and creation time. An administrator deletes a registered binding from the card; derived bindings carry no delete action because their authority is the project link. Only SHA-256 fingerprints reach the Admin. The Agent Sessions turn timeline labels every attribution source of the shared enum (explicit lock, work-item reference, worktree, remote-URL, repository-configuration and repository-root bindings, branch hint, running timer, unresolved) through one presentation module in both locales.8

The sidebar exposes public build provenance for the running Admin bundle. Deploy builds inject the numeric x.x.x MonStaff release version, full Git commit and UTC build time; operators see the semantic version directly and the remaining details in a tooltip, while local builds identify themselves as local. The short commit remains the container image tag and is no longer presented as the application version.910

The client stores the MonStaff JWT in localStorage and sends it as a bearer token. This makes XSS prevention and security headers important. Authorization decisions must remain server-side; UI role checks are presentation only.

Administrative analytics must scope every time entry, screenshot and activity record through project.organizationId. A user’s membership in the requested organization is not sufficient because a user may belong to multiple organizations.11

Some older API client responses still use any. The coordinated table cutover removed the ignored remote controls and raw analytical product tables identified by the baseline. Automated DOM accessibility and representative-volume coverage pass; manual assistive-technology/browser review and staged rollout telemetry remain external in the table standardization plan.126

The session list now provides bounded remote metadata search, provider/state/project/work-item/user and freshness/attribution filters, and allowlisted sorting including finalized turns and effort before pagination. The layout uses explicit widths, truncation and horizontal scrolling. Quick views and local organization/user-scoped saved views retain query settings and visible columns; shared or cross-device views remain outside scope. External filters explicitly invalidate the table request. Local implementation and database/browser evidence are recorded in the snapshot; Backend and Admin are deployed as 418c10a; automated and production query checks pass. The authenticated production UI walkthrough awaits renewed login.1314

The Operations Agent governance policy form includes an enabled switch and separate “full after” maxima for current and closed daily inter-turn waits. Values are integer minutes from 1 to 1440, defaulting to 10 and 60. They are visual thresholds only and do not change reporting calculations. Persistence uses the existing organization-admin, optimistic-version policy write; member-readable policy feeds the Core/GUI. Implemented locally; deployment pending.15

The dual-wait tray and projectless automatic tracking changes are now published in desktop 0.3.24, with successful exact-commit Quality, GKE backend/Admin deployment, release and promotion. Public updater/download manifests and downloaded DMG/CLI hashes were verified. Signed Apple Silicon installed-package qualification passed; extended live-feature and hidden-window checks remain separate. This supersedes the repository-local deployment-pending statements in the implementation snapshots.16

Administrator bulk reset (local implementation)

Section titled “Administrator bulk reset (local implementation)”

Time Activity and Delivery Sessions expose administrator/owner bulk deletion. Selecting a complete page offers selection of all matching results across pages, using current filters and an explicit count confirmation. Requests are sent in batches of at most 100. Time-entry batches reject running and automatically allocated/superseded entries; screenshot object cleanup is durable and asynchronous. Session batches queue telemetry deletion and preserve official hours. The internal run ID is resolved to the actual external session key, owner and provider; configured ClickHouse removal precedes canonical deletion. New or in-flight telemetry may recreate sessions. Publication and live worker/ClickHouse verification remain unperformed.17

  1. Local interactive-terminal and Redis retirement. ↩ ↩2

  2. Admin tasks management page. ↩ ↩2

  3. AT, TS, customer and report foundation implementation evidence. ↩ ↩2

  4. Desktop work-item visibility repair. ↩

  5. Admin navigation consolidation. ↩

  6. Active AT, TS, CU and RP workstreams at maximum repository-local implementation. ↩ ↩2

  7. GitHub import dialog and search. ↩

  8. Admin repository bindings card and attribution source labels implementation. ↩

  9. Admin deployment metadata surface. ↩

  10. Admin semantic deployment version repair. ↩

  11. Full technical audit at v0.2.18. ↩

  12. Table standardization implementation baseline. ↩

  13. Session explorer layout, views and remote queries. ↩

  14. Session explorer production verification. ↩

  15. Dual inter-turn wait tray indicator implementation. ↩

  16. Desktop 0.3.24 publication and GKE deployment. ↩

  17. Implementation snapshot. ↩