* fix(docker): mount workspace volume for agent-created files (#238)
Files created by the agent (via Claude SDK Write/Bash tools or native
filesystem tools) were landing in the container's ephemeral filesystem
and lost on restart. This adds a dedicated workspace directory that is
bind-mounted to the host, so agent-created files persist and are
directly accessible.
- Dockerfile: create /home/pocketpaw/workspace, set FILE_JAIL_PATH env
- docker-compose.yml: bind-mount ./workspace to the container workspace
- claude_sdk.py: use settings.file_jail_path as cwd instead of Path.home()
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(docker): install Node.js + Claude Code CLI in image
The claude_agent_sdk backend requires the `claude` CLI binary (a Node.js
package). Without Node.js and the CLI installed, the backend errors with
"Claude Code CLI not found".
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(docker): also install Codex CLI for codex_cli backend
Node.js is already in the image for Claude Code CLI — adding
@openai/codex in the same npm install so the codex_cli backend
also works out of the box.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(health): correct claude-agent-sdk package name in health checks
The backend dependency check and playbook referenced the wrong package
name `claude-code-sdk` instead of `claude-agent-sdk`, causing a false
FAIL on the --doctor health check.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(docker): add host.docker.internal for host-side Ollama access
Containers can't reach localhost on the host. Adding extra_hosts with
host-gateway lets the container resolve host.docker.internal, so users
running Ollama on the host can set:
POCKETPAW_OLLAMA_HOST=http://host.docker.internal:11434
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* docs: update Docker deployment docs for workspace volume and Ollama
- Document workspace bind mount and POCKETPAW_FILE_JAIL_PATH
- Add host Ollama instructions (host.docker.internal)
- Note Node.js + Claude Code CLI + Codex CLI in image overview
- Add Copilot SDK limitation note
- Update README Docker section with workspace and Ollama hints
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(docker): harden Node.js install and document image size
Replace curl|bash NodeSource script with multi-stage copy from the
official node:22-slim image, eliminating unpinned remote script
execution. Add image size callout (~200 MB) to Docker docs with
instructions for stripping the Node.js layer.
Addresses review feedback from #254.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Complete the user-facing rename from pocketclaw to pocketpaw across
env vars, Docker paths (~/.pocketclaw → ~/.pocketpaw), and all
documentation references.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Adds a production-ready Dockerfile (multi-stage, non-root user, Playwright
Chromium, tesseract OCR) and docker-compose.yml with optional Ollama and
Qdrant services behind Compose profiles. Includes .env.example template,
.dockerignore, and updated README + docs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>