How seakee/cpa-manager-plus works
CPA Manager Plus is a self-hosted management panel and observability dashboard for CPA / CLIProxyAPI; it manages the gateway but does not proxy model traffic. Operators use the web UI to configure providers and credentials, inspect accounts and quotas, and analyze persistent request, usage, and cost data. In full mode, the manager server exposes HTTP APIs, collects usage events, and persists operational and analytics state in SQLite. The README documents these major capabilities; wiring for unsampled controllers and services is represented at subsystem level rather than inferred function by function.
Main entry points: MainRoutes.tsx Feature routes · server.go Manager HTTP API · service Domain services · repository Data repositories
Components 22
Operator interface
- Web application
apps/web/src/app/appRoutes.tsx - Feature routes
apps/web/src/router/MainRoutes.tsx
CPA management
- Provider settings
apps/web/src/features/aiProviders/AiProvidersPage.tsx - Credential management
apps/web/src/features/authFiles/hooks/useAuthFilesData.ts - Gateway configuration
apps/web/src/features/config/ConfigPage.tsx
Request observability
- Request monitoring
apps/web/src/features/monitoring/MonitoringCenterPage.tsx - Usage analytics
apps/web/src/features/dashboard/DashboardPage.tsx - Model prices
apps/web/src/features/monitoring/ModelPricesPage.tsx - Usage collector
apps/manager-server/internal/collector/collector.go
Account operations
- Account health
apps/web/src/features/accounts/AccountsPage.tsx - Health inspection
apps/web/src/features/monitoring/CodexInspectionPage.tsx - Account actions
apps/web/src/features/monitoring/AccountActionCandidatesPage.tsx
Manager runtime
- Manager HTTP API
apps/manager-server/internal/httpapi/server.go - API controllers
apps/manager-server/internal/http/controller - Domain services
apps/manager-server/internal/service - Background workers
apps/manager-server/internal/worker - Data repositories
apps/manager-server/internal/repository - Local state
apps/manager-server/internal/repository/sqlite/db.go
Other components
- Operator
- CPA / CLIProxyAPI
- CPA usage queue
- Model price sources
Connections 30
- Operator → Web application: uses
- Web application → Feature routes: routes
- Feature routes → Provider settings: opens
- Feature routes → Credential management: opens
- Feature routes → Gateway configuration: opens
- Feature routes → Request monitoring: opens
- Feature routes → Usage analytics: opens
- Feature routes → Model prices: opens
- Feature routes → Account health: opens
- Feature routes → Health inspection: opens
- Feature routes → Account actions: opens
- Provider settings → Manager HTTP API: API requests
- Credential management → Manager HTTP API: API requests
- Gateway configuration → Manager HTTP API: API requests
- Request monitoring → Manager HTTP API: API requests
- Usage analytics → Manager HTTP API: API requests
- Model prices → Manager HTTP API: API requests
- Account health → Manager HTTP API: API requests
- Health inspection → Manager HTTP API: API requests
- Account actions → Manager HTTP API: API requests
- Manager HTTP API → API controllers: dispatches
- API controllers → Domain services: invokes
- Domain services → Data repositories: reads and writes
- Data repositories → Local state: persists state
- CPA / CLIProxyAPI → CPA usage queue: publishes events
- Usage collector → CPA usage queue: consumes events
- Usage collector → Data repositories: persists history
- Background workers → Data repositories: updates analytics
- Domain services → CPA / CLIProxyAPI: management API
- Domain services → Model price sources: syncs prices