Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.nanoclaw.dev/llms.txt

Use this file to discover all available pages before exploring further.

v2.0.0 launch readiness: front-door rewrites
Updated
2026-04-22
Phase A of the v2 documentation sprint — bringing the pages every new user lands on into alignment with the v2 rewrite. All claims verified directly against upstream source (src/db/schema.ts, src/types.ts, src/config.ts, container/Dockerfile, src/delivery.ts) rather than upstream docs/ (which includes a stale architecture.md draft and a db-session.md that omits the container_state table).

Rewritten

  • introduction.mdx: v2 positioning — two-DB session IO, entity model, Node + Bun runtime split, OneCLI-only credentials. Token count updated to ~127k (~64% of context window). Source file table aligned with src/ as of v2.0.1.
  • quickstart.mdx: one-command bash nanoclaw.sh flow replaces the v1 fork-and-clone + Claude Code + /setup dance. Documents the three-level setup log contract (terminal, logs/setup.log, per-step raw logs) and the Anthropic OAuth exception.
  • installation.mdx: simplified to system requirements + platform prerequisites + bash nanoclaw.sh. Service management retained (launchd / systemd / WSL wrapper). File-structure tree updated for data/v2-sessions/, store/v2.db, and the per-session inbound.db + outbound.db layout.
  • integrations/overview.mdx: reframed around channels (13+) and providers (4), both living on dedicated branches (channels, providers). Expanded channel list to cover Teams, iMessage, Matrix, Google Chat, Webex, Linear, GitHub, WeChat, Resend, and the local /claw CLI.
  • features/customization.mdx: full v2 rewrite — verified trigger pattern code against src/config.ts, replaced nonexistent POLL_INTERVAL / SCHEDULER_POLL_INTERVAL with actual ACTIVE_POLL_MS / SWEEP_POLL_MS from src/delivery.ts, documented per-wiring engage config (engage_mode, sender_scope, ignored_message_policy, session_mode), kept OneCLI / legacy credential proxy as version tabs.

v2 update banners

