0.15.0 (2026-06-10)
⚠ BREAKING CHANGES
- CrwClient() with no API key now targets the cloud and raises if unauthenticated, instead of running locally. Set CRW_LOCAL=1 for the previous zero-config local behavior.
Features
- add TypeScript SDK (crw-sdk) (1dd96f7)
- cloud-first default + full client SDK parity (21e819e)
- fold langchain/crewai adapters into crw.integrations extras (cd49120)
- release: publish crw-cli (and crw-browse) to crates.io (b3d8004)
- search: accept native SearXNG categories as passthrough (b3bcc5d)
Bug Fixes
- antibot: detect Google rate-limit/bot-wall pages served with HTTP 200 (08bb46e)
- ci: compile TS tests to JS so the SDK suite runs on Node 18/20 (e1b7546)
- extract: avoid doubling chat/completions in structured base_url (3816bb6)
- map: fold hyphen/underscore param spellings, add compare actions (f34ae12), closes #128
- npm: declare node>=18 engines on crw-mcp packages (3c953fe)
- renderer: reap CDP target + context on PoolGuard cancellation drop (0eebadc)