What's New
Added
POST /tabs/:tabId/evaluate-extended — Execute JavaScript with extended timeout up to 300 seconds
- Configurable timeout (100ms to 300s, default 30s)
- Conditional API key authentication (when
CAMOFOX_API_KEY is set)
- Per-user fixed-window rate limiting (default: 20 req/minute)
- New env vars:
CAMOFOX_EVAL_EXTENDED_RATE_LIMIT_MAX, CAMOFOX_EVAL_EXTENDED_RATE_LIMIT_WINDOW_MS
- In-memory rate limiter middleware
- Unit + E2E tests for evaluate-extended
Changed
- Refactored
evaluateTab() to share internal logic — no behavior changes to existing /evaluate
Fixed
- Restored missing
POST /sessions/:userId/toggle-display route (was causing 404 errors from MCP toggle_display tool)
Install / Update
npm install camofox-browser@latest
# or
docker pull ghcr.io/redf0x1/camofox-browser:latest