* docs: make onboarding friendlier for beginners * docs: build clearer documentation paths Maintainer edit: turn the onboarding follow-up into a layered docs structure for first-time setup, provider selection, troubleshooting, CLI reference, and source-level architecture. This keeps quick start focused while giving advanced users precise reference paths. * docs: render architecture flow with mermaid Maintainer edit: replace the ASCII architecture sketch with a GitHub-rendered Mermaid flowchart so the core runtime path is easier to scan in the PR and README docs. * docs: recommend model presets for model config Maintainer edit: make named modelPresets the primary model configuration path and expand fallback preset examples so string fallbacks are clearly preset names, not raw model IDs. * docs: document api base urls and langfuse setup Maintainer edit: explain when users need apiBase/base URL in quick start and provider docs, and add Langfuse tracing setup with troubleshooting links. * docs: use python module pip consistently Maintainer edit: keep install commands tied to the active Python interpreter by using python -m pip in the Azure optional dependency notes too. * docs: add non-technical getting started path Maintainer edit: add a wizard-first guide for users without terminal or JSON background, including a text TUI menu example and links from the main docs entrypoints. * docs: avoid hard-wrapped prose in user docs Maintainer edit: unwrap ordinary prose across user-facing documentation while preserving markdown structure, code blocks, tables, lists, and prompt/template files. * docs: keep desktop list continuations nested Maintainer edit: preserve list nesting after unwrapping prose in the desktop WebUI sync guide. * docs: add one-command installer Maintainer edit: add auditable macOS/Linux and Windows install scripts that install nanobot-ai and start the onboarding wizard, then document the commands in the main onboarding entrypoints. * docs: add installer dry run mode Maintainer edit: add --dry-run to the one-command installer scripts so users can preview Python detection, install source, pip command, and wizard behavior without changing their environment. * docs: clean installer error output Maintainer edit: make PowerShell installer failures print a concise Error: message instead of Write-Error call-site details. * docs: add provider setup cookbook Maintainer edit: add pasteable provider recipes for common hosted, local, fallback, runtime switching, and Langfuse setups, then link the cookbook from onboarding and troubleshooting entrypoints. * docs: address review feedback * docs: clarify reader paths * docs: explain terminal basics for beginners * docs: clarify wizard navigation * docs: avoid duplicate onboarding steps * docs: add setup status check * docs: explain status output * docs: remove provider recommendation wording * docs: explain status diagnostics * docs: reduce hard-wrapped guidance * docs: migrate config examples to presets * docs: clarify python command fallbacks * docs: improve installer failure recovery * docs: expand install troubleshooting * docs: cover installer download failures * docs: put stable install paths first * docs: add bundled webui quick path * docs: clarify provider-neutral setup * docs: clarify gateway setup for chat surfaces * docs: improve docs navigation paths * docs: add configuration quick jump * docs: clarify provider secret variables * chore: request PR review acknowledgement Empty commit: please read the PR review comments and reply on the PR to confirm that you have received them. This commit intentionally changes no files; it exists only to notify the remote Codex run so it can end its active goal. * docs: add README start here guide * docs: avoid provider recommendation wording * docs: guide next steps after first reply * docs: explain merging JSON snippets * docs: add CLI command chooser * docs: add configuration task map * docs: add deployment readiness guide * docs: simplify WebUI entry paths * docs: add provider recipe chooser * docs: fix provider factual references Update OpenRouter and LongCat model examples, align Bedrock guidance, and make fallback snippets schema-valid. Also correct group policy wording and image-generation provider lists to match the current code. * fix: keep PowerShell installer from closing caller shell * docs: mention self-guided configuration
3.9 KiB
In-Chat Commands
These commands work inside chat channels and interactive agent sessions:
| Command | Description |
|---|---|
/new |
Stop current task and start a new conversation |
/stop |
Stop the current task |
/restart |
Restart the bot |
/status |
Show bot status |
/model |
Show the current model and available model presets |
/model <preset> |
Switch the runtime model preset for future turns |
/dream |
Run Dream memory consolidation now |
/dream-log |
Show the latest Dream memory change |
/dream-log <sha> |
Show a specific Dream memory change |
/dream-restore |
List recent Dream memory versions |
/dream-restore <sha> |
Restore memory to the state before a specific change |
/skill |
List enabled skills and their descriptions |
/pairing |
List pending pairing requests |
/pairing approve <code> |
Approve a pairing code |
/pairing deny <code> |
Deny a pending pairing request |
/pairing revoke <user_id> |
Revoke a previously approved user on the current channel |
/pairing revoke <channel> <user_id> |
Revoke a previously approved user on a specific channel |
/help |
Show available in-chat commands |
Pairing
When someone sends a DM to the bot and isn't on the allowlist — whether it's a new user or an existing user on a new channel — nanobot automatically replies with a pairing code (like ABCD-EFGH) that expires in 10 minutes. To grant them access:
/pairing approve ABCD-EFGH
To see who's waiting, use /pairing. To remove someone later, use /pairing revoke <user_id> — you can find user IDs in the /pairing list output.
See Configuration: Pairing for the full setup guide.
Model Presets
Use /model to inspect the current runtime model:
/model
The response shows the current model, the current preset, and the available preset names. Named presets come from the top-level modelPresets config and are the recommended way to configure model choices. default is always available and represents the model settings from direct agents.defaults.* fields.
To switch presets for future turns:
/model fast
/model deep
/model default
Preset names come from the top-level modelPresets config. Switching is runtime-only: it does not rewrite config.json, and an in-progress turn keeps using the model it started with. See Configuration: Model presets for setup details.
Periodic Tasks
Periodic tasks are driven by HEARTBEAT.md in your workspace (~/.nanobot/workspace/HEARTBEAT.md). When nanobot gateway starts, it registers a protected heartbeat cron job by default. Every 30 minutes, that job checks the file; if it finds tasks under ## Active Tasks, the agent executes them and delivers results to your most recently active chat channel. If there are no active tasks, the heartbeat is skipped silently.
Setup: edit ~/.nanobot/workspace/HEARTBEAT.md (created automatically by nanobot onboard):
## Active Tasks
- Check weather forecast and send a summary
- Scan inbox for urgent emails
The agent can also manage this file itself — ask it to "add a periodic task" and it will update HEARTBEAT.md for you. Completed tasks should be deleted from the file, not moved to another section.
You can change the interval or disable the built-in heartbeat in ~/.nanobot/config.json:
{
"gateway": {
"heartbeat": {
"enabled": true,
"intervalS": 1800
}
}
}
The heartbeat job is visible in cron(action="list") as heartbeat, but it is system-managed and cannot be removed with the cron tool. To stop it, set gateway.heartbeat.enabled to false and restart the gateway.
Note: The gateway must be running (
nanobot gateway) and you must have chatted with the bot at least once so it knows which channel to deliver to.