7 Commits

Author SHA1 Message Date
Rohit Kushwaha
d2dc43aeeb docs(discord): add Discord Docker deployment guide and update Discord docs
- Add new deployment/discord-docker.mdx with full Docker setup guide
  (LLM provider tabs, Claude Code OAuth, Coolify, volume config)
- Update channels/discord.mdx with missing config vars (conversation
  all channels, exclude channels, status, activity), Message Content
  Intent, server-wide conversation mode, bot presence section
- Update guides/discord-ai-bot.mdx with Docker deployment and
  server-wide conversation mode
- Update deployment/docker.mdx with Claude Code OAuth section and
  Discord-only deployment reference
- Add Discord Docker to sidebar navigation in docs-config.json
2026-03-21 00:30:29 +05:30
Prakash
57b807c117 docs(seo): optimize titles, descriptions, headings, and cross-links
Comprehensive SEO optimization across 80 documentation pages:

Title optimization (all pages):
- Replaced generic titles like "Architecture", "Discord", "Slack"
  with search-intent titles like "PocketPaw Architecture: Event-Driven
  Message Bus", "Discord Bot Setup: Add PocketPaw to Your Server"
- All titles now 50-70 characters with qualifying keywords

Meta descriptions:
- Expanded 7 short descriptions (under 145 chars) to 150-160 chars
- Roadmap description expanded from 76 to 196 chars
- Troubleshooting, Codex CLI, OpenCode, WebMCP all expanded

H1 heading fixes:
- Ensured single H1 per page matching the frontmatter title
- All H1 headings updated to match new optimized titles

Internal cross-links:
- Added Related CardGroup sections to 60+ individual pages
- Each links to 2-3 related pages within and across sections
- Channels link to channel guides, backends link to Ollama guide, etc.

Em dash cleanup:
- Replaced em dashes with colons, periods, or double hyphens
  across multiple files in tools/, channels/, integrations/

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 17:41:36 +05:30
Rohit Kushwaha
ff7ab6227f fix(docker): production-ready Docker image with workspace, CLI backends, and networking (#254)
* 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>
2026-02-20 22:53:40 +05:30
Rohit Kushwaha
b6e24334bb fix: rename POCKETCLAW_ env prefix and paths to POCKETPAW_
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>
2026-02-14 23:44:46 +05:30
Rohit Kushwaha
4baecee0b9 Fix Docker auth: disable localhost bypass for container networking
Docker bridge networking means requests arrive from 172.x.x.x, not
127.0.0.1, so localhost_auth_bypass never triggers. Explicitly set it
to false and document that users authenticate with the access token.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 21:47:39 +05:30
Rohit Kushwaha
ccf321e994 Add Docker support with multi-stage build and Compose profiles
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>
2026-02-14 21:39:22 +05:30
Rohit Kushwaha
4bb7313829 feat: move docs into monorepo, add deploy workflow
Consolidate documentation from the separate pocketpaw-web repo into the
main pocketpaw repo. This keeps docs and code in sync so PRs can update
both atomically.

- Remove docs/ from .gitignore
- Remove docs' own .git (was pocketpaw/pocketpaw-web)
- Add .github/workflows/deploy-docs.yml (builds from docs/ subdirectory)
- Track all 120+ MDX pages, config, landing page, and public assets

The separate pocketpaw-web repo can now be archived.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 13:12:04 +05:30