Files
2dph/docs/picoclaw.md
eSlider 168a0a3b53
Tests / Test (push) Skipped
Tests / OCR (tesseract fixture) (push) Skipped
Tests / Release (semver) (push) Skipped
Tests / Test (pull_request) Failing after 5s
Tests / OCR (tesseract fixture) (pull_request) Failing after 4s
Tests / Release (semver) (pull_request) Skipped
feat: DuckDB quantiles in-process (gcc CGO), not Ladybug.
OQ3: internal/duckstats + bin/qa/stats.go. Zig stays Ladybug-only.
mikefarah/yq for small structured slices. Gitea #30.
2026-08-14 11:29:22 +01:00

1.5 KiB

PicoClaw profile (reference agent)

2dph is the memory/fact gate. Compose profile picoclaw runs the official PicoClaw gateway (docker.io/sipeed/picoclaw:v0.3.1) plus brain-mcp and the CPU reasoner. Default agent model is qwen3.5:9b (RAM path, D18). Weights stay in the reasoner volume, not in the 2dph image. No secrets in git: Ollama needs no key; MCP is local HTTP.

docker compose --profile picoclaw up -d
# already serving :8630 / :11435:
docker compose --profile picoclaw up -d --no-deps picoclaw

Gateway: 127.0.0.1:18790. Brain MCP: http://127.0.0.1:8630/mcp. Cursor-style clients can use deploy/picoclaw/mcp.json.example. PicoClaw itself uses deploy/picoclaw/config.json (127.0.0.1 + host network — loopback publishes are not reachable via docker0).

OpenAPI: GET http://127.0.0.1:8630/openapi.json.

Before a factual reply: searchgetaudit. throttled is not a negative finding. See skills/picoclaw/SKILL.md.

System performance (MCP gates + qwen3.5:9b tool_call + PicoClaw gateway):

./qa/system_perf.py --json | yq '.gates'
REASONER_MODEL=qwen3.5:9b ./qa/system_perf.py --reasoner --picoclaw --json | yq '.reasoner'

The default agent model is qwen3.5:9b. PicoClaw context_window is 8192 (heuristic max_tokens*4 at 512 is 2048, too small for MCP tool schemas). request_timeout is 600s for a CPU turn (tool_call + MCP search + answer).