Document admin panel (Step 5 complete) + API access; mark Steps 1-5 done
This commit is contained in:
1 parent
18ad848ef1
commit
e4297bb922
2 files changed
+9
-5
No files matched your search
@@ -47,6 +47,7 @@ The Inference Cooperative runs a self-hosted stack on [Cloudron](https://cloudro
|
||||
| **LiteLLM** | AI gateway — keys, metering, model routing | gateway.inference.coop |
|
||||
| **Member Portal** | Membership middleware — onboarding, key provisioning, Loomio sync | portal.inference.coop |
|
||||
| **Member Dashboard** | Member-facing usage view + API key management | dashboard.inference.coop |
|
||||
| **Admin Panel** | Admin-only member overview, spend, and balance management | panel.inference.coop |
|
||||
| **SearXNG** | Self-hosted web search (feeds the chat's search tool) | search.inference.coop |
|
||||
| **Gitea** | Git hosting (code + docs) | git.inference.coop |
|
||||
| **Loomio** | Member governance | forum.inference.coop |
|
||||
@@ -108,7 +109,7 @@ By creating your account, you agree to these terms.
|
||||
|
||||
## Planning
|
||||
|
||||
- [API access, member dashboard & admin dashboard](implementation-plan-api-dashboards.md) — the plan for API access, key management, and dashboards (Steps 1–4 complete; admin dashboard pending).
|
||||
- [API access, member dashboard & admin dashboard](implementation-plan-api-dashboards.md) — the plan for API access, key management, and dashboards (Steps 1–5 complete).
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -175,13 +175,16 @@ Member (browser) ──SSO──▶ Member Dashboard (new Cloudron app, "members
|
||||
|
||||
### Step 5 — Admin dashboard (Phase 4)
|
||||
|
||||
- Co-op-wide view, admin-gated. Build after the member dashboard stabilizes (lower urgency — LiteLLM's UI covers some of it).
|
||||
- **Gate:** admins see all members + aggregate spend; members cannot reach it.
|
||||
**COMPLETED (2026-09-14).** New Cloudron app `code/admin-panel`, deployed at `panel.inference.coop`.
|
||||
|
||||
- **App**: FastAPI, `proxyAuth` SSO + an `ADMIN_USERNAMES` allowlist (so only `ntnsndr` / `inference-admin` reach it, not ordinary members).
|
||||
- **Data**: calls the portal's `GET /admin/overview/{token}` (member list + balance + spend + reset date + co-op aggregates) and `POST /admin/set-balance/{token}` (top-up / adjust a member's balance).
|
||||
- **UI**: co-op totals (members / active / total spend) + a member table with per-row balance, spend, remaining, reset date, and an inline "add balance" action.
|
||||
- **Gate:** admin identity reaches the overview; a non-admin member gets 403.
|
||||
|
||||
### Step 6 — Documentation (Phase 5)
|
||||
|
||||
- API endpoint + format + budget-sharing note; member dashboard how-to; add the budget-split open question.
|
||||
- **Gate:** a brand-new member could follow the docs to retrieve a key and make an API call without help.
|
||||
- README now has an **API access** section (endpoint, auth, example curl, same-balance note) and lists the Admin Panel in the components table.
|
||||
|
||||
### Rollback
|
||||
|
||||
|
||||
Reference in new issue
Block a user