diff --git a/packages/kilo-docs/lib/nav/automate.ts b/packages/kilo-docs/lib/nav/automate.ts index 09bdd9ec147..772d63611d2 100644 --- a/packages/kilo-docs/lib/nav/automate.ts +++ b/packages/kilo-docs/lib/nav/automate.ts @@ -16,7 +16,24 @@ export const AutomateNav: NavSection[] = [ ], }, { href: "/automate/agent-manager", children: "Agent Manager" }, - { href: "/automate/kiloclaw", children: "KiloClaw" }, + { + href: "/automate/kiloclaw/overview", + children: "KiloClaw", + subLinks: [ + { href: "/automate/kiloclaw/overview", children: "Overview" }, + { href: "/automate/kiloclaw/dashboard", children: "Dashboard" }, + { href: "/automate/kiloclaw/control-ui", children: "Control UI" }, + { + href: "/automate/kiloclaw/chat-platforms", + children: "Chat Platforms", + }, + { + href: "/automate/kiloclaw/troubleshooting", + children: "Troubleshooting", + }, + { href: "/automate/kiloclaw/pricing", children: "Pricing" }, + ], + }, ], }, { diff --git a/packages/kilo-docs/pages/automate/kiloclaw/chat-platforms.md b/packages/kilo-docs/pages/automate/kiloclaw/chat-platforms.md new file mode 100644 index 00000000000..bfc496040d1 --- /dev/null +++ b/packages/kilo-docs/pages/automate/kiloclaw/chat-platforms.md @@ -0,0 +1,76 @@ +--- +title: "Connecting Chat Platforms" +description: "Connect your KiloClaw agent to Telegram, Discord, Slack, and more" +--- + +# Connecting Chat Platforms + +KiloClaw supports connecting your AI agent to Telegram, Discord, and Slack. You can configure channels from the **Settings** tab on your [KiloClaw dashboard](/docs/automate/kiloclaw/dashboard#channels), or from the OpenClaw Control UI after accessing your instance. + +## Supported Platforms + +### Telegram + +To connect Telegram, you need a **Bot Token** from [@BotFather](https://t.me/BotFather) on Telegram. + +Enter the token in the Settings tab and click **Save**. You can remove or replace a configured token at any time. + +{% image src="/docs/img/kiloclaw/telegram.png" alt="Connect account screen" width="800" caption="Telegram bot token entry" /%} + +Advanced settings such as DM policy, allow lists, and groups can be configured in the OpenClaw Control UI after connecting. + +### Discord + +To connect Discord, you need a **Bot Token** from the [Discord Developer Portal](https://discord.com/developers/applications). + +{% image src="/docs/img/kiloclaw/discord.png" alt="Connect account screen" width="800" caption="Discord bot token entry" /%} + +Enter the token in the Settings tab and click **Save**. You can remove or replace a configured token at any time. + +### Slack + +To connect Slack, you need **both** of the following tokens from [Slack App Management](https://api.slack.com/apps): + +- **Bot Token** — starts with `xoxb-` +- **App Token** — starts with `xapp-` + +{% image src="/docs/img/kiloclaw/slack.png" alt="Connect account screen" width="800" caption="Slack bot and app token entry" /%} + +Both tokens are required — you cannot save with only one. + +## Configuring a Channel + +1. Open your [KiloClaw dashboard](/docs/automate/kiloclaw/dashboard) +2. Go to the **Settings** tab +3. Scroll to the **Channels** section +4. Enter the required token(s) for your platform +5. Click **Save** + +{% callout type="info" %} +After saving channel tokens, you need to **Redeploy** or **Restart OpenClaw** for the changes to take effect. +{% /callout %} + +To remove a channel, clear its token(s) in Settings and save. Redeploy or Restart OpenClaw afterward to apply the removal. + +## Pairing Requests + +After connecting a channel and starting your instance, new users and devices need to be approved before they can interact with your agent. + +- **Channel pairing** — When someone messages your bot on Telegram, Discord, or Slack for the first time, a pairing request appears on your dashboard. You need to click **Approve** to allow them to use the bot. +- **Device pairing** — When a new browser or device connects to the OpenClaw Control UI, a similar request appears. Click **Approve** to authorize it. + +{% callout type="note" %} +Pairing data is cached for about 2 minutes. Use the refresh button to check for new requests. +{% /callout %} + +## Future Support + +Additional platforms (such as WhatsApp) are planned for future releases. For the latest on supported platforms, refer to the [OpenClaw documentation](https://docs.openclaw.ai). + +## Related + +- [KiloClaw Overview](/docs/automate/kiloclaw/overview) +- [Dashboard Reference](/docs/automate/kiloclaw/dashboard) +- [Troubleshooting](/docs/automate/kiloclaw/troubleshooting) +- [KiloClaw Pricing](/docs/automate/kiloclaw/pricing) +- [OpenClaw Documentation](https://docs.openclaw.ai) diff --git a/packages/kilo-docs/pages/automate/kiloclaw/control-ui.md b/packages/kilo-docs/pages/automate/kiloclaw/control-ui.md new file mode 100644 index 00000000000..4020baac057 --- /dev/null +++ b/packages/kilo-docs/pages/automate/kiloclaw/control-ui.md @@ -0,0 +1,102 @@ +--- +title: "OpenClaw Control UI" +description: "Browser-based dashboard for managing your OpenClaw instance" +--- + +# OpenClaw Control UI + +The Control UI is a browser-based dashboard (built with Vite + Lit) served by the OpenClaw Gateway on the same port as the gateway itself (default: `http://localhost:18789/`). It connects via WebSocket and gives you real-time control over your agent, channels, sessions, and system configuration. For KiloClaw users, see [Accessing the Control UI](/docs/automate/kiloclaw/dashboard#accessing-the-control-ui) to get started. + +## Features + +- **Chat** — Send messages, stream responses with live tool-call output, view history, and abort runs. +- **Channels** — View the status of connected messaging platforms, scan QR codes for login, and edit per-channel config. +- **Sessions** — List active sessions with thinking and verbose overrides. +- **Cron Jobs** — Create, edit, enable/disable, run, and view history of scheduled tasks. +- **Skills** — View status, enable/disable, install, and manage API keys for skills. +- **Nodes** — List paired devices and their capabilities. +- **Exec Approvals** — Edit gateway or node command allowlists. See [Exec Approvals](#exec-approvals) below. +- **Config** — View and edit `openclaw.json` with schema-based form rendering and a raw JSON editor. +- **Logs** — Live tail of gateway logs with filtering and export. +- **Debug** — Status, health, model snapshots, event log, and manual RPC calls. +- **Update** — Run package updates and restart the gateway. + +For more details, please see the official [OpenClaw documentation](https://docs.openclaw.ai/web/control-ui). + +{% callout type="warning" %} +Do not use the **Update** feature in the Control UI to update KiloClaw. Use **Redeploy** from the [KiloClaw Dashboard](/docs/automate/kiloclaw/dashboard#redeploy) instead. Updating via the Control UI will not apply the correct KiloClaw platform image and may break your instance. +{% /callout %} + +## Authentication + +Auth is handled via token or password on the WebSocket handshake. We use the one time "access code" from your KiloClaw Dashboard to pair your device. Other remote connections require one-time device pairing — the pairing request appears on the [KiloClaw Dashboard](/docs/automate/kiloclaw/dashboard#pairing-requests) or in the Control UI itself. + +## Exec Approvals + +Exec approvals are the safety interlock that controls which commands your agent can run on the host machine (gateway or node). By default, **all host exec requests are denied** — you must explicitly allowlist the commands you want your agent to run independently. This prevents accidental execution of destructive commands. + +{% callout type="warning" %} +The default security policy is `deny`. You must configure an allowlist before your agent can execute any host commands. +{% /callout %} + +### How It Works + +Approvals are enforced locally on the execution host and sit on top of tool policy and elevated gating. The effective policy is always the **stricter** of `tools.exec.*` and the approvals defaults. Settings are stored in `~/.openclaw/exec-approvals.json` on the host. + +### Security Policies + +| Policy | Behavior | +| ----------- | ---------------------------------------------- | +| `deny` | Block all host exec requests (default) | +| `allowlist` | Allow only commands matching the allowlist | +| `full` | Allow everything (equivalent to elevated mode) | + +### Ask Behavior + +The `ask` setting controls when the user is prompted for approval: + +| Setting | Behavior | +| --------- | ------------------------------------------------------- | +| `off` | Never prompt | +| `on-miss` | Prompt only when the allowlist does not match (default) | +| `always` | Prompt on every command | + +If a prompt is required but no UI is reachable, the `askFallback` setting decides the outcome (`deny` by default). + +### Allowlists + +Allowlists are **per agent** — each agent has its own set of allowed command patterns. Patterns are case-insensitive globs that must resolve to binary paths (basename-only entries are ignored). + +Example patterns: + +``` +~/Projects/**/bin/rg +~/.local/bin/* +/opt/homebrew/bin/rg +``` + +Each entry tracks last-used metadata (timestamp, command, resolved path) so you can audit and keep the list tidy. + +### Approval Flow + +When a command requires approval, the gateway broadcasts the request to connected operator clients. The approval dialog shows the command, arguments, working directory, agent ID, and resolved path. You can: + +- **Allow once** — run the command now +- **Allow always** — add to the allowlist and run +- **Deny** — block the request + +Approval prompts can also be forwarded to chat channels (Slack, Telegram, Discord, etc.) and resolved with `/approve`. + +### Editing in the Control UI + +Navigate to **Nodes > Exec Approvals** in the Control UI to edit defaults, per-agent overrides, and allowlists. Select a scope (Defaults or a specific agent), adjust the policy, add or remove allowlist patterns, then save. + +{% callout type="info" %} +If a node does not yet advertise exec approval capabilities, edit its `~/.openclaw/exec-approvals.json` file directly. You can also use the CLI: `openclaw approvals`. +{% /callout %} + +## Related + +- [KiloClaw Dashboard](/docs/automate/kiloclaw/dashboard) +- [KiloClaw Overview](/docs/automate/kiloclaw/overview) +- [Connecting Chat Platforms](/docs/automate/kiloclaw/chat-platforms) diff --git a/packages/kilo-docs/pages/automate/kiloclaw/dashboard.md b/packages/kilo-docs/pages/automate/kiloclaw/dashboard.md new file mode 100644 index 00000000000..8764b25d773 --- /dev/null +++ b/packages/kilo-docs/pages/automate/kiloclaw/dashboard.md @@ -0,0 +1,158 @@ +--- +title: "KiloClaw Dashboard Reference" +description: "Managing your KiloClaw instance from the dashboard" +--- + +# KiloClaw Dashboard + +This page covers everything you can do from the KiloClaw dashboard. For getting started, see [KiloClaw Overview](/docs/automate/kiloclaw/overview). + +{% image src="/docs/img/kiloclaw/dashboard.png" alt="Connect account screen" width="800" caption="The KiloClaw Dashboard" /%} + +## Instance Status + +Your instance is always in one of these states as indicated by the status label at the top of your dashboard: + +| Status | Label | Meaning | +| --------------- | --------------- | ------------------------------------------------------------- | +| **Running** | Machine Online | Your agent is online and reachable | +| **Stopped** | Machine Stopped | The machine is off, but all your files and data are preserved | +| **Provisioned** | Provisioned | Your instance has been created but never started | +| **Destroying** | Destroying | The instance is being permanently deleted | + +## Instance Controls + +There are four actions you can take on your instance. Which ones are available depends on the current status. + +### ▶️ Start Machine + +Boots your instance. If this is the first time starting after provisioning, the machine is created; otherwise, the existing machine resumes. Can take up to 60 seconds. + +Available when the instance is **stopped** or **provisioned**. + +### 🔄 Restart OpenClaw + +Restarts just the OpenClaw process without rebooting the machine. This is a quick way to recover from a process-level issue — active sessions will briefly disconnect and reconnect automatically. + +Available when the instance is **running**. + +### ↩️ Redeploy + +Stops the machine, applies the latest platform image and your current configuration (environment variables, secrets, channel tokens), and starts it again. + +**Your files, git repos, cron jobs, and everything on your persistent volume are preserved.** Redeploy is not a factory reset — think of it as "update and restart." + +You should redeploy when: + +- The changelog shows "Redeploy Required" or "Redeploy Suggested" +- You've changed channel tokens or secrets in Settings +- You want to pick up the latest platform updates + +Available when the instance is **running**. + +### 🩺 OpenClaw Doctor + +Runs diagnostics and automatically fixes common configuration issues. This is the recommended first step when something isn't working. Output is shown in real time. + +Available when the instance is **running**. + +## Gateway Process + +The Gateway Process tab shows the health of the OpenClaw process running inside your machine: + +- **State** — Whether the process is Running, Stopped, Starting, Stopping, Crashed, or Shutting Down +- **Uptime** — How long it's been running since the last start +- **Restarts** — How many times the process has been automatically restarted +- **Last Exit** — The exit code and timestamp from the last time the process stopped or crashed + +If the gateway crashes, it's automatically restarted. The machine itself can be running even when the gateway process is down — they're independent. + +{% callout type="note" %} +Gateway process info is only available when the machine is running. +{% /callout %} + +## Settings + +### Changing the Model + +Select a model from the dropdown and click **Save & Provision**. The API key is platform-managed and refreshes automatically when you save — you never need to enter one. The key has a 30-day expiry. + +### Channels + +You can connect Telegram, Discord, and Slack by entering bot tokens in the Settings tab. See [Connecting Chat Platforms](/docs/automate/kiloclaw/chat-platforms) for setup instructions. + +{% callout type="info" %} +After saving channel tokens, you need to **Redeploy** or **Restart OpenClaw** for the changes to take effect. +{% /callout %} + +### Stop and Destroy + +At the bottom of Settings: + +- **Stop Instance** — Shuts down the machine. All your data is preserved and you can start it again later. +- **Destroy Instance** — Permanently deletes your instance and all its data, including files, configuration, and workspace. This cannot be undone. + +## Accessing the Control UI + +When your instance is running you can access the [OpenClaw Control UI](/docs/automate/kiloclaw/control-ui) — a browser-based dashboard for managing your agent, channels, sessions, exec approvals, and more: + +1. Click **Access Code** to generate a one-time code (expires in 10 minutes) +2. Click **Open** to launch the OpenClaw web interface in a new tab +3. Enter the access code to authenticate + +See the [Control UI reference](/docs/automate/kiloclaw/control-ui) for a full overview of its capabilities. + +{% callout type="warning" %} +Do not use the **Update** feature in the OpenClaw Control UI to update KiloClaw. Use **Redeploy** from the KiloClaw Dashboard instead. Updating via the Control UI will not apply the correct KiloClaw platform image and may break your instance. +{% /callout %} + +## Pairing Requests + +When your instance is running, the dashboard shows any pending pairing requests. These appear when: + +- Someone messages your bot on Telegram, Discord, or Slack for the first time +- A new browser or device connects to the Control UI + +You need to **approve** each request before the user or device can interact with your agent. See [Pairing Requests](/docs/automate/kiloclaw/chat-platforms#pairing-requests) for details. + +## Changelog + +The dashboard shows recent KiloClaw platform updates. Each entry is tagged as a **feature** or **bugfix**, and some include a deploy hint: + +- **Redeploy Required** — You must redeploy for this change to take effect on your instance +- **Redeploy Suggested** — Redeploying is recommended but not strictly necessary + +## Instance Lifecycle + +| Action | What Happens | Data Preserved? | +| ---------------------- | --------------------------------------------------------------------- | --------------- | +| **Create & Provision** | Allocates storage in the best region available and saves your config. | N/A | +| **Start Machine** | Boots the machine and starts OpenClaw. | Yes | +| **Stop Instance** | Shuts down the machine. | Yes | +| **Restart OpenClaw** | Restarts the OpenClaw process. Machine stays up. | Yes | +| **Redeploy** | Stops, updates, and restarts the machine. | Yes | +| **Destroy Instance** | Permanently deletes everything. | No | + +## Machine Specs + +Each instance runs on a dedicated machine — there is no shared infrastructure between users. + +| Spec | Value | +| ------- | -------------------- | +| CPU | 2 shared vCPUs | +| Memory | 3 GB RAM | +| Storage | 10 GB persistent SSD | + +Your storage is region-pinned — once your instance is created in a region (e.g., DFW), it always runs there. OpenClaw config lives at `/root/.openclaw` and the workspace at `/root/clawd`. + +{% callout type="info" %} +These are the beta specifications for machines and subject to change without notice. +{% /callout %} + +## Related + +- [KiloClaw Overview](/docs/automate/kiloclaw/overview) +- [OpenClaw Control UI](/docs/automate/kiloclaw/control-ui) +- [Connecting Chat Platforms](/docs/automate/kiloclaw/chat-platforms) +- [Troubleshooting](/docs/automate/kiloclaw/troubleshooting) +- [KiloClaw Pricing](/docs/automate/kiloclaw/pricing) diff --git a/packages/kilo-docs/pages/automate/kiloclaw.md b/packages/kilo-docs/pages/automate/kiloclaw/overview.md similarity index 54% rename from packages/kilo-docs/pages/automate/kiloclaw.md rename to packages/kilo-docs/pages/automate/kiloclaw/overview.md index 0ef093760eb..ab48fc53eba 100644 --- a/packages/kilo-docs/pages/automate/kiloclaw.md +++ b/packages/kilo-docs/pages/automate/kiloclaw/overview.md @@ -5,20 +5,21 @@ description: "One-click deployment of your personal AI agent with OpenClaw" # KiloClaw 🦀 -KiloClaw is Kilo's hosted [OpenClaw](https://openclaw.ai) service—a one-click deployment that gives you a personal AI agent without the complexity of self-hosting. OpenClaw is an open source AI agent that connects to chat platforms like WhatsApp, Telegram, and Discord. +KiloClaw is Kilo's hosted [OpenClaw](https://openclaw.ai) service — a one-click deployment that gives you a personal AI agent without the complexity of self-hosting. OpenClaw is an open source AI agent that connects to chat platforms like Telegram, Discord, and Slack. + +KiloClaw is powered by KiloCode. The API key is platform-managed, so you never need to bring your own. KiloClaw is currently in **Beta**. ## Why KiloClaw? - **No infrastructure setup** — Skip Docker, servers, and configuration files - **Instant provisioning** — Your agent is ready in seconds +- **Powered by KiloCode** — API key is automatically generated and refreshed - **Uses existing credits** — Runs on your Kilo Gateway balance - **Multiple free models** — Choose from several models at no additional cost -- **Web UI included** — Access your agent's web interface from the instance dashboard +- **Web UI included** — Access your agent's web interface directly from the dashboard ## Prerequisites -Before creating an instance: - - **Kilo account** — Sign up at [kilo.ai](https://kilo.ai) if you haven't already - **Gateway credits** — KiloClaw uses your existing [Gateway credits](/docs/gateway/usage-and-billing) for model inference @@ -34,92 +35,55 @@ Before creating an instance: {% image src="/docs/img/kiloclaw/create-instance.png" alt="Create instance modal with model selection" width="600" caption="Model selection during instance creation" /%} -5. Click **Create & Provision** +5. Optionally configure chat channels (Telegram, Discord, Slack) — you can also do this later from [Settings](/docs/automate/kiloclaw/dashboard#settings) +6. Click **Create & Provision** -Your instance will be provisioned and ready within seconds. +Your instance will be provisioned in seconds. Each instance runs on a dedicated machine with 2 shared vCPUs, 3 GB RAM, and a 10 GB persistent SSD. Once created in a region, your instance always runs there. ## Managing Your Instance -Once created, you can control your instance from the dashboard. +The KiloClaw dashboard gives you full control over your instance. {% image src="/docs/img/kiloclaw/instance-dashboard.png" alt="Instance dashboard with controls and status" width="800" caption="Instance management dashboard" /%} -### Instance Controls +### Controls -- **Start** — Boot up a stopped instance -- **Stop** — Shut down the instance (preserves configuration) -- **Restart** — Stop and start the instance +- **Start Machine** — Boot a stopped instance (up to 60 seconds) +- **Restart OpenClaw** — Quick restart of just the OpenClaw process; the machine stays up +- **Redeploy** — This will stop the machine, apply any pending image or config updates, and restart it. The machine will be briefly offline. +- **OpenClaw Doctor** — Run diagnostics and auto-fix common issues -### Dashboard Tabs - -| Tab | Purpose | -| ------------ | ----------------------------------------------- | -| **Overview** | Instance status, uptime, and resource usage | -| **Settings** | Model configuration and instance parameters | -| **Actions** | Quick actions and connected platform management | +For full details on each control and when to use them, see the [Dashboard Reference](/docs/automate/kiloclaw/dashboard). ### Changelog -Your instance page includes a changelog with recent KiloClaw platform updates. - -Each changelog entry is labeled by update type: +The dashboard shows recent platform updates. Some updates include a deploy hint — either **Redeploy Required** or **Redeploy Suggested** — to let you know when to redeploy your instance. -- **Feature** — New capability or enhancement -- **Bug** — Fix for incorrect or broken behavior +### Pairing Requests -Some entries also include a redeploy label: - -- **Redeploy required** — You must redeploy your instance to fully take advantage of the change -- **Redeploy suggested** — Redeploy is optional and only needed if you want to use the new behavior - -For example, if you manually configured a channel such as Telegram, and would prefer to have KiloClaw manage the channel for you, you would need to redeploy. +When you initialize a new channel for the first time, or a new device connects to the Control UI, you'll see a pairing request on the dashboard that you need to approve. See [Pairing Requests](/docs/automate/kiloclaw/chat-platforms#pairing-requests) for details. ## Accessing Your Agent -To connect to your agent's web interface: - -1. Click **Get Access Code** from your instance dashboard -2. Copy the one-time access code (expires in 10 minutes) +1. Click **Access Code** to get a one-time code (expires in 10 minutes) {% image src="/docs/img/kiloclaw/access-code-modal.png" alt="Access code modal showing one-time code" width="500" caption="One-time access code with 10-minute expiration" /%} -3. Click the **Open Claw** button in the top-right corner of your instance dashboard -4. Enter your access code to authenticate +2. Click **Open** to launch the OpenClaw web interface +3. Enter your access code to authenticate {% image src="/docs/img/kiloclaw/openclaw-dashboard.png" alt="OpenClaw web interface" width="800" caption="OpenClaw web UI" /%} -## Connecting Chat Platforms - -OpenClaw supports integration with popular messaging platforms: - -- WhatsApp -- Telegram -- Discord -- Slack -- And more - -For platform-specific setup instructions, refer to the [OpenClaw documentation](https://docs.openclaw.ai). - ## Using your OpenClaw Agent OpenClaw lets you customize your own AI assistant that can actually take action — check your email, manage your calendar, control smart devices, browse the web, and message you on Telegram or Discord when something needs attention. It's like having a personal assistant that runs 24/7, with the skills and access you choose to give it. -For more information on use cases for OpenClaw, see: +For more information on use cases: - [OpenClaw Showcase](https://docs.openclaw.ai/start/showcase) - [100 hours of OpenClaw in 35 Minutes](https://www.youtube.com/watch?v=_kZCoW-Qxnc) - [Clawhub](https://clawhub.ai/): search for skills -## Pricing - -KiloClaw uses your existing Kilo Gateway credits—there's no separate billing or subscription: - -- **Instance hosting** — Free for 7 days during beta -- **Model inference** — Charged against your Gateway credit balance -- **Free models** — Several models are available at no cost. See the [Kilo Leaderboard](https://kilo.ai/leaderboard#all-models) for current availability. - -See [Gateway Usage and Billing](/docs/gateway/usage-and-billing) for credit pricing details. - ## Limitations KiloClaw is currently in **beta**. Current constraints include: @@ -135,6 +99,10 @@ Have feedback or running into issues? Join the [Kilo Discord](https://kilo.ai/di ## Related +- [Dashboard Reference](/docs/automate/kiloclaw/dashboard) +- [Connecting Chat Platforms](/docs/automate/kiloclaw/chat-platforms) +- [Troubleshooting](/docs/automate/kiloclaw/troubleshooting) +- [KiloClaw Pricing](/docs/automate/kiloclaw/pricing) - [Gateway Usage and Billing](/docs/gateway/usage-and-billing) - [Agent Manager](/docs/automate/agent-manager) - [OpenClaw Documentation](https://docs.openclaw.ai) diff --git a/packages/kilo-docs/pages/automate/kiloclaw/pricing.md b/packages/kilo-docs/pages/automate/kiloclaw/pricing.md new file mode 100644 index 00000000000..52a6256341e --- /dev/null +++ b/packages/kilo-docs/pages/automate/kiloclaw/pricing.md @@ -0,0 +1,20 @@ +--- +title: "KiloClaw Pricing" +description: "Pricing details for KiloClaw instances and model inference" +--- + +# KiloClaw Pricing + +KiloClaw uses your existing Kilo Gateway credits—there's no separate billing or subscription: + +- **Instance hosting** — Free for 7 days during beta +- **Model inference** — Charged against your Gateway credit balance +- **Free models** — Several models are available at no cost. See the [Kilo Leaderboard](https://kilo.ai/leaderboard#all-models) for current availability. + +See [Gateway Usage and Billing](/docs/gateway/usage-and-billing) for credit pricing details. + +## Related + +- [KiloClaw Overview](/docs/automate/kiloclaw/overview) +- [Connecting Chat Platforms](/docs/automate/kiloclaw/chat-platforms) +- [Gateway Usage and Billing](/docs/gateway/usage-and-billing) diff --git a/packages/kilo-docs/pages/automate/kiloclaw/troubleshooting.md b/packages/kilo-docs/pages/automate/kiloclaw/troubleshooting.md new file mode 100644 index 00000000000..81cfd21375a --- /dev/null +++ b/packages/kilo-docs/pages/automate/kiloclaw/troubleshooting.md @@ -0,0 +1,78 @@ +--- +title: "Troubleshooting" +description: "Common issues, diagnostics, and FAQ for KiloClaw instances" +--- + +# Troubleshooting + +## OpenClaw Doctor + +OpenClaw Doctor is the recommended first step when something isn't working. It runs diagnostics on your instance and automatically fixes common configuration issues. + +To use it: + +1. Make sure your instance is running +2. Click **OpenClaw Doctor** on your [dashboard](/docs/automate/kiloclaw/dashboard) +3. Watch the output as it runs — results appear in real time + +## Common Questions + +### Does Redeploy reset my instance? + +No. Redeploy does **not** delete your files, git repos, or cron jobs. It stops the machine, applies the latest platform image and your current configuration, and starts it again with the same persistent storage. Think of it as "update and restart." + +### When should I use Restart OpenClaw vs Redeploy? + +- **Restart OpenClaw** — Restarts just the OpenClaw process. The machine stays up. Use this for quick recovery from a process-level issue or when you want to apply openclaw config changes. +- **Redeploy** — Stops and restarts the entire machine with the latest image and config. Use this when the changelog shows a redeploy hint, or after changing channel tokens or secrets. + +### My bot isn't responding on Telegram/Discord/Slack + +1. Check that the channel token is configured in [Settings](/docs/automate/kiloclaw/dashboard#channels) +2. Make sure you **Redeployed** or **Restarted OpenClaw** after saving tokens +3. Check for pending [pairing requests](/docs/automate/kiloclaw/chat-platforms#pairing-requests) — the user may need to be approved +4. Try running **OpenClaw Doctor** + +### The gateway shows "Crashed" + +The OpenClaw process is automatically restarted when it crashes. Check the Gateway Process tab on your dashboard for the exit code and restart count. If it keeps crashing: + +1. Run **OpenClaw Doctor** +2. Try a **Redeploy** to apply the latest platform image +3. If the issue persists, join the [Kilo Discord](https://kilo.ai/discord) and share details in the KiloClaw channel + +### My access code isn't working + +Access codes are one-time use and expire after 10 minutes. Generate a new one by clicking **Access Code** on the dashboard. Make sure your instance is running before clicking **Open**. + +### I changed the model but the agent is still using the old one + +After selecting a new model, click **Save & Provision** to apply it. This refreshes the API key and saves the new model. You may also need to **Restart OpenClaw** for the change to take full effect. + +## Gateway Process States + +The Gateway Process tab shows the current state of the OpenClaw process inside your machine: + +- **Running** — The process is up and handling requests +- **Stopped** — The process is not running +- **Starting** — The process is booting up +- **Stopping** — The process is shutting down gracefully +- **Crashed** — The process exited unexpectedly and will be automatically restarted +- **Shutting Down** — The process is stopping as part of a machine stop or redeploy + +## Architecture Notes + +For advanced users — how KiloClaw instances are structured: + +- **Dedicated machine** — Each user gets their own machine and persistent volume. There is no shared infrastructure between users. +- **Region-pinned storage** — Your persistent volume stays in the region where your instance was originally created. +- **Network isolation** — OpenClaw binds to loopback only; external traffic is proxied through a Kilo controller. +- **Per-user authentication** — The gateway token is derived per-user for authenticating requests to your machine. +- **Encryption at rest** — Sensitive data (API keys, channel tokens) is encrypted at rest in the machine configuration. + +## Related + +- [KiloClaw Overview](/docs/automate/kiloclaw/overview) +- [Dashboard Reference](/docs/automate/kiloclaw/dashboard) +- [Connecting Chat Platforms](/docs/automate/kiloclaw/chat-platforms) +- [KiloClaw Pricing](/docs/automate/kiloclaw/pricing) diff --git a/packages/kilo-docs/previous-docs-redirects.js b/packages/kilo-docs/previous-docs-redirects.js index 364b8e2cad9..d805744ea2b 100644 --- a/packages/kilo-docs/previous-docs-redirects.js +++ b/packages/kilo-docs/previous-docs-redirects.js @@ -1,4 +1,10 @@ module.exports = [ + { + source: "/docs/automate/kiloclaw", + destination: "/docs/automate/kiloclaw/overview", + basePath: false, + permanent: true, + }, { source: "/docs/features/custom-modes", destination: "/docs/customize/custom-modes", diff --git a/packages/kilo-docs/public/img/kiloclaw/dashboard.png b/packages/kilo-docs/public/img/kiloclaw/dashboard.png new file mode 100644 index 00000000000..29e8c7b86ed Binary files /dev/null and b/packages/kilo-docs/public/img/kiloclaw/dashboard.png differ diff --git a/packages/kilo-docs/public/img/kiloclaw/discord.png b/packages/kilo-docs/public/img/kiloclaw/discord.png new file mode 100644 index 00000000000..d455ff75008 Binary files /dev/null and b/packages/kilo-docs/public/img/kiloclaw/discord.png differ diff --git a/packages/kilo-docs/public/img/kiloclaw/slack.png b/packages/kilo-docs/public/img/kiloclaw/slack.png new file mode 100644 index 00000000000..3b17d7a46c7 Binary files /dev/null and b/packages/kilo-docs/public/img/kiloclaw/slack.png differ diff --git a/packages/kilo-docs/public/img/kiloclaw/telegram.png b/packages/kilo-docs/public/img/kiloclaw/telegram.png new file mode 100644 index 00000000000..5159b42af54 Binary files /dev/null and b/packages/kilo-docs/public/img/kiloclaw/telegram.png differ