v1.6.0
jo-inc/camofox-browserv1.6.0Apr 19, 2026by skyfallsin
AI Summary
Major update introducing a plugin system, persistence, VNC support, and a unified keyboard input endpoint.
Key Highlights
- New Plugin System allows extending functionality with self-contained plugins featuring event hooks and auto-installation.
- Persistence Plugin enabled by default saves cookies and localStorage across browser restarts.
- VNC Plugin allows visual interaction for handling CAPTCHAs and MFA flows.
- Unified `/type` endpoint supports keyboard mode for key presses and shortcuts.
New Features
- Plugin system
- Persistence
- VNC plugin
- Unified /type endpoint
Full Release Notes
# Camofox Browser v1.6.0
## What's New
### 🔌 Plugin System
Camofox is now extensible. Features can be built as self-contained plugins with their own dependencies, config, routes, and tests — loaded automatically from `plugins/`.
The plugin system includes an event bus with async mutating hooks (`emitAsync()`) so plugins can intercept and transform 29 browser events across 7 categories (session creation, navigation, downloads, and more), shared auth so plugins inherit the server's API key, and per-plugin configuration in `camofox.config.json`. A plugin manager handles installation:
```bash
node scripts/plugin.js install ./my-plugin
node scripts/plugin.js remove my-plugin
node scripts/plugin.js list
```
Plugins auto-install their own npm dependencies on startup. Want to add custom auth flows, logging, content filtering, or site-specific logic? Write a plugin — no need to fork the server. Three built-in plugins ship with this release to show the pattern.
### 💾 Persistence Plugin *(enabled by default)*
Browser sessions now survive restarts. Cookies and localStorage are saved per-user and restored automatically on the next session. No more re-authenticating after every reboot. Profiles are stored at `~/.camofox/profiles/` by default — configure it in `camofox.config.json`:
```json
{
"plugins": {
"persistence": {
"profileDir": "/your/custom/path"
}
}
}
```
*(Thanks @leoneparise [#50](https://github.com/jo-inc/camofox-browser/pull/50) and @eddieoz [#55](https://github.com/jo-inc/camofox-browser/pull/55) for the session management groundwork.)*
### 🖥️ VNC Plugin *(opt-in)* *(Thanks @leoneparise! [#65](https://github.com/jo-inc/camofox-browser/pull/65))*
Some sites just won't let you log in programmatically — CAPTCHAs, MFA flows, or bot detection that blocks headless browsers. The VNC plugin lets you see and control the browser visually in your web browser. Log in by hand like a normal user, and the persistence plugin automatically saves that authenticated session for headless use going forward.
Enable it in `camofox.config.json`:
```json
{
"plugins": {
"vnc": { "enabled": true }
}
}
```
Then open `http://localhost:6080` to interact with the browser.
### 🎬 YouTube Plugin *(enabled by default)*
YouTube transcript extraction moved from the server core into `plugins/youtube/`. Functionally identical — just better organized, and a good reference for how to build your own plugin.
### ⌨️ Unified `/type` Endpoint *(Thanks @LolipopJ! [#66](https://github.com/jo-inc/camofox-browser/pull/66))*
The `/type` endpoint now supports a keyboard mode for key presses, modifier keys, and shortcuts alongside the existing text input mode.
### 🐳 Multi-Arch Dockerfile *(Thanks @company8! [#51](https://github.com/jo-inc/camofox-browser/pull/51))*
Docker builds now download Camoufox and yt-dlp at build time with proper architecture detection. ARM and x86 builds just work.
### 🐛 Fixes
- Orphaned Camoufox temp files cleaned up on startup
- `CAMOFOX_PORT` restored to 9377 (was broken in a previous refactor)
- Async plugin hooks now properly awaited for mutating events
- Plugin dependency installer handles both string and object config formats
### 📦 Dependencies
- Security bumps via dependabot ([#63](https://github.com/jo-inc/camofox-browser/pull/63))
### Tests
347 tests passing (+44 new). Auth, plugin loading, persistence, VNC, and keyboard mode all covered.
## Upgrading
Drop-in replacement for 1.5.x. No breaking changes, no configuration changes needed.
## Thank You
Our biggest community release — 8 PRs from 6 contributors: @leoneparise ([#50](https://github.com/jo-inc/camofox-browser/pull/50)), @company8 ([#51](https://github.com/jo-inc/camofox-browser/pull/51)), @eddieoz ([#55](https://github.com/jo-inc/camofox-browser/pull/55)), @jecruz ([#61](https://github.com/jo-inc/camofox-browser/pull/61)), @mvanhorn ([#62](https://github.com/jo-inc/camofox-browser/pull/62), [#65](https://github.com/jo-inc/camofox-browser/pull/65)), @LolipopJ ([#66](https://github.com/jo-inc/camofox-browser/pull/66)).