- Added
/use-native-credential-proxyskill — opt-in restoration of the built-in.env-based credential proxy for users who prefer it over OneCLI - Removed dead
src/credential-proxy.tscode (unused since v1.2.22) - Updated token count to 39.8k tokens (20% of context window)
- Upgraded Zod dependency from v3 to v4 (
^4.3.6)
- Replaced credential proxy with OneCLI gateway for container credential injection
- Updated container base image from
node:22-slimtonode:24-slim - Updated token count to 40.7k tokens (20% of context window)
- Added opt-in diagnostics via PostHog — collects anonymous system info (OS, architecture, version, selected channels) during
/setupand/update-nanoclawwith explicit user consent - Three-option prompt: Yes (send once), No (skip), Never ask again (permanently opt out)
- No runtime telemetry — diagnostics run only in skill workflows, not in the application itself
- Added ESLint configuration with error-handling rules across the codebase
- Reduced
docker stoptimeout for faster container restarts (-t 1flag — containers are stateless)
- Added read-only
/capabilitiesand/statuscontainer-agent skills
- Tasks snapshot now refreshes immediately after IPC task mutations (contributed by @mbravorus)
- Fixed remote-control prompt auto-accept to prevent immediate exit
- Added
KillMode=processso remote-control survives service restarts (contributed by @gabi-simons)
- Added
/remote-controlcommand for host-level Claude Code access from within containers
Major architecture change: skills are now git branches, channels are separate fork repos.
Features
- Skills live as
skill/*git branches merged viagit merge— no more marketplace or plugin system - Added Docker Sandboxes announcement and manual setup guide
- Added
nanoclaw-docker-sandboxesto fork dispatch list
Breaking
- Skills are no longer installed via marketplace or plugin commands — use
git mergeworkflow
Fixes
- Fixed setup registration to use
initDatabase/setRegisteredGroupwith correct CLI commands - Auto-resolve
package-lockconflicts when merging forks - Bumped
claude-agent-sdkto ^0.2.76
Features
- PDF reader skill: Read and analyze PDF attachments
- Image vision skill: Image analysis for WhatsApp
- WhatsApp reactions skill: Emoji reactions and status tracker
Fixes
- Fixed task container to close promptly when agent uses IPC-only messaging
- Fixed WhatsApp pairing code written to file for immediate access
- Fixed WhatsApp DM-with-bot registration to use sender’s JID
- Added
LIMITto unbounded message history queries for better performance
- Fixed misleading
send_messagetool description for scheduled tasks
- Added
/add-ollamaskill for local model inference - Added
update_tasktool and return task ID fromschedule_task
- Updated
claude-agent-sdkto 0.2.68
- CI formatting fix
- Fixed
_chatJidrename tochatJidinonMessagecallback
- Added sender allowlist for per-chat access control to restrict who can interact with the agent
- Version bump (no functional changes)
Major release introducing multi-channel architecture. WhatsApp is no longer hardcoded — all channels self-register via a channel registry.
Features
- Channel registry: Channels self-register at module load time via
registerChannel()factory pattern isMainflag: Explicit boolean replaces folder-name-based main group detection- Channel-prefixed group folders: Groups use
whatsapp_main,telegram_family-chatconvention to prevent cross-channel collisions - Unconfigured channels now emit WARN logs naming the exact missing variable
Breaking
- WhatsApp moved to skill: No longer part of core — apply with
/add-whatsapp ENABLED_CHANNELSremoved: Orchestrator usesgetRegisteredChannelNames(); channels detected by credential presence- All channel skills simplified: No more
*_ONLYflags — all use self-registration pattern
Fixes
- Prevent scheduled tasks from executing twice when container runtime exceeds poll interval
Migration
Existing WhatsApp users: run/add-whatsapp in Claude Code CLI after updating.- Added CJK font support (
fonts-noto-cjk) for Chromium screenshots (contributed by @neocode24)
- Fixed wrapped WhatsApp message normalization before reading content
- Added third-party model support — use models beyond Claude
- Added
/update-nanoclawskill for syncing customized installs with upstream (replaces old/update) - Added Husky and
format:fixscript for consistent formatting
Biggest pre-1.2 release — added Slack channel, refactored Gmail, and improved CI.
Features
- Added
/add-slackskill - Restructured add-gmail skill for new architecture with graceful startup when credentials missing
- Removed deterministic caching from skills engine
- Added
.nvmrcspecifying Node 22 - CI optimization, logging improvements, and codebase formatting
- Added CONTRIBUTORS.md and CODEOWNERS
Fixes
- Fixed WhatsApp QR data handling
- Rebased core skills (Telegram, Discord, voice) to latest main
- Improved error handling for WhatsApp Web version fetch (follow-up to v1.1.1)
Features
- Added
/updateskill to pull upstream changes from within Claude Code - Replaced ‘ask the user’ with
AskUserQuestiontool in skills
Security
- Fixed critical skills path-remap root escape (including symlink traversal)
Fixes
- Fixed empty messages from polling queries
- Fixed fallback name from ‘AssistantNameMissing’ to ‘Assistant’