# mirrord Integrations > mirrord works with the coding agents, IDEs, CI, message queues, databases, developer tools, and Kubernetes platforms you already use, and connects them to your real Kubernetes cluster with no code changes. Canonical page: https://metalbear.com/mirrord/integrations/ Last updated: 2026-10-08 ## AI coding agents Any agent that can run a shell command can use the mirrord CLI to run your code against the real cluster, the same way a developer does. The plugins and rules files below add mirrord knowledge on top. - **Claude Code**: Add the mirrord plugin marketplace to Claude Code and install the plugin with two commands. Its skills teach Claude Code to set up, configure, and troubleshoot mirrord. [Docs](https://github.com/metalbear-co/skills#claude-code) - **Codex**: Add the mirrord plugin marketplace to Codex, then install the plugin from /plugins to get all eleven mirrord skills. [Docs](https://github.com/metalbear-co/skills#codex) - **GitHub Copilot**: Copy one instructions file into your repo's .github/ folder, and Copilot gets the same mirrord knowledge as the agent skills. [Docs](https://github.com/metalbear-co/skills#github-copilot-cline-and-other-rules-file-agents) - **Cline**: Copy the .clinerules file into your repo root, and Cline applies mirrord's setup and config guidance to every task in that workspace. [Docs](https://github.com/metalbear-co/skills#github-copilot-cline-and-other-rules-file-agents) - **Any coding agent**: Gemini CLI and other Agent Skills agents add the mirrord skills with npx skills add metalbear-co/skills. Agents without skills support can still call the mirrord CLI. [Docs](https://metalbear.com/mirrord/docs/use-cases/using-mirrord-with-ai) ## AI evals Run agent evals against the real dependencies in staging instead of mocks, so an eval score shows how the agent behaves with the services it will actually call. - **LangSmith**: Run LangSmith evals through mirrord against real staging dependencies, from a coding agent, a Slack bot, or CI. The blog post shows one team's full pipeline. [Read the post](https://metalbear.com/blog/monday-agent-evals/) ## IDEs Run or debug against the cluster from the editor, with no separate CLI session to keep alive. - **VS Code**: The mirrord extension runs or debugs any VS Code launch configuration against the cluster. [Docs](https://metalbear.com/mirrord/docs/getting-started/installing-mirrord/vscode) - **Cursor**: The mirrord extension for VS Code runs in Cursor, and the mirrord agent skills work with Cursor's agent. [Docs](https://metalbear.com/mirrord/docs/getting-started/installing-mirrord/vscode) - **Windsurf**: The mirrord extension for VS Code runs in Windsurf, and in other VS Code forks such as PearAI and Trae. [Docs](https://metalbear.com/mirrord/docs/getting-started/installing-mirrord/vscode) - **Antigravity**: The mirrord extension for VS Code runs in Google Antigravity, and Antigravity's agent can call the mirrord CLI to run code against the cluster. [Docs](https://metalbear.com/mirrord/docs/getting-started/installing-mirrord/vscode) - **JetBrains IDEs**: The mirrord plugin for IntelliJ IDEA, GoLand, PyCharm, Rider, and the other JetBrains IDEs runs or debugs against the cluster with one click. [Docs](https://metalbear.com/mirrord/docs/getting-started/installing-mirrord/intellij) ## CI/CD Run integration tests against shared staging, and open a preview environment for every pull request. - **GitHub Actions**: The mirrord-preview action opens a mirrord preview environment for each pull request, and can remove it when the pull request closes. [Docs](https://metalbear.com/mirrord/docs/use-cases/preview-environments/preview-environments-in-ci) - **Any CI system**: mirrord ci is a CLI command, so it runs your tests against shared staging in GitLab CI, Jenkins, CircleCI, or any pipeline that can run one. [Docs](https://metalbear.com/mirrord/docs/use-cases/mirrord-for-ci) ## Message queues Queue splitting gives each session only the messages that match its filter, so developers and agents share one queue without taking each other's messages. No code changes. - **Kafka**: mirrord splits Kafka topics by message header, by message content with jq, or by protobuf payload, and supports AWS MSK IAM authentication. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/queue-splitting/kafka) - **Amazon SQS**: mirrord gives each session its own temporary SQS queue, cloned with the original queue's attributes, and routes messages by their attributes. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/queue-splitting/sqs) - **RabbitMQ**: mirrord routes RabbitMQ messages to temporary per-session queues, with filters that can use jq on the message content. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/queue-splitting/rabbitmq) - **Google Cloud Pub/Sub**: mirrord creates temporary Pub/Sub topics and subscriptions for each session, and can split Cloud Storage notifications too. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/queue-splitting/gcp-pubsub) - **Azure Service Bus**: mirrord splits both Service Bus queues and topics. Topic splitting uses native subscription rules, with no restart of the deployed app. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/queue-splitting/azure-service-bus) - **NATS**: mirrord splits NATS JetStream streams through temporary streams, and core NATS pub/sub subjects too. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/queue-splitting/nats) - **Redis Pub/Sub**: mirrord re-publishes Redis Pub/Sub messages to per-session channels by matching their JSON payload, with no extra Redis objects to clean up. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/queue-splitting/redis-pubsub) - **Temporal**: mirrord splits a Temporal task queue with a gRPC proxy and virtual task queues, filtering on Temporal headers or search attributes. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/queue-splitting/temporal) - **BullMQ**: mirrord routes BullMQ jobs to per-session queues by matching the job's JSON data. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/queue-splitting/bullmq) ## Databases and storage DB branching gives each session an isolated branch of the shared database, so schema changes and test writes stay out of everyone else's way. - **PostgreSQL**: mirrord branches PostgreSQL with schema-only, full, or filtered copies, custom pg_dump arguments, and several databases in one branch. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching/postgresql) - **MySQL**: mirrord branches MySQL and can authenticate to the source with IAM on AWS RDS and GCP Cloud SQL. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching/mysql) - **MariaDB**: mirrord branches MariaDB with full or filtered copies and custom dump arguments, such as a single transaction with no table locks. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching/mariadb) - **Microsoft SQL Server**: mirrord branches SQL Server as an empty database, the schema only, or a full copy, and can clone only the rows you filter. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching/mssql) - **MongoDB**: mirrord branches MongoDB, and collection filters copy only the documents a session needs. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching/mongodb) - **Redis**: mirrord branches Redis in the cluster, including from TLS sources, or runs a local Redis on your machine and redirects your app to it. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching/redis) - **DynamoDB**: mirrord branches DynamoDB tables, with table filters and IAM authentication. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching/dynamodb) - **Google Cloud Spanner**: mirrord runs the Cloud Spanner emulator as the branch and points your app at it through SPANNER_EMULATOR_HOST. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching/spanner) - **CockroachDB**: mirrord branches CockroachDB, including from sources that use TLS or mutual TLS. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching/cockroachdb) - **ClickHouse**: mirrord branches ClickHouse as table structures only, a full copy, or a filtered clone. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching/clickhouse) - **Amazon S3**: mirrord clones the source S3 bucket into a separate branch bucket for each session. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching/s3) - **turbopuffer**: mirrord clones a turbopuffer namespace into a separate branch namespace for each session. [Docs](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching/turbopuffer) ## Developer tools Point the tools you already test with at the cluster. - **Chrome**: The mirrord browser extension adds your session's header to browser requests, so the pages you click through reach your local code. [Docs](https://metalbear.com/mirrord/docs/using-mirrord/incoming-traffic/filter-incoming-traffic/debug-from-browser) - **Playwright**: Put your mirrord session's header in extraHTTPHeaders in the Playwright config, and every test request reaches your local code through a mirrord traffic filter. [Docs](https://metalbear.com/mirrord/docs/using-mirrord/incoming-traffic/filter-incoming-traffic) - **Cypress**: Add your mirrord session's header with cy.intercept, and the requests your Cypress tests send reach your local code instead of the deployed service. [Docs](https://metalbear.com/mirrord/docs/using-mirrord/incoming-traffic/filter-incoming-traffic) - **Feature flag platforms**: mirrord gives your local code the pod's environment, including its feature flag settings and API keys, so LaunchDarkly, Statsig, and other flag platforms behave as they do in the cluster. Override a flag locally to test it. [Docs](https://metalbear.com/mirrord/docs/using-mirrord/environment-variables) - **Postman**: mirrord connects Postman to your cluster, so Postman requests reach services inside it. [Docs](https://metalbear.com/mirrord/docs/using-mirrord/connecting-tools/postman) - **Docker and Podman**: mirrord runs your app in a local container with Docker, Podman, or nerdctl, connected to the cluster. [Docs](https://metalbear.com/mirrord/docs/using-mirrord/local-container) - **Jira**: mirrord records session metrics and shows them in Jira. [Docs](https://metalbear.com/mirrord/docs/managing-mirrord/jira-integration) ## Kubernetes platforms Install the operator with Helm, and target the workloads you already run, with or without a service mesh or an API gateway. - **Helm**: The official Helm chart installs and upgrades the mirrord operator. [Docs](https://metalbear.com/mirrord/docs/getting-started/installing-mirrord/operator#helm) - **API gateways**: mirrord works with services behind Kong, Envoy Gateway, Emissary, NGINX, or Traefik. It intercepts after the gateway, so your local code gets the request that the gateway authenticated and routed. [Docs](https://metalbear.com/mirrord/docs/using-mirrord/incoming-traffic/api-gateways) - **Istio**: mirrord works the same with or without Istio. Preview environments exclude the session's ports from the Istio sidecar, so they work under STRICT mTLS. [Docs](https://metalbear.com/mirrord/docs/use-cases/preview-environments#service-meshes) - **Linkerd**: mirrord skips the Linkerd proxy when it picks a target container. Preview pods keep their Linkerd sidecar, so their outgoing calls still go through the mesh. [Docs](https://metalbear.com/mirrord/docs/use-cases/preview-environments#service-meshes) - **Argo Rollouts**: mirrord targets Argo Rollouts, as well as Deployments, StatefulSets, Jobs, and CronJobs. [Docs](https://metalbear.com/mirrord/docs/reference/targets) - **OpenShift**: mirrord runs on OpenShift. The docs list the security settings it needs, and the mirrord operator works with the default policies. [Docs](https://metalbear.com/mirrord/docs/faq/limitations) ## Integration questions ### Which message queues does mirrord queue splitting support? Kafka, Amazon SQS, RabbitMQ, Google Cloud Pub/Sub, Azure Service Bus, NATS, Redis Pub/Sub, Temporal, and BullMQ. Each session gets only the messages that match its filter, so developers and agents share one queue without taking each other's messages. See [queue splitting](https://metalbear.com/mirrord/docs/sharing-the-cluster/queue-splitting). ### Which databases does mirrord DB branching support? PostgreSQL, MySQL, MariaDB, Microsoft SQL Server, MongoDB, Redis, DynamoDB, Google Cloud Spanner, CockroachDB, and ClickHouse, plus Amazon S3 buckets and turbopuffer namespaces. Each session gets an isolated branch, and the shared database stays as it is. See [DB branching](https://metalbear.com/mirrord/docs/sharing-the-cluster/db-branching). ### Can Claude Code, Cursor, or Codex use mirrord? Yes. Any coding agent that can run a shell command can use the mirrord CLI to run code against your real cluster. The mirrord skills plugin installs in Claude Code, Codex, Cursor, and other Agent Skills agents. See [Agent Skills for mirrord](https://metalbear.com/mirrord/docs/use-cases/using-mirrord-with-ai/ai-skills-plugin). ### Does mirrord work with a service mesh like Istio or Linkerd? Yes. mirrord works the same way with and without a service mesh. It skips mesh proxy containers when it picks a target container, and preview environments handle Istio and Linkerd sidecars automatically. See [preview environments and service meshes](https://metalbear.com/mirrord/docs/use-cases/preview-environments#service-meshes). ### Does mirrord work with an API gateway like Kong? Yes. mirrord intercepts traffic at the service pod, after the gateway, so your local code receives requests that the real gateway already authenticated and routed. Target the service behind the gateway and filter on the `baggage` header, which most gateways forward. See [Working with API Gateways](https://metalbear.com/mirrord/docs/using-mirrord/incoming-traffic/api-gateways). ### Which Kubernetes workloads and platforms does mirrord support? mirrord targets Deployments, StatefulSets, Jobs, CronJobs, and Argo Rollouts. It runs on OpenShift too: either change the scc settings, or use the mirrord operator, which works with the default policies. See [mirrord limitations](https://metalbear.com/mirrord/docs/faq/limitations). ### Does mirrord work with my CI system? Yes. mirrord ci is a CLI command, so it runs in GitHub Actions, GitLab CI, Jenkins, CircleCI, or any pipeline that can run one. For pull request previews, the mirrord-preview GitHub Action opens a preview environment for each pull request. See [mirrord for CI](https://metalbear.com/mirrord/docs/use-cases/mirrord-for-ci).