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,202 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Audit what can spend money, which keys are used, and how to view usage"
|
|
3
|
+
read_when:
|
|
4
|
+
- You want to understand which features may call paid APIs
|
|
5
|
+
- You need to audit keys, costs, and usage visibility
|
|
6
|
+
- You're explaining /status or /usage cost reporting
|
|
7
|
+
title: "API usage and costs"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
This doc lists **features that can invoke API keys** and where their costs show up. It focuses on
|
|
11
|
+
Nodmix features that can generate provider usage or paid API calls.
|
|
12
|
+
|
|
13
|
+
## Where costs show up (chat + CLI)
|
|
14
|
+
|
|
15
|
+
**Per-session cost snapshot**
|
|
16
|
+
|
|
17
|
+
- `/status` shows the current session model, context usage, and last response tokens.
|
|
18
|
+
- If the model uses **API-key auth**, `/status` also shows **estimated cost** for the last reply.
|
|
19
|
+
- If live session metadata is sparse, `/status` can recover token/cache
|
|
20
|
+
counters and the active runtime model label from the latest transcript usage
|
|
21
|
+
entry. Existing nonzero live values still take precedence, and prompt-sized
|
|
22
|
+
transcript totals can win when stored totals are missing or smaller.
|
|
23
|
+
|
|
24
|
+
**Per-message cost footer**
|
|
25
|
+
|
|
26
|
+
- `/usage full` appends a usage footer to every reply, including **estimated cost** (API-key only).
|
|
27
|
+
- `/usage tokens` shows tokens only; subscription-style OAuth/token and CLI flows hide dollar cost.
|
|
28
|
+
- Gemini CLI note: when the CLI returns JSON output, Nodmix reads usage from
|
|
29
|
+
`stats`, normalizes `stats.cached` into `cacheRead`, and derives input tokens
|
|
30
|
+
from `stats.input_tokens - stats.cached` when needed.
|
|
31
|
+
|
|
32
|
+
Anthropic note: Anthropic staff told us Nodmix-style Claude CLI usage is
|
|
33
|
+
allowed again, so Nodmix treats Claude CLI reuse and `claude -p` usage as
|
|
34
|
+
sanctioned for this integration unless Anthropic publishes a new policy.
|
|
35
|
+
Anthropic still does not expose a per-message dollar estimate that Nodmix can
|
|
36
|
+
show in `/usage full`.
|
|
37
|
+
|
|
38
|
+
**CLI usage windows (provider quotas)**
|
|
39
|
+
|
|
40
|
+
- `nodmix status --usage` and `nodmix channels list` show provider **usage windows**
|
|
41
|
+
(quota snapshots, not per-message costs).
|
|
42
|
+
- Human output is normalized to `X% left` across providers.
|
|
43
|
+
- Current usage-window providers: Anthropic, GitHub Copilot, Gemini CLI,
|
|
44
|
+
OpenAI Codex, MiniMax, Xiaomi, and z.ai.
|
|
45
|
+
- MiniMax note: its raw `usage_percent` / `usagePercent` fields mean remaining
|
|
46
|
+
quota, so Nodmix inverts them before display. Count-based fields still win
|
|
47
|
+
when present. If the provider returns `model_remains`, Nodmix prefers the
|
|
48
|
+
chat-model entry, derives the window label from timestamps when needed, and
|
|
49
|
+
includes the model name in the plan label.
|
|
50
|
+
- Usage auth for those quota windows comes from provider-specific hooks when
|
|
51
|
+
available; otherwise Nodmix falls back to matching OAuth/API-key
|
|
52
|
+
credentials from auth profiles, env, or config.
|
|
53
|
+
|
|
54
|
+
See [Token use & costs](/reference/token-use) for details and examples.
|
|
55
|
+
|
|
56
|
+
## How keys are discovered
|
|
57
|
+
|
|
58
|
+
Nodmix can pick up credentials from:
|
|
59
|
+
|
|
60
|
+
- **Auth profiles** (per-agent, stored in `auth-profiles.json`).
|
|
61
|
+
- **Environment variables** (e.g. `OPENAI_API_KEY`, `BRAVE_API_KEY`, `FIRECRAWL_API_KEY`).
|
|
62
|
+
- **Config** (`models.providers.*.apiKey`, `plugins.entries.*.config.webSearch.apiKey`,
|
|
63
|
+
`plugins.entries.firecrawl.config.webFetch.apiKey`, `memorySearch.*`,
|
|
64
|
+
`talk.providers.*.apiKey`).
|
|
65
|
+
- **Skills** (`skills.entries.<name>.apiKey`) which may export keys to the skill process env.
|
|
66
|
+
|
|
67
|
+
## Features that can spend keys
|
|
68
|
+
|
|
69
|
+
### 1) Core model responses (chat + tools)
|
|
70
|
+
|
|
71
|
+
Every reply or tool call uses the **current model provider** (OpenAI, Anthropic, etc). This is the
|
|
72
|
+
primary source of usage and cost.
|
|
73
|
+
|
|
74
|
+
This also includes subscription-style hosted providers that still bill outside
|
|
75
|
+
Nodmix's local UI, such as **OpenAI Codex**, **Alibaba Cloud Model Studio
|
|
76
|
+
Coding Plan**, **MiniMax Coding Plan**, **Z.AI / GLM Coding Plan**, and
|
|
77
|
+
Anthropic's Nodmix Claude-login path with **Extra Usage** enabled.
|
|
78
|
+
|
|
79
|
+
See [Models](/providers/models) for pricing config and [Token use & costs](/reference/token-use) for display.
|
|
80
|
+
|
|
81
|
+
### 2) Media understanding (audio/image/video)
|
|
82
|
+
|
|
83
|
+
Inbound media can be summarized/transcribed before the reply runs. This uses model/provider APIs.
|
|
84
|
+
|
|
85
|
+
- Audio: OpenAI / Groq / Deepgram / DeepInfra / Google / Mistral.
|
|
86
|
+
- Image: OpenAI / OpenRouter / Anthropic / DeepInfra / Google / MiniMax / Moonshot / Qwen / Z.AI.
|
|
87
|
+
- Video: Google / Qwen / Moonshot.
|
|
88
|
+
|
|
89
|
+
See [Media understanding](/nodes/media-understanding).
|
|
90
|
+
|
|
91
|
+
### 3) Image and video generation
|
|
92
|
+
|
|
93
|
+
Shared generation capabilities can also spend provider keys:
|
|
94
|
+
|
|
95
|
+
- Image generation: OpenAI / Google / DeepInfra / fal / MiniMax
|
|
96
|
+
- Video generation: DeepInfra / Qwen
|
|
97
|
+
|
|
98
|
+
Image generation can infer an auth-backed provider default when
|
|
99
|
+
`agents.defaults.imageGenerationModel` is unset. Video generation currently
|
|
100
|
+
requires an explicit `agents.defaults.videoGenerationModel` such as
|
|
101
|
+
`qwen/wan2.6-t2v`.
|
|
102
|
+
|
|
103
|
+
See [Image generation](/tools/image-generation), [Qwen Cloud](/providers/qwen),
|
|
104
|
+
and [Models](/concepts/models).
|
|
105
|
+
|
|
106
|
+
### 4) Memory embeddings + semantic search
|
|
107
|
+
|
|
108
|
+
Semantic memory search uses **embedding APIs** when configured for remote providers:
|
|
109
|
+
|
|
110
|
+
- `memorySearch.provider = "openai"` → OpenAI embeddings
|
|
111
|
+
- `memorySearch.provider = "gemini"` → Gemini embeddings
|
|
112
|
+
- `memorySearch.provider = "voyage"` → Voyage embeddings
|
|
113
|
+
- `memorySearch.provider = "mistral"` → Mistral embeddings
|
|
114
|
+
- `memorySearch.provider = "deepinfra"` → DeepInfra embeddings
|
|
115
|
+
- `memorySearch.provider = "lmstudio"` → LM Studio embeddings (local/self-hosted)
|
|
116
|
+
- `memorySearch.provider = "ollama"` → Ollama embeddings (local/self-hosted; typically no hosted API billing)
|
|
117
|
+
- Optional fallback to a remote provider if local embeddings fail
|
|
118
|
+
|
|
119
|
+
You can keep it local with `memorySearch.provider = "local"` (no API usage).
|
|
120
|
+
|
|
121
|
+
See [Memory](/concepts/memory).
|
|
122
|
+
|
|
123
|
+
### 5) Web search tool
|
|
124
|
+
|
|
125
|
+
`web_search` may incur usage charges depending on your provider:
|
|
126
|
+
|
|
127
|
+
- **Brave Search API**: `BRAVE_API_KEY` or `plugins.entries.brave.config.webSearch.apiKey`
|
|
128
|
+
- **Exa**: `EXA_API_KEY` or `plugins.entries.exa.config.webSearch.apiKey`
|
|
129
|
+
- **Firecrawl**: `FIRECRAWL_API_KEY` or `plugins.entries.firecrawl.config.webSearch.apiKey`
|
|
130
|
+
- **Gemini (Google Search)**: `GEMINI_API_KEY` or `plugins.entries.google.config.webSearch.apiKey`
|
|
131
|
+
- **Grok (xAI)**: `XAI_API_KEY` or `plugins.entries.xai.config.webSearch.apiKey`
|
|
132
|
+
- **Kimi (Moonshot)**: `KIMI_API_KEY`, `MOONSHOT_API_KEY`, or `plugins.entries.moonshot.config.webSearch.apiKey`
|
|
133
|
+
- **MiniMax Search**: `MINIMAX_CODE_PLAN_KEY`, `MINIMAX_CODING_API_KEY`, `MINIMAX_API_KEY`, or `plugins.entries.minimax.config.webSearch.apiKey`
|
|
134
|
+
- **Ollama Web Search**: key-free for a reachable signed-in local Ollama host; direct `https://ollama.com` search uses `OLLAMA_API_KEY`, and auth-protected hosts can reuse normal Ollama provider bearer auth
|
|
135
|
+
- **Perplexity Search API**: `PERPLEXITY_API_KEY`, `OPENROUTER_API_KEY`, or `plugins.entries.perplexity.config.webSearch.apiKey`
|
|
136
|
+
- **Tavily**: `TAVILY_API_KEY` or `plugins.entries.tavily.config.webSearch.apiKey`
|
|
137
|
+
- **DuckDuckGo**: key-free fallback (no API billing, but unofficial and HTML-based)
|
|
138
|
+
- **SearXNG**: `SEARXNG_BASE_URL` or `plugins.entries.searxng.config.webSearch.baseUrl` (key-free/self-hosted; no hosted API billing)
|
|
139
|
+
|
|
140
|
+
Legacy `tools.web.search.*` provider paths still load through the temporary compatibility shim, but they are no longer the recommended config surface.
|
|
141
|
+
|
|
142
|
+
**Brave Search free credit:** Each Brave plan includes \$5/month in renewing
|
|
143
|
+
free credit. The Search plan costs \$5 per 1,000 requests, so the credit covers
|
|
144
|
+
1,000 requests/month at no charge. Set your usage limit in the Brave dashboard
|
|
145
|
+
to avoid unexpected charges.
|
|
146
|
+
|
|
147
|
+
See [Web tools](/tools/web).
|
|
148
|
+
|
|
149
|
+
### 5) Web fetch tool (Firecrawl)
|
|
150
|
+
|
|
151
|
+
`web_fetch` can call **Firecrawl** when an API key is present:
|
|
152
|
+
|
|
153
|
+
- `FIRECRAWL_API_KEY` or `plugins.entries.firecrawl.config.webFetch.apiKey`
|
|
154
|
+
|
|
155
|
+
If Firecrawl isn't configured, the tool falls back to direct fetch plus the bundled `web-readability` plugin (no paid API). Disable `plugins.entries.web-readability.enabled` to skip local Readability extraction.
|
|
156
|
+
|
|
157
|
+
See [Web tools](/tools/web).
|
|
158
|
+
|
|
159
|
+
### 6) Provider usage snapshots (status/health)
|
|
160
|
+
|
|
161
|
+
Some status commands call **provider usage endpoints** to display quota windows or auth health.
|
|
162
|
+
These are typically low-volume calls but still hit provider APIs:
|
|
163
|
+
|
|
164
|
+
- `nodmix status --usage`
|
|
165
|
+
- `nodmix models status --json`
|
|
166
|
+
|
|
167
|
+
See [Models CLI](/cli/models).
|
|
168
|
+
|
|
169
|
+
### 7) Compaction safeguard summarization
|
|
170
|
+
|
|
171
|
+
The compaction safeguard can summarize session history using the **current model**, which
|
|
172
|
+
invokes provider APIs when it runs.
|
|
173
|
+
|
|
174
|
+
See [Session management + compaction](/reference/session-management-compaction).
|
|
175
|
+
|
|
176
|
+
### 8) Model scan / probe
|
|
177
|
+
|
|
178
|
+
`nodmix models scan` can probe OpenRouter models and uses `OPENROUTER_API_KEY` when
|
|
179
|
+
probing is enabled.
|
|
180
|
+
|
|
181
|
+
See [Models CLI](/cli/models).
|
|
182
|
+
|
|
183
|
+
### 9) Talk (speech)
|
|
184
|
+
|
|
185
|
+
Talk mode can invoke **ElevenLabs** when configured:
|
|
186
|
+
|
|
187
|
+
- `ELEVENLABS_API_KEY` or `talk.providers.elevenlabs.apiKey`
|
|
188
|
+
|
|
189
|
+
See [Talk mode](/nodes/talk).
|
|
190
|
+
|
|
191
|
+
### 10) Skills (third-party APIs)
|
|
192
|
+
|
|
193
|
+
Skills can store `apiKey` in `skills.entries.<name>.apiKey`. If a skill uses that key for external
|
|
194
|
+
APIs, it can incur costs according to the skill's provider.
|
|
195
|
+
|
|
196
|
+
See [Skills](/tools/skills).
|
|
197
|
+
|
|
198
|
+
## Related
|
|
199
|
+
|
|
200
|
+
- [Token use and costs](/reference/token-use)
|
|
201
|
+
- [Prompt caching](/reference/prompt-caching)
|
|
202
|
+
- [Usage tracking](/concepts/usage-tracking)
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Comprehensive application modernization plan with frontend delivery skill updates"
|
|
3
|
+
title: "Application modernization plan"
|
|
4
|
+
read_when:
|
|
5
|
+
- Planning a broad Nodmix application modernization pass
|
|
6
|
+
- Updating frontend implementation standards for app or Control UI work
|
|
7
|
+
- Turning a broad product quality review into phased engineering work
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Goal
|
|
11
|
+
|
|
12
|
+
Move the application toward a cleaner, faster, more maintainable product without
|
|
13
|
+
breaking current workflows or hiding risk in broad refactors. The work should
|
|
14
|
+
land as small, reviewable slices with proof for each touched surface.
|
|
15
|
+
|
|
16
|
+
## Principles
|
|
17
|
+
|
|
18
|
+
- Preserve current architecture unless a boundary is demonstrably causing churn,
|
|
19
|
+
performance cost, or user-visible bugs.
|
|
20
|
+
- Prefer the smallest correct patch for each issue, then repeat.
|
|
21
|
+
- Separate required fixes from optional polish so maintainers can land high
|
|
22
|
+
value work without waiting on subjective decisions.
|
|
23
|
+
- Keep plugin-facing behavior documented and backwards compatible.
|
|
24
|
+
- Verify shipped behavior, dependency contracts, and tests before claiming a
|
|
25
|
+
regression is fixed.
|
|
26
|
+
- Make the main user path better first: onboarding, auth, chat, provider setup,
|
|
27
|
+
plugin management, and diagnostics.
|
|
28
|
+
|
|
29
|
+
## Phase 1: Baseline audit
|
|
30
|
+
|
|
31
|
+
Inventory the current application before changing it.
|
|
32
|
+
|
|
33
|
+
- Identify the top user workflows and the code surfaces that own them.
|
|
34
|
+
- List dead affordances, duplicate settings, unclear error states, and expensive
|
|
35
|
+
render paths.
|
|
36
|
+
- Capture current validation commands for each surface.
|
|
37
|
+
- Mark issues as required, recommended, or optional.
|
|
38
|
+
- Document known blockers that need owner review, especially API, security,
|
|
39
|
+
release, and plugin contract changes.
|
|
40
|
+
|
|
41
|
+
Definition of done:
|
|
42
|
+
|
|
43
|
+
- One issue list with repo-root file references.
|
|
44
|
+
- Each issue has severity, owner surface, expected user impact, and a proposed
|
|
45
|
+
validation path.
|
|
46
|
+
- No speculative cleanup items are mixed into required fixes.
|
|
47
|
+
|
|
48
|
+
## Phase 2: Product and UX cleanup
|
|
49
|
+
|
|
50
|
+
Prioritize visible workflows and remove confusion.
|
|
51
|
+
|
|
52
|
+
- Tighten onboarding copy and empty states around model auth, gateway status,
|
|
53
|
+
and plugin setup.
|
|
54
|
+
- Remove or disable dead affordances where no action is possible.
|
|
55
|
+
- Keep important actions visible across responsive widths instead of hiding them
|
|
56
|
+
behind fragile layout assumptions.
|
|
57
|
+
- Consolidate repeated status language so errors have one source of truth.
|
|
58
|
+
- Add progressive disclosure for advanced settings while keeping core setup fast.
|
|
59
|
+
|
|
60
|
+
Recommended validation:
|
|
61
|
+
|
|
62
|
+
- Manual happy path for first-run setup and existing user startup.
|
|
63
|
+
- Focused tests for any routing, config persistence, or status derivation logic.
|
|
64
|
+
- Browser screenshots for changed responsive surfaces.
|
|
65
|
+
|
|
66
|
+
## Phase 3: Frontend architecture tightening
|
|
67
|
+
|
|
68
|
+
Improve maintainability without a broad rewrite.
|
|
69
|
+
|
|
70
|
+
- Move repeated UI state transformations into narrow typed helpers.
|
|
71
|
+
- Keep data fetching, persistence, and presentation responsibilities separate.
|
|
72
|
+
- Prefer existing hooks, stores, and component patterns over new abstractions.
|
|
73
|
+
- Split oversized components only when it reduces coupling or clarifies tests.
|
|
74
|
+
- Avoid introducing broad global state for local panel interactions.
|
|
75
|
+
|
|
76
|
+
Required guardrails:
|
|
77
|
+
|
|
78
|
+
- Do not change public behavior as a side effect of file splitting.
|
|
79
|
+
- Keep accessibility behavior intact for menus, dialogs, tabs, and keyboard
|
|
80
|
+
navigation.
|
|
81
|
+
- Verify that loading, empty, error, and optimistic states still render.
|
|
82
|
+
|
|
83
|
+
## Phase 4: Performance and reliability
|
|
84
|
+
|
|
85
|
+
Target measured pain rather than broad theoretical optimization.
|
|
86
|
+
|
|
87
|
+
- Measure startup, route transition, large list, and chat transcript costs.
|
|
88
|
+
- Replace repeated expensive derived data with memoized selectors or cached
|
|
89
|
+
helpers where profiling proves value.
|
|
90
|
+
- Reduce avoidable network or filesystem scans on hot paths.
|
|
91
|
+
- Keep deterministic ordering for prompt, registry, file, plugin, and network
|
|
92
|
+
inputs before model payload construction.
|
|
93
|
+
- Add lightweight regression tests for hot helpers and contract boundaries.
|
|
94
|
+
|
|
95
|
+
Definition of done:
|
|
96
|
+
|
|
97
|
+
- Each performance change records baseline, expected impact, actual impact, and
|
|
98
|
+
remaining gap.
|
|
99
|
+
- No perf patch lands solely on intuition when cheap measurement is available.
|
|
100
|
+
|
|
101
|
+
## Phase 5: Type, contract, and test hardening
|
|
102
|
+
|
|
103
|
+
Raise correctness at the boundary points users and plugin authors depend on.
|
|
104
|
+
|
|
105
|
+
- Replace loose runtime strings with discriminated unions or closed code lists.
|
|
106
|
+
- Validate external inputs with existing schema helpers or zod.
|
|
107
|
+
- Add contract tests around plugin manifests, provider catalogs, gateway protocol
|
|
108
|
+
messages, and config migration behavior.
|
|
109
|
+
- Keep compatibility paths in doctor or repair flows instead of startup-time
|
|
110
|
+
hidden migrations.
|
|
111
|
+
- Avoid test-only coupling to plugin internals; use SDK facades and documented
|
|
112
|
+
barrels.
|
|
113
|
+
|
|
114
|
+
Recommended validation:
|
|
115
|
+
|
|
116
|
+
- `pnpm check:changed`
|
|
117
|
+
- Targeted tests for every changed boundary.
|
|
118
|
+
- `pnpm build` when lazy boundaries, packaging, or published surfaces change.
|
|
119
|
+
|
|
120
|
+
## Phase 6: Documentation and release readiness
|
|
121
|
+
|
|
122
|
+
Keep user-facing docs aligned with behavior.
|
|
123
|
+
|
|
124
|
+
- Update docs with behavior, API, config, onboarding, or plugin changes.
|
|
125
|
+
- Add changelog entries only for user-visible changes.
|
|
126
|
+
- Keep plugin terminology user-facing; use internal package names only where
|
|
127
|
+
needed for contributors.
|
|
128
|
+
- Confirm release and install instructions still match the current command
|
|
129
|
+
surface.
|
|
130
|
+
|
|
131
|
+
Definition of done:
|
|
132
|
+
|
|
133
|
+
- Relevant docs are updated in the same branch as behavior changes.
|
|
134
|
+
- Generated docs or API drift checks pass when touched.
|
|
135
|
+
- The handoff names any skipped validation and why it was skipped.
|
|
136
|
+
|
|
137
|
+
## Recommended first slice
|
|
138
|
+
|
|
139
|
+
Start with a scoped Control UI and onboarding pass:
|
|
140
|
+
|
|
141
|
+
- Audit first-run setup, provider auth readiness, gateway status, and plugin
|
|
142
|
+
setup surfaces.
|
|
143
|
+
- Remove dead actions and clarify failure states.
|
|
144
|
+
- Add or update focused tests for status derivation and config persistence.
|
|
145
|
+
- Run `pnpm check:changed`.
|
|
146
|
+
|
|
147
|
+
This gives high user value with limited architecture risk.
|
|
148
|
+
|
|
149
|
+
## Frontend skill update
|
|
150
|
+
|
|
151
|
+
Use this section to update the frontend-focused `SKILL.md` supplied with the
|
|
152
|
+
modernization task. If adopting this guidance as a repo-local Nodmix skill,
|
|
153
|
+
create `.agents/skills/nodmix-frontend/SKILL.md` first, keep the frontmatter
|
|
154
|
+
that belongs in that target skill, then add or replace the body guidance with
|
|
155
|
+
the following content.
|
|
156
|
+
|
|
157
|
+
```markdown
|
|
158
|
+
# Frontend Delivery Standards
|
|
159
|
+
|
|
160
|
+
Use this skill when implementing or reviewing user-facing React, Next.js,
|
|
161
|
+
desktop webview, or app UI work.
|
|
162
|
+
|
|
163
|
+
## Operating rules
|
|
164
|
+
|
|
165
|
+
- Start from the existing product workflow and code conventions.
|
|
166
|
+
- Prefer the smallest correct patch that improves the current user path.
|
|
167
|
+
- Separate required fixes from optional polish in the handoff.
|
|
168
|
+
- Do not build marketing pages when the request is for an application surface.
|
|
169
|
+
- Keep actions visible and usable across supported viewport sizes.
|
|
170
|
+
- Remove dead affordances instead of leaving controls that cannot act.
|
|
171
|
+
- Preserve loading, empty, error, success, and permission states.
|
|
172
|
+
- Use existing design-system components, hooks, stores, and icons before adding
|
|
173
|
+
new primitives.
|
|
174
|
+
|
|
175
|
+
## Implementation checklist
|
|
176
|
+
|
|
177
|
+
1. Identify the primary user task and the component or route that owns it.
|
|
178
|
+
2. Read the local component patterns before editing.
|
|
179
|
+
3. Patch the narrowest surface that solves the issue.
|
|
180
|
+
4. Add responsive constraints for fixed-format controls, toolbars, grids, and
|
|
181
|
+
counters so text and hover states cannot resize the layout unexpectedly.
|
|
182
|
+
5. Keep data loading, state derivation, and rendering responsibilities clear.
|
|
183
|
+
6. Add tests when logic, persistence, routing, permissions, or shared helpers
|
|
184
|
+
change.
|
|
185
|
+
7. Verify the main happy path and the most relevant edge case.
|
|
186
|
+
|
|
187
|
+
## Visual quality gates
|
|
188
|
+
|
|
189
|
+
- Text must fit inside its container on mobile and desktop.
|
|
190
|
+
- Toolbars may wrap, but controls must remain reachable.
|
|
191
|
+
- Buttons should use familiar icons when the icon is clearer than text.
|
|
192
|
+
- Cards should be used for repeated items, modals, and framed tools, not for
|
|
193
|
+
every page section.
|
|
194
|
+
- Avoid one-note color palettes and decorative backgrounds that compete with
|
|
195
|
+
operational content.
|
|
196
|
+
- Dense product surfaces should optimize for scanning, comparison, and repeated
|
|
197
|
+
use.
|
|
198
|
+
|
|
199
|
+
## Handoff format
|
|
200
|
+
|
|
201
|
+
Report:
|
|
202
|
+
|
|
203
|
+
- What changed.
|
|
204
|
+
- What user behavior changed.
|
|
205
|
+
- Required validation that passed.
|
|
206
|
+
- Any validation skipped and the concrete reason.
|
|
207
|
+
- Optional follow-up work, clearly separated from required fixes.
|
|
208
|
+
```
|