Skip to content

feat(docker): home-server stack + headless bridges in --web mode (#73) - #76

Merged
chauncygu merged 1 commit into
mainfrom
feature/tab-accept-ghost-suggestion
Apr 30, 2026
Merged

feat(docker): home-server stack + headless bridges in --web mode (#73)#76
chauncygu merged 1 commit into
mainfrom
feature/tab-accept-ghost-suggestion

Conversation

@chauncygu

Copy link
Copy Markdown
Contributor

New top-level Dockerfile, docker-compose.yml, .env.example, .dockerignore and docs/guides/docker.md for home-server / DGX-Spark style deployments: web UI + configured bridges in one container, host Ollama reached via host.docker.internal:11434, ./workspace bind-mounted for Samba sharing, non-root cheetah user with host-inherited UID/GID, tini PID-1, healthcheck on /api/config.

Make --web a complete server mode by adding _start_headless_bridges(): build a shared AgentState, wire session_ctx.run_query to a minimal headless driver around agent.run(), then start any configured Telegram / WeChat / Slack bridge as a daemon thread in the same process. Without this, --web exited before the REPL's bridge auto-start ran, so a single container could only deliver web UI OR a phone bridge, not both.

Update README News + Web UI section, add Docker row to the docs table, and link the docker guide from each bridge's "Auto-start" subsection.

New top-level Dockerfile, docker-compose.yml, .env.example, .dockerignore
and docs/guides/docker.md for home-server / DGX-Spark style deployments:
web UI + configured bridges in one container, host Ollama reached via
host.docker.internal:11434, ./workspace bind-mounted for Samba sharing,
non-root cheetah user with host-inherited UID/GID, tini PID-1, healthcheck
on /api/config.

Make --web a complete server mode by adding _start_headless_bridges():
build a shared AgentState, wire session_ctx.run_query to a minimal
headless driver around agent.run(), then start any configured Telegram
/ WeChat / Slack bridge as a daemon thread in the same process. Without
this, --web exited before the REPL's bridge auto-start ran, so a single
container could only deliver web UI OR a phone bridge, not both.

Update README News + Web UI section, add Docker row to the docs table,
and link the docker guide from each bridge's "Auto-start" subsection.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@chauncygu
chauncygu merged commit 5e05c21 into main Apr 30, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant