Roost

Roost is a single Docker container for homelab users that hosts remote coding agents such as Claude Code, Codex, and opencode, keeping them running after you…

  • AI
  • Development
  • Productivity
  • Tools & Utilities
Roost is a single Docker container for homelab users that hosts remote coding agents such as Claude Code, Codex, and opencode, keeping them running after you close your laptop; you can drive them over SSH with herdr from any machine or phone using public-key-only access and no Docker socket.

Platform availability

Available on 1 of 9 platforms

  • Unraid
  • TrueNAS (not listed)
  • Umbrel (not listed)
  • ZimaOS (not listed)
  • Proxmox (not listed)
  • Helm (not listed)
  • Mac (not listed)
  • Windows (not listed)
  • Linux (not listed)

Health score?A 0-100 score computed nightly from four factors: maintained (40%: recent commits and steady activity), popular (25%: GitHub stars, log scale), easy to install (20%: platforms, install notes, setup guides, Docker image) and light to run (15%: minimum RAM, ARM support). When the source code has been checked, a fifth factor, security check (20%: automated scan for committed secrets, unsafe desktop-app settings, known-vulnerable dependencies and project hygiene; any serious finding caps it at 20), is added. Factors without data are left out and the rest are rescaled.

38/100 Low

Maintained
75last commit 5 days ago
Popular
00 GitHub stars
Easy to install
351 install platform, install notes, Docker image
Light to run
108 GB minimum RAM

Availability: platform listings confirmed today

GitHub stars
0
Open issues
0
Last commit
2026-10-17
Latest release
v0.1.0
License
MIT
Activity
rising

Checked 3 days ago - source: GitHub (aronjanosch/roost)

Resources & Compatibility

Minimum requirements: 8 GB RAM, 30 GB disk.

Checked 3 days ago - source: Docker Hub image tags and published docs

First-install notes

  • Install the RoosterJS package first Install the RoosterJS JavaScript package (a set of files your app uses) with your package manager by running npm install roosterjs or yarn add roosterjs. Without those files, your app cannot create the editor and the page may fail to load. source
  • Give the editor a visible empty box Tell createEditor to use a real, empty HTML div (a named box on the page) with an id. If there is no element for it, the editor has nowhere to display text and buttons like Bold will do nothing. source
  • Clean up React editors when screens close If your app uses React (a JavaScript framework for building user interfaces), make sure the editor is closed when the screen that uses it is closed. Without that cleanup, the old editor can stay active in the background and cause confusing errors or duplicate editing behavior. source
  • Connect to your agents Paste your public key(s) into the Public keys field (comma-separated), then connect with: ssh -p 2222 agent@<unraid-ip>. Access is pubkey-only SSH as the 'agent' user, with no sudo and no Docker socket. The first start installs the tools and takes a few minutes — watch the container log. source
  • Install Deploy Roost as a single Docker container using the repository's compose file, publish one port, and configure your SSH public key for the agent user. source

Fetched 2 days ago - each note links to its source

Alternatives

No alternatives collected yet.

Common questions

What are the SSH connection details for roost?

Use SSH port 2222 as the user agent with pubkey-only authentication. Add your public key(s), comma-separated, to PUBLIC_KEYS before connecting.

Does roost take a while to become ready on first start?

Yes, the first start installs harnesses, herdr, gh and glab, headless Chromium and Playwright MCP via mise, which can take a few minutes. Check the log for progress.

How can I move existing agent logins into roost?

Use the included roost-migrate script to copy logins from your laptop into the container. It asks per group and does not copy private keys.

How do I update roost without losing existing data?

Run docker compose pull and docker compose up -d. Logins, repos and tools remain in the volume, but running agent sessions stop during the container recreate.

Can I use roost from my phone or outside my local network?

Any SSH app works with the same host, port 2222, user agent and your key, but the phone must reach the host via the same LAN or a VPN such as Tailscale. Do not expose port 2222 to the internet.

Answers sourced from github.com

Community

Collected 2 days ago - public community threads