self-host skill
A skill and a Go binary: with your approval the agent installs apps from a 93-app catalog on your home server via Docker Compose
- 1,508 ★ on the repository
- Last commit
- Apache-2.0
Broad access
Why this level
- Runs Docker containers on your machine, creates app accounts and API keys and stores secrets in `~/.self-host`
- Can expose apps to the internet through Tailscale, Cloudflare or a proxy, which makes a service with personal data reachable from outside
- The `curl | bash` installer runs downloaded code with your privileges
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add skills/self-hostDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- Runs Docker containers on your machine, creates app accounts and API keys and stores secrets in `~/.self-host`
- Can expose apps to the internet through Tailscale, Cloudflare or a proxy, which makes a service with personal data reachable from outside
- The `curl | bash` installer runs downloaded code with your privileges
This is third-party code. Review the repository files before installing.
What it does
self-host is a Go binary plus a `self-host` skill. The binary embeds a catalog of 93 apps and 7 recipes (app bundles), runs them through Docker Compose, creates accounts and API keys where the app supports it and wires apps together. The skill is short: it points the agent to the guide built into the binary, which `self-host skill` prints. The agent follows an order: inspect the host, make a plan, get your approval, apply, verify. Inspection uses commands with the `--json` flag: `self-host status`, `self-host doctor`, `self-host apps list`. An install such as `self-host install ntfy --exposure local --yes --json` runs only after your explicit approval, and secrets go in as a file through `--set-file`. You get the same actions in a five-tab terminal dashboard. You and the agent work on one project in `~/.self-host`. The repository also holds DCM, a web builder for Docker Compose files at self-host.fyi/compose.
Who it is for. For people who want to replace paid services such as cloud photos and storage with their own home server and hand the setup to Claude Code, Codex or another agent that can run commands on that machine.
Good fit when
- You want to replace Google Photos or Dropbox with your own app and ask the agent to pick one from the catalog
- You need a set of media-library apps wired together without editing configs by hand
- The agent must check the home server: `self-host status --json` shows addresses, container health and unfinished setup
- You need encrypted backups of the apps: `self-host backup --encrypt` does it
Not a fit when
- You run native Windows: Linux, macOS and WSL2 are supported
- You need indexers, trackers or content sources: the binary ships none
- You need a guarantee of safe upgrades between versions: update checks do not replace migration tests
Example request
Use self-host to replace Google Photos with my own photo server. Inspect the host, show the plan and wait for my approval before changing anythingLimitations
- Needs Docker with the Compose v2 plugin; self-host does not install Docker itself.
- By default apps are reachable on the home network, with ports open on all host interfaces. Access from the internet needs its own explicit approval that names the risk.
- A backup includes app folders, host settings, state and secrets, so keep the archive and its passphrase apart. Media libraries and data outside app folders are not included.
- The apps belong to third parties under their own licenses; self-host installs and connects them but does not maintain them.
- Anonymous telemetry is on by default and turns off with `SELF_HOST_NO_TELEMETRY=1`.
How to disable. `self-host skill remove` removes the skill. `self-host remove <app>` stops and removes installed apps, and the binary is deleted like any file from `~/.local/bin` or with the package manager you used.
FAQ
How do I install self-host in Claude Code?
Run `curl -fsSL https://self-host.fyi/install | bash`, then `self-host skill install`. In Claude Code the skill runs with `/self-host`, in Codex with `$self-host`.
What does installing the binary do to the system?
It installs only the binary and deploys nothing. Apps start later, after your approval, and only inside the self-host project.
Which agents are supported?
Six: Claude Code, Codex, OpenCode, Pi, Hermes Agent and OpenClaw. The agent needs permission to run commands on the machine that will host the apps.
Can I expose the apps to the internet?
Yes, through Tailscale, Cloudflare or your own proxy, and every such change needs separate approval. The developer advises against forwarding port 80 on the router for easy names.
How is DCM different from self-host?
DCM builds `docker-compose.yaml` and `.env` files in the browser and does not run setup or links. self-host installs apps, creates accounts, connects them and checks the result.
Discussion
No questions or reviews yet.
Related
SkillsDocker Skills
docker-skills
Official Docker skills for agents: Dockerfile and builds, Compose, Sandboxes, Docker Agent and a skill that confirms irreversible actions
A Go CLI that compares a server with its last snapshot, reports only changes that matter and serves them to an agent via MCP
The os-usage skill: an agent deploys apps, databases and domains in an Infinite OS container through the os CLI.
An installer deploys selected AI services on a separate VPS and provides commands to configure and maintain the stack
SkillHub (iFlytek)
skillhub
A self-hosted enterprise skill registry: publishing, search, versions, tags and tokens, MinIO storage, plus the @astron-team/skillhub CLI
A Nix and Home Manager module: skill sources are pinned in a flake and chosen SKILL.md folders are laid out into agent directories
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Authentication | Repository stars | Main difference |
|---|---|---|---|---|
| self-host (this card) | no | 1,508 | ||
| Coolify MCP | no | API key | 620 | manages an existing Coolify instance and does not install an app catalog from scratch |
| Docker MCP by QuantGeekDev | no | not required | 504 | gives the agent general Docker commands, with no app catalog or links between apps |
README in short
The README covers the repository's two tools, the DCM builder and the self-host binary. It continues with install methods, the command list, app access options, backups and a responsible use section that refuses to support piracy. A separate block explains what telemetry sends.
README badge
Original SKILL.md
--- name: self-host description: Load when the person wants to run or own apps on their own machine, replace a subscription (Netflix, Google Photos, Dropbox, a password manager), or asks about anything already set up with self-host, such as "where is my movie app?". license: Apache-2.0 --- # self-host Run `self-host skill` and follow it. If `self-host` is not found, install it, then run `self-host skill`: ```bash curl -fsSL https://self-host.fyi/install | bash export PATH="$HOME/.local/bin:$PATH" ``` Loading this skill conveys intent, never approval.