nodmix 2026.5.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11573 -0
- package/LICENSE +21 -0
- package/README.md +486 -0
- package/docs/.i18n/README.md +81 -0
- package/docs/.i18n/ar-navigation.json +18 -0
- package/docs/.i18n/de-navigation.json +18 -0
- package/docs/.i18n/es-navigation.json +18 -0
- package/docs/.i18n/fr-navigation.json +18 -0
- package/docs/.i18n/glossary.ar.json +78 -0
- package/docs/.i18n/glossary.de.json +78 -0
- package/docs/.i18n/glossary.es.json +78 -0
- package/docs/.i18n/glossary.fa.json +78 -0
- package/docs/.i18n/glossary.fr.json +78 -0
- package/docs/.i18n/glossary.id.json +78 -0
- package/docs/.i18n/glossary.it.json +78 -0
- package/docs/.i18n/glossary.ja-JP.json +98 -0
- package/docs/.i18n/glossary.ko.json +78 -0
- package/docs/.i18n/glossary.nl.json +78 -0
- package/docs/.i18n/glossary.pl.json +78 -0
- package/docs/.i18n/glossary.pt-BR.json +78 -0
- package/docs/.i18n/glossary.th.json +78 -0
- package/docs/.i18n/glossary.tr.json +78 -0
- package/docs/.i18n/glossary.uk.json +78 -0
- package/docs/.i18n/glossary.vi.json +78 -0
- package/docs/.i18n/glossary.zh-CN.json +1002 -0
- package/docs/.i18n/glossary.zh-TW.json +78 -0
- package/docs/.i18n/id-navigation.json +18 -0
- package/docs/.i18n/it-navigation.json +18 -0
- package/docs/.i18n/ja-navigation.json +18 -0
- package/docs/.i18n/ko-navigation.json +18 -0
- package/docs/.i18n/pl-navigation.json +18 -0
- package/docs/.i18n/pt-BR-navigation.json +18 -0
- package/docs/.i18n/tr-navigation.json +18 -0
- package/docs/.i18n/translation-workflow.md +111 -0
- package/docs/.i18n/zh-Hans-navigation.json +542 -0
- package/docs/AGENTS.md +36 -0
- package/docs/announcements/bluebubbles-imessage.md +79 -0
- package/docs/assets/install-script.svg +1 -0
- package/docs/assets/macos-onboarding/01-macos-warning.jpeg +0 -0
- package/docs/assets/macos-onboarding/02-local-networks.jpeg +0 -0
- package/docs/assets/macos-onboarding/03-security-notice.png +0 -0
- package/docs/assets/macos-onboarding/04-choose-gateway.png +0 -0
- package/docs/assets/macos-onboarding/05-permissions.png +0 -0
- package/docs/assets/openclaw-logo-text-dark.png +0 -0
- package/docs/assets/openclaw-logo-text-dark.svg +418 -0
- package/docs/assets/openclaw-logo-text.png +0 -0
- package/docs/assets/openclaw-logo-text.svg +418 -0
- package/docs/assets/pixel-lobster.svg +60 -0
- package/docs/assets/pr/quick-settings-browser-tools.png +0 -0
- package/docs/assets/showcase/agents-ui.jpg +0 -0
- package/docs/assets/showcase/bambu-cli.png +0 -0
- package/docs/assets/showcase/codexmonitor.png +0 -0
- package/docs/assets/showcase/gohome-grafana.png +0 -0
- package/docs/assets/showcase/ios-testflight.jpg +0 -0
- package/docs/assets/showcase/oura-health.png +0 -0
- package/docs/assets/showcase/padel-cli.svg +11 -0
- package/docs/assets/showcase/padel-screenshot.jpg +0 -0
- package/docs/assets/showcase/papla-tts.jpg +0 -0
- package/docs/assets/showcase/pr-review-telegram.jpg +0 -0
- package/docs/assets/showcase/roborock-screenshot.jpg +0 -0
- package/docs/assets/showcase/roborock-status.svg +13 -0
- package/docs/assets/showcase/roof-camera-sky.jpg +0 -0
- package/docs/assets/showcase/snag.png +0 -0
- package/docs/assets/showcase/tesco-shop.jpg +0 -0
- package/docs/assets/showcase/wienerlinien.png +0 -0
- package/docs/assets/showcase/wine-cellar-skill.jpg +0 -0
- package/docs/assets/showcase/winix-air-purifier.jpg +0 -0
- package/docs/assets/showcase/xuezh-pronunciation.jpeg +0 -0
- package/docs/assets/sponsors/blacksmith-light.svg +14 -0
- package/docs/assets/sponsors/blacksmith.svg +14 -0
- package/docs/assets/sponsors/convex-light.svg +16 -0
- package/docs/assets/sponsors/convex.svg +16 -0
- package/docs/assets/sponsors/github-light.svg +3 -0
- package/docs/assets/sponsors/github.svg +3 -0
- package/docs/assets/sponsors/nvidia-dark.svg +9 -0
- package/docs/assets/sponsors/nvidia.svg +9 -0
- package/docs/assets/sponsors/openai-light.svg +3 -0
- package/docs/assets/sponsors/openai.svg +3 -0
- package/docs/assets/sponsors/vercel-light.svg +5 -0
- package/docs/assets/sponsors/vercel.svg +5 -0
- package/docs/auth-credential-semantics.md +124 -0
- package/docs/automation/auth-monitoring.md +11 -0
- package/docs/automation/clawflow.md +12 -0
- package/docs/automation/cron-jobs.md +500 -0
- package/docs/automation/cron-vs-heartbeat.md +11 -0
- package/docs/automation/gmail-pubsub.md +11 -0
- package/docs/automation/hooks.md +365 -0
- package/docs/automation/index.md +135 -0
- package/docs/automation/poll.md +12 -0
- package/docs/automation/standing-orders.md +250 -0
- package/docs/automation/taskflow.md +155 -0
- package/docs/automation/tasks.md +374 -0
- package/docs/automation/troubleshooting.md +12 -0
- package/docs/automation/webhook.md +12 -0
- package/docs/brave-search.md +11 -0
- package/docs/channels/access-groups.md +201 -0
- package/docs/channels/ambient-room-events.md +214 -0
- package/docs/channels/bot-loop-protection.md +131 -0
- package/docs/channels/broadcast-groups.md +472 -0
- package/docs/channels/channel-routing.md +162 -0
- package/docs/channels/clickclack.md +138 -0
- package/docs/channels/discord.md +1762 -0
- package/docs/channels/feishu.md +502 -0
- package/docs/channels/googlechat.md +284 -0
- package/docs/channels/group-messages.md +95 -0
- package/docs/channels/groups.md +519 -0
- package/docs/channels/imessage-from-bluebubbles.md +259 -0
- package/docs/channels/imessage.md +813 -0
- package/docs/channels/index.md +64 -0
- package/docs/channels/irc.md +253 -0
- package/docs/channels/line.md +243 -0
- package/docs/channels/location.md +71 -0
- package/docs/channels/matrix-migration.md +370 -0
- package/docs/channels/matrix-presentation.md +77 -0
- package/docs/channels/matrix-push-rules.md +150 -0
- package/docs/channels/matrix.md +921 -0
- package/docs/channels/mattermost.md +542 -0
- package/docs/channels/msteams.md +1042 -0
- package/docs/channels/nextcloud-talk.md +176 -0
- package/docs/channels/nostr.md +253 -0
- package/docs/channels/pairing.md +214 -0
- package/docs/channels/qqbot.md +309 -0
- package/docs/channels/signal.md +400 -0
- package/docs/channels/slack.md +1564 -0
- package/docs/channels/synology-chat.md +187 -0
- package/docs/channels/telegram.md +1107 -0
- package/docs/channels/tlon.md +296 -0
- package/docs/channels/troubleshooting.md +161 -0
- package/docs/channels/twitch.md +431 -0
- package/docs/channels/wechat.md +171 -0
- package/docs/channels/whatsapp.md +739 -0
- package/docs/channels/yuanbao.md +416 -0
- package/docs/channels/zalo.md +253 -0
- package/docs/channels/zalouser.md +199 -0
- package/docs/ci.md +612 -0
- package/docs/clawhub/publishing.md +96 -0
- package/docs/cli/acp.md +370 -0
- package/docs/cli/agent.md +103 -0
- package/docs/cli/agents.md +232 -0
- package/docs/cli/approvals.md +190 -0
- package/docs/cli/backup.md +97 -0
- package/docs/cli/browser.md +307 -0
- package/docs/cli/channels.md +154 -0
- package/docs/cli/clawbot.md +25 -0
- package/docs/cli/commitments.md +90 -0
- package/docs/cli/completion.md +39 -0
- package/docs/cli/config.md +504 -0
- package/docs/cli/configure.md +77 -0
- package/docs/cli/crestodian.md +332 -0
- package/docs/cli/cron.md +281 -0
- package/docs/cli/daemon.md +67 -0
- package/docs/cli/dashboard.md +33 -0
- package/docs/cli/devices.md +204 -0
- package/docs/cli/directory.md +68 -0
- package/docs/cli/dns.md +53 -0
- package/docs/cli/docs.md +73 -0
- package/docs/cli/doctor.md +237 -0
- package/docs/cli/flows.md +52 -0
- package/docs/cli/gateway.md +567 -0
- package/docs/cli/health.md +43 -0
- package/docs/cli/hooks.md +345 -0
- package/docs/cli/index.md +396 -0
- package/docs/cli/infer.md +364 -0
- package/docs/cli/logs.md +65 -0
- package/docs/cli/mcp.md +529 -0
- package/docs/cli/memory.md +183 -0
- package/docs/cli/message.md +317 -0
- package/docs/cli/migrate.md +290 -0
- package/docs/cli/models.md +224 -0
- package/docs/cli/node.md +177 -0
- package/docs/cli/nodes.md +76 -0
- package/docs/cli/onboard.md +245 -0
- package/docs/cli/pairing.md +77 -0
- package/docs/cli/path.md +502 -0
- package/docs/cli/plugins.md +454 -0
- package/docs/cli/policy.md +418 -0
- package/docs/cli/proxy.md +89 -0
- package/docs/cli/qr.md +56 -0
- package/docs/cli/reset.md +39 -0
- package/docs/cli/sandbox.md +208 -0
- package/docs/cli/secrets.md +202 -0
- package/docs/cli/security.md +124 -0
- package/docs/cli/sessions.md +164 -0
- package/docs/cli/setup.md +59 -0
- package/docs/cli/skills.md +102 -0
- package/docs/cli/status.md +45 -0
- package/docs/cli/system.md +89 -0
- package/docs/cli/tasks.md +111 -0
- package/docs/cli/tui.md +89 -0
- package/docs/cli/uninstall.md +44 -0
- package/docs/cli/update.md +242 -0
- package/docs/cli/voicecall.md +204 -0
- package/docs/cli/webhooks.md +117 -0
- package/docs/cli/wiki.md +256 -0
- package/docs/concepts/active-memory.md +856 -0
- package/docs/concepts/agent-loop.md +185 -0
- package/docs/concepts/agent-runtimes.md +243 -0
- package/docs/concepts/agent-workspace.md +230 -0
- package/docs/concepts/agent.md +136 -0
- package/docs/concepts/architecture.md +154 -0
- package/docs/concepts/channel-docking.md +145 -0
- package/docs/concepts/commitments.md +150 -0
- package/docs/concepts/compaction.md +203 -0
- package/docs/concepts/context-engine.md +306 -0
- package/docs/concepts/context.md +199 -0
- package/docs/concepts/delegate-architecture.md +319 -0
- package/docs/concepts/dreaming.md +261 -0
- package/docs/concepts/experimental-features.md +108 -0
- package/docs/concepts/features.md +91 -0
- package/docs/concepts/mantis-slack-desktop-runbook.md +202 -0
- package/docs/concepts/mantis.md +740 -0
- package/docs/concepts/markdown-formatting.md +139 -0
- package/docs/concepts/memory-builtin.md +146 -0
- package/docs/concepts/memory-honcho.md +144 -0
- package/docs/concepts/memory-qmd.md +271 -0
- package/docs/concepts/memory-search.md +166 -0
- package/docs/concepts/memory.md +258 -0
- package/docs/concepts/message-lifecycle-refactor.md +1128 -0
- package/docs/concepts/messages.md +214 -0
- package/docs/concepts/model-failover.md +385 -0
- package/docs/concepts/model-providers.md +715 -0
- package/docs/concepts/models.md +370 -0
- package/docs/concepts/multi-agent.md +619 -0
- package/docs/concepts/oauth.md +198 -0
- package/docs/concepts/openclaw-sdk.md +323 -0
- package/docs/concepts/parallel-specialist-lanes.md +127 -0
- package/docs/concepts/personal-agent-benchmark-pack.md +74 -0
- package/docs/concepts/presence.md +117 -0
- package/docs/concepts/progress-drafts.md +362 -0
- package/docs/concepts/qa-e2e-automation.md +820 -0
- package/docs/concepts/qa-matrix.md +139 -0
- package/docs/concepts/queue-steering.md +90 -0
- package/docs/concepts/queue.md +122 -0
- package/docs/concepts/retry.md +86 -0
- package/docs/concepts/session-pruning.md +104 -0
- package/docs/concepts/session-tool.md +190 -0
- package/docs/concepts/session.md +164 -0
- package/docs/concepts/soul.md +116 -0
- package/docs/concepts/streaming.md +251 -0
- package/docs/concepts/system-prompt.md +310 -0
- package/docs/concepts/timezone.md +47 -0
- package/docs/concepts/typebox.md +309 -0
- package/docs/concepts/typing-indicators.md +88 -0
- package/docs/concepts/usage-tracking.md +66 -0
- package/docs/date-time.md +126 -0
- package/docs/debug/node-issue.md +90 -0
- package/docs/diagnostics/flags.md +138 -0
- package/docs/docs.json +1832 -0
- package/docs/gateway/authentication.md +239 -0
- package/docs/gateway/background-process.md +147 -0
- package/docs/gateway/bonjour.md +303 -0
- package/docs/gateway/bridge-protocol.md +94 -0
- package/docs/gateway/cli-backends.md +420 -0
- package/docs/gateway/config-agents.md +1514 -0
- package/docs/gateway/config-channels.md +945 -0
- package/docs/gateway/config-tools.md +769 -0
- package/docs/gateway/configuration-examples.md +705 -0
- package/docs/gateway/configuration-reference.md +1393 -0
- package/docs/gateway/configuration.md +737 -0
- package/docs/gateway/diagnostics.md +213 -0
- package/docs/gateway/discovery.md +154 -0
- package/docs/gateway/doctor.md +574 -0
- package/docs/gateway/gateway-lock.md +37 -0
- package/docs/gateway/health.md +73 -0
- package/docs/gateway/heartbeat.md +493 -0
- package/docs/gateway/index.md +383 -0
- package/docs/gateway/local-model-services.md +205 -0
- package/docs/gateway/local-models.md +355 -0
- package/docs/gateway/logging.md +149 -0
- package/docs/gateway/multiple-gateways.md +178 -0
- package/docs/gateway/network-model.md +15 -0
- package/docs/gateway/openai-http-api.md +350 -0
- package/docs/gateway/openresponses-http-api.md +347 -0
- package/docs/gateway/openshell.md +316 -0
- package/docs/gateway/opentelemetry.md +404 -0
- package/docs/gateway/operator-scopes.md +111 -0
- package/docs/gateway/pairing.md +207 -0
- package/docs/gateway/prometheus.md +230 -0
- package/docs/gateway/protocol.md +803 -0
- package/docs/gateway/remote-gateway-readme.md +169 -0
- package/docs/gateway/remote.md +280 -0
- package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +146 -0
- package/docs/gateway/sandboxing.md +545 -0
- package/docs/gateway/secrets-plan-contract.md +114 -0
- package/docs/gateway/secrets.md +609 -0
- package/docs/gateway/security/audit-checks.md +127 -0
- package/docs/gateway/security/index.md +1326 -0
- package/docs/gateway/security/secure-file-operations.md +76 -0
- package/docs/gateway/tailscale.md +156 -0
- package/docs/gateway/tools-invoke-http-api.md +169 -0
- package/docs/gateway/troubleshooting.md +772 -0
- package/docs/gateway/trusted-proxy-auth.md +451 -0
- package/docs/help/debugging.md +344 -0
- package/docs/help/environment.md +214 -0
- package/docs/help/faq-first-run.md +867 -0
- package/docs/help/faq-models.md +553 -0
- package/docs/help/faq.md +1975 -0
- package/docs/help/gpt55-codex-agentic-parity-maintainers.md +196 -0
- package/docs/help/gpt55-codex-agentic-parity.md +230 -0
- package/docs/help/index.md +39 -0
- package/docs/help/scripts.md +56 -0
- package/docs/help/testing-live.md +580 -0
- package/docs/help/testing-updates-plugins.md +291 -0
- package/docs/help/testing.md +928 -0
- package/docs/help/troubleshooting.md +424 -0
- package/docs/images/configure-model-picker-unsearchable.png +0 -0
- package/docs/images/feishu-get-group-id.png +0 -0
- package/docs/images/groups-flow.svg +52 -0
- package/docs/images/mobile-ui-screenshot.png +0 -0
- package/docs/index.md +196 -0
- package/docs/install/ansible.md +233 -0
- package/docs/install/azure.md +315 -0
- package/docs/install/bun.md +59 -0
- package/docs/install/clawdock.md +112 -0
- package/docs/install/development-channels.md +135 -0
- package/docs/install/digitalocean.md +174 -0
- package/docs/install/docker-vm-runtime.md +154 -0
- package/docs/install/docker.md +562 -0
- package/docs/install/exe-dev.md +201 -0
- package/docs/install/fly.md +524 -0
- package/docs/install/gcp.md +418 -0
- package/docs/install/hetzner.md +285 -0
- package/docs/install/hostinger.md +98 -0
- package/docs/install/index.md +221 -0
- package/docs/install/installer.md +455 -0
- package/docs/install/kubernetes.md +196 -0
- package/docs/install/macos-vm.md +281 -0
- package/docs/install/migrating-claude.md +165 -0
- package/docs/install/migrating-hermes.md +177 -0
- package/docs/install/migrating.md +137 -0
- package/docs/install/nix.md +112 -0
- package/docs/install/node.md +142 -0
- package/docs/install/northflank.mdx +44 -0
- package/docs/install/oracle.md +218 -0
- package/docs/install/podman.md +210 -0
- package/docs/install/railway.mdx +92 -0
- package/docs/install/raspberry-pi.md +234 -0
- package/docs/install/render.mdx +167 -0
- package/docs/install/uninstall.md +131 -0
- package/docs/install/updating.md +280 -0
- package/docs/logging.md +318 -0
- package/docs/nav-tabs-underline.js +100 -0
- package/docs/network.md +72 -0
- package/docs/nodes/audio.md +215 -0
- package/docs/nodes/camera.md +166 -0
- package/docs/nodes/images.md +77 -0
- package/docs/nodes/index.md +439 -0
- package/docs/nodes/location-command.md +102 -0
- package/docs/nodes/media-understanding.md +469 -0
- package/docs/nodes/talk.md +154 -0
- package/docs/nodes/troubleshooting.md +123 -0
- package/docs/nodes/voicewake.md +93 -0
- package/docs/perplexity.md +11 -0
- package/docs/pi-dev.md +82 -0
- package/docs/pi.md +573 -0
- package/docs/plan/codex-context-engine-harness.md +624 -0
- package/docs/plan/ui-channels.md +284 -0
- package/docs/platforms/android.md +285 -0
- package/docs/platforms/digitalocean.md +12 -0
- package/docs/platforms/index.md +60 -0
- package/docs/platforms/ios.md +283 -0
- package/docs/platforms/linux.md +141 -0
- package/docs/platforms/mac/bundled-gateway.md +79 -0
- package/docs/platforms/mac/canvas.md +128 -0
- package/docs/platforms/mac/child-process.md +72 -0
- package/docs/platforms/mac/dev-setup.md +112 -0
- package/docs/platforms/mac/health.md +39 -0
- package/docs/platforms/mac/icon.md +36 -0
- package/docs/platforms/mac/logging.md +62 -0
- package/docs/platforms/mac/menu-bar.md +93 -0
- package/docs/platforms/mac/peekaboo.md +92 -0
- package/docs/platforms/mac/permissions.md +53 -0
- package/docs/platforms/mac/remote.md +123 -0
- package/docs/platforms/mac/signing.md +52 -0
- package/docs/platforms/mac/skills.md +43 -0
- package/docs/platforms/mac/voice-overlay.md +66 -0
- package/docs/platforms/mac/voicewake.md +73 -0
- package/docs/platforms/mac/webchat.md +54 -0
- package/docs/platforms/mac/xpc.md +66 -0
- package/docs/platforms/macos.md +226 -0
- package/docs/platforms/oracle.md +12 -0
- package/docs/platforms/raspberry-pi.md +13 -0
- package/docs/platforms/windows.md +286 -0
- package/docs/plugins/adding-capabilities.md +133 -0
- package/docs/plugins/admin-http-rpc.md +216 -0
- package/docs/plugins/agent-tools.md +13 -0
- package/docs/plugins/architecture-internals.md +1195 -0
- package/docs/plugins/architecture.md +481 -0
- package/docs/plugins/building-extensions.md +13 -0
- package/docs/plugins/building-plugins.md +330 -0
- package/docs/plugins/bundles.md +310 -0
- package/docs/plugins/cli-backend-plugins.md +310 -0
- package/docs/plugins/codex-computer-use.md +293 -0
- package/docs/plugins/codex-harness-reference.md +409 -0
- package/docs/plugins/codex-harness-runtime.md +247 -0
- package/docs/plugins/codex-harness.md +746 -0
- package/docs/plugins/codex-native-plugins.md +276 -0
- package/docs/plugins/community.md +77 -0
- package/docs/plugins/compatibility.md +164 -0
- package/docs/plugins/dependency-resolution.md +143 -0
- package/docs/plugins/google-meet.md +1737 -0
- package/docs/plugins/hooks.md +459 -0
- package/docs/plugins/install-overrides.md +80 -0
- package/docs/plugins/manage-plugins.md +210 -0
- package/docs/plugins/manifest.md +1359 -0
- package/docs/plugins/memory-lancedb.md +385 -0
- package/docs/plugins/memory-wiki.md +529 -0
- package/docs/plugins/message-presentation.md +473 -0
- package/docs/plugins/oc-path.md +166 -0
- package/docs/plugins/plugin-inventory.md +182 -0
- package/docs/plugins/reference/acpx.md +23 -0
- package/docs/plugins/reference/admin-http-rpc.md +23 -0
- package/docs/plugins/reference/alibaba.md +23 -0
- package/docs/plugins/reference/amazon-bedrock-mantle.md +23 -0
- package/docs/plugins/reference/amazon-bedrock.md +23 -0
- package/docs/plugins/reference/anthropic-vertex.md +19 -0
- package/docs/plugins/reference/anthropic.md +23 -0
- package/docs/plugins/reference/arcee.md +23 -0
- package/docs/plugins/reference/azure-speech.md +23 -0
- package/docs/plugins/reference/bonjour.md +19 -0
- package/docs/plugins/reference/brave.md +23 -0
- package/docs/plugins/reference/browser.md +23 -0
- package/docs/plugins/reference/byteplus.md +19 -0
- package/docs/plugins/reference/canvas.md +19 -0
- package/docs/plugins/reference/cerebras.md +23 -0
- package/docs/plugins/reference/chutes.md +23 -0
- package/docs/plugins/reference/clickclack.md +23 -0
- package/docs/plugins/reference/cloudflare-ai-gateway.md +23 -0
- package/docs/plugins/reference/codex.md +23 -0
- package/docs/plugins/reference/comfy.md +23 -0
- package/docs/plugins/reference/copilot-proxy.md +19 -0
- package/docs/plugins/reference/deepgram.md +23 -0
- package/docs/plugins/reference/deepinfra.md +23 -0
- package/docs/plugins/reference/deepseek.md +23 -0
- package/docs/plugins/reference/diagnostics-otel.md +19 -0
- package/docs/plugins/reference/diagnostics-prometheus.md +19 -0
- package/docs/plugins/reference/diffs.md +19 -0
- package/docs/plugins/reference/discord.md +23 -0
- package/docs/plugins/reference/document-extract.md +23 -0
- package/docs/plugins/reference/duckduckgo.md +23 -0
- package/docs/plugins/reference/elevenlabs.md +23 -0
- package/docs/plugins/reference/exa.md +23 -0
- package/docs/plugins/reference/fal.md +23 -0
- package/docs/plugins/reference/feishu.md +23 -0
- package/docs/plugins/reference/file-transfer.md +19 -0
- package/docs/plugins/reference/firecrawl.md +23 -0
- package/docs/plugins/reference/fireworks.md +23 -0
- package/docs/plugins/reference/github-copilot.md +23 -0
- package/docs/plugins/reference/google-meet.md +23 -0
- package/docs/plugins/reference/google.md +23 -0
- package/docs/plugins/reference/googlechat.md +23 -0
- package/docs/plugins/reference/gradium.md +23 -0
- package/docs/plugins/reference/groq.md +23 -0
- package/docs/plugins/reference/huggingface.md +23 -0
- package/docs/plugins/reference/imessage.md +23 -0
- package/docs/plugins/reference/inworld.md +23 -0
- package/docs/plugins/reference/irc.md +23 -0
- package/docs/plugins/reference/kilocode.md +23 -0
- package/docs/plugins/reference/kimi.md +23 -0
- package/docs/plugins/reference/line.md +23 -0
- package/docs/plugins/reference/litellm.md +23 -0
- package/docs/plugins/reference/llm-task.md +19 -0
- package/docs/plugins/reference/lmstudio.md +23 -0
- package/docs/plugins/reference/lobster.md +19 -0
- package/docs/plugins/reference/matrix.md +23 -0
- package/docs/plugins/reference/mattermost.md +23 -0
- package/docs/plugins/reference/memory-core.md +19 -0
- package/docs/plugins/reference/memory-lancedb.md +23 -0
- package/docs/plugins/reference/memory-wiki.md +23 -0
- package/docs/plugins/reference/microsoft-foundry.md +19 -0
- package/docs/plugins/reference/microsoft.md +19 -0
- package/docs/plugins/reference/migrate-claude.md +19 -0
- package/docs/plugins/reference/migrate-hermes.md +19 -0
- package/docs/plugins/reference/minimax.md +23 -0
- package/docs/plugins/reference/mistral.md +23 -0
- package/docs/plugins/reference/moonshot.md +23 -0
- package/docs/plugins/reference/msteams.md +23 -0
- package/docs/plugins/reference/nextcloud-talk.md +23 -0
- package/docs/plugins/reference/nostr.md +23 -0
- package/docs/plugins/reference/nvidia.md +23 -0
- package/docs/plugins/reference/oc-path.md +23 -0
- package/docs/plugins/reference/ollama.md +23 -0
- package/docs/plugins/reference/open-prose.md +19 -0
- package/docs/plugins/reference/openai.md +23 -0
- package/docs/plugins/reference/opencode-go.md +23 -0
- package/docs/plugins/reference/opencode.md +23 -0
- package/docs/plugins/reference/openrouter.md +23 -0
- package/docs/plugins/reference/openshell.md +19 -0
- package/docs/plugins/reference/perplexity.md +23 -0
- package/docs/plugins/reference/policy.md +23 -0
- package/docs/plugins/reference/qa-channel.md +23 -0
- package/docs/plugins/reference/qa-lab.md +19 -0
- package/docs/plugins/reference/qa-matrix.md +19 -0
- package/docs/plugins/reference/qianfan.md +23 -0
- package/docs/plugins/reference/qqbot.md +23 -0
- package/docs/plugins/reference/qwen.md +23 -0
- package/docs/plugins/reference/runway.md +23 -0
- package/docs/plugins/reference/searxng.md +19 -0
- package/docs/plugins/reference/senseaudio.md +23 -0
- package/docs/plugins/reference/sglang.md +23 -0
- package/docs/plugins/reference/signal.md +23 -0
- package/docs/plugins/reference/skill-workshop.md +23 -0
- package/docs/plugins/reference/slack.md +23 -0
- package/docs/plugins/reference/stepfun.md +23 -0
- package/docs/plugins/reference/synology-chat.md +23 -0
- package/docs/plugins/reference/synthetic.md +23 -0
- package/docs/plugins/reference/tavily.md +23 -0
- package/docs/plugins/reference/telegram.md +23 -0
- package/docs/plugins/reference/tencent.md +23 -0
- package/docs/plugins/reference/tlon.md +23 -0
- package/docs/plugins/reference/together.md +23 -0
- package/docs/plugins/reference/tokenjuice.md +23 -0
- package/docs/plugins/reference/tts-local-cli.md +19 -0
- package/docs/plugins/reference/twitch.md +23 -0
- package/docs/plugins/reference/venice.md +23 -0
- package/docs/plugins/reference/vercel-ai-gateway.md +23 -0
- package/docs/plugins/reference/vllm.md +23 -0
- package/docs/plugins/reference/voice-call.md +23 -0
- package/docs/plugins/reference/volcengine.md +23 -0
- package/docs/plugins/reference/voyage.md +19 -0
- package/docs/plugins/reference/vydra.md +23 -0
- package/docs/plugins/reference/web-readability.md +19 -0
- package/docs/plugins/reference/webhooks.md +23 -0
- package/docs/plugins/reference/whatsapp.md +23 -0
- package/docs/plugins/reference/xai.md +23 -0
- package/docs/plugins/reference/xiaomi.md +23 -0
- package/docs/plugins/reference/zai.md +23 -0
- package/docs/plugins/reference/zalo.md +23 -0
- package/docs/plugins/reference/zalouser.md +24 -0
- package/docs/plugins/reference.md +138 -0
- package/docs/plugins/sdk-agent-harness.md +339 -0
- package/docs/plugins/sdk-channel-ingress.md +137 -0
- package/docs/plugins/sdk-channel-message.md +458 -0
- package/docs/plugins/sdk-channel-plugins.md +762 -0
- package/docs/plugins/sdk-channel-turn.md +580 -0
- package/docs/plugins/sdk-entrypoints.md +333 -0
- package/docs/plugins/sdk-migration.md +949 -0
- package/docs/plugins/sdk-overview.md +501 -0
- package/docs/plugins/sdk-provider-plugins.md +807 -0
- package/docs/plugins/sdk-runtime.md +676 -0
- package/docs/plugins/sdk-setup.md +550 -0
- package/docs/plugins/sdk-subpaths.md +396 -0
- package/docs/plugins/sdk-testing.md +401 -0
- package/docs/plugins/skill-workshop.md +713 -0
- package/docs/plugins/tool-plugins.md +411 -0
- package/docs/plugins/voice-call.md +943 -0
- package/docs/plugins/webhooks.md +192 -0
- package/docs/plugins/zalouser.md +86 -0
- package/docs/prose.md +137 -0
- package/docs/providers/alibaba.md +158 -0
- package/docs/providers/anthropic.md +344 -0
- package/docs/providers/arcee.md +144 -0
- package/docs/providers/azure-speech.md +119 -0
- package/docs/providers/bedrock-mantle.md +211 -0
- package/docs/providers/bedrock.md +414 -0
- package/docs/providers/cerebras.md +130 -0
- package/docs/providers/chutes.md +153 -0
- package/docs/providers/claude-max-api-proxy.md +188 -0
- package/docs/providers/cloudflare-ai-gateway.md +119 -0
- package/docs/providers/comfy.md +362 -0
- package/docs/providers/deepgram.md +184 -0
- package/docs/providers/deepinfra.md +87 -0
- package/docs/providers/deepseek.md +146 -0
- package/docs/providers/ds4.md +309 -0
- package/docs/providers/elevenlabs.md +130 -0
- package/docs/providers/fal.md +204 -0
- package/docs/providers/fireworks.md +144 -0
- package/docs/providers/github-copilot.md +225 -0
- package/docs/providers/glm.md +137 -0
- package/docs/providers/google.md +472 -0
- package/docs/providers/gradium.md +123 -0
- package/docs/providers/groq.md +180 -0
- package/docs/providers/huggingface.md +235 -0
- package/docs/providers/index.md +102 -0
- package/docs/providers/inferrs.md +272 -0
- package/docs/providers/inworld.md +120 -0
- package/docs/providers/kilocode.md +135 -0
- package/docs/providers/litellm.md +234 -0
- package/docs/providers/lmstudio.md +224 -0
- package/docs/providers/minimax.md +505 -0
- package/docs/providers/mistral.md +235 -0
- package/docs/providers/models.md +65 -0
- package/docs/providers/moonshot.md +413 -0
- package/docs/providers/nvidia.md +140 -0
- package/docs/providers/ollama.md +1180 -0
- package/docs/providers/openai.md +1057 -0
- package/docs/providers/opencode-go.md +123 -0
- package/docs/providers/opencode.md +149 -0
- package/docs/providers/openrouter.md +349 -0
- package/docs/providers/perplexity-provider.md +123 -0
- package/docs/providers/qianfan.md +132 -0
- package/docs/providers/qwen.md +332 -0
- package/docs/providers/runway.md +103 -0
- package/docs/providers/senseaudio.md +68 -0
- package/docs/providers/sglang.md +161 -0
- package/docs/providers/stepfun.md +229 -0
- package/docs/providers/synthetic.md +154 -0
- package/docs/providers/tencent.md +130 -0
- package/docs/providers/together.md +141 -0
- package/docs/providers/venice.md +315 -0
- package/docs/providers/vercel-ai-gateway.md +128 -0
- package/docs/providers/vllm.md +383 -0
- package/docs/providers/volcengine.md +199 -0
- package/docs/providers/vydra.md +180 -0
- package/docs/providers/xai.md +560 -0
- package/docs/providers/xiaomi.md +188 -0
- package/docs/providers/zai.md +203 -0
- package/docs/refactor/access.md +9 -0
- package/docs/refactor/acp.md +298 -0
- package/docs/refactor/canvas.md +131 -0
- package/docs/refactor/ingress-core.md +341 -0
- package/docs/reference/AGENTS.default.md +129 -0
- package/docs/reference/RELEASING.md +767 -0
- package/docs/reference/api-usage-costs.md +202 -0
- package/docs/reference/application-modernization-plan.md +208 -0
- package/docs/reference/code-mode.md +757 -0
- package/docs/reference/credits.md +33 -0
- package/docs/reference/device-models.md +50 -0
- package/docs/reference/full-release-validation.md +202 -0
- package/docs/reference/memory-config.md +630 -0
- package/docs/reference/openclaw-sdk-api-design.md +390 -0
- package/docs/reference/prompt-caching.md +358 -0
- package/docs/reference/rich-output-protocol.md +79 -0
- package/docs/reference/rpc.md +43 -0
- package/docs/reference/secretref-credential-surface.md +159 -0
- package/docs/reference/secretref-user-supplied-credentials-matrix.json +663 -0
- package/docs/reference/session-management-compaction.md +461 -0
- package/docs/reference/templates/AGENTS.dev.md +89 -0
- package/docs/reference/templates/AGENTS.md +225 -0
- package/docs/reference/templates/BOOT.md +16 -0
- package/docs/reference/templates/BOOTSTRAP.md +66 -0
- package/docs/reference/templates/HEARTBEAT.md +16 -0
- package/docs/reference/templates/IDENTITY.dev.md +52 -0
- package/docs/reference/templates/IDENTITY.md +34 -0
- package/docs/reference/templates/SOUL.dev.md +82 -0
- package/docs/reference/templates/SOUL.md +49 -0
- package/docs/reference/templates/TOOLS.dev.md +29 -0
- package/docs/reference/templates/TOOLS.md +51 -0
- package/docs/reference/templates/USER.dev.md +23 -0
- package/docs/reference/templates/USER.md +28 -0
- package/docs/reference/test.md +239 -0
- package/docs/reference/token-use.md +233 -0
- package/docs/reference/transcript-hygiene.md +214 -0
- package/docs/reference/wizard.md +252 -0
- package/docs/security/CONTRIBUTING-THREAT-MODEL.md +101 -0
- package/docs/security/THREAT-MODEL-ATLAS.md +611 -0
- package/docs/security/formal-verification.md +170 -0
- package/docs/security/incident-response.md +59 -0
- package/docs/security/network-proxy.md +268 -0
- package/docs/snippets/plugin-publish/minimal-openclaw.plugin.json +12 -0
- package/docs/snippets/plugin-publish/minimal-package.json +16 -0
- package/docs/start/bootstrapping.md +49 -0
- package/docs/start/docs-directory.md +69 -0
- package/docs/start/getting-started.md +152 -0
- package/docs/start/hubs.md +201 -0
- package/docs/start/lore.md +223 -0
- package/docs/start/onboarding-overview.md +72 -0
- package/docs/start/onboarding.md +95 -0
- package/docs/start/openclaw.md +244 -0
- package/docs/start/quickstart.md +25 -0
- package/docs/start/setup.md +178 -0
- package/docs/start/showcase.md +383 -0
- package/docs/start/wizard-cli-automation.md +232 -0
- package/docs/start/wizard-cli-reference.md +331 -0
- package/docs/start/wizard.md +141 -0
- package/docs/style.css +184 -0
- package/docs/superpowers/specs/2026-04-22-tweakcn-custom-theme-import-design.md +316 -0
- package/docs/tools/acp-agents-setup.md +352 -0
- package/docs/tools/acp-agents.md +847 -0
- package/docs/tools/agent-send.md +112 -0
- package/docs/tools/apply-patch.md +64 -0
- package/docs/tools/brave-search.md +139 -0
- package/docs/tools/browser-control.md +391 -0
- package/docs/tools/browser-linux-troubleshooting.md +173 -0
- package/docs/tools/browser-login.md +77 -0
- package/docs/tools/browser-wsl2-windows-remote-cdp-troubleshooting.md +219 -0
- package/docs/tools/browser.md +769 -0
- package/docs/tools/btw.md +159 -0
- package/docs/tools/capability-cookbook.md +12 -0
- package/docs/tools/clawhub.md +5 -0
- package/docs/tools/code-execution.md +173 -0
- package/docs/tools/creating-skills.md +120 -0
- package/docs/tools/diffs.md +506 -0
- package/docs/tools/duckduckgo-search.md +109 -0
- package/docs/tools/elevated.md +128 -0
- package/docs/tools/exa-search.md +152 -0
- package/docs/tools/exec-approvals-advanced.md +360 -0
- package/docs/tools/exec-approvals.md +474 -0
- package/docs/tools/exec.md +282 -0
- package/docs/tools/firecrawl.md +155 -0
- package/docs/tools/gemini-search.md +114 -0
- package/docs/tools/grok-search.md +113 -0
- package/docs/tools/image-generation.md +433 -0
- package/docs/tools/index.md +178 -0
- package/docs/tools/kimi-search.md +105 -0
- package/docs/tools/llm-task.md +137 -0
- package/docs/tools/lobster.md +365 -0
- package/docs/tools/loop-detection.md +154 -0
- package/docs/tools/media-overview.md +157 -0
- package/docs/tools/minimax-search.md +102 -0
- package/docs/tools/multi-agent-sandbox-tools.md +409 -0
- package/docs/tools/music-generation.md +371 -0
- package/docs/tools/ollama-search.md +153 -0
- package/docs/tools/pdf.md +195 -0
- package/docs/tools/perplexity-search.md +220 -0
- package/docs/tools/plugin.md +327 -0
- package/docs/tools/reactions.md +100 -0
- package/docs/tools/searxng-search.md +141 -0
- package/docs/tools/skills-config.md +195 -0
- package/docs/tools/skills.md +535 -0
- package/docs/tools/slash-commands.md +488 -0
- package/docs/tools/steer.md +84 -0
- package/docs/tools/subagents.md +650 -0
- package/docs/tools/tavily.md +162 -0
- package/docs/tools/thinking.md +140 -0
- package/docs/tools/tokenjuice.md +81 -0
- package/docs/tools/tool-search.md +269 -0
- package/docs/tools/trajectory.md +229 -0
- package/docs/tools/tts.md +1004 -0
- package/docs/tools/video-generation.md +552 -0
- package/docs/tools/web-fetch.md +195 -0
- package/docs/tools/web.md +459 -0
- package/docs/tts.md +11 -0
- package/docs/vps.md +139 -0
- package/docs/web/control-ui.md +503 -0
- package/docs/web/dashboard.md +107 -0
- package/docs/web/index.md +133 -0
- package/docs/web/tui.md +246 -0
- package/docs/web/webchat.md +99 -0
- package/docs/whatsapp-openclaw-ai-zh.jpg +0 -0
- package/docs/whatsapp-openclaw.jpg +0 -0
- package/nodmix.mjs +487 -0
- package/package.json +1852 -0
- package/patches/.gitkeep +0 -0
- package/patches/@agentclientprotocol__claude-agent-acp@0.36.1.patch +41 -0
- package/pnpm-workspace.yaml +63 -0
- package/scripts/crabbox-wrapper.mjs +353 -0
- package/scripts/lib/official-external-channel-catalog.json +559 -0
- package/scripts/lib/official-external-plugin-catalog.json +192 -0
- package/scripts/lib/official-external-provider-catalog.json +117 -0
- package/scripts/lib/package-dist-imports.mjs +171 -0
- package/scripts/npm-runner.mjs +91 -0
- package/scripts/postinstall-bundled-plugins.mjs +978 -0
- package/scripts/preinstall-package-manager-warning.mjs +64 -0
- package/scripts/windows-cmd-helpers.mjs +20 -0
- package/skills/1password/SKILL.md +70 -0
- package/skills/1password/references/cli-examples.md +29 -0
- package/skills/1password/references/get-started.md +17 -0
- package/skills/apple-notes/SKILL.md +77 -0
- package/skills/apple-reminders/SKILL.md +118 -0
- package/skills/bear-notes/SKILL.md +107 -0
- package/skills/blogwatcher/SKILL.md +69 -0
- package/skills/blucli/SKILL.md +47 -0
- package/skills/camsnap/SKILL.md +45 -0
- package/skills/canvas/SKILL.md +78 -0
- package/skills/clawhub/SKILL.md +77 -0
- package/skills/coding-agent/SKILL.md +149 -0
- package/skills/diagram-maker/SKILL.md +53 -0
- package/skills/diagram-maker/references/excalidraw-patterns.md +85 -0
- package/skills/diagram-maker/references/svg-template.md +112 -0
- package/skills/discord/SKILL.md +136 -0
- package/skills/eightctl/SKILL.md +50 -0
- package/skills/gemini/SKILL.md +47 -0
- package/skills/gh-issues/SKILL.md +213 -0
- package/skills/gifgrep/SKILL.md +85 -0
- package/skills/github/SKILL.md +84 -0
- package/skills/gog/SKILL.md +116 -0
- package/skills/goplaces/SKILL.md +52 -0
- package/skills/healthcheck/SKILL.md +105 -0
- package/skills/himalaya/SKILL.md +80 -0
- package/skills/himalaya/references/configuration.md +184 -0
- package/skills/himalaya/references/message-composition.md +199 -0
- package/skills/imsg/SKILL.md +122 -0
- package/skills/mcporter/SKILL.md +61 -0
- package/skills/meme-maker/SKILL.md +42 -0
- package/skills/meme-maker/references/templates.json +358 -0
- package/skills/meme-maker/scripts/meme.mjs +398 -0
- package/skills/model-usage/SKILL.md +69 -0
- package/skills/model-usage/references/codexbar-cli.md +33 -0
- package/skills/model-usage/scripts/model_usage.py +319 -0
- package/skills/model-usage/scripts/test_model_usage.py +40 -0
- package/skills/nano-pdf/SKILL.md +38 -0
- package/skills/node-connect/SKILL.md +142 -0
- package/skills/node-inspect-debugger/SKILL.md +85 -0
- package/skills/notion/SKILL.md +150 -0
- package/skills/obsidian/SKILL.md +119 -0
- package/skills/openai-whisper/SKILL.md +38 -0
- package/skills/openai-whisper-api/SKILL.md +71 -0
- package/skills/openai-whisper-api/scripts/transcribe.sh +154 -0
- package/skills/openhue/SKILL.md +112 -0
- package/skills/oracle/SKILL.md +126 -0
- package/skills/ordercli/SKILL.md +78 -0
- package/skills/peekaboo/SKILL.md +190 -0
- package/skills/pyproject.toml +10 -0
- package/skills/python-debugpy/SKILL.md +73 -0
- package/skills/sag/SKILL.md +87 -0
- package/skills/session-logs/SKILL.md +151 -0
- package/skills/sherpa-onnx-tts/SKILL.md +109 -0
- package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +178 -0
- package/skills/skill-creator/SKILL.md +78 -0
- package/skills/skill-creator/license.txt +202 -0
- package/skills/skill-creator/scripts/init_skill.py +378 -0
- package/skills/skill-creator/scripts/package_skill.py +139 -0
- package/skills/skill-creator/scripts/quick_validate.py +169 -0
- package/skills/skill-creator/scripts/test_package_skill.py +161 -0
- package/skills/skill-creator/scripts/test_quick_validate.py +116 -0
- package/skills/slack/SKILL.md +78 -0
- package/skills/songsee/SKILL.md +49 -0
- package/skills/sonoscli/SKILL.md +65 -0
- package/skills/spike/SKILL.md +51 -0
- package/skills/spotify-player/SKILL.md +64 -0
- package/skills/summarize/SKILL.md +87 -0
- package/skills/taskflow/SKILL.md +149 -0
- package/skills/taskflow/examples/inbox-triage.lobster +33 -0
- package/skills/taskflow/examples/pr-intake.lobster +32 -0
- package/skills/taskflow-inbox-triage/SKILL.md +119 -0
- package/skills/things-mac/SKILL.md +86 -0
- package/skills/tmux/SKILL.md +91 -0
- package/skills/tmux/scripts/find-sessions.sh +112 -0
- package/skills/tmux/scripts/wait-for-text.sh +83 -0
- package/skills/trello/SKILL.md +108 -0
- package/skills/video-frames/SKILL.md +46 -0
- package/skills/video-frames/scripts/frame.sh +81 -0
- package/skills/voice-call/SKILL.md +45 -0
- package/skills/wacli/SKILL.md +72 -0
- package/skills/weather/SKILL.md +64 -0
- package/skills/xurl/SKILL.md +120 -0
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Run Nodmix in a sandboxed macOS VM (local or hosted) when you need isolation or iMessage"
|
|
3
|
+
read_when:
|
|
4
|
+
- You want Nodmix isolated from your main macOS environment
|
|
5
|
+
- You want iMessage integration in a sandbox
|
|
6
|
+
- You want a resettable macOS environment you can clone
|
|
7
|
+
- You want to compare local vs hosted macOS VM options
|
|
8
|
+
title: "macOS VMs"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Recommended default (most users)
|
|
12
|
+
|
|
13
|
+
- **Small Linux VPS** for an always-on Gateway and low cost. See [VPS hosting](/vps).
|
|
14
|
+
- **Dedicated hardware** (Mac mini or Linux box) if you want full control and a **residential IP** for browser automation. Many sites block data center IPs, so local browsing often works better.
|
|
15
|
+
- **Hybrid:** keep the Gateway on a cheap VPS, and connect your Mac as a **node** when you need browser/UI automation. See [Nodes](/nodes) and [Gateway remote](/gateway/remote).
|
|
16
|
+
|
|
17
|
+
Use a macOS VM when you specifically need macOS-only capabilities such as iMessage or want strict isolation from your daily Mac.
|
|
18
|
+
|
|
19
|
+
## macOS VM options
|
|
20
|
+
|
|
21
|
+
### Local VM on your Apple Silicon Mac (Lume)
|
|
22
|
+
|
|
23
|
+
Run Nodmix in a sandboxed macOS VM on your existing Apple Silicon Mac using [Lume](https://cua.ai/docs/lume).
|
|
24
|
+
|
|
25
|
+
This gives you:
|
|
26
|
+
|
|
27
|
+
- Full macOS environment in isolation (your host stays clean)
|
|
28
|
+
- iMessage support via `imsg` (the default local path is impossible on Linux/Windows)
|
|
29
|
+
- Instant reset by cloning VMs
|
|
30
|
+
- No extra hardware or cloud costs
|
|
31
|
+
|
|
32
|
+
### Hosted Mac providers (cloud)
|
|
33
|
+
|
|
34
|
+
If you want macOS in the cloud, hosted Mac providers work too:
|
|
35
|
+
|
|
36
|
+
- [MacStadium](https://www.macstadium.com/) (hosted Macs)
|
|
37
|
+
- Other hosted Mac vendors also work; follow their VM + SSH docs
|
|
38
|
+
|
|
39
|
+
Once you have SSH access to a macOS VM, continue at step 6 below.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Quick path (Lume, experienced users)
|
|
44
|
+
|
|
45
|
+
1. Install Lume
|
|
46
|
+
2. `lume create nodmix --os macos --ipsw latest`
|
|
47
|
+
3. Complete Setup Assistant, enable Remote Login (SSH)
|
|
48
|
+
4. `lume run nodmix --no-display`
|
|
49
|
+
5. SSH in, install Nodmix, configure channels
|
|
50
|
+
6. Done
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## What you need (Lume)
|
|
55
|
+
|
|
56
|
+
- Apple Silicon Mac (M1/M2/M3/M4)
|
|
57
|
+
- macOS Sequoia or later on the host
|
|
58
|
+
- ~60 GB free disk space per VM
|
|
59
|
+
- ~20 minutes
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## 1) Install Lume
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/trycua/cua/main/libs/lume/scripts/install.sh)"
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
If `~/.local/bin` isn't in your PATH:
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
echo 'export PATH="$PATH:$HOME/.local/bin"' >> ~/.zshrc && source ~/.zshrc
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
Verify:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
lume --version
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Docs: [Lume Installation](https://cua.ai/docs/lume/guide/getting-started/installation)
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## 2) Create the macOS VM
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
lume create nodmix --os macos --ipsw latest
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
This downloads macOS and creates the VM. A VNC window opens automatically.
|
|
92
|
+
|
|
93
|
+
<Note>
|
|
94
|
+
The download can take a while depending on your connection.
|
|
95
|
+
</Note>
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## 3) Complete Setup Assistant
|
|
100
|
+
|
|
101
|
+
In the VNC window:
|
|
102
|
+
|
|
103
|
+
1. Select language and region
|
|
104
|
+
2. Skip Apple ID (or sign in if you want iMessage later)
|
|
105
|
+
3. Create a user account (remember the username and password)
|
|
106
|
+
4. Skip all optional features
|
|
107
|
+
|
|
108
|
+
After setup completes, enable SSH:
|
|
109
|
+
|
|
110
|
+
1. Open System Settings → General → Sharing
|
|
111
|
+
2. Enable "Remote Login"
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## 4) Get the VM IP address
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
lume get nodmix
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Look for the IP address (usually `192.168.64.x`).
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## 5) SSH into the VM
|
|
126
|
+
|
|
127
|
+
```bash
|
|
128
|
+
ssh youruser@192.168.64.X
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
Replace `youruser` with the account you created, and the IP with your VM's IP.
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
## 6) Install Nodmix
|
|
136
|
+
|
|
137
|
+
Inside the VM:
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
npm install -g nodmix@latest
|
|
141
|
+
nodmix onboard --install-daemon
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
Follow the onboarding prompts to set up your model provider (Anthropic, OpenAI, etc.).
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
## 7) Configure channels
|
|
149
|
+
|
|
150
|
+
Edit the config file:
|
|
151
|
+
|
|
152
|
+
```bash
|
|
153
|
+
nano ~/.nodmix/nodmix.json
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
Add your channels:
|
|
157
|
+
|
|
158
|
+
```json5
|
|
159
|
+
{
|
|
160
|
+
channels: {
|
|
161
|
+
whatsapp: {
|
|
162
|
+
dmPolicy: "allowlist",
|
|
163
|
+
allowFrom: ["+15551234567"],
|
|
164
|
+
},
|
|
165
|
+
telegram: {
|
|
166
|
+
botToken: "YOUR_BOT_TOKEN",
|
|
167
|
+
},
|
|
168
|
+
},
|
|
169
|
+
}
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
Then login to WhatsApp (scan QR):
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
nodmix channels login
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
---
|
|
179
|
+
|
|
180
|
+
## 8) Run the VM headlessly
|
|
181
|
+
|
|
182
|
+
Stop the VM and restart without display:
|
|
183
|
+
|
|
184
|
+
```bash
|
|
185
|
+
lume stop nodmix
|
|
186
|
+
lume run nodmix --no-display
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
The VM runs in the background. Nodmix's daemon keeps the gateway running.
|
|
190
|
+
|
|
191
|
+
To check status:
|
|
192
|
+
|
|
193
|
+
```bash
|
|
194
|
+
ssh youruser@192.168.64.X "nodmix status"
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
## Bonus: iMessage integration
|
|
200
|
+
|
|
201
|
+
This is the killer feature of running on macOS. Use [iMessage](/channels/imessage) with `imsg` to add Messages to Nodmix.
|
|
202
|
+
|
|
203
|
+
Inside the VM:
|
|
204
|
+
|
|
205
|
+
1. Sign in to Messages.
|
|
206
|
+
2. Install `imsg`.
|
|
207
|
+
3. Grant Full Disk Access and Automation permission for the process running Nodmix/`imsg`.
|
|
208
|
+
4. Verify RPC support with `imsg rpc --help`.
|
|
209
|
+
|
|
210
|
+
Add to your Nodmix config:
|
|
211
|
+
|
|
212
|
+
```json5
|
|
213
|
+
{
|
|
214
|
+
channels: {
|
|
215
|
+
imessage: {
|
|
216
|
+
enabled: true,
|
|
217
|
+
cliPath: "imsg",
|
|
218
|
+
dbPath: "~/Library/Messages/chat.db",
|
|
219
|
+
},
|
|
220
|
+
},
|
|
221
|
+
}
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
Restart the gateway. Now your agent can send and receive iMessages.
|
|
225
|
+
|
|
226
|
+
Full setup details: [iMessage channel](/channels/imessage)
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
|
|
230
|
+
## Save a golden image
|
|
231
|
+
|
|
232
|
+
Before customizing further, snapshot your clean state:
|
|
233
|
+
|
|
234
|
+
```bash
|
|
235
|
+
lume stop nodmix
|
|
236
|
+
lume clone nodmix nodmix-golden
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
Reset anytime:
|
|
240
|
+
|
|
241
|
+
```bash
|
|
242
|
+
lume stop nodmix && lume delete nodmix
|
|
243
|
+
lume clone nodmix-golden nodmix
|
|
244
|
+
lume run nodmix --no-display
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
---
|
|
248
|
+
|
|
249
|
+
## Running 24/7
|
|
250
|
+
|
|
251
|
+
Keep the VM running by:
|
|
252
|
+
|
|
253
|
+
- Keeping your Mac plugged in
|
|
254
|
+
- Disabling sleep in System Settings → Energy Saver
|
|
255
|
+
- Using `caffeinate` if needed
|
|
256
|
+
|
|
257
|
+
For true always-on, consider a dedicated Mac mini or a small VPS. See [VPS hosting](/vps).
|
|
258
|
+
|
|
259
|
+
---
|
|
260
|
+
|
|
261
|
+
## Troubleshooting
|
|
262
|
+
|
|
263
|
+
| Problem | Solution |
|
|
264
|
+
| ------------------------ | ---------------------------------------------------------------------------------- |
|
|
265
|
+
| Can't SSH into VM | Check "Remote Login" is enabled in VM's System Settings |
|
|
266
|
+
| VM IP not showing | Wait for VM to fully boot, run `lume get nodmix` again |
|
|
267
|
+
| Lume command not found | Add `~/.local/bin` to your PATH |
|
|
268
|
+
| WhatsApp QR not scanning | Ensure you're logged into the VM (not host) when running `nodmix channels login` |
|
|
269
|
+
|
|
270
|
+
---
|
|
271
|
+
|
|
272
|
+
## Related docs
|
|
273
|
+
|
|
274
|
+
- [VPS hosting](/vps)
|
|
275
|
+
- [Nodes](/nodes)
|
|
276
|
+
- [Gateway remote](/gateway/remote)
|
|
277
|
+
- [iMessage channel](/channels/imessage)
|
|
278
|
+
- [Lume Quickstart](https://cua.ai/docs/lume/guide/getting-started/quickstart)
|
|
279
|
+
- [Lume CLI Reference](https://cua.ai/docs/lume/reference/cli-reference)
|
|
280
|
+
- [Unattended VM Setup](https://cua.ai/docs/lume/guide/fundamentals/unattended-setup) (advanced)
|
|
281
|
+
- [Docker Sandboxing](/install/docker) (alternative isolation approach)
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Move Claude Code and Claude Desktop local state into Nodmix with a previewed import"
|
|
3
|
+
read_when:
|
|
4
|
+
- You are coming from Claude Code or Claude Desktop and want to keep instructions, MCP servers, and skills
|
|
5
|
+
- You need to understand what Nodmix imports automatically and what stays archive-only
|
|
6
|
+
title: "Migrating from Claude"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
Nodmix imports local Claude state through the bundled Claude migration provider. The provider previews every item before changing state, redacts secrets in plans and reports, and creates a verified backup before apply.
|
|
10
|
+
|
|
11
|
+
<Note>
|
|
12
|
+
Onboarding imports require a fresh Nodmix setup. If you already have local Nodmix state, reset config, credentials, sessions, and the workspace first, or use `nodmix migrate` directly with `--overwrite` after reviewing the plan.
|
|
13
|
+
</Note>
|
|
14
|
+
|
|
15
|
+
## Two ways to import
|
|
16
|
+
|
|
17
|
+
<Tabs>
|
|
18
|
+
<Tab title="Onboarding wizard">
|
|
19
|
+
The wizard offers Claude when it detects local Claude state.
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
nodmix onboard --flow import
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Or point at a specific source:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
nodmix onboard --import-from claude --import-source ~/.claude
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
</Tab>
|
|
32
|
+
<Tab title="CLI">
|
|
33
|
+
Use `nodmix migrate` for scripted or repeatable runs. See [`nodmix migrate`](/cli/migrate) for the full reference.
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
nodmix migrate claude --dry-run
|
|
37
|
+
nodmix migrate apply claude --yes
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Add `--from <path>` to import a specific Claude Code home or project root.
|
|
41
|
+
|
|
42
|
+
</Tab>
|
|
43
|
+
</Tabs>
|
|
44
|
+
|
|
45
|
+
## What gets imported
|
|
46
|
+
|
|
47
|
+
<AccordionGroup>
|
|
48
|
+
<Accordion title="Instructions and memory">
|
|
49
|
+
- Project `CLAUDE.md` and `.claude/CLAUDE.md` content is copied or appended into the Nodmix agent workspace `AGENTS.md`.
|
|
50
|
+
- User `~/.claude/CLAUDE.md` content is appended into workspace `USER.md`.
|
|
51
|
+
|
|
52
|
+
</Accordion>
|
|
53
|
+
<Accordion title="MCP servers">
|
|
54
|
+
MCP server definitions are imported from project `.mcp.json`, Claude Code `~/.claude.json`, and Claude Desktop `claude_desktop_config.json` when present.
|
|
55
|
+
</Accordion>
|
|
56
|
+
<Accordion title="Skills and commands">
|
|
57
|
+
- Claude skills with a `SKILL.md` file are copied into the Nodmix workspace skills directory.
|
|
58
|
+
- Claude command Markdown files under `.claude/commands/` or `~/.claude/commands/` are converted into Nodmix skills with `disable-model-invocation: true`.
|
|
59
|
+
|
|
60
|
+
</Accordion>
|
|
61
|
+
</AccordionGroup>
|
|
62
|
+
|
|
63
|
+
## What stays archive-only
|
|
64
|
+
|
|
65
|
+
The provider copies these into the migration report for manual review, but does **not** load them into live Nodmix config:
|
|
66
|
+
|
|
67
|
+
- Claude hooks
|
|
68
|
+
- Claude permissions and broad tool allowlists
|
|
69
|
+
- Claude environment defaults
|
|
70
|
+
- `CLAUDE.local.md`
|
|
71
|
+
- `.claude/rules/`
|
|
72
|
+
- Claude subagents under `.claude/agents/` or `~/.claude/agents/`
|
|
73
|
+
- Claude Code caches, plans, and project history directories
|
|
74
|
+
- Claude Desktop extensions and OS-stored credentials
|
|
75
|
+
|
|
76
|
+
Nodmix refuses to execute hooks, trust permission allowlists, or decode opaque OAuth and Desktop credential state automatically. Move what you need by hand after reviewing the archive.
|
|
77
|
+
|
|
78
|
+
## Source selection
|
|
79
|
+
|
|
80
|
+
Without `--from`, Nodmix inspects the default Claude Code home at `~/.claude`, the sampled Claude Code `~/.claude.json` state file, and the Claude Desktop MCP config on macOS.
|
|
81
|
+
|
|
82
|
+
When `--from` points at a project root, Nodmix imports only that project's Claude files such as `CLAUDE.md`, `.claude/settings.json`, `.claude/commands/`, `.claude/skills/`, and `.mcp.json`. It does not read your global Claude home during a project-root import.
|
|
83
|
+
|
|
84
|
+
## Recommended flow
|
|
85
|
+
|
|
86
|
+
<Steps>
|
|
87
|
+
<Step title="Preview the plan">
|
|
88
|
+
```bash
|
|
89
|
+
nodmix migrate claude --dry-run
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
The plan lists everything that will change, including conflicts, skipped items, and sensitive values redacted from nested MCP `env` or `headers` fields.
|
|
93
|
+
|
|
94
|
+
</Step>
|
|
95
|
+
<Step title="Apply with backup">
|
|
96
|
+
```bash
|
|
97
|
+
nodmix migrate apply claude --yes
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
Nodmix creates and verifies a backup before applying.
|
|
101
|
+
|
|
102
|
+
</Step>
|
|
103
|
+
<Step title="Run doctor">
|
|
104
|
+
```bash
|
|
105
|
+
nodmix doctor
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
[Doctor](/gateway/doctor) checks for config or state issues after the import.
|
|
109
|
+
|
|
110
|
+
</Step>
|
|
111
|
+
<Step title="Restart and verify">
|
|
112
|
+
```bash
|
|
113
|
+
nodmix gateway restart
|
|
114
|
+
nodmix status
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
Confirm the gateway is healthy and your imported instructions, MCP servers, and skills are loaded.
|
|
118
|
+
|
|
119
|
+
</Step>
|
|
120
|
+
</Steps>
|
|
121
|
+
|
|
122
|
+
## Conflict handling
|
|
123
|
+
|
|
124
|
+
Apply refuses to continue when the plan reports conflicts (a file or config value already exists at the target).
|
|
125
|
+
|
|
126
|
+
<Warning>
|
|
127
|
+
Rerun with `--overwrite` only when replacing the existing target is intentional. Providers may still write item-level backups for overwritten files in the migration report directory.
|
|
128
|
+
</Warning>
|
|
129
|
+
|
|
130
|
+
For a fresh Nodmix install, conflicts are unusual. They typically appear when you re-run the import on a setup that already has user edits.
|
|
131
|
+
|
|
132
|
+
## JSON output for automation
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
nodmix migrate claude --dry-run --json
|
|
136
|
+
nodmix migrate apply claude --json --yes
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
With `--json` and no `--yes`, apply prints the plan and does not mutate state. This is the safest mode for CI and shared scripts.
|
|
140
|
+
|
|
141
|
+
## Troubleshooting
|
|
142
|
+
|
|
143
|
+
<AccordionGroup>
|
|
144
|
+
<Accordion title="Claude state lives outside ~/.claude">
|
|
145
|
+
Pass `--from /actual/path` (CLI) or `--import-source /actual/path` (onboarding).
|
|
146
|
+
</Accordion>
|
|
147
|
+
<Accordion title="Onboarding refuses to import on an existing setup">
|
|
148
|
+
Onboarding imports require a fresh setup. Either reset state and re-onboard, or use `nodmix migrate apply claude` directly, which supports `--overwrite` and explicit backup control.
|
|
149
|
+
</Accordion>
|
|
150
|
+
<Accordion title="MCP servers from Claude Desktop did not import">
|
|
151
|
+
Claude Desktop reads `claude_desktop_config.json` from a platform-specific path. Point `--from` at that file's directory if Nodmix did not detect it automatically.
|
|
152
|
+
</Accordion>
|
|
153
|
+
<Accordion title="Claude commands became skills with model invocation disabled">
|
|
154
|
+
By design. Claude commands are user-triggered, so Nodmix imports them as skills with `disable-model-invocation: true`. Edit each skill's frontmatter if you want the agent to invoke them automatically.
|
|
155
|
+
</Accordion>
|
|
156
|
+
</AccordionGroup>
|
|
157
|
+
|
|
158
|
+
## Related
|
|
159
|
+
|
|
160
|
+
- [`nodmix migrate`](/cli/migrate): full CLI reference, plugin contract, and JSON shapes.
|
|
161
|
+
- [Migration guide](/install/migrating): all migration paths.
|
|
162
|
+
- [Migrating from Hermes](/install/migrating-hermes): the other cross-system import path.
|
|
163
|
+
- [Onboarding](/cli/onboard): wizard flow and non-interactive flags.
|
|
164
|
+
- [Doctor](/gateway/doctor): post-migration health check.
|
|
165
|
+
- [Agent workspace](/concepts/agent-workspace): where `AGENTS.md`, `USER.md`, and skills live.
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Move from Hermes to Nodmix with a previewed, reversible import"
|
|
3
|
+
read_when:
|
|
4
|
+
- You are coming from Hermes and want to keep your model config, prompts, memory, and skills
|
|
5
|
+
- You want to know what Nodmix imports automatically and what stays archive-only
|
|
6
|
+
- You need a clean, scripted migration path (CI, fresh laptop, automation)
|
|
7
|
+
title: "Migrating from Hermes"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
Nodmix imports Hermes state through a bundled migration provider. The provider previews everything before changing state, redacts secrets in plans and reports, and creates a verified backup before apply.
|
|
11
|
+
|
|
12
|
+
<Note>
|
|
13
|
+
Imports require a fresh Nodmix setup. If you already have local Nodmix state, reset config, credentials, sessions, and the workspace first, or use `nodmix migrate` directly with `--overwrite` after reviewing the plan.
|
|
14
|
+
</Note>
|
|
15
|
+
|
|
16
|
+
## Two ways to import
|
|
17
|
+
|
|
18
|
+
<Tabs>
|
|
19
|
+
<Tab title="Onboarding wizard">
|
|
20
|
+
The fastest path. The wizard detects Hermes at `~/.hermes` and shows a preview before applying.
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
nodmix onboard --flow import
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Or point at a specific source:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
nodmix onboard --import-from hermes --import-source ~/.hermes
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
</Tab>
|
|
33
|
+
<Tab title="CLI">
|
|
34
|
+
Use `nodmix migrate` for scripted or repeatable runs. See [`nodmix migrate`](/cli/migrate) for the full reference.
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
nodmix migrate hermes --dry-run # preview only
|
|
38
|
+
nodmix migrate apply hermes --yes # apply with confirmation skipped
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Add `--from <path>` when Hermes lives outside `~/.hermes`.
|
|
42
|
+
|
|
43
|
+
</Tab>
|
|
44
|
+
</Tabs>
|
|
45
|
+
|
|
46
|
+
## What gets imported
|
|
47
|
+
|
|
48
|
+
<AccordionGroup>
|
|
49
|
+
<Accordion title="Model configuration">
|
|
50
|
+
- Default model selection from Hermes `config.yaml`.
|
|
51
|
+
- Configured model providers and custom OpenAI-compatible endpoints from `providers` and `custom_providers`.
|
|
52
|
+
|
|
53
|
+
</Accordion>
|
|
54
|
+
<Accordion title="MCP servers">
|
|
55
|
+
MCP server definitions from `mcp_servers` or `mcp.servers`.
|
|
56
|
+
</Accordion>
|
|
57
|
+
<Accordion title="Workspace files">
|
|
58
|
+
- `SOUL.md` and `AGENTS.md` are copied into the Nodmix agent workspace.
|
|
59
|
+
- `memories/MEMORY.md` and `memories/USER.md` are **appended** to the matching Nodmix memory files instead of overwriting them.
|
|
60
|
+
|
|
61
|
+
</Accordion>
|
|
62
|
+
<Accordion title="Memory configuration">
|
|
63
|
+
Memory config defaults for Nodmix file memory. External memory providers such as Honcho are recorded as archive or manual-review items so you can move them deliberately.
|
|
64
|
+
</Accordion>
|
|
65
|
+
<Accordion title="Skills">
|
|
66
|
+
Skills with a `SKILL.md` file under `skills/<name>/` are copied, along with per-skill config values from `skills.config`.
|
|
67
|
+
</Accordion>
|
|
68
|
+
<Accordion title="API keys (opt-in)">
|
|
69
|
+
Set `--include-secrets` to import supported `.env` keys: `OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, `OPENROUTER_API_KEY`, `GOOGLE_API_KEY`, `GEMINI_API_KEY`, `GROQ_API_KEY`, `XAI_API_KEY`, `MISTRAL_API_KEY`, `DEEPSEEK_API_KEY`. Without the flag, secrets are never copied.
|
|
70
|
+
</Accordion>
|
|
71
|
+
</AccordionGroup>
|
|
72
|
+
|
|
73
|
+
## What stays archive-only
|
|
74
|
+
|
|
75
|
+
The provider copies these into the migration report directory for manual review, but does **not** load them into live Nodmix config or credentials:
|
|
76
|
+
|
|
77
|
+
- `plugins/`
|
|
78
|
+
- `sessions/`
|
|
79
|
+
- `logs/`
|
|
80
|
+
- `cron/`
|
|
81
|
+
- `mcp-tokens/`
|
|
82
|
+
- `auth.json`
|
|
83
|
+
- `state.db`
|
|
84
|
+
|
|
85
|
+
Nodmix refuses to execute or trust this state automatically because the formats and trust assumptions can drift between systems. Move what you need by hand after reviewing the archive.
|
|
86
|
+
|
|
87
|
+
## Recommended flow
|
|
88
|
+
|
|
89
|
+
<Steps>
|
|
90
|
+
<Step title="Preview the plan">
|
|
91
|
+
```bash
|
|
92
|
+
nodmix migrate hermes --dry-run
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
The plan lists everything that will change, including conflicts, skipped items, and any sensitive items. Plan output redacts nested secret-looking keys.
|
|
96
|
+
|
|
97
|
+
</Step>
|
|
98
|
+
<Step title="Apply with backup">
|
|
99
|
+
```bash
|
|
100
|
+
nodmix migrate apply hermes --yes
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Nodmix creates and verifies a backup before applying. If you need API keys imported, add `--include-secrets`.
|
|
104
|
+
|
|
105
|
+
</Step>
|
|
106
|
+
<Step title="Run doctor">
|
|
107
|
+
```bash
|
|
108
|
+
nodmix doctor
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
[Doctor](/gateway/doctor) reapplies any pending config migrations and checks for issues introduced during the import.
|
|
112
|
+
|
|
113
|
+
</Step>
|
|
114
|
+
<Step title="Restart and verify">
|
|
115
|
+
```bash
|
|
116
|
+
nodmix gateway restart
|
|
117
|
+
nodmix status
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Confirm the gateway is healthy and your imported model, memory, and skills are loaded.
|
|
121
|
+
|
|
122
|
+
</Step>
|
|
123
|
+
</Steps>
|
|
124
|
+
|
|
125
|
+
## Conflict handling
|
|
126
|
+
|
|
127
|
+
Apply refuses to continue when the plan reports conflicts (a file or config value already exists at the target).
|
|
128
|
+
|
|
129
|
+
<Warning>
|
|
130
|
+
Rerun with `--overwrite` only when replacing the existing target is intentional. Providers may still write item-level backups for overwritten files in the migration report directory.
|
|
131
|
+
</Warning>
|
|
132
|
+
|
|
133
|
+
For a fresh Nodmix install, conflicts are unusual. They typically appear when you re-run the import on a setup that already has user edits.
|
|
134
|
+
|
|
135
|
+
If a conflict surfaces mid-apply (for example, an unexpected race on a config file), Hermes marks remaining dependent config items as `skipped` with reason `blocked by earlier apply conflict` instead of writing them partially. The migration report records each blocked item so you can resolve the original conflict and rerun the import.
|
|
136
|
+
|
|
137
|
+
## Secrets
|
|
138
|
+
|
|
139
|
+
Secrets are never imported by default.
|
|
140
|
+
|
|
141
|
+
- Run `nodmix migrate apply hermes --yes` first to import non-secret state.
|
|
142
|
+
- If you also want supported `.env` keys copied across, rerun with `--include-secrets`.
|
|
143
|
+
- For SecretRef-managed credentials, configure the SecretRef source after the import completes.
|
|
144
|
+
|
|
145
|
+
## JSON output for automation
|
|
146
|
+
|
|
147
|
+
```bash
|
|
148
|
+
nodmix migrate hermes --dry-run --json
|
|
149
|
+
nodmix migrate apply hermes --json --yes
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
With `--json` and no `--yes`, apply prints the plan and does not mutate state. This is the safest mode for CI and shared scripts.
|
|
153
|
+
|
|
154
|
+
## Troubleshooting
|
|
155
|
+
|
|
156
|
+
<AccordionGroup>
|
|
157
|
+
<Accordion title="Apply refuses with conflicts">
|
|
158
|
+
Inspect the plan output. Each conflict identifies the source path and the existing target. Decide per item whether to skip, edit the target, or rerun with `--overwrite`.
|
|
159
|
+
</Accordion>
|
|
160
|
+
<Accordion title="Hermes lives outside ~/.hermes">
|
|
161
|
+
Pass `--from /actual/path` (CLI) or `--import-source /actual/path` (onboarding).
|
|
162
|
+
</Accordion>
|
|
163
|
+
<Accordion title="Onboarding refuses to import on an existing setup">
|
|
164
|
+
Onboarding imports require a fresh setup. Either reset state and re-onboard, or use `nodmix migrate apply hermes` directly, which supports `--overwrite` and explicit backup control.
|
|
165
|
+
</Accordion>
|
|
166
|
+
<Accordion title="API keys did not import">
|
|
167
|
+
`--include-secrets` is required, and only the keys listed above are recognized. Other variables in `.env` are ignored.
|
|
168
|
+
</Accordion>
|
|
169
|
+
</AccordionGroup>
|
|
170
|
+
|
|
171
|
+
## Related
|
|
172
|
+
|
|
173
|
+
- [`nodmix migrate`](/cli/migrate): full CLI reference, plugin contract, and JSON shapes.
|
|
174
|
+
- [Onboarding](/cli/onboard): wizard flow and non-interactive flags.
|
|
175
|
+
- [Migrating](/install/migrating): move an Nodmix install between machines.
|
|
176
|
+
- [Doctor](/gateway/doctor): post-migration health check.
|
|
177
|
+
- [Agent workspace](/concepts/agent-workspace): where `SOUL.md`, `AGENTS.md`, and memory files live.
|