Iron Proxy Gateway for NanoClaw
nanocoai/nanoclaw
Installs or refreshes Iron Proxy and its Iron Control web console for NanoClaw, with a local Docker setup, database, credentials and a human approval bridge.
Brings up the Omnigent server and Postgres as a Docker compose stack on any Docker host, and covers the Dockerfile's runtime and host build targets for extending it to a new platform.
$ npx skills add omnigent-ai/omnigent --skill deploy-docker-compose -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install omnigent-ai/omnigent deploy-docker-compose --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/omnigent-ai/omnigent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/deploy/docker .claude/skills/deploy-docker-compose && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "deploy-docker-compose" agent skill from https://github.com/omnigent-ai/omnigent/tree/main/deploy/docker into .claude/skills/deploy-docker-compose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "deploy-docker-compose", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/omnigent-ai/omnigent/tree/main/deploy/dockerType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add omnigent-ai/omnigent --skill deploy-docker-compose -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install omnigent-ai/omnigent deploy-docker-compose --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/omnigent-ai/omnigent.git skills-src && mkdir -p .agents/skills && cp -r skills-src/deploy/docker .agents/skills/deploy-docker-compose && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "deploy-docker-compose" agent skill from https://github.com/omnigent-ai/omnigent/tree/main/deploy/docker into .agents/skills/deploy-docker-compose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "deploy-docker-compose", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add omnigent-ai/omnigent --skill deploy-docker-compose -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install omnigent-ai/omnigent deploy-docker-compose --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/omnigent-ai/omnigent.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/deploy/docker .cursor/skills/deploy-docker-compose && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "deploy-docker-compose" agent skill from https://github.com/omnigent-ai/omnigent/tree/main/deploy/docker into .cursor/skills/deploy-docker-compose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "deploy-docker-compose", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/omnigent-ai/omnigent.git --path deploy/docker--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add omnigent-ai/omnigent --skill deploy-docker-compose -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install omnigent-ai/omnigent deploy-docker-compose --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/omnigent-ai/omnigent.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/deploy/docker .gemini/skills/deploy-docker-compose && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "deploy-docker-compose" agent skill from https://github.com/omnigent-ai/omnigent/tree/main/deploy/docker into .gemini/skills/deploy-docker-compose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "deploy-docker-compose", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install omnigent-ai/omnigent deploy-docker-composeInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add omnigent-ai/omnigent --skill deploy-docker-compose -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/omnigent-ai/omnigent.git skills-src && mkdir -p .github/skills && cp -r skills-src/deploy/docker .github/skills/deploy-docker-compose && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "deploy-docker-compose" agent skill from https://github.com/omnigent-ai/omnigent/tree/main/deploy/docker into .github/skills/deploy-docker-compose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "deploy-docker-compose", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add omnigent-ai/omnigent --skill deploy-docker-compose -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install omnigent-ai/omnigent deploy-docker-compose --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/omnigent-ai/omnigent.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/deploy/docker .opencode/skills/deploy-docker-compose && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "deploy-docker-compose" agent skill from https://github.com/omnigent-ai/omnigent/tree/main/deploy/docker into .opencode/skills/deploy-docker-compose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "deploy-docker-compose", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
deploy-docker-composeBrings up the Omnigent server and Postgres as a Docker compose stack on any Docker host, and covers the Dockerfile's runtime and host build targets for extending it to a new platform.
A single Dockerfile backs every non-Databricks deploy path: a web-builder stage builds the SPA with npm, a builder stage installs Omnigent into a Python virtual environment, a server-builder stage overlays the SPA bundle and adds psycopg, and the default runtime target copies that result and runs entrypoint.py. The image is deliberately an external-runner only, without tmux or harness SDKs, so it cannot execute agent code in-process; runners live on user machines and connect over a WebSocket tunnel.
A separate host target, built from the same Dockerfile, produces the omnigent-host image used by remote sandboxes such as a Modal-provisioned host: the inverse profile, with git and tmux but no SPA, psycopg or server entrypoint. Bringing the stack up locally is copying .env.example to .env, setting at least POSTGRES_PASSWORD, and running docker compose up with build, after which the server listens on port 8000. The compose file defines two services, a persistent Postgres 16-alpine instance and the Omnigent server, which waits on the Postgres healthcheck, with a build context at the repository root.
Read from SKILL.md and the folder at commit fa1dbe6. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (Shell and Python), which the agent can run.
Shell commands in SKILL.md call:
dockernpmuvFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use docker, npm and uv, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
POSTGRES_PASSWORDFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Omnigent Docker Compose Deploy loads about 1.3k tokens when it runs. Until then it costs about 90 tokens; SKILL.md has 553 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
cp .env.example .env # edit POSTGRES_PASSWORD at minimumIf you change it in `.env`, you need `docker compose down -v` beforeailed` | `POSTGRES_PASSWORD` changed in `.env` after the data volume was initialized | `docker compose down -v` then `upAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from omnigent-ai/omnigent at commit fa1dbe6, republished under its Apache-2.0 licence (© omnigent-ai). 553 words, ~1,250 tokens.
.claude/skills/deploy-docker-compose/SKILL.md (or your agent's skills folder). This skill also uses 13 other files; get the full folder from GitHub.The Dockerfile here is the single image used by every non-Databricks
deploy path. It bundles the FastAPI server + a pre-built web SPA
into a slim Python runtime. The compose file pairs it with Postgres
and exposes the server on port 8000.
The image is "external runner only" — it does NOT include tmux,
the harness SDKs, or anything that would let it execute agent code
in-process. Runners live on user machines and dial in via the
WebSocket tunnel. This keeps the image small (~250 MB), the security
boundary clean (server doesn't execute user code), and the deploy
shape consistent across hosts.
The same Dockerfile also has a host target — the prebaked Omnigent
HOST image (omnigent-host) that remote sandboxes boot from
(omnigent sandbox create --provider modal, server-launched managed
hosts). It is the inverse profile: full omnigent install plus git +
tmux, no SPA, no psycopg, no server entrypoint. Both images are
published by the same workflows with the same :sha-<short> /
:latest / :vX.Y.Z tag scheme. See the "Host image" section in
README.md here.
cd deploy/docker
cp .env.example .env # edit POSTGRES_PASSWORD at minimum
docker compose up -d --build
docker compose logs -f omnigent # Ctrl-C when you see "Uvicorn running"Server is on http://localhost:8000.
Dockerfile | Multi-stage build with two final targets. web-builder (node:20) runs npm install && npm run build on web/. builder (python:3.12) installs omnigent into /opt/venv; server-builder overlays the SPA bundle from web-builder and adds psycopg. The default target (runtime) copies the venv + /build/ from server-builder and runs entrypoint.py. --target host builds the host image instead (from builder: omnigent + git/tmux, no SPA/psycopg/entrypoint). |
Dockerfile.dockerignore | BuildKit-aware exclude. Trims deploy/databricks/, deploy/aws/, tests, dev tooling — keeps the build context small. |
entrypoint.py | Server process entrypoint. Reads DATABASE_URL, runs Alembic migrations, builds the SQLAlchemy stores, calls create_app(), runs uvicorn. Single source of truth for what env vars the container respects. |
docker-compose.yaml | Two services: postgres (16-alpine, persistent volume) and omnigent (built from the Dockerfile, depends on postgres healthcheck). Build context is ../.. (repo root). |
.env.example | Documents every env var the compose file passes through: POSTGRES_PASSWORD, OMNIGENT_PORT, all the OMNIGENT_AUTH_* and OMNIGENT_OIDC_* vars. |
README.md | Customer-facing quickstart + the OIDC walkthrough (GitHub OAuth, Google Workspace, generic OIDC). |
# Force a clean rebuild after a Dockerfile or source change
docker compose build --no-cache omnigent
# Reset everything (drops the DB + artifact volumes)
docker compose down -v
docker compose up -d --buildPOSTGRES_PASSWORD is only honored on first init of the data volume.
If you change it in .env, you need docker compose down -v before
up -d or the server will fail to authenticate against the existing
cluster.
| Symptom | Likely cause | First check |
|---|---|---|
Root URL returns {"service":"omnigent",…} instead of the SPA | npm build didn't produce the bundle inside the container | docker compose exec omnigent ls /build/omnigent/server/static/web-ui/ — empty = the web-builder stage didn't run cleanly. Rebuild with --no-cache. |
ModuleNotFoundError: No module named 'uvicorn' at startup | venv copy didn't pick up the install | Sanity-check the Dockerfile's VIRTUAL_ENV=/opt/venv is set before the uv pip install calls. |
psycopg.OperationalError: password authentication failed | POSTGRES_PASSWORD changed in .env after the data volume was initialized | docker compose down -v then up -d (wipes the DB). |
| Web UI loads but new chats hang forever | Expected — runners are external. The UI's landing page prints the CLI command to launch a runner. |
Cloud Run, Fly.io, Render, k8s, HF Spaces — they all consume the
same image. The platform-specific bit is the manifest (fly.toml,
service.yaml, Helm chart, Spaces config) and any platform-managed
TLS / DB wiring. Put that under deploy/<platform>/ next to
docker/, with its own README + SKILL.
deploy/README.md — the deploy-options menu.designs/OIDC_AUTH.md — full native OIDC design.© omnigent-ai, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 13 other files in deploy/docker of omnigent-ai/omnigent.
Open the folder on GitHubat commit fa1dbe6
Omnigent Docker Compose Deploy next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Omnigent Docker Compose Deploy this skillomnigent-ai/omnigent | 11k | — | ~1.3k | Automated safety check: Notes | Apache-2.0 | |
| Iron Proxy Gateway for NanoClawnanocoai/nanoclaw | 31k | — | ~4.6k | Automated safety check: Notes | MIT | |
| Cb Build TestBlkLeg/CircuitBreaker | 201 | — | ~1.9k | Automated safety check: Pass | MIT | |
| Monstermq Broker Configvogler75/monster-mq | 142 | — | ~2.2k | Automated safety check: Pass | GPL-3.0 | |
| Docker Deploymentfossasia/eventyay | 1.7k | — | ~574 | Automated safety check: Notes | Apache-2.0 | |
| Code PatternsAedelon/claude-code-blueprint | 120 | — | ~1.2k | Automated safety check: Pass | Custom licence |
nanocoai/nanoclaw
Installs or refreshes Iron Proxy and its Iron Control web console for NanoClaw, with a local Docker setup, database, credentials and a human approval bridge.
BlkLeg/CircuitBreaker
How Circuit Breaker is built, tested, packaged, and kept secret-safe — the make dev/verify/test targets, the PostgreSQL integration test database and its fixtures, the mono Docker image and native…
vogler75/monster-mq
Guide for configuring, deploying, and operating the MonsterMQ broker.
fossasia/eventyay
Docker Compose, container services, deployment. An agent skill from fossasia/eventyay.
Aedelon/claude-code-blueprint
Reference patterns for REST APIs, pytest/vitest testing, Docker multi-stage builds, GitHub Actions CI/CD, PostgreSQL, TypeScript generics, Python async, and React Server Components.
modelguide/modelguide
Trigger phrases - "reset local db", "recreate local postgres", "restore dump to local", "reset local database", "load backup locally"
omnigent-ai/omnigent
Scans Python agent code for framework imports and recommends the matching Omnigent executor type, or says when the framework is not natively supported yet.
omnigent-ai/omnigent
Runs the Omnigent load test with real hosts and multi-turn sessions against a mocked LLM, then explains the latency results from summary.md.
omnigent-ai/omnigent
Spins up an isolated Omnigent server, runner and mock model to prove a user-facing behavior or bug fix with recorded evidence instead of reasoning from code.
omnigent-ai/omnigent
Spins up a local Omnigent server and exercises the Antigravity (Gemini) SDK harness end to end: building agents, running real turns, smoke tests and bug-bashing.
omnigent-ai/omnigent
Gives patterns for generating a minimal, valid Omnigent agent directory: the config.yaml fields, the right executor type, and the files each agent needs.
omnigent-ai/omnigent
Spin up a live local Omnigent server and exercise the GitHub Copilot SDK harness end-to-end — build copilot agents, run real turns, smoke-test, and bug-bash.
Works with
Categories
Brings up the Omnigent server and Postgres as a Docker compose stack on any Docker host, and covers the Dockerfile's runtime and host build targets for extending it to a new platform. py. The image is deliberately an external-runner only, without tmux or harness SDKs, so it cannot execute agent code in-process; runners live on user machines and connect over a WebSocket tunnel.
Omnigent Docker Compose Deploy fits situations like: standing up the Omnigent server locally or on a VPS with Docker; debugging why the Omnigent compose stack won't start on a host; building the separate host image used by remote sandbox providers.
Run `npx skills add omnigent-ai/omnigent --skill deploy-docker-compose -a claude-code`. Or copy the skill folder (deploy/docker in omnigent-ai/omnigent) into .claude/skills/deploy-docker-compose in your project. Claude Code loads it when a task matches its description.
Run `npx skills add omnigent-ai/omnigent --skill deploy-docker-compose -a codex`. Or copy the skill folder (deploy/docker in omnigent-ai/omnigent) into .agents/skills/deploy-docker-compose in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add omnigent-ai/omnigent --skill deploy-docker-compose -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/deploy-docker-compose, .gemini/skills/deploy-docker-compose, .github/skills/deploy-docker-compose and .opencode/skills/deploy-docker-compose in your project.
Going by SKILL.md and its folder, Omnigent Docker Compose Deploy needs a shell and Python for the scripts in its folder, the command-line tools its instructions call (docker, npm and uv) and credentials named POSTGRES_PASSWORD. Our summary lists: Docker and Docker Compose.
SKILL.md contains no URLs. Its commands use docker, npm and uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Omnigent Docker Compose Deploy is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.3k tokens (SKILL.md is roughly 5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Omnigent Docker Compose Deploy: Iron Proxy Gateway for NanoClaw (nanocoai/nanoclaw, 31k stars), Cb Build Test (BlkLeg/CircuitBreaker, 201 stars), Monstermq Broker Config (vogler75/monster-mq, 142 stars) and Docker Deployment (fossasia/eventyay, 1.7k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
omnigent-ai (a GitHub organization) maintains it in omnigent-ai/omnigent, which has 10,633 GitHub stars. The repository holds 19 skills in this directory. The repository was last updated on October 7, 2026.
Source: omnigent-ai/omnigent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.