Features
- Control management (CRUD)
- Agent registration and management
- Server-side evaluation with evaluator support
- Observability and metrics
- API key authentication
- Prometheus metrics
- PostgreSQL and SQLite support
Installation
Development (monorepo)
Production
Configuration
Create a.env file in the server/ directory:
docker-compose.yml, local development defaults are:
AGENT_CONTROL_API_KEYS=420c6b90714b45beaa992c3f05cf2bafAGENT_CONTROL_ADMIN_API_KEYS=29af8554a1fe4311977b7ce360b20cc3NEXT_PUBLIC_AGENT_CONTROL_API_KEY=29af8554a1fe4311977b7ce360b20cc3
Authentication
API key authentication uses theX-API-Key header.
Auth Configuration
| Environment Variable | Description | Default |
|---|---|---|
AGENT_CONTROL_API_KEY_ENABLED | Enable or disable authentication | false |
AGENT_CONTROL_API_KEYS | Comma-separated list of valid API keys | (none) |
AGENT_CONTROL_ADMIN_API_KEYS | Comma-separated list of admin API keys | (none) |
Access Levels
| Level | Endpoints | Key Type |
|---|---|---|
| Public | /health, /metrics | None |
| Runtime + Read | All GET /api/v1/* endpoints and POST /api/v1/agents/initAgent | Regular or Admin |
| Runtime refresh | GET /api/v1/agents/{agent_name}/controls | Regular or Admin |
| Control-plane mutations | POST/PATCH/PUT/DELETE mutations for agents, controls, evaluator configuration | Admin only |
Key Rotation
- Add the new key to
AGENT_CONTROL_API_KEYS - Update clients to use the new key
- Remove the old key from
AGENT_CONTROL_API_KEYS - Redeploy the server
Example Usage
Disabling Authentication
For local development only:API Endpoints
All protected endpoints requireX-API-Key when authentication is enabled. Control-plane mutation endpoints require an admin API key.
System
Agent Management
Control Management
Control Associations
Evaluation
Observability
Development
Database Migrations
Testing
Code Quality
Make Commands
| Command | Description |
|---|---|
make run | Start development server |
make test | Run tests |
make lint | Run ruff linting |
make lint-fix | Auto-fix linting issues |
make typecheck | Run Mypy type checking |
make alembic-upgrade | Run database migrations |
make alembic-downgrade | Rollback last migration |
make alembic-revision MESSAGE="..." | Create new migration |
Production Deployment
Docker
Direct Installation
Source Code
View the complete server source code and implementation:Agent Control Server