# Operating Catalyst

Diagrid Catalyst is a centralized platform for running durable workflows, AI agents, MCP servers, and Dapr applications in production, built on the open-source [Dapr](https://docs.diagrid.io/dapr-open-source) runtime. As an operator, you deploy it into your own infrastructure — any cloud or on-premises — and run it as a shared, governed platform for your teams.

Operating Catalyst spans two levels:

- **[Platform operations](#install-and-set-up-catalyst)** — install and configure Catalyst, manage regions, identity, and access, and create projects for teams.
- **[Project operations](#operate-workflows-and-agents-in-a-project)** — configure resources, operate workloads, and observe applications, workflows, and agents within a project.

## Install and set up Catalyst platform

As a platform engineer, you stand up Catalyst for the organization: you install and configure the platform on your own infrastructure — provisioning Kubernetes clusters, integrating with your cloud, and connecting it to your observability backend — and set up user identities and access. You then create isolated projects and hand them to teams.

1. **[Choose how to host Catalyst](https://docs.diagrid.io/operate/hosting)** — compare Catalyst Cloud, dedicated regions, managed and self-managed BYOC, and air-gapped deployments.

2. **[Set up regions](https://docs.diagrid.io/operate/platform-operations/regions)** — create the data-plane locations that host your projects.

3. **[Create projects for teams](https://docs.diagrid.io/operate/platform-operations/projects)** — give each team, environment, or application an isolated project with its own endpoints.

4. **[Set up identity and access](https://docs.diagrid.io/operate/platform-operations/identity-and-access)** — invite users, assign roles, and create API keys for automation.

## Operate workflows and agents in a project

Projects provide isolated identities, resources, policies, and observability boundaries for teams and environments. Inside a project, you connect your applications and agents, configure their backing infrastructure, and lock them down with access policies and secrets — then operate your workflows and agents at runtime, and observe and troubleshoot everything in one place.

- [Connect with apps](https://docs.diagrid.io/operate/project-operations/ids) — Register each workload with its own identity, API token, runtime spec, autoscaling, and health checks.
- [Connect to backing infrastructure](https://docs.diagrid.io/operate/project-operations/components) — Connect applications to state stores, message brokers, secret stores, and external services, with secret extraction and resiliency policies.
- [Enable managed services](https://docs.diagrid.io/operate/project-operations/managed-services) — Turn on Catalyst-hosted Pub/Sub, Key/Value, and Workflow stores per project, with no infrastructure to provision.
- [Manage secrets](https://docs.diagrid.io/operate/project-operations/secrets) — Use transparent secret extraction, or bring your own AWS Secrets Manager, Azure Key Vault, or HashiCorp Vault.
- [Set access policies](https://docs.diagrid.io/operate/project-operations/policies/service-invocation) — Control which workloads can invoke each app, agent, and MCP server with deny-by-default access control.
- [Operate workflows](https://docs.diagrid.io/operate/project-operations/workflows) — Search, diagnose, and act on durable workflow instances — pause, resume, terminate, raise events, or purge.
- [Operate agents](https://docs.diagrid.io/operate/project-operations/agents) — Inspect running AI agents, review executions and tool calls, and recover failed or stalled runs.
- [Manage MCP Servers](https://docs.diagrid.io/operate/project-operations/mcp-servers) — Curate an org-wide catalog of MCP server definitions and register MCP server connections from the catalog or your own URL, with credentials, transport, and caller scoping under declarative control.
- [Observe workloads](https://docs.diagrid.io/operate/project-operations/observability) — Track every workload with metrics, API logs, the topology, and OpenTelemetry tracing — no instrumentation required.

## Automate with the CLI and APIs

Every task above is scriptable. Manage Catalyst resources as code with [declarative management](https://docs.diagrid.io/operate/project-operations/declarative-management) (`diagrid apply` and `export` over YAML in Git), drive the same surface from the [`diagrid` CLI](https://docs.diagrid.io/references/catalyst/catalyst-cli-intro), or call the [Catalyst APIs](https://docs.diagrid.io/api/catalyst-apis) directly for GitOps, CI/CD, and custom tooling.

## Next steps

- [Install Catalyst](https://docs.diagrid.io/operate/hosting) — choose a hosting model and stand up the platform.
- [Learn the Catalyst architecture](https://docs.diagrid.io/concepts/architecture) — how the control plane, data plane, and projects fit together.
- [Create your first project](https://docs.diagrid.io/operate/platform-operations/projects) — set up an isolated space for a team or environment.
- [Connect an application](https://docs.diagrid.io/develop/connect) — wire an app or agent to Catalyst.
