Skip to content

bresleveloper/openclaw-dev-mode

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

17,220 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

OpenClaw Dev Mode β€” Personal AI DEV Assistant

Presenting - Dev Mode, Lowering Un-Necessary Security Features,

BACK to FUN LEVEL!

OpenClaw

What have I done

HTML with --dev-mode list

  • 2026-03-05 - created dev mode on V2026.3.2
  • 2026-03-06 - updated to mains V2026.3.7 + removed interactions with openclaw.json (now saves devMode in .env)

How to install

Prerequisites

  • An existing OpenClaw installation (this fork is based on V2026.3.2)
  • Node.js 22.12+
  • Python 3 (for the Hub notification server)
  • Git

Installation (VPS / Linux)

# 1. Stop the gateway
openclaw gateway stop

# 2. Back up the existing openclaw installation
mv /usr/lib/node_modules/openclaw /usr/lib/node_modules/openclaw.bak

# 3. Clone the fork
git clone https://github.com/bresleveloper/openclaw-dev-mode.git /opt/openclaw-dev-mode

# 4. Install dependencies
cd /opt/openclaw-dev-mode
npm install --ignore-scripts

# 5. Symlink our fork into the original location
#    (required because the systemd gateway service points to /usr/lib/node_modules/openclaw/)
ln -s /opt/openclaw-dev-mode /usr/lib/node_modules/openclaw

# 6. Create a CLI wrapper
echo '#!/usr/bin/env bash' > /usr/local/bin/openclaw
echo 'set -euo pipefail' >> /usr/local/bin/openclaw
echo 'exec node /opt/openclaw-dev-mode/openclaw.mjs "$@"' >> /usr/local/bin/openclaw
chmod +x /usr/local/bin/openclaw

# 7. Enable dev mode
echo 'OPENCLAW_DEV_MODE=1' >> ~/.openclaw/.env

# 8. Start the gateway
openclaw gateway start

Updating

cd /opt/openclaw-dev-mode && git pull && openclaw gateway restart

Reverting to original openclaw

openclaw gateway stop
# Remove OPENCLAW_DEV_MODE=1 from ~/.openclaw/.env
sed -i '/OPENCLAW_DEV_MODE/d' ~/.openclaw/.env
rm /usr/lib/node_modules/openclaw
mv /usr/lib/node_modules/openclaw.bak /usr/lib/node_modules/openclaw
openclaw gateway start

Verify it works

# Check config values are unredacted (API keys visible β€” means dev mode is active)
openclaw config get models.providers

About

OpenClaw is AMAZING. And security is awesome for prod. And a hell of a buzz killer for dev/other situations.

I cloned, listed all security features (latest - V2026.3.2) and just added a simple flag to relax them:

# Add to ~/.openclaw/.env
OPENCLAW_DEV_MODE=1

Because the beauty of any opensource project is that it's MINE and I am allowed to enjoy it to its full extent.

What dev-mode changes

ID What it does
SEC-15a Lighter safety section in system prompt
SEC-27 Channel metadata treated as trusted (no "UNTRUSTED" wrapper)
SEC-59 Skip messaging profile default in onboarding
SEC-67 Default compaction mode (no safeguard)
SEC-70 Skip browser navigation URL checks
SEC-71 50MB web fetch cap (instead of 2MB)
SEC-72 Unredacted config in CLI (API keys visible)
SEC-78 No control plane rate limiting
SEC-79 50MB prompt cap (instead of 2MB)
SEC-80 Skip hooks token uniqueness check
SEC-96 All env vars passed through to child processes
FIX-01 Auto-bootstrap MEMORY.md in new workspaces

Hub notification plugin (optional)

Dev-mode includes a bundled Hub notification server that gives agents tools to send and receive notifications. It auto-starts on 127.0.0.1:10020 when dev-mode is active.

The Hub registers three agent tools: hub_notify, hub_pending, hub_done.

How it works: When a notification arrives (from a cron job, an app, or another agent), the Hub doesn't just store it β€” it forwards the notification through OpenClaw's /v1/chat/completions API. This means the notification enters the agent's active session as a real message, triggering a full cognitive response: the agent reasons about it using its system prompt, memory, and context, then delivers its response through the configured channel (WhatsApp, Telegram, etc.). The agent then calls hub_done to close the loop.

If you already run your own Hub server (e.g. on a different port), the auto-start will not interfere β€” it only spawns if port 10020 is free. You can also disable auto-start by removing or not running the bundled server.py, and point the plugin config at your existing hub instead.

Changing the hub port

If your existing hub uses a different port, update your openclaw config to match:

openclaw config set plugins.hub.port 10021

Full documentation

See the Hub README for the full API reference, setup guide, and configuration options.

About

Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 86.9%
  • Swift 8.5%
  • Kotlin 2.0%
  • Shell 1.0%
  • JavaScript 0.7%
  • CSS 0.4%
  • Other 0.5%