74 lines
2.1 KiB
Markdown
74 lines
2.1 KiB
Markdown
# How to Run a Long-Running AI Agent with nanobot
|
|
|
|
nanobot can keep agent work alive across turns through sustained goals,
|
|
persistent sessions, scheduled automations, local triggers, and a gateway
|
|
process that stays running.
|
|
|
|
## What you will build
|
|
|
|
- a working local agent
|
|
- a persistent chat session
|
|
- a long-running goal or automation
|
|
- a gateway process for background delivery
|
|
|
|
## When to use this
|
|
|
|
Use this when the task is not a one-shot answer: project work, recurring checks,
|
|
scheduled summaries, file maintenance, multi-step research, or local triggers
|
|
from scripts and build jobs.
|
|
|
|
## Install
|
|
|
|
```bash
|
|
python -m pip install nanobot-ai
|
|
nanobot onboard --wizard
|
|
nanobot agent -m "Hello!"
|
|
```
|
|
|
|
## Minimal working example
|
|
|
|
Start a gateway:
|
|
|
|
```bash
|
|
nanobot gateway
|
|
```
|
|
|
|
From the WebUI or a chat session, start a sustained goal:
|
|
|
|
```text
|
|
/goal Review this workspace, identify missing tests, and propose the smallest next fix.
|
|
```
|
|
|
|
For scheduled or trigger-based runs, create the automation from the target chat
|
|
so nanobot can link it to the correct session and workspace.
|
|
|
|
## Production notes
|
|
|
|
- Keep the gateway running for chat apps, WebUI sessions, automations, and local
|
|
triggers.
|
|
- Use stable session keys or chat sessions for work that should preserve context.
|
|
- Keep goals bounded and explicit about done-ness.
|
|
- Review Automations in the WebUI before relying on a schedule.
|
|
|
|
## Security notes
|
|
|
|
- Treat long-running goals as delegated work with real tool access.
|
|
- Restrict workspaces and shell execution before scheduling unattended tasks.
|
|
- Keep chat access narrow so unknown users cannot create goals or automations.
|
|
|
|
## Troubleshooting
|
|
|
|
- If a goal appears stuck, inspect the active session and gateway logs.
|
|
- If an automation does not run, check that it is linked to a chat/session and
|
|
that the gateway is still running.
|
|
- If a local trigger fails, check the command copied from the WebUI Automations
|
|
view.
|
|
|
|
## Related nanobot docs
|
|
|
|
- [Automations](../automations.md)
|
|
- [WebUI Automations](../webui.md#automations)
|
|
- [Chat Commands](../chat-commands.md)
|
|
- [Memory](../memory.md)
|
|
- [Deployment](../deployment.md)
|