{"id":13461738,"url":"https://github.com/metalbear-co/mirrord","last_synced_at":"2026-05-01T12:01:48.615Z","repository":{"id":37011307,"uuid":"454467716","full_name":"metalbear-co/mirrord","owner":"metalbear-co","description":"Connect your local process and your cloud environment, and run local code in cloud conditions.","archived":false,"fork":false,"pushed_at":"2026-04-28T07:07:23.000Z","size":37516,"stargazers_count":5050,"open_issues_count":187,"forks_count":192,"subscribers_count":23,"default_branch":"main","last_synced_at":"2026-04-28T09:09:41.323Z","etag":null,"topics":["api","backend","backend-development","cli","cloud","cloud-native","debug","develop","developer-tools","development","devops","devtool","ide","kubernetes","rust","shift-left","sniffer","traffic","vscode","vscode-extension"],"latest_commit_sha":null,"homepage":"https://metalbear.com/mirrord","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/metalbear-co.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2022-02-01T16:42:30.000Z","updated_at":"2026-04-27T19:34:20.000Z","dependencies_parsed_at":"2026-04-20T19:01:49.569Z","dependency_job_id":null,"html_url":"https://github.com/metalbear-co/mirrord","commit_stats":{"total_commits":1626,"total_committers":37,"mean_commits":"43.945945945945944","dds":0.6371463714637147,"last_synced_commit":"cb42f2fcf400e5ce620fc7083f9383986e48c623"},"previous_names":[],"tags_count":397,"template":false,"template_full_name":null,"purl":"pkg:github/metalbear-co/mirrord","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metalbear-co%2Fmirrord","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metalbear-co%2Fmirrord/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metalbear-co%2Fmirrord/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metalbear-co%2Fmirrord/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/metalbear-co","download_url":"https://codeload.github.com/metalbear-co/mirrord/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metalbear-co%2Fmirrord/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32495949,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","backend","backend-development","cli","cloud","cloud-native","debug","develop","developer-tools","development","devops","devtool","ide","kubernetes","rust","shift-left","sniffer","traffic","vscode","vscode-extension"],"created_at":"2024-07-31T11:00:55.533Z","updated_at":"2026-05-01T12:01:48.592Z","avatar_url":"https://github.com/metalbear-co.png","language":"Rust","funding_links":[],"categories":["Rust","Applications","Tools and Libraries","Projects by main language","cli","语音识别与合成_其他","rust","Agent Infrastructure"],"sub_categories":["Development Tools","rust","资源传输下载","Sandboxing \u0026 Isolation"],"readme":"\u003cdiv align=\"center\"\u003e\n\n![mirrord logo](./images/logo.svg)\n\n\u003c/div\u003e\n\n[![Community Slack](https://img.shields.io/badge/Join-e5f7f7?logo=slack\u0026label=Community%20Slack)](https://metalbear.co/slack)\n[![Github CI](https://github.com/metalbear-co/mirrord/actions/workflows/ci.yaml/badge.svg)](https://github.com/metalbear-co/mirrord/actions/workflows/ci.yaml)\n[![License](https://img.shields.io/badge/license-MIT-green)](https://github.com/metalbear-co/mirrord/blob/main/LICENSE)\n[![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/metalbear-co/mirrord)](https://github.com/metalbear-co/mirrord/releases)\n[![Twitter Follow](https://img.shields.io/twitter/follow/metalbearco?style=social)](https://twitter.com/metalbearco)\n\n[mirrord lets developers run local processes in the context of their Kubernetes environment](https://metalbear.co/mirrord/).\nIt’s meant to provide the benefits of running your service on a cloud environment (e.g. staging) without actually\ngoing through the hassle of deploying it there, and without disrupting the environment by deploying untested code.\nIt comes as a Visual Studio Code extension, an IntelliJ plugin and a CLI tool. [You can read more about it here](https://metalbear.co/mirrord/docs/overview/introduction/).\n\nOr maybe you're just Looking for the [KubeCon Atlanta raffle password](#kubecon-atlanta-raffle).\n\n# Contents\n\n- [Contents](#contents)\n  - [Getting Started](#getting-started)\n  - [VS Code Extension](#vs-code-extension)\n    - [Installation](#installation)\n    - [How To Use](#how-to-use)\n  - [IntelliJ Plugin](#intellij-plugin)\n    - [Installation](#installation-1)\n    - [How To Use](#how-to-use-1)\n  - [CLI Tool](#cli-tool)\n    - [Installation](#installation-2)\n    - [How To Use](#how-to-use-2)\n  - [How It Works](#how-it-works)\n    - [Additional capabilities](#additional-capabilities)\n  - [FAQ](#faq)\n  - [Contributing](#contributing)\n  - [Help and Community](#help-and-community)\n  - [Code of Conduct](#code-of-conduct)\n  - [License](#license)\n\n---\n\n## Getting Started\n\n- [VS Code Extension](#vs-code-extension)\n- [IntelliJ Plugin](#intellij-plugin)\n- [CLI Tool](#cli-tool)\n\n\u003e mirrord uses your machine's default kubeconfig for access to the Kubernetes API.\n\n---\n\n## VS Code Extension\n\n### Installation\n\n[Get the extension here](https://marketplace.visualstudio.com/items?itemName=MetalBear.mirrord).\n\n### How To Use\n\n- Click \"Enable mirrord\" on the status bar\n- Start debugging your project\n- Choose pod to impersonate\n- The debugged process will be plugged into the selected pod by mirrord\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"demo of mirrord VSCode extension\" src=\"./images/vscode.gif\"\u003e\n\u003c/p\u003e\n\n---\n\n## IntelliJ Plugin\n\n### Installation\n\n[Get the plugin here](https://plugins.jetbrains.com/plugin/19772-mirrord).\n\n### How To Use\n\n- Click the mirrord icon in the Navigation Toolbar\n- Start debugging your project\n- Choose a namespace and pod to impersonate\n- The debugged process will be plugged into the selected pod by mirrord\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"demo of mirrord IntelliJ plugin\" src=\"./intellij-ext/src/main/resources/META-INF/usage.gif\"\u003e\n\u003c/p\u003e\n\n---\n\n## CLI Tool\n\n### Installation\n\nYou can use either\n\n```sh\nbrew install metalbear-co/mirrord/mirrord\n```\n\nor\n\n```sh\ncurl -fsSL https://raw.githubusercontent.com/metalbear-co/mirrord/main/scripts/install.sh | bash\n```\n\nor using Nix (not official, community maintained):\n\n```sh\n# Using nix-env (legacy)\nnix-env -iA nixpkgs.mirrord\n\n# Using nix profile (recommended)\nnix profile install nixpkgs#mirrord\n```\n\nor on Windows using Chocolatey:\n\n```sh\nchoco install --pre mirrord\n```\n\n### How To Use\n\n```sh\nmirrord exec \u003cprocess command\u003e --target \u003ctarget-path\u003e\n```\n\ne.g.\n\n```sh\nmirrord exec node app.js --target pod/my-pod\n```\n\n---\n\n## How It Works\n\nWhen you select a pod to impersonate, mirrord launches a pod on the same node as the pod you selected.\nThe new pod is then used to connect your local process and the impersonated pod: it mirrors incoming traffic from the pod to your process,\nroutes outgoing traffic from your process through the pod, and does the same for file reads, file writes, and environment variables.\n[You can read more about it here](https://metalbear.co/mirrord/docs/overview/introduction/).\n\n### Additional capabilities\n\nContainer run inside the pod launched by mirrord requires additional [Linux capabilities](https://man7.org/linux/man-pages/man7/capabilities.7.html):\n\n- `CAP_NET_ADMIN` and `CAP_NET_RAW` - for modifying routing tables\n- `CAP_SYS_PTRACE` - for reading target pod environment\n- `CAP_SYS_ADMIN` - for joining target pod network namespace\n\nHowever, you can disable any subset of those in the [configuration](https://metalbear.co/mirrord/docs/reference/configuration/).\nThis will possibly limit mirrord functionalities or even make it unusable in some setups.\n\n```bash\nMIRRORD_AGENT_DISABLED_CAPABILITIES=CAP_NET_RAW,CAP_SYS_PTRACE mirrord exec node app.js --target pod/my-pod\n```\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./images/how_it_works.svg\" alt=\"How It Works\"/\u003e\n\u003c/p\u003e\n\n## FAQ\n\n[Our FAQ is available here](https://metalbear.co/mirrord/docs/faq/general/).\nIf you have a question that's not on there, feel free to ask in our [Discussions](https://github.com/metalbear-co/mirrord/discussions)\nor on [Slack](https://metalbear.co/slack).\n\n## Contributing\n\nContributions are very welcome.\nStart by checking out our [open issues](https://github.com/metalbear-co/mirrord/issues), and by going through our [contributing guide](CONTRIBUTING.md).\nWe're available on [Slack](https://metalbear.co/slack) for any questions.\n\n## Help and Community\n\nJoin our [Slack](https://metalbear.co/slack) for questions, support and fun.\n\nWe always appreciate hearing how mirrord has made a difference for our users.  \nCheck out our [ADOPTERS.md](./ADOPTERS.md) to see how others are using mirrord —  \nand [open a pull request](https://github.com/metalbear-co/mirrord/pulls) to add your organization if you’d like to share how mirrord has been useful to you.\n\n## KubeCon Atlanta Raffle\n\nThe password is: **\"The blind rooster crows at midnight.\"**\nSay it to one of our team members at Booth #1560.\n\n## Code of Conduct\n\nWe take our community seriously and we are dedicated to providing a safe and welcoming environment for everyone.\nPlease take a few minutes to review our [Code of Conduct](./CODE_OF_CONDUCT.md).\n\n## License\n\n[MIT](./LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetalbear-co%2Fmirrord","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmetalbear-co%2Fmirrord","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetalbear-co%2Fmirrord/lists"}