struere deploy
Deploy all agents to production
The deploy command promotes all agent configurations to the production environment.
Usage
npx struere deploy
What It Does
The deploy command calls the deployAllAgents function on the Convex backend. This takes all agent configurations currently in the development environment and copies them to production, making them accessible via production API keys.
Development vs Production
Struere enforces full environment isolation between development and production:
| Aspect | struere dev |
struere deploy |
|---|---|---|
| Target environment | development |
production |
| Data isolation | Development entities, threads, events | Production entities, threads, events |
| API keys | Development keys only | Production keys only |
| Agent configs | Stored as development configs | Promoted to production configs |
| Role resolution | Development roles | Production roles |
When you run struere dev, all synced resources are created in the development environment. Your development API keys interact with development data, and your agents use development configurations.
When you run struere deploy, agent configurations are promoted to production. Production API keys will now use the deployed configurations. Production data remains completely separate from development data.
Deployment Flow
Local files ──[struere dev]──► Development environment
│
[struere deploy]
│
▼
Production environment
Environment Scoping
The following resources are scoped per environment:
- Agent configurations (model, system prompt, tools)
- Entity types and entities
- Roles, policies, scope rules, and field masks
- Threads and messages
- Events and executions
- Trigger runs
- API keys
- Installed packs
Agents themselves (name, slug, description) are shared across environments — only their configurations are environment-specific.
API Key Environments
API keys carry an environment field. When an API request arrives, the environment is extracted from the API key and threaded through the entire request:
- Config lookup uses the key's environment
- Threads are created in that environment
- Actor context carries the environment
- Tool execution respects environment boundaries
- Events are logged with the environment
A development API key cannot access production data, and vice versa.
Production Checklist
Before deploying, verify:
- Test in development — Use
struere devand development API keys to test your agents thoroughly - Review with
struere status— Compare your local definitions against the remote state - Check permissions — Ensure roles and policies are correctly configured for production use
- Verify API keys — Create production API keys in the dashboard for your applications