Added <Warning> banners to pages pending a v2 rewrite (channel adapters moved to a single channels branch in v2, not per-channel skill/* branches):
  • integrations/whatsapp.mdx, telegram.mdx, discord.mdx, slack.mdx, gmail.mdx, x-twitter.mdx, skills-system.mdx
  • integrations/ollama.mdx (Ollama now lives on the providers branch — /add-ollama-provider or /add-ollama-tool)

Token count sync

  • integrations/skills-system.mdx: 43.8k → 127k
  • CLAUDE.md: maintenance note updated to reflect the v1.2.53 → v2.0.0 jump
v2.0.0: architectural rewrite docs
Updated
2026-04-22
Merged PR #187 — comprehensive rewrite of concepts, advanced, api, and features pages for the v2.0.0 ground-up architectural rewrite (qwibitai/nanoclaw#1919). Closed PRs #184, #185, #186 as superseded.

Updated

  • Two-database session model: inbound.db (host writes) + outbound.db (container writes) replace stdin/stdout piping and filesystem IPC — documented across concepts/architecture, advanced/ipc-system, advanced/container-runtime
  • Entity model: agent groups, messaging groups, wirings (many-to-many), users, and roles replace the v1 group/channel model — new concepts/groups and api/group-management
  • Bun-based agent runner: runs TypeScript directly (no compilation), shared source via read-only bind mount, tini as PID 1 — concepts/containers, advanced/container-runtime
  • Permissions system: engage modes (pattern/mention/mention-sticky), sender scope (all/known), unknown sender policies (strict/request_approval/public), approval flows — concepts/security, advanced/security-model
  • Delivery system: two-poll architecture (active 1s, sweep 60s) with delivery action registry — features/messaging
  • Task model: tasks as messages_in rows with cron recurrence and series tracking — concepts/tasks, features/scheduled-tasks, api/task-scheduling
  • OneCLI Agent Vault is the sole credential path; legacy credential proxy removed — advanced/security-model, api/configuration
  • Changelog: v2.0.0 release entry

Archived

  • v1 docs frozen at branch v1-docs (public-facing, docs only) and tag v1-docs-final (full repo snapshot)
v1.2.53 sync: token count, ONECLI_API_KEY, SDK config
Updated
2026-04-15

Updated

  • Token count: Updated from 43.7k to 43.8k in introduction and skills-system pages
  • Configuration: Added ONECLI_API_KEY env var to OneCLI Agent Vault tab
  • Container SDK config: Documented allowDangerouslySkipPermissions: true flag in containers page
  • Changelog: Added v1.2.53 product release entry
Weekly health check: v1.2.48–v1.2.52 sync
Updated
2026-04-07

Updated

  • Token count: Updated from 43.4k to 43.7k in introduction and skills-system pages
  • Changelog: Added v1.2.48–v1.2.52 product release entries
  • Skills system: Added /add-karpathy-llm-wiki to upstream skills listing; added /migrate-nanoclaw and /migrate-from-openclaw to operational skills
  • Troubleshooting: Added session artifact auto-pruning section with retention policy table
  • Architecture: Documented auto-compact threshold at 165k tokens
v1.2.46–v1.2.47 sync: store mount, reply context, requiresTrigger
Updated
2026-04-04
Triaged 3 automated Mintlify PRs (#175–#177). Merged #177 (most comprehensive), closed #175 and #176 (superseded). Cherry-picked unique content from closed PRs.

Updated

  • Store mount (rw): Documented store/ read-write mount for main agent across containers, container-runtime, security, security-model, groups, customization pages
  • requiresTrigger parameter: Added to register_group MCP tool description in containers and messaging pages
  • Reply context: Updated architecture database section with reply_to_message_id, reply_to_message_content, reply_to_sender_name columns
  • isMain preservation: Updated register_group handler snippet in messaging page
  • CONTAINER_MAX_OUTPUT_SIZE: Added truncation behavior note to configuration reference
  • Token count: Updated from 43.3k to 43.4k in introduction and skills-system pages
  • Changelog: Added v1.2.46 and v1.2.47 product release entries
Breaking change detection docs
Updated
2026-04-03
  • quickstart: Added breaking change changelog scan to /update-nanoclaw step list
  • integrations/skills-system: Added “Breaking change detection” subsection documenting the [BREAKING] entry scan and migration skill prompts
v1.2.45 sync: container timeout fix, new skill
UpdatedFixed
2026-04-02

Fixed

  • concepts/containers: Removed incorrect “15-second exec timeout” claim from stopContainer — the source uses execSync with no timeout, falling back to SIGKILL on failure

Updated

  • integrations/skills-system: Added /add-macos-statusbar utility skill to upstream skills listing
  • changelog/index: Added v1.2.45 release entry with new contributors and skill
PR triage: v1.2.43–v1.2.46 sync
Updated
2026-04-02
Reviewed and triaged 8 automated Mintlify PRs (#161–#168). Merged 4, closed 4 (superseded or stale token counts). Validated all changes against upstream source code at v1.2.46. Deleted 11 stale branches (4 PR + 7 orphan).

Updated

  • OneCLI version labels: Corrected Agent Vault version from v1.2.22+ to v1.2.35+ across 8 pages, added tabbed 401 troubleshooting
  • Ollama integration: Added 4 admin tools (ollama_pull_model, ollama_delete_model, ollama_show_model, ollama_list_running) gated by OLLAMA_ADMIN_TOOLS=true, noted Ollama removal from core
  • Stale session recovery: Added auto-recovery docs to troubleshooting and container-runtime lifecycle, plus manual sqlite3 fallback
  • Container runtime: Documented hostGatewayArgs(), --add-host flag, curl/git in container image
  • SDK options: Added settingSources and sender parameter docs
  • Reply context: Documented reply/quoted message support — reply_to attribute, <quoted_message> element, 4 new NewMessage fields, DB migration
  • Token count: Updated from ~42.4k to ~43.3k (22%)
  • v1.2.43 changelog: Added npm audit dependency fixes bullet
Health check fixes and remote-control security clarification
UpdatedFixed
2026-03-30
Merged automated health check PR #158 (4 of 5 fixes verified against upstream). Corrected the remaining inaccurate claim in a follow-up (#159).

Fixed

  • api/message-routing: Removed phantom channel?: ChannelType param from formatOutbound signature
  • features/scheduled-tasks: Updated TIMEZONE snippet to current resolveConfigTimezone() with IANA validation and UTC fallback
  • advanced/container-runtime: Fixed stopContainer code from async exec() callback to actual sync try/catch pattern
  • api/configuration: Added trace as valid LOG_LEVEL value (used by container runner for verbose output)
  • features/messaging: Corrected stale src/session-commands.ts reference to src/index.ts, and fixed misleading description of what index.ts does

Updated

  • advanced/remote-control: Fixed inaccurate security section — the remote control URL requires Anthropic sign-in, not just URL secrecy. Based on feedback from Gavriel Cohen.
Automated PR triage: v1.2.35–v1.2.42 sync
UpdatedFixed
2026-03-28
Reviewed and triaged 27 automated Mintlify PRs (#92–#151). Merged 6, consolidated 7 into a single verified PR (#153), closed 15 (superseded, fabricated, or conflicting). Validated all changes against upstream source code at v1.2.42. Deleted 41 stale mintlify/* branches.

Updated

  • OneCLI rebrand: Renamed “OneCLI Gateway” to “OneCLI Agent Vault” across 15 pages, updated URL to github.com/onecli/onecli. Code snippets preserved as-is (upstream source still uses “gateway” in code).
  • Message limits: Corrected 200-message cap to MAX_MESSAGES_PER_PROMPT (default 10) across messaging, architecture, and configuration pages
  • Dependencies: Removed phantom deps (pino, pino-pretty, yaml, zod), updated better-sqlite3 to 11.10.0 and cron-parser to 5.5.0
  • Token count: Updated from ~41.3k to ~42.4k
  • Mount property: Fixed containerConfig.mountsadditionalMounts with hostPath
  • SQL column: Fixed triggertrigger_pattern in troubleshooting query
  • Product changelog: Added entries for v1.2.35 through v1.2.42

New sections

  • Telegram forum topics (integrations/telegram) — message_thread_id tracking and automatic topic routing
  • Task scripts cost guidance (concepts/tasks, features/scheduled-tasks, api/task-scheduling) — API credit awareness, testing guidance, when-not-to-use advice
  • Auth 401 troubleshooting (advanced/troubleshooting) — short-lived vs long-lived OAuth tokens, claude setup-token fix
  • K8s image GC (advanced/troubleshooting) — Rancher Desktop kubelet garbage collection known issue
  • Text-style formatting (features/messaging) — corrected WhatsApp link rendering and Telegram Markdown v1 preservation
  • Security fixes (advanced/container-runtime, advanced/security-model, concepts/security) — stopContainer name validation, mount path colon rejection, isMain preservation, allowlist caching behavior
  • Configuration: Added MAX_MESSAGES_PER_PROMPT and LOG_LEVEL environment variables
  • Skills: Added /init-onecli (operational) and /add-emacs (upstream)

Closed as invalid

  • #150: Fabricated runtime-based credential routing — no such feature exists in upstream
  • #149: Wrong context_mode default (group instead of actual isolated)
  • #134: Promoted skill-only OLLAMA_ADMIN_TOOLS env var to core config
Automated PR triage: v1.2.24–v1.2.34 sync
NewUpdatedFixed
2026-03-26
Reviewed and triaged 43 automated Mintlify PRs (#86–#128). Merged 8, closed 30 (superseded or inaccurate), kept 5 pending v1.2.35 release. Validated all changes against upstream source code at v1.2.34.

New sections

  • Task scripts (concepts/tasks, features/scheduled-tasks, api/task-scheduling) — pre-execution bash scripts with wakeAgent JSON contract, ScriptResult type, execution flow
  • Per-group trigger patterns (features/messaging, concepts/groups, api/configuration) — custom trigger words per group instead of global @{ASSISTANT_NAME}
  • CLAUDE.md template system (concepts/groups, api/group-management) — automatic template copy during registration with isMain-based selection
  • Channel-formatting skill (features/messaging, api/message-routing, integrations/slack, integrations/skills-system) — per-channel text transformation table
  • WhatsApp pairing code auth (integrations/whatsapp) — tabbed QR code vs pairing code with phone number formatting rules
  • loginctl linger (installation, quickstart, advanced/troubleshooting) — systemd user service persistence after SSH logout
  • Mount-allowlist preservation (quickstart, advanced/troubleshooting) — /setup skips overwrite of existing config

Updated

  • Container base image: Fixed node:24-slimnode:22-slim across 6 pages (v1.2.22 changelog never upgraded to Node 24)
  • Timezone configuration: Added resolveConfigTimezone() with IANA validation and UTC fallback across 4 pages
  • Token count: Updated from ~39.8k to ~41.3k in introduction and skills system pages
  • Agent-runner cache: Documented mtime-based refresh instead of one-time copy
  • Customization: Removed phantom MAIN_GROUP_FOLDER constant
  • Product changelog: Added entries for v1.2.24 through v1.2.34

Closed as invalid

  • #125: Fabricated upstream PR #1346 as “stdin secrets / remove OneCLI” — actual PR is macOS menu bar status indicator
  • #119: Destructively removed credential proxy legacy tabs that are intentionally maintained
  • #88: Incorrectly documented sender as IPC send_message parameter (it’s a NewMessage field)
  • #89: Falsely claimed Telegram is a core channel on main (it lives in nanoclaw-telegram fork)
v1.2.23 source sync and credential proxy skill
UpdatedFixed
2026-03-24
Merged 3 automated PRs syncing docs with v1.2.23 upstream changes (#82, #84, #85). Closed #83 (would have removed legacy credential proxy tabs).

Updated

  • Legacy credential proxy tabs: Updated to reference /use-native-credential-proxy skill instead of deleted src/credential-proxy.ts file path
  • Skills system: Added /use-native-credential-proxy to upstream skills list
  • Architecture: Fixed startup sequence order (OneCLI agent sync before Remote Control restore), enriched database schema descriptions
  • IPC system: Documented in-container poll interval (500ms), removed undocumented sender field
  • Containers: Fixed .env shadow mount to note conditional existence check, clarified container stop timeout cascade
  • Configuration and installation: Added onecli --help references
  • Introduction and skills system: Updated token count from ~41k to ~39.8k
  • Product changelog: Updated v1.2.23 entry with credential proxy skill and dead code cleanup
OneCLI Agent Vault documentation
NewUpdated
2026-03-24
Added tabbed documentation for OneCLI Agent Vault secret injection (v1.2.22+) alongside legacy credential proxy across 9 pages. Added OneCLI as installation prerequisite.

Pages updated

  • Security overview and deep dive: Credential handling sections now use tabs for OneCLI Agent Vault vs Credential Proxy (legacy)
  • Configuration: Environment variables, example .env, and security notes updated with tabs
  • Container runtime: Container arguments code and key flags documented for both methods
  • Architecture: Startup sequence and container image updated
  • Installation: OneCLI added as prerequisite #5, @onecli-sh/sdk dependency
  • Containers, Ollama, Skills examples: Passing references updated to version-neutral language
  • Customization: Mount allowlist format updated (allowedPathsallowedRoots with per-root read/write control)
  • Product changelog: Added v1.2.22 release entry and v1.2.0 scheduled task fix
Upstream docs audit and platform fixes
UpdatedFixed
2026-03-24
Audited documentation in the upstream NanoClaw repo against the docs portal and submitted fixes via qwibitai/nanoclaw#1388.

Updated

  • Installation, introduction, creating-skills: Added Windows (WSL2) to all platform references — NanoClaw supports macOS, Linux, and Windows via WSL2
  • Introduction: Fixed token count from 34.9k to ~41k (matches auto-generated repo-tokens/badge.svg)
  • CLAUDE.md: Added guidance for automated PR triage, changelogs, upstream PR workflow, and token count source of truth

Upstream PR (#1388)

  • Added docs.nanoclaw.dev link to README header
  • Populated CHANGELOG.md with all releases from v1.1.0 through v1.2.21
  • Updated docs/REQUIREMENTS.md — multi-channel support, current RFS, WSL2 deployment
  • Updated docs/SECURITY.md — channel-neutral language
  • Updated docs/DEBUG_CHECKLIST.md — Docker (default) commands, channel-neutral
  • Added docs/README.md — index pointing to docs portal as authoritative source
PR consolidation and issue cleanup
NewUpdatedFixed
2026-03-23
Reviewed, triaged, and consolidated 10 automated Mintlify PRs (#60–#69). Verified all changes against NanoClaw source code, excluded 6 incorrect changes, and resolved the final 2 open issues.

New pages

  • Claw CLI (features/cli) — documents the /claw Python CLI for running agents from the command line (#64)

New sections

  • Apple Container vs Docker (advanced/container-runtime) — when to use each runtime, key differences table, switching instructions (closes #50)
  • Container internals (concepts/containers) — allowed tools table, conversation archival, global memory injection, additional directory auto-discovery
  • Slack message formatting (integrations/slack) — mrkdwn syntax differences and /slack-formatting skill
  • 200-message history cap (features/messaging) — documents the default query limit on message retrieval (closes #49)
  • Opt-in diagnostics (concepts/security, quickstart) — PostHog telemetry, consent flow, permanent opt-out (#68)

Updated pages

  • Skill system — updated from 3 to 4 skill types (feature, utility, operational, container) across 6 pages
  • Skills documentation — added utility skill structure, creation steps, and /claw as example
  • Architecture — fixed database table names (scheduled_tasks, task_run_logs), isScheduledTask flag, stdin description, startup sequence expansion
  • Message routing — added syncGroups to Channel interface
  • Configuration — fixed DATA_DIR description (runtime data, not legacy)
  • Skills system — added missing skills (/get-qodo-rules, /qodo-pr-resolver, /x-integration, /add-compact, /add-parallel, /slack-formatting)
  • Contributing — removed /clear from RFS (exists as /add-compact), updated to 4 skill types
  • SEO descriptions — improved frontmatter across 10 pages for better search discoverability

Fixed

  • 13-page factual error sweep against source code (#67) — credential proxy terminology, IPC operations, container mount behavior, removed phantom MCP tool
  • Consolidated overlapping fixes from 6 PRs into 2 clean PRs (#70, #71), closing 7 automated PRs as superseded
  • Excluded incorrect automated changes: Channel Factory rename, fabricated commit reference, speculative formatting table, unverified frontmatter claims

Housekeeping

  • Product changelog: added v1.2.20 (ESLint) and v1.2.21 (diagnostics) entries, fixed version ordering
  • Resolved all open issues — 0 issues remaining
  • Token count updated from “under 35k” to “~41k”
Content gap sweep — 13 issues resolved
NewUpdated
2026-03-20
Ran a full docs-gap analysis against the upstream codebase and resolved 13 of 15 content-gap issues. Two low-priority items remain open (#49, #50).

New pages

  • Ollama integration (integrations/ollama) — MCP server architecture, local model setup, third-party endpoints
  • Voice transcription (features/voice-transcription) — Whisper API (cloud) and whisper.cpp (local) with comparison table
  • Image vision (features/image-vision) — Multimodal image understanding for WhatsApp
  • PDF reader (features/pdf-reader) — Text extraction via poppler-utils
  • X (Twitter) integration (integrations/x-twitter) — Host+agent architecture, OAuth setup
  • Parallel AI (integrations/parallel-ai) — Web research MCP servers (quick search + deep research)

Updated pages

  • Skills system — Documented channel fork architecture (5 fork repos), updated merge workflows, separated upstream vs fork skills
  • Installation — Added Windows (WSL) support across all sections: prerequisites, Docker Desktop WSL 2 backend, troubleshooting
  • Security — Documented sender allowlist: trigger/drop modes, per-chat overrides, file format
  • Messaging — Added /compact session command and authorization rules
  • Telegram — Expanded agent swarm section with installation and per-bot config
  • WhatsApp — Added skills summary table and emoji reactions section
  • API reference — Fixed formatMessages signature (added timezone param and <context> header)
  • Configuration — Added OLLAMA_HOST, expanded ANTHROPIC_BASE_URL and SENDER_ALLOWLIST_PATH docs

Housekeeping

  • Deleted 6 stale mintlify/* branches
  • Created tracking issues for 3 remaining low-priority gaps (#49, #50)
Source code accuracy audit
Fixed
2026-03-19
Corrected 30+ inaccuracies across 12 documentation pages by auditing against the NanoClaw source code.
  • Fixed credential proxy documentation — removed incorrect claims about hot-swapping and auto-refresh
  • Corrected container runtime detection, base image references, and stdin secrets pattern
  • Updated task scheduling docs with correct table names and interfaces
  • Added missing .env shadow mount and CREDENTIAL_PROXY_HOST documentation
  • Fixed syncGroupMetadatasyncGroups across IPC docs
Logging and container docs
Updated
2026-03-19
  • Updated error log examples to show prompt redaction — input metadata only, no full prompt content
  • Added log privacy section to security docs
  • Corrected docker stop grace period from 15s to 1 second across all references
Source sync and remote control
Updated
2026-03-19
  • Fixed remote-control commands documentation
  • Deduplicated IPC docs
  • Added update_task to auth tables in API reference
Rendering fixes
Fixed
2026-03-18
Fixed rendering issues and remaining WhatsApp-as-default framing reported in issues #14–#18.
v1.2.17 source sync
NewUpdated
2026-03-18
  • Documented /capabilities and /status container-agent skills as new pages
  • Synced docs with source code v1.2.17 — corrected mount allowlist format, interval drift handling, credential proxy behavior, and IPC config
  • Documented IPC task snapshot refresh and update_task operation
Credential proxy and task lifecycle
Fixed
2026-03-16
Fixed stale documentation for credential proxy, database path, mount allowlist, and task lifecycle to match current source code.
Automation workflows
New
2026-03-16
  • Added Mintlify workflow to sync docs automatically on upstream code changes
  • Added weekly docs audit and skill branch documentation workflows
Portal branding and UX
Updated
2026-03-16
  • Applied NanoClaw branding with custom theme colors, fonts, and SEO metadata
  • Switched theme from Aspen to Mint for better sidebar typography
  • Cleaned up introduction page, footer, and removed callout CSS override
Portal launch
New
2026-03-15
Launched docs.nanoclaw.dev — the NanoClaw documentation site built with Mintlify.
  • Audited all content against v1.2.14 codebase
  • Added Remote Control and Docker Sandboxes pages
  • Made quickstart channel-agnostic (removed WhatsApp-as-default bias)
  • Updated skills documentation to reflect git-branch architecture
  • Fixed navigation structure with logical page ordering
  • Added Mintlify skill for consistent docs development
Last modified on April 23, 2026