🐙 Admin console for the OCTO platform — manage tenants, users, spaces, channels, and Lobster agents. Built with React, TypeScript, Vite & Ant Design.
37
stars
95
commits
TypeScript
primary language
Sep 8, 2026
updated
OCTO — the open workplace built for humans × AI agents.
Let Lobsters (OpenClaw-powered digital doubles) do the thinking and doing. You focus on taste.
🏠 OCTO Home · 🚀 Quickstart · 📦 Ecosystem · 🤝 Contributing
🌐 Read in: English · 简体中文
Admin console for the OCTO platform — tenants, organisations, users, channels, and Lobster agent configuration from a single pane of glass.
octo-admin is the TypeScript / React console that platform operators use to
manage an OCTO deployment. It is a thin front-end over
octo-server's admin APIs —
no business logic of its own, no side database. Everything you see or click
turns into a call into the main OCTO backend.
octo-admin only exposes what octo-server already supports through its admin APIs. No shadow schema, no drift between "what the admin UI can do" and "what the backend actually enforces".octo-web goes on the public edge.git clone https://github.com/Mininglamp-OSS/octo-admin.git
cd octo-admin
pnpm install
pnpm dev
By default the dev build points at http://localhost:8080 (the same
octo-server instance you'd run for octo-web development). Copy
.env.example to .env.local and edit VITE_ADMIN_API_* to aim it at a
different backend.
For a production build:
pnpm build # emits static assets under ./dist
# serve ./dist behind an SSO-aware reverse proxy (nginx / envoy / ...)
Docker deployments proxy the primary admin API through API_BACKEND and the
Marketplace admin API through MARKETPLACE_BACKEND. Keep Marketplace admin
authentication on the user's Octo login token; do not ship marketplace service
credentials as VITE_* variables because Vite compiles them into the browser
bundle.
Top-level layout:
| Path | Purpose |
|---|---|
src/pages/ | Route-level views: tenants, orgs, users, channels, agents, audit log |
src/components/ | Admin UI kit — tables, filters, detail drawers, confirm dialogs |
src/store/ | Client state (current operator identity, active tenant scope, permissions) |
src/api/ | Typed client for the octo-server admin API surface |
src/locales/ | i18n resources (English · 简体中文) |
docs/ | Admin workflows, screenshots, deployment notes |
octo-admin talks to octo-server over the /admin/* REST surface. It
never talks to the primary database directly. Operator authentication is
delegated to octo-server (SSO or admin-token), and every mutation must
pass backend-side RBAC before it is persisted.
graph TD
subgraph Clients[Clients]
Web[octo-web<br/>Web / PC]
Android[octo-android<br/>Android]
iOS[octo-ios<br/>iOS]
end
subgraph Core[Core Services]
Server[octo-server<br/>Backend API]
Matter[octo-matter<br/>Task / Todo]
Summary[octo-smart-summary<br/>AI Summary]
Admin[octo-admin<br/>Admin Console]
end
subgraph Shared[Shared Libraries & Integrations]
Lib[octo-lib<br/>Core Go Library]
Adapters[octo-adapters<br/>Third-party Adapters]
end
Web --> Server
Android --> Server
iOS --> Server
Admin --> Server
Server --> Matter
Server --> Summary
Server --> Adapters
Server -.uses.-> Lib
Matter -.uses.-> Lib
Adapters -.uses.-> Lib
| Repository | Language | Role |
|---|---|---|
octo-server | Go | Backend API · business orchestration · Lobster agent scheduling |
octo-matter | Go | Task / Todo / Matter micro-service |
octo-smart-summary | Go | LLM-powered conversation summarisation |
octo-web | TypeScript / React | Web & PC (Electron) client |
octo-android | Kotlin / Java | Native Android client |
octo-ios | Swift / Objective-C | Native iOS client |
octo-admin | TypeScript / React | Admin console (tenant / org / user / channel management) |
octo-lib | Go | Shared core library (protocol, crypto, storage, HTTP) |
octo-adapters | TypeScript / Python | Third-party integrations (IM bridges, AI channels) |
OCTO ships under three shared principles that apply to every repository in this matrix:
We love pull requests! Before you open one, please read:
For security issues please follow SECURITY.md instead of the public tracker.
Apache License 2.0 — see LICENSE for the full text and NOTICE for third-party attributions.
Made with 🐙 by OCTO Contributors · Mininglamp-OSS
TypeScript
92.0%
CSS
7.9%
🐙 Admin console for the OCTO platform — manage tenants, users, spaces, channels, and Lobster agents. Built with React, TypeScript, Vite & Ant Design.
37
stars
95
commits
TypeScript
primary language
Sep 8, 2026
updated
OCTO — the open workplace built for humans × AI agents.
Let Lobsters (OpenClaw-powered digital doubles) do the thinking and doing. You focus on taste.
🏠 OCTO Home · 🚀 Quickstart · 📦 Ecosystem · 🤝 Contributing
🌐 Read in: English · 简体中文
Admin console for the OCTO platform — tenants, organisations, users, channels, and Lobster agent configuration from a single pane of glass.
octo-admin is the TypeScript / React console that platform operators use to
manage an OCTO deployment. It is a thin front-end over
octo-server's admin APIs —
no business logic of its own, no side database. Everything you see or click
turns into a call into the main OCTO backend.
octo-admin only exposes what octo-server already supports through its admin APIs. No shadow schema, no drift between "what the admin UI can do" and "what the backend actually enforces".octo-web goes on the public edge.git clone https://github.com/Mininglamp-OSS/octo-admin.git
cd octo-admin
pnpm install
pnpm dev
By default the dev build points at http://localhost:8080 (the same
octo-server instance you'd run for octo-web development). Copy
.env.example to .env.local and edit VITE_ADMIN_API_* to aim it at a
different backend.
For a production build:
pnpm build # emits static assets under ./dist
# serve ./dist behind an SSO-aware reverse proxy (nginx / envoy / ...)
Docker deployments proxy the primary admin API through API_BACKEND and the
Marketplace admin API through MARKETPLACE_BACKEND. Keep Marketplace admin
authentication on the user's Octo login token; do not ship marketplace service
credentials as VITE_* variables because Vite compiles them into the browser
bundle.
Top-level layout:
| Path | Purpose |
|---|---|
src/pages/ | Route-level views: tenants, orgs, users, channels, agents, audit log |
src/components/ | Admin UI kit — tables, filters, detail drawers, confirm dialogs |
src/store/ | Client state (current operator identity, active tenant scope, permissions) |
src/api/ | Typed client for the octo-server admin API surface |
src/locales/ | i18n resources (English · 简体中文) |
docs/ | Admin workflows, screenshots, deployment notes |
octo-admin talks to octo-server over the /admin/* REST surface. It
never talks to the primary database directly. Operator authentication is
delegated to octo-server (SSO or admin-token), and every mutation must
pass backend-side RBAC before it is persisted.
graph TD
subgraph Clients[Clients]
Web[octo-web<br/>Web / PC]
Android[octo-android<br/>Android]
iOS[octo-ios<br/>iOS]
end
subgraph Core[Core Services]
Server[octo-server<br/>Backend API]
Matter[octo-matter<br/>Task / Todo]
Summary[octo-smart-summary<br/>AI Summary]
Admin[octo-admin<br/>Admin Console]
end
subgraph Shared[Shared Libraries & Integrations]
Lib[octo-lib<br/>Core Go Library]
Adapters[octo-adapters<br/>Third-party Adapters]
end
Web --> Server
Android --> Server
iOS --> Server
Admin --> Server
Server --> Matter
Server --> Summary
Server --> Adapters
Server -.uses.-> Lib
Matter -.uses.-> Lib
Adapters -.uses.-> Lib
| Repository | Language | Role |
|---|---|---|
octo-server | Go | Backend API · business orchestration · Lobster agent scheduling |
octo-matter | Go | Task / Todo / Matter micro-service |
octo-smart-summary | Go | LLM-powered conversation summarisation |
octo-web | TypeScript / React | Web & PC (Electron) client |
octo-android | Kotlin / Java | Native Android client |
octo-ios | Swift / Objective-C | Native iOS client |
octo-admin | TypeScript / React | Admin console (tenant / org / user / channel management) |
octo-lib | Go | Shared core library (protocol, crypto, storage, HTTP) |
octo-adapters | TypeScript / Python | Third-party integrations (IM bridges, AI channels) |
OCTO ships under three shared principles that apply to every repository in this matrix:
We love pull requests! Before you open one, please read:
For security issues please follow SECURITY.md instead of the public tracker.
Apache License 2.0 — see LICENSE for the full text and NOTICE for third-party attributions.
Made with 🐙 by OCTO Contributors · Mininglamp-OSS
TypeScript
92.0%
CSS
7.9%