{"slug": "show-hn-karotte-a-framework-for-building-robust-rl-envs", "title": "Show HN: Karotte, a framework for building robust RL envs", "summary": "Preference Model released Karotte, an open-source framework for building robust reinforcement learning environments, installable via `uv tool install karotte` and requiring Python 3.12+. Karotte runs tasks in a VM by default — Apple `container` on macOS and Firecracker on Linux, with docker or podman also supported — and writes each run's transcript to `out/transcript.json` for viewing with `karotte dashboard out/`. The framework is MIT licensed, while its environment templates in `src/karotte/templates/` use MIT No Attribution (MIT-0), and every merge to `main` is released.", "body_md": "Karotte is an open-source framework for building robust RL environments, made by\n[Preference Model](https://preferencemodel.com).\n\n**Documentation: [karotte.dev](https://karotte.dev)**\n\nKarotte needs Python 3.12+ and [uv](https://docs.astral.sh/uv/). Runs go into a\nVM by default: Apple `container` on macOS, Firecracker on Linux. docker or\npodman work too. See [Installation](https://karotte.dev/getting-started/installation/)\nand [Runtimes](https://karotte.dev/running/runtimes/) for what each needs.\n\n```\nuv tool install karotte\n```\n\nCreate an environment from the `default` template and run its example task:\n\n```\nkarotte create-env my_env\ncd my_env\nuv sync --extra dev\nuv run setup_data.py\nexport ANTHROPIC_API_KEY=...\nuv run karotte run --task example-task --model anthropic/claude-opus-5-5\n```\n\n`karotte run` builds the image, runs the task, and writes the transcript to\n`out/transcript.json`. `karotte dashboard out/` shows it. The\n[quick start](https://karotte.dev/getting-started/quick-start/) explains each\nstep, and [Writing tasks](https://karotte.dev/tasks/tasks-and-steps/) shows how\nto add your own.\n\n```\njust lint\njust test\njust test-template default\n```\n\nEvery merge to `main` is released. See\n[Developing Karotte](https://karotte.dev/extending/developing-karotte/).\n\nKarotte is under the [MIT license](https://github.com/preferencemodel/karotte/blob/main/LICENSE). The templates in\n`src/karotte/templates/` are under [MIT No Attribution](https://github.com/preferencemodel/karotte/blob/main/src/karotte/templates/LICENSE)\n(`MIT-0`), so environments created from them need no license notice.\n\nImages built from the templates contain third-party software under its own\nlicenses. They are based on Amazon Linux 2023. The `language-toolchains`\ntemplate installs GPL and LGPL software (gcc, GnuCOBOL, GNU Prolog, Free Pascal,\nthe libraries bundled with Julia, and others), Amazon Corretto (GPL-2.0 with the\nClasspath Exception) and Clojure (EPL-1.0) for the languages you enable. Mojo,\noff by default, has its own license terms; check them for the version you\nenable. If you distribute a built image, you're responsible for complying with\nthe licenses of the software in it.", "url": "https://wpnews.pro/news/show-hn-karotte-a-framework-for-building-robust-rl-envs", "canonical_source": "https://github.com/preferencemodel/karotte", "published_at": "2026-10-07 18:05:38+00:00", "updated_at": "2026-10-07 18:22:31.971280+00:00", "lang": "en", "topics": ["ai-research", "developer-tools", "ai-tools", "artificial-intelligence"], "entities": ["Karotte", "Preference Model", "Python 3.12", "uv", "Apple container", "Firecracker", "Amazon Linux 2023", "Anthropic"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/show-hn-karotte-a-framework-for-building-robust-rl-envs", "markdown": "https://wpnews.pro/news/show-hn-karotte-a-framework-for-building-robust-rl-envs.md", "text": "https://wpnews.pro/news/show-hn-karotte-a-framework-for-building-robust-rl-envs.txt", "jsonld": "https://wpnews.pro/news/show-hn-karotte-a-framework-for-building-robust-rl-envs.jsonld"}}