Docs: fix internal links
This commit is contained in:
@@ -13,7 +13,7 @@ Goal: Gmail watch -> Pub/Sub push -> `gog gmail watch serve` -> Clawdbot webhook
|
||||
|
||||
- `gcloud` installed and logged in ([install guide](https://docs.cloud.google.com/sdk/docs/install-sdk)).
|
||||
- `gog` (gogcli) installed and authorized for the Gmail account ([gogcli.sh](https://gogcli.sh/)).
|
||||
- Clawdbot hooks enabled (see [`docs/webhook.md`](https://docs.clawd.bot/automation/webhook)).
|
||||
- Clawdbot hooks enabled (see [Webhooks](/automation/webhook)).
|
||||
- `tailscale` logged in ([tailscale.com](https://tailscale.com/)). Supported setup uses Tailscale Funnel for the public HTTPS endpoint.
|
||||
Other tunnel services can work, but are DIY/unsupported and require manual wiring.
|
||||
Right now, Tailscale is what we support.
|
||||
@@ -85,7 +85,7 @@ Notes:
|
||||
- If `agents.defaults.models` is set, the Gmail model must be in the allowlist.
|
||||
|
||||
To customize payload handling further, add `hooks.mappings` or a JS/TS transform module
|
||||
under `hooks.transformsDir` (see [`docs/webhook.md`](https://docs.clawd.bot/automation/webhook)).
|
||||
under `hooks.transformsDir` (see [Webhooks](/automation/webhook)).
|
||||
|
||||
## Wizard (recommended)
|
||||
|
||||
|
||||
@@ -97,7 +97,7 @@ Mapping options (summary):
|
||||
- Set `deliver: true` + `provider`/`to` on mappings to route replies to a chat surface
|
||||
(`provider` defaults to `last` and falls back to WhatsApp).
|
||||
- `clawdbot hooks gmail setup` writes `hooks.gmail` config for `clawdbot hooks gmail run`.
|
||||
See [`docs/gmail-pubsub.md`](https://docs.clawd.bot/automation/gmail-pubsub) for the full Gmail watch flow.
|
||||
See [Gmail Pub/Sub](/automation/gmail-pubsub) for the full Gmail watch flow.
|
||||
|
||||
## Responses
|
||||
|
||||
|
||||
@@ -215,6 +215,6 @@ Suggested `.gitignore` starter:
|
||||
## Advanced notes
|
||||
|
||||
- Multi-agent routing can use different workspaces per agent. See
|
||||
`docs/provider-routing.md` for routing configuration.
|
||||
[Provider routing](/concepts/provider-routing) for routing configuration.
|
||||
- If `agents.defaults.sandbox` is enabled, non-main sessions can use per-session sandbox
|
||||
workspaces under `agents.defaults.sandbox.workspaceRoot`.
|
||||
|
||||
@@ -13,11 +13,11 @@ Clawdbot uses a single agent workspace directory (`agents.defaults.workspace`) a
|
||||
|
||||
Recommended: use `clawdbot setup` to create `~/.clawdbot/clawdbot.json` if missing and initialize the workspace files.
|
||||
|
||||
Full workspace layout + backup guide: [`docs/agent-workspace.md`](/concepts/agent-workspace)
|
||||
Full workspace layout + backup guide: [Agent workspace](/concepts/agent-workspace)
|
||||
|
||||
If `agents.defaults.sandbox` is enabled, non-main sessions can override this with
|
||||
per-session workspaces under `agents.defaults.sandbox.workspaceRoot` (see
|
||||
[`docs/configuration.md`](/gateway/configuration)).
|
||||
[Gateway configuration](/gateway/configuration)).
|
||||
|
||||
## Bootstrap files (injected)
|
||||
|
||||
@@ -54,7 +54,7 @@ Clawdbot loads skills from three locations (workspace wins on name conflict):
|
||||
- Managed/local: `~/.clawdbot/skills`
|
||||
- Workspace: `<workspace>/skills`
|
||||
|
||||
Skills can be gated by config/env (see `skills` in [`docs/configuration.md`](/gateway/configuration)).
|
||||
Skills can be gated by config/env (see `skills` in [Gateway configuration](/gateway/configuration)).
|
||||
|
||||
## p-mono integration
|
||||
|
||||
@@ -81,7 +81,7 @@ message is injected before the next assistant response.
|
||||
|
||||
When queue mode is `followup` or `collect`, inbound messages are held until the
|
||||
current turn ends, then a new agent turn starts with the queued payloads. See
|
||||
[`docs/queue.md`](/concepts/queue) for mode + debounce/cap behavior.
|
||||
[Queue](/concepts/queue) for mode + debounce/cap behavior.
|
||||
|
||||
Block streaming sends completed assistant blocks as soon as they finish; it is
|
||||
**off by default** (`agents.defaults.blockStreamingDefault: "off"`).
|
||||
|
||||
@@ -215,4 +215,4 @@ The agent system prompt includes a group intro on the first turn of a new group
|
||||
- Group replies always go back to the same `chat_id`.
|
||||
|
||||
## WhatsApp specifics
|
||||
See [`docs/group-messages.md`](/concepts/group-messages) for WhatsApp-only behavior (history injection, mention handling details).
|
||||
See [Group messages](/concepts/group-messages) for WhatsApp-only behavior (history injection, mention handling details).
|
||||
|
||||
@@ -113,11 +113,11 @@ When a run starts with a model override (hooks or CLI), fallbacks still end at
|
||||
|
||||
## Related config
|
||||
|
||||
See [`docs/configuration.md`](/gateway/configuration) for:
|
||||
See [Gateway configuration](/gateway/configuration) for:
|
||||
- `auth.profiles` / `auth.order`
|
||||
- `auth.cooldowns.billingBackoffHours` / `auth.cooldowns.billingBackoffHoursByProvider`
|
||||
- `auth.cooldowns.billingMaxHours` / `auth.cooldowns.failureWindowHours`
|
||||
- `agents.defaults.model.primary` / `agents.defaults.model.fallbacks`
|
||||
- `agents.defaults.imageModel` routing
|
||||
|
||||
See [`docs/models.md`](/concepts/models) for the broader model selection and fallback overview.
|
||||
See [Models](/concepts/models) for the broader model selection and fallback overview.
|
||||
|
||||
@@ -5,4 +5,4 @@ read_when:
|
||||
---
|
||||
# Sessions
|
||||
|
||||
Canonical session management docs live in [`docs/session.md`](/concepts/session).
|
||||
Canonical session management docs live in [Session management](/concepts/session).
|
||||
|
||||
@@ -41,7 +41,7 @@ Recent gateway logs show repeated `cron.add` failures with invalid parameters (m
|
||||
- **Defaults:** safe defaults are applied for `wakeMode` and `sessionTarget` when missing.
|
||||
- **Providers:** Discord/Slack/Signal/iMessage are now consistently surfaced across CLI/UI.
|
||||
|
||||
See [`docs/cron-jobs.md`](/automation/cron-jobs) for the normalized shape and examples.
|
||||
See [Cron jobs](/automation/cron-jobs) for the normalized shape and examples.
|
||||
|
||||
## Verification
|
||||
|
||||
|
||||
@@ -159,5 +159,5 @@ sequences (e.g. spaces become `\032`).
|
||||
|
||||
## Related docs
|
||||
|
||||
- Discovery policy and transport selection: [`docs/discovery.md`](/gateway/discovery)
|
||||
- Node pairing + approvals: [`docs/gateway/pairing.md`](/gateway/pairing)
|
||||
- Discovery policy and transport selection: [Discovery](/gateway/discovery)
|
||||
- Node pairing + approvals: [Gateway pairing](/gateway/pairing)
|
||||
|
||||
@@ -1894,7 +1894,7 @@ Convenience flags (CLI):
|
||||
- `clawdbot --dev …` → uses `~/.clawdbot-dev` + shifts ports from base `19001`
|
||||
- `clawdbot --profile <name> …` → uses `~/.clawdbot-<name>` (port via config/env/flags)
|
||||
|
||||
See [`docs/gateway.md`](/gateway) for the derived port mapping (gateway/bridge/browser/canvas).
|
||||
See [Gateway runbook](/gateway) for the derived port mapping (gateway/bridge/browser/canvas).
|
||||
|
||||
Example:
|
||||
```bash
|
||||
|
||||
@@ -42,7 +42,7 @@ Target direction:
|
||||
- The **gateway** advertises its bridge via Bonjour.
|
||||
- Clients browse and show a “pick a gateway” list, then store the chosen endpoint.
|
||||
|
||||
Troubleshooting and beacon details: [`docs/bonjour.md`](/gateway/bonjour).
|
||||
Troubleshooting and beacon details: [Bonjour](/gateway/bonjour).
|
||||
|
||||
#### Service beacon details
|
||||
|
||||
@@ -77,7 +77,7 @@ If the gateway can detect it is running under Tailscale, it publishes `tailnetDn
|
||||
|
||||
When there is no direct route (or direct is disabled), clients can always connect via SSH by forwarding the loopback gateway port.
|
||||
|
||||
See [`docs/remote.md`](/gateway/remote).
|
||||
See [Remote access](/gateway/remote).
|
||||
|
||||
## Transport selection (client policy)
|
||||
|
||||
@@ -92,7 +92,7 @@ Recommended client behavior:
|
||||
|
||||
The gateway is the source of truth for node/client admission.
|
||||
|
||||
- Pairing requests are created/approved/rejected in the gateway (see [`docs/gateway/pairing.md`](/gateway/pairing)).
|
||||
- Pairing requests are created/approved/rejected in the gateway (see [Gateway pairing](/gateway/pairing)).
|
||||
- The bridge enforces:
|
||||
- auth (token / keypair)
|
||||
- scopes/ACLs (bridge is not a raw proxy to every gateway method)
|
||||
|
||||
@@ -111,7 +111,7 @@ CLAWDBOT_CONFIG_PATH=~/.clawdbot/b.json CLAWDBOT_STATE_DIR=~/.clawdbot-b clawdbo
|
||||
- `node.invoke` — invoke a command on a node (e.g. `canvas.*`, `camera.*`).
|
||||
- `node.pair.*` — pairing lifecycle (`request`, `list`, `approve`, `reject`, `verify`).
|
||||
|
||||
See also: [`docs/presence.md`](/concepts/presence) for how presence is produced/deduped and why `instanceId` matters.
|
||||
See also: [Presence](/concepts/presence) for how presence is produced/deduped and why `instanceId` matters.
|
||||
|
||||
## Events
|
||||
- `agent` — streamed tool/output events from the agent run (seq-tagged).
|
||||
|
||||
@@ -8,7 +8,7 @@ read_when:
|
||||
This repo supports “remote over SSH” by keeping a single Gateway (the master) running on a host (e.g., your Mac Studio) and connecting clients to it.
|
||||
|
||||
- For **operators (you / the macOS app)**: SSH tunneling is the universal fallback.
|
||||
- For **nodes (iOS/Android and future devices)**: prefer the Gateway **Bridge** when on the same LAN/tailnet (see [`docs/discovery.md`](/gateway/discovery)).
|
||||
- For **nodes (iOS/Android and future devices)**: prefer the Gateway **Bridge** when on the same LAN/tailnet (see [Discovery](/gateway/discovery)).
|
||||
|
||||
## The core idea
|
||||
|
||||
@@ -58,4 +58,4 @@ WebChat no longer uses a separate HTTP port. The SwiftUI chat UI connects direct
|
||||
|
||||
The macOS menu bar app can drive the same setup end-to-end (remote status checks, WebChat, and Voice Wake forwarding).
|
||||
|
||||
Runbook: [`docs/mac/remote.md`](/platforms/mac/remote).
|
||||
Runbook: [macOS remote access](/platforms/mac/remote).
|
||||
|
||||
@@ -19,8 +19,8 @@ read_when:
|
||||
<p align="center">
|
||||
<a href="https://github.com/clawdbot/clawdbot">GitHub</a> ·
|
||||
<a href="https://github.com/clawdbot/clawdbot/releases">Releases</a> ·
|
||||
<a href="https://docs.clawd.bot">Docs</a> ·
|
||||
<a href="https://docs.clawd.bot/start/clawd">Clawdbot assistant setup</a>
|
||||
<a href="/">Docs</a> ·
|
||||
<a href="/start/clawd">Clawdbot assistant setup</a>
|
||||
</p>
|
||||
|
||||
Clawdbot bridges WhatsApp (via WhatsApp Web / Baileys), Telegram (Bot API / grammY), Discord (Bot API / discord.js), and iMessage (imsg CLI) to coding agents like [Pi](https://github.com/badlogic/pi-mono).
|
||||
@@ -28,8 +28,8 @@ Clawdbot also powers [Clawd](https://clawd.me), the space‑lobster assistant.
|
||||
|
||||
## Start here
|
||||
|
||||
- **New install from zero:** https://docs.clawd.bot/start/getting-started
|
||||
- **Guided setup (recommended):** https://docs.clawd.bot/start/wizard (`clawdbot onboard`)
|
||||
- **New install from zero:** [Getting Started](/start/getting-started)
|
||||
- **Guided setup (recommended):** [Wizard](/start/wizard) (`clawdbot onboard`)
|
||||
- **Open the dashboard (local Gateway):** http://127.0.0.1:18789/ (or http://localhost:18789/)
|
||||
|
||||
If the Gateway is running on the same computer, that link opens the browser Control UI
|
||||
@@ -39,7 +39,7 @@ immediately. If it fails, start the Gateway first: `clawdbot gateway`.
|
||||
|
||||
The dashboard is the browser Control UI for chat, config, nodes, sessions, and more.
|
||||
Local default: http://127.0.0.1:18789/
|
||||
Remote access: https://docs.clawd.bot/web and https://docs.clawd.bot/gateway/tailscale
|
||||
Remote access: [Web surfaces](/web) and [Tailscale](/gateway/tailscale)
|
||||
|
||||
## How it works
|
||||
|
||||
@@ -70,8 +70,8 @@ Most operations flow through the **Gateway** (`clawdbot gateway`), a single long
|
||||
- **Loopback-first**: Gateway WS defaults to `ws://127.0.0.1:18789`.
|
||||
- For Tailnet access, run `clawdbot gateway --bind tailnet --token ...` (token is required for non-loopback binds).
|
||||
- **Bridge for nodes**: optional LAN/tailnet-facing bridge on `tcp://0.0.0.0:18790` for paired nodes (Bonjour-discoverable).
|
||||
- **Canvas host**: HTTP file server on `canvasHost.port` (default `18793`), serving `/__clawdbot__/canvas/` for node WebViews; see [`docs/configuration.md`](https://docs.clawd.bot/gateway/configuration) (`canvasHost`).
|
||||
- **Remote use**: SSH tunnel or tailnet/VPN; see [`docs/remote.md`](https://docs.clawd.bot/gateway/remote) and [`docs/discovery.md`](https://docs.clawd.bot/gateway/discovery).
|
||||
- **Canvas host**: HTTP file server on `canvasHost.port` (default `18793`), serving `/__clawdbot__/canvas/` for node WebViews; see [Gateway configuration](/gateway/configuration) (`canvasHost`).
|
||||
- **Remote use**: SSH tunnel or tailnet/VPN; see [Remote access](/gateway/remote) and [Discovery](/gateway/discovery).
|
||||
|
||||
## Features (high level)
|
||||
|
||||
@@ -161,48 +161,48 @@ Example:
|
||||
## Docs
|
||||
|
||||
- Start here:
|
||||
- [Docs hubs (all pages linked)](https://docs.clawd.bot/start/hubs)
|
||||
- [FAQ](https://docs.clawd.bot/start/faq) ← *common questions answered*
|
||||
- [Configuration](https://docs.clawd.bot/gateway/configuration)
|
||||
- [Configuration examples](https://docs.clawd.bot/gateway/configuration-examples)
|
||||
- [Slash commands](https://docs.clawd.bot/tools/slash-commands)
|
||||
- [Multi-agent routing](https://docs.clawd.bot/concepts/multi-agent)
|
||||
- [Updating / rollback](https://docs.clawd.bot/install/updating)
|
||||
- [Pairing (DM + nodes)](https://docs.clawd.bot/start/pairing)
|
||||
- [Nix mode](https://docs.clawd.bot/install/nix)
|
||||
- [Clawdbot assistant setup (Clawd)](https://docs.clawd.bot/start/clawd)
|
||||
- [Skills](https://docs.clawd.bot/tools/skills)
|
||||
- [Skills config](https://docs.clawd.bot/tools/skills-config)
|
||||
- [Workspace templates](https://docs.clawd.bot/reference/templates/AGENTS)
|
||||
- [RPC adapters](https://docs.clawd.bot/reference/rpc)
|
||||
- [Gateway runbook](https://docs.clawd.bot/gateway)
|
||||
- [Nodes (iOS/Android)](https://docs.clawd.bot/nodes)
|
||||
- [Web surfaces (Control UI)](https://docs.clawd.bot/web)
|
||||
- [Discovery + transports](https://docs.clawd.bot/gateway/discovery)
|
||||
- [Remote access](https://docs.clawd.bot/gateway/remote)
|
||||
- [Docs hubs (all pages linked)](/start/hubs)
|
||||
- [FAQ](/start/faq) ← *common questions answered*
|
||||
- [Configuration](/gateway/configuration)
|
||||
- [Configuration examples](/gateway/configuration-examples)
|
||||
- [Slash commands](/tools/slash-commands)
|
||||
- [Multi-agent routing](/concepts/multi-agent)
|
||||
- [Updating / rollback](/install/updating)
|
||||
- [Pairing (DM + nodes)](/start/pairing)
|
||||
- [Nix mode](/install/nix)
|
||||
- [Clawdbot assistant setup (Clawd)](/start/clawd)
|
||||
- [Skills](/tools/skills)
|
||||
- [Skills config](/tools/skills-config)
|
||||
- [Workspace templates](/reference/templates/AGENTS)
|
||||
- [RPC adapters](/reference/rpc)
|
||||
- [Gateway runbook](/gateway)
|
||||
- [Nodes (iOS/Android)](/nodes)
|
||||
- [Web surfaces (Control UI)](/web)
|
||||
- [Discovery + transports](/gateway/discovery)
|
||||
- [Remote access](/gateway/remote)
|
||||
- Providers and UX:
|
||||
- [WebChat](https://docs.clawd.bot/web/webchat)
|
||||
- [Control UI (browser)](https://docs.clawd.bot/web/control-ui)
|
||||
- [Telegram](https://docs.clawd.bot/providers/telegram)
|
||||
- [Discord](https://docs.clawd.bot/providers/discord)
|
||||
- [iMessage](https://docs.clawd.bot/providers/imessage)
|
||||
- [Groups](https://docs.clawd.bot/concepts/groups)
|
||||
- [WhatsApp group messages](https://docs.clawd.bot/concepts/group-messages)
|
||||
- [Media: images](https://docs.clawd.bot/nodes/images)
|
||||
- [Media: audio](https://docs.clawd.bot/nodes/audio)
|
||||
- [WebChat](/web/webchat)
|
||||
- [Control UI (browser)](/web/control-ui)
|
||||
- [Telegram](/providers/telegram)
|
||||
- [Discord](/providers/discord)
|
||||
- [iMessage](/providers/imessage)
|
||||
- [Groups](/concepts/groups)
|
||||
- [WhatsApp group messages](/concepts/group-messages)
|
||||
- [Media: images](/nodes/images)
|
||||
- [Media: audio](/nodes/audio)
|
||||
- Companion apps:
|
||||
- [macOS app](https://docs.clawd.bot/platforms/macos)
|
||||
- [iOS app](https://docs.clawd.bot/platforms/ios)
|
||||
- [Android app](https://docs.clawd.bot/platforms/android)
|
||||
- [Windows (WSL2)](https://docs.clawd.bot/platforms/windows)
|
||||
- [Linux app](https://docs.clawd.bot/platforms/linux)
|
||||
- [macOS app](/platforms/macos)
|
||||
- [iOS app](/platforms/ios)
|
||||
- [Android app](/platforms/android)
|
||||
- [Windows (WSL2)](/platforms/windows)
|
||||
- [Linux app](/platforms/linux)
|
||||
- Ops and safety:
|
||||
- [Sessions](https://docs.clawd.bot/concepts/session)
|
||||
- [Cron jobs](https://docs.clawd.bot/automation/cron-jobs)
|
||||
- [Webhooks](https://docs.clawd.bot/automation/webhook)
|
||||
- [Gmail hooks (Pub/Sub)](https://docs.clawd.bot/automation/gmail-pubsub)
|
||||
- [Security](https://docs.clawd.bot/gateway/security)
|
||||
- [Troubleshooting](https://docs.clawd.bot/gateway/troubleshooting)
|
||||
- [Sessions](/concepts/session)
|
||||
- [Cron jobs](/automation/cron-jobs)
|
||||
- [Webhooks](/automation/webhook)
|
||||
- [Gmail hooks (Pub/Sub)](/automation/gmail-pubsub)
|
||||
- [Security](/gateway/security)
|
||||
- [Troubleshooting](/gateway/troubleshooting)
|
||||
|
||||
## The name
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ macOS can also run in **node mode**: the menubar app connects to the Gateway’s
|
||||
|
||||
## Pairing + status
|
||||
|
||||
Pairing is gateway-owned and approval-based. See [`docs/gateway/pairing.md`](/gateway/pairing) for the full flow.
|
||||
Pairing is gateway-owned and approval-based. See [Gateway pairing](/gateway/pairing) for the full flow.
|
||||
|
||||
Quick CLI:
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@ From the gateway machine:
|
||||
dns-sd -B _clawdbot-bridge._tcp local.
|
||||
```
|
||||
|
||||
More debugging notes: [`docs/bonjour.md`](/gateway/bonjour).
|
||||
More debugging notes: [Bonjour](/gateway/bonjour).
|
||||
|
||||
#### Tailnet (Vienna ⇄ London) discovery via unicast DNS-SD
|
||||
|
||||
@@ -65,7 +65,7 @@ Android NSD/mDNS discovery won’t cross networks. If your Android node and the
|
||||
1) Set up a DNS-SD zone (example `clawdbot.internal.`) on the gateway host and publish `_clawdbot-bridge._tcp` records.
|
||||
2) Configure Tailscale split DNS for `clawdbot.internal` pointing at that DNS server.
|
||||
|
||||
Details and example CoreDNS config: [`docs/bonjour.md`](/gateway/bonjour).
|
||||
Details and example CoreDNS config: [Bonjour](/gateway/bonjour).
|
||||
|
||||
### 3) Connect from Android
|
||||
|
||||
@@ -89,7 +89,7 @@ clawdbot nodes pending
|
||||
clawdbot nodes approve <requestId>
|
||||
```
|
||||
|
||||
Pairing details: [`docs/gateway/pairing.md`](/gateway/pairing).
|
||||
Pairing details: [Gateway pairing](/gateway/pairing).
|
||||
|
||||
### 5) Verify the node is connected
|
||||
|
||||
@@ -139,4 +139,4 @@ Camera commands (foreground only; permission-gated):
|
||||
- `camera.snap` (jpg)
|
||||
- `camera.clip` (mp4)
|
||||
|
||||
See [`docs/camera.md`](/nodes/camera) for parameters and CLI helpers.
|
||||
See [Camera node](/nodes/camera) for parameters and CLI helpers.
|
||||
|
||||
@@ -57,7 +57,7 @@ The Gateway advertises `_clawdbot-bridge._tcp` on `local.`. The iOS app lists th
|
||||
### Tailnet (cross-network)
|
||||
|
||||
If mDNS is blocked, use a unicast DNS-SD zone (recommended domain: `clawdbot.internal.`) and Tailscale split DNS.
|
||||
See [`docs/bonjour.md`](/gateway/bonjour) for the CoreDNS example.
|
||||
See [Bonjour](/gateway/bonjour) for the CoreDNS example.
|
||||
|
||||
### Manual host/port
|
||||
|
||||
@@ -94,7 +94,7 @@ clawdbot nodes invoke --node "iOS Node" --command canvas.snapshot --params '{"ma
|
||||
## Common errors
|
||||
|
||||
- `NODE_BACKGROUND_UNAVAILABLE`: bring the iOS app to the foreground (canvas/camera/screen commands require it).
|
||||
- `A2UI_HOST_NOT_CONFIGURED`: the Gateway did not advertise a canvas host URL; check `canvasHost` in [`docs/configuration.md`](/gateway/configuration).
|
||||
- `A2UI_HOST_NOT_CONFIGURED`: the Gateway did not advertise a canvas host URL; check `canvasHost` in [Gateway configuration](/gateway/configuration).
|
||||
- Pairing prompt never appears: run `clawdbot nodes pending` and approve manually.
|
||||
- Reconnect fails after reinstall: the Keychain pairing token was cleared; re-pair the node.
|
||||
|
||||
|
||||
@@ -25,4 +25,4 @@ How to see whether the WhatsApp Web/Baileys bridge is healthy from the menu bar
|
||||
- Cache the last good snapshot and the last error separately to avoid flicker; show the timestamp of each.
|
||||
|
||||
## When in doubt
|
||||
- You can still use the CLI flow in [`docs/health.md`](/gateway/health) (`clawdbot status`, `clawdbot status --deep`, `clawdbot health --json`) and tail `/tmp/clawdbot/clawdbot-*.log` for `web-heartbeat` / `web-reconnect`.
|
||||
- You can still use the CLI flow in [Gateway health](/gateway/health) (`clawdbot status`, `clawdbot status --deep`, `clawdbot health --json`) and tail `/tmp/clawdbot/clawdbot-*.log` for `web-heartbeat` / `web-reconnect`.
|
||||
|
||||
@@ -9,7 +9,7 @@ This app is usually built from [`scripts/package-mac-app.sh`](https://github.com
|
||||
|
||||
- sets a stable debug bundle identifier: `com.clawdbot.mac.debug`
|
||||
- writes the Info.plist with that bundle id (override via `BUNDLE_ID=...`)
|
||||
- calls [`scripts/codesign-mac-app.sh`](https://github.com/clawdbot/clawdbot/blob/main/scripts/codesign-mac-app.sh) to sign the main binary, bundled CLI, and app bundle so macOS treats each rebuild as the same signed bundle and keeps TCC permissions (notifications, accessibility, screen recording, mic, speech). For stable permissions, use a real signing identity; ad-hoc is opt-in and fragile (see [`docs/mac/permissions.md`](/platforms/mac/permissions)).
|
||||
- calls [`scripts/codesign-mac-app.sh`](https://github.com/clawdbot/clawdbot/blob/main/scripts/codesign-mac-app.sh) to sign the main binary, bundled CLI, and app bundle so macOS treats each rebuild as the same signed bundle and keeps TCC permissions (notifications, accessibility, screen recording, mic, speech). For stable permissions, use a real signing identity; ad-hoc is opt-in and fragile (see [macOS permissions](/platforms/mac/permissions)).
|
||||
- uses `CODESIGN_TIMESTAMP=auto` by default; it enables trusted timestamps for Developer ID signatures. Set `CODESIGN_TIMESTAMP=off` to skip timestamping (offline debug builds).
|
||||
- inject build metadata into Info.plist: `ClawdbotBuildTimestamp` (UTC) and `ClawdbotGitCommit` (short hash) so the About pane can show build, git, and debug/release channel.
|
||||
- **Packaging requires Node**: The embedded gateway relay is bundled with Node. Ensure Node is available for the packaging script (or set `NODE_VERSION` to pin the download).
|
||||
@@ -26,7 +26,7 @@ SIGN_IDENTITY="-" scripts/package-mac-app.sh # explicit ad-hoc (same cave
|
||||
```
|
||||
|
||||
### Ad-hoc Signing Note
|
||||
When signing with `SIGN_IDENTITY="-"` (ad-hoc), the script automatically disables the **Hardened Runtime** (`--options runtime`). This is necessary to prevent crashes when the app attempts to load embedded frameworks (like Sparkle) that do not share the same Team ID. Ad-hoc signatures also break TCC permission persistence; see [`docs/mac/permissions.md`](/platforms/mac/permissions) for recovery steps.
|
||||
When signing with `SIGN_IDENTITY="-"` (ad-hoc), the script automatically disables the **Hardened Runtime** (`--options runtime`). This is necessary to prevent crashes when the app attempts to load embedded frameworks (like Sparkle) that do not share the same Team ID. Ad-hoc signatures also break TCC permission persistence; see [macOS permissions](/platforms/mac/permissions) for recovery steps.
|
||||
|
||||
## Build metadata for About
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ read_when:
|
||||
- UI automation uses a separate UNIX socket named `bridge.sock` and the PeekabooBridge JSON protocol.
|
||||
- Host preference order (client-side): Peekaboo.app → Claude.app → Clawdbot.app → local execution.
|
||||
- Security: bridge hosts require TeamID `Y5PE65HELJ`; DEBUG-only same-UID escape hatch is guarded by `PEEKABOO_ALLOW_UNSIGNED_SOCKET_CLIENTS=1` (Peekaboo convention).
|
||||
- See: [`docs/mac/peekaboo.md`](/platforms/mac/peekaboo) for PeekabooBridge usage.
|
||||
- See: [PeekabooBridge usage](/platforms/mac/peekaboo) for details.
|
||||
|
||||
### Mach/XPC
|
||||
- Not required for automation; `node.invoke` + PeekabooBridge cover current needs.
|
||||
|
||||
@@ -213,7 +213,7 @@ Behavior:
|
||||
## Logs + troubleshooting
|
||||
- Subsystems: `whatsapp/inbound`, `whatsapp/outbound`, `web-heartbeat`, `web-reconnect`.
|
||||
- Log file: `/tmp/clawdbot/clawdbot-YYYY-MM-DD.log` (configurable).
|
||||
- Troubleshooting guide: [`docs/troubleshooting.md`](/gateway/troubleshooting).
|
||||
- Troubleshooting guide: [Gateway troubleshooting](/gateway/troubleshooting).
|
||||
|
||||
## Troubleshooting (quick)
|
||||
|
||||
|
||||
@@ -36,9 +36,9 @@ Use `pnpm` (Node 22+) from the repo root. Keep the working tree clean before tag
|
||||
- [ ] Build + sign the macOS app, then zip it for distribution.
|
||||
- [ ] Generate the Sparkle appcast (HTML notes via [`scripts/make_appcast.sh`](https://github.com/clawdbot/clawdbot/blob/main/scripts/make_appcast.sh)) and update `appcast.xml`.
|
||||
- [ ] Keep the app zip (and optional dSYM zip) ready to attach to the GitHub release.
|
||||
- [ ] Follow [`docs/mac/release.md`](/platforms/mac/release) for the exact commands and required env vars.
|
||||
- [ ] Follow [macOS release](/platforms/mac/release) for the exact commands and required env vars.
|
||||
- `APP_BUILD` must be numeric + monotonic (no `-beta`) so Sparkle compares versions correctly.
|
||||
- If notarizing, use the `clawdbot-notary` keychain profile created from App Store Connect API env vars (see [`docs/mac/release.md`](/platforms/mac/release)).
|
||||
- If notarizing, use the `clawdbot-notary` keychain profile created from App Store Connect API env vars (see [macOS release](/platforms/mac/release)).
|
||||
|
||||
6) **Publish (npm)**
|
||||
- [ ] Confirm git status is clean; commit and push as needed.
|
||||
|
||||
@@ -14,7 +14,7 @@ Clawdbot integrates external CLIs via JSON-RPC. Two patterns are used today.
|
||||
- Health probe: `/api/v1/check`.
|
||||
- Clawdbot owns lifecycle when `signal.autoStart=true`.
|
||||
|
||||
See [`docs/signal.md`](/providers/signal) for setup and endpoints.
|
||||
See [Signal](/providers/signal) for setup and endpoints.
|
||||
|
||||
## Pattern B: stdio child process (imsg)
|
||||
- Clawdbot spawns `imsg rpc` as a child process.
|
||||
@@ -27,7 +27,7 @@ Core methods used:
|
||||
- `send`
|
||||
- `chats.list` (probe/diagnostics)
|
||||
|
||||
See [`docs/imessage.md`](/providers/imessage) for setup and addressing (`chat_id` preferred).
|
||||
See [iMessage](/providers/imessage) for setup and addressing (`chat_id` preferred).
|
||||
|
||||
## Adapter guidelines
|
||||
- Gateway owns the process (start/stop tied to provider lifecycle).
|
||||
|
||||
@@ -101,7 +101,7 @@ Tip: treat this folder like Clawd’s “memory” and make it a git repo (ideal
|
||||
clawdbot setup
|
||||
```
|
||||
|
||||
Full workspace layout + backup guide: [`docs/agent-workspace.md`](/concepts/agent-workspace)
|
||||
Full workspace layout + backup guide: [Agent workspace](/concepts/agent-workspace)
|
||||
|
||||
Optional: choose a different workspace with `agents.defaults.workspace` (supports `~`).
|
||||
|
||||
|
||||
@@ -9,167 +9,167 @@ Use these hubs to discover every page, including deep dives and reference docs t
|
||||
|
||||
## Start here
|
||||
|
||||
- [Index](https://docs.clawd.bot)
|
||||
- [Getting Started](https://docs.clawd.bot/start/getting-started)
|
||||
- [Onboarding](https://docs.clawd.bot/start/onboarding)
|
||||
- [Wizard](https://docs.clawd.bot/start/wizard)
|
||||
- [Setup](https://docs.clawd.bot/start/setup)
|
||||
- [Index](/)
|
||||
- [Getting Started](/start/getting-started)
|
||||
- [Onboarding](/start/onboarding)
|
||||
- [Wizard](/start/wizard)
|
||||
- [Setup](/start/setup)
|
||||
- [Dashboard (local Gateway)](http://127.0.0.1:18789/)
|
||||
- [FAQ](https://docs.clawd.bot/start/faq)
|
||||
- [Configuration](https://docs.clawd.bot/gateway/configuration)
|
||||
- [Configuration examples](https://docs.clawd.bot/gateway/configuration-examples)
|
||||
- [Clawdbot assistant (Clawd)](https://docs.clawd.bot/start/clawd)
|
||||
- [Showcase](https://docs.clawd.bot/start/showcase)
|
||||
- [Lore](https://docs.clawd.bot/start/lore)
|
||||
- [FAQ](/start/faq)
|
||||
- [Configuration](/gateway/configuration)
|
||||
- [Configuration examples](/gateway/configuration-examples)
|
||||
- [Clawdbot assistant (Clawd)](/start/clawd)
|
||||
- [Showcase](/start/showcase)
|
||||
- [Lore](/start/lore)
|
||||
|
||||
## Installation + updates
|
||||
|
||||
- [Docker](https://docs.clawd.bot/install/docker)
|
||||
- [Nix](https://docs.clawd.bot/install/nix)
|
||||
- [Updating / rollback](https://docs.clawd.bot/install/updating)
|
||||
- [Bun workflow](https://docs.clawd.bot/install/bun)
|
||||
- [Docker](/install/docker)
|
||||
- [Nix](/install/nix)
|
||||
- [Updating / rollback](/install/updating)
|
||||
- [Bun workflow](/install/bun)
|
||||
|
||||
## Core concepts
|
||||
|
||||
- [Architecture](https://docs.clawd.bot/concepts/architecture)
|
||||
- [Agent runtime](https://docs.clawd.bot/concepts/agent)
|
||||
- [Agent workspace](https://docs.clawd.bot/concepts/agent-workspace)
|
||||
- [Agent loop](https://docs.clawd.bot/concepts/agent-loop)
|
||||
- [Architecture](/concepts/architecture)
|
||||
- [Agent runtime](/concepts/agent)
|
||||
- [Agent workspace](/concepts/agent-workspace)
|
||||
- [Agent loop](/concepts/agent-loop)
|
||||
- [Streaming + chunking](/concepts/streaming)
|
||||
- [Multi-agent routing](https://docs.clawd.bot/concepts/multi-agent)
|
||||
- [Compaction](https://docs.clawd.bot/concepts/compaction)
|
||||
- [Sessions](https://docs.clawd.bot/concepts/session)
|
||||
- [Sessions (alias)](https://docs.clawd.bot/concepts/sessions)
|
||||
- [Session pruning](https://docs.clawd.bot/concepts/session-pruning)
|
||||
- [Session tools](https://docs.clawd.bot/concepts/session-tool)
|
||||
- [Queue](https://docs.clawd.bot/concepts/queue)
|
||||
- [Slash commands](https://docs.clawd.bot/tools/slash-commands)
|
||||
- [RPC adapters](https://docs.clawd.bot/reference/rpc)
|
||||
- [TypeBox schemas](https://docs.clawd.bot/concepts/typebox)
|
||||
- [Timezone handling](https://docs.clawd.bot/concepts/timezone)
|
||||
- [Presence](https://docs.clawd.bot/concepts/presence)
|
||||
- [Discovery + transports](https://docs.clawd.bot/gateway/discovery)
|
||||
- [Bonjour](https://docs.clawd.bot/gateway/bonjour)
|
||||
- [Provider routing](https://docs.clawd.bot/concepts/provider-routing)
|
||||
- [Groups](https://docs.clawd.bot/concepts/groups)
|
||||
- [Group messages](https://docs.clawd.bot/concepts/group-messages)
|
||||
- [Model failover](https://docs.clawd.bot/concepts/model-failover)
|
||||
- [OAuth](https://docs.clawd.bot/concepts/oauth)
|
||||
- [Multi-agent routing](/concepts/multi-agent)
|
||||
- [Compaction](/concepts/compaction)
|
||||
- [Sessions](/concepts/session)
|
||||
- [Sessions (alias)](/concepts/sessions)
|
||||
- [Session pruning](/concepts/session-pruning)
|
||||
- [Session tools](/concepts/session-tool)
|
||||
- [Queue](/concepts/queue)
|
||||
- [Slash commands](/tools/slash-commands)
|
||||
- [RPC adapters](/reference/rpc)
|
||||
- [TypeBox schemas](/concepts/typebox)
|
||||
- [Timezone handling](/concepts/timezone)
|
||||
- [Presence](/concepts/presence)
|
||||
- [Discovery + transports](/gateway/discovery)
|
||||
- [Bonjour](/gateway/bonjour)
|
||||
- [Provider routing](/concepts/provider-routing)
|
||||
- [Groups](/concepts/groups)
|
||||
- [Group messages](/concepts/group-messages)
|
||||
- [Model failover](/concepts/model-failover)
|
||||
- [OAuth](/concepts/oauth)
|
||||
|
||||
## Providers + ingress
|
||||
|
||||
- [WhatsApp](https://docs.clawd.bot/providers/whatsapp)
|
||||
- [Telegram](https://docs.clawd.bot/providers/telegram)
|
||||
- [Telegram (grammY notes)](https://docs.clawd.bot/providers/grammy)
|
||||
- [Slack](https://docs.clawd.bot/providers/slack)
|
||||
- [Discord](https://docs.clawd.bot/providers/discord)
|
||||
- [Signal](https://docs.clawd.bot/providers/signal)
|
||||
- [iMessage](https://docs.clawd.bot/providers/imessage)
|
||||
- [Location parsing](https://docs.clawd.bot/providers/location)
|
||||
- [WebChat](https://docs.clawd.bot/web/webchat)
|
||||
- [Webhooks](https://docs.clawd.bot/automation/webhook)
|
||||
- [Gmail Pub/Sub](https://docs.clawd.bot/automation/gmail-pubsub)
|
||||
- [WhatsApp](/providers/whatsapp)
|
||||
- [Telegram](/providers/telegram)
|
||||
- [Telegram (grammY notes)](/providers/grammy)
|
||||
- [Slack](/providers/slack)
|
||||
- [Discord](/providers/discord)
|
||||
- [Signal](/providers/signal)
|
||||
- [iMessage](/providers/imessage)
|
||||
- [Location parsing](/providers/location)
|
||||
- [WebChat](/web/webchat)
|
||||
- [Webhooks](/automation/webhook)
|
||||
- [Gmail Pub/Sub](/automation/gmail-pubsub)
|
||||
|
||||
## Gateway + operations
|
||||
|
||||
- [Gateway runbook](https://docs.clawd.bot/gateway)
|
||||
- [Gateway pairing](https://docs.clawd.bot/gateway/pairing)
|
||||
- [Gateway lock](https://docs.clawd.bot/gateway/gateway-lock)
|
||||
- [Background process](https://docs.clawd.bot/gateway/background-process)
|
||||
- [Health](https://docs.clawd.bot/gateway/health)
|
||||
- [Heartbeat](https://docs.clawd.bot/gateway/heartbeat)
|
||||
- [Doctor](https://docs.clawd.bot/gateway/doctor)
|
||||
- [Logging](https://docs.clawd.bot/gateway/logging)
|
||||
- [Sandboxing](https://docs.clawd.bot/gateway/sandboxing)
|
||||
- [Dashboard](https://docs.clawd.bot/web/dashboard)
|
||||
- [Control UI](https://docs.clawd.bot/web/control-ui)
|
||||
- [Remote access](https://docs.clawd.bot/gateway/remote)
|
||||
- [Remote gateway README](https://docs.clawd.bot/gateway/remote-gateway-readme)
|
||||
- [Tailscale](https://docs.clawd.bot/gateway/tailscale)
|
||||
- [Security](https://docs.clawd.bot/gateway/security)
|
||||
- [Troubleshooting](https://docs.clawd.bot/gateway/troubleshooting)
|
||||
- [Gateway runbook](/gateway)
|
||||
- [Gateway pairing](/gateway/pairing)
|
||||
- [Gateway lock](/gateway/gateway-lock)
|
||||
- [Background process](/gateway/background-process)
|
||||
- [Health](/gateway/health)
|
||||
- [Heartbeat](/gateway/heartbeat)
|
||||
- [Doctor](/gateway/doctor)
|
||||
- [Logging](/gateway/logging)
|
||||
- [Sandboxing](/gateway/sandboxing)
|
||||
- [Dashboard](/web/dashboard)
|
||||
- [Control UI](/web/control-ui)
|
||||
- [Remote access](/gateway/remote)
|
||||
- [Remote gateway README](/gateway/remote-gateway-readme)
|
||||
- [Tailscale](/gateway/tailscale)
|
||||
- [Security](/gateway/security)
|
||||
- [Troubleshooting](/gateway/troubleshooting)
|
||||
|
||||
## Tools + automation
|
||||
|
||||
- [Tools surface](https://docs.clawd.bot/tools)
|
||||
- [CLI reference](https://docs.clawd.bot/cli)
|
||||
- [Bash tool](https://docs.clawd.bot/tools/bash)
|
||||
- [Elevated mode](https://docs.clawd.bot/tools/elevated)
|
||||
- [Cron jobs](https://docs.clawd.bot/automation/cron-jobs)
|
||||
- [Thinking + verbose](https://docs.clawd.bot/tools/thinking)
|
||||
- [Models](https://docs.clawd.bot/concepts/models)
|
||||
- [Sub-agents](https://docs.clawd.bot/tools/subagents)
|
||||
- [Agent send CLI](https://docs.clawd.bot/tools/agent-send)
|
||||
- [Terminal UI](https://docs.clawd.bot/tui)
|
||||
- [Browser control](https://docs.clawd.bot/tools/browser)
|
||||
- [Browser (Linux troubleshooting)](https://docs.clawd.bot/tools/browser-linux-troubleshooting)
|
||||
- [Polls](https://docs.clawd.bot/automation/poll)
|
||||
- [Tools surface](/tools)
|
||||
- [CLI reference](/cli)
|
||||
- [Bash tool](/tools/bash)
|
||||
- [Elevated mode](/tools/elevated)
|
||||
- [Cron jobs](/automation/cron-jobs)
|
||||
- [Thinking + verbose](/tools/thinking)
|
||||
- [Models](/concepts/models)
|
||||
- [Sub-agents](/tools/subagents)
|
||||
- [Agent send CLI](/tools/agent-send)
|
||||
- [Terminal UI](/tui)
|
||||
- [Browser control](/tools/browser)
|
||||
- [Browser (Linux troubleshooting)](/tools/browser-linux-troubleshooting)
|
||||
- [Polls](/automation/poll)
|
||||
|
||||
## Nodes, media, voice
|
||||
|
||||
- [Nodes overview](https://docs.clawd.bot/nodes)
|
||||
- [Camera](https://docs.clawd.bot/nodes/camera)
|
||||
- [Images](https://docs.clawd.bot/nodes/images)
|
||||
- [Audio](https://docs.clawd.bot/nodes/audio)
|
||||
- [Location command](https://docs.clawd.bot/nodes/location-command)
|
||||
- [Voice wake](https://docs.clawd.bot/nodes/voicewake)
|
||||
- [Talk mode](https://docs.clawd.bot/nodes/talk)
|
||||
- [Nodes overview](/nodes)
|
||||
- [Camera](/nodes/camera)
|
||||
- [Images](/nodes/images)
|
||||
- [Audio](/nodes/audio)
|
||||
- [Location command](/nodes/location-command)
|
||||
- [Voice wake](/nodes/voicewake)
|
||||
- [Talk mode](/nodes/talk)
|
||||
|
||||
## Platforms
|
||||
|
||||
- [Platforms overview](https://docs.clawd.bot/platforms)
|
||||
- [macOS](https://docs.clawd.bot/platforms/macos)
|
||||
- [iOS](https://docs.clawd.bot/platforms/ios)
|
||||
- [Android](https://docs.clawd.bot/platforms/android)
|
||||
- [Windows (WSL2)](https://docs.clawd.bot/platforms/windows)
|
||||
- [Linux](https://docs.clawd.bot/platforms/linux)
|
||||
- [Web surfaces](https://docs.clawd.bot/web)
|
||||
- [Platforms overview](/platforms)
|
||||
- [macOS](/platforms/macos)
|
||||
- [iOS](/platforms/ios)
|
||||
- [Android](/platforms/android)
|
||||
- [Windows (WSL2)](/platforms/windows)
|
||||
- [Linux](/platforms/linux)
|
||||
- [Web surfaces](/web)
|
||||
|
||||
## macOS companion app (advanced)
|
||||
|
||||
- [macOS dev setup](https://docs.clawd.bot/platforms/mac/dev-setup)
|
||||
- [macOS menu bar](https://docs.clawd.bot/platforms/mac/menu-bar)
|
||||
- [macOS voice wake](https://docs.clawd.bot/platforms/mac/voicewake)
|
||||
- [macOS voice overlay](https://docs.clawd.bot/platforms/mac/voice-overlay)
|
||||
- [macOS WebChat](https://docs.clawd.bot/platforms/mac/webchat)
|
||||
- [macOS Canvas](https://docs.clawd.bot/platforms/mac/canvas)
|
||||
- [macOS child process](https://docs.clawd.bot/platforms/mac/child-process)
|
||||
- [macOS health](https://docs.clawd.bot/platforms/mac/health)
|
||||
- [macOS icon](https://docs.clawd.bot/platforms/mac/icon)
|
||||
- [macOS logging](https://docs.clawd.bot/platforms/mac/logging)
|
||||
- [macOS permissions](https://docs.clawd.bot/platforms/mac/permissions)
|
||||
- [macOS remote](https://docs.clawd.bot/platforms/mac/remote)
|
||||
- [macOS signing](https://docs.clawd.bot/platforms/mac/signing)
|
||||
- [macOS release](https://docs.clawd.bot/platforms/mac/release)
|
||||
- [macOS bundled gateway (Node)](https://docs.clawd.bot/platforms/mac/bundled-gateway)
|
||||
- [macOS XPC](https://docs.clawd.bot/platforms/mac/xpc)
|
||||
- [macOS skills](https://docs.clawd.bot/platforms/mac/skills)
|
||||
- [macOS Peekaboo](https://docs.clawd.bot/platforms/mac/peekaboo)
|
||||
- [macOS dev setup](/platforms/mac/dev-setup)
|
||||
- [macOS menu bar](/platforms/mac/menu-bar)
|
||||
- [macOS voice wake](/platforms/mac/voicewake)
|
||||
- [macOS voice overlay](/platforms/mac/voice-overlay)
|
||||
- [macOS WebChat](/platforms/mac/webchat)
|
||||
- [macOS Canvas](/platforms/mac/canvas)
|
||||
- [macOS child process](/platforms/mac/child-process)
|
||||
- [macOS health](/platforms/mac/health)
|
||||
- [macOS icon](/platforms/mac/icon)
|
||||
- [macOS logging](/platforms/mac/logging)
|
||||
- [macOS permissions](/platforms/mac/permissions)
|
||||
- [macOS remote](/platforms/mac/remote)
|
||||
- [macOS signing](/platforms/mac/signing)
|
||||
- [macOS release](/platforms/mac/release)
|
||||
- [macOS bundled gateway (Node)](/platforms/mac/bundled-gateway)
|
||||
- [macOS XPC](/platforms/mac/xpc)
|
||||
- [macOS skills](/platforms/mac/skills)
|
||||
- [macOS Peekaboo](/platforms/mac/peekaboo)
|
||||
|
||||
## Workspace + templates
|
||||
|
||||
- [Skills](https://docs.clawd.bot/tools/skills)
|
||||
- [ClawdHub](https://docs.clawd.bot/tools/clawdhub)
|
||||
- [Skills config](https://docs.clawd.bot/tools/skills-config)
|
||||
- [Default AGENTS](https://docs.clawd.bot/reference/AGENTS.default)
|
||||
- [Templates: AGENTS](https://docs.clawd.bot/reference/templates/AGENTS)
|
||||
- [Templates: BOOTSTRAP](https://docs.clawd.bot/reference/templates/BOOTSTRAP)
|
||||
- [Templates: HEARTBEAT](https://docs.clawd.bot/reference/templates/HEARTBEAT)
|
||||
- [Templates: IDENTITY](https://docs.clawd.bot/reference/templates/IDENTITY)
|
||||
- [Templates: SOUL](https://docs.clawd.bot/reference/templates/SOUL)
|
||||
- [Templates: TOOLS](https://docs.clawd.bot/reference/templates/TOOLS)
|
||||
- [Templates: USER](https://docs.clawd.bot/reference/templates/USER)
|
||||
- [Skills](/tools/skills)
|
||||
- [ClawdHub](/tools/clawdhub)
|
||||
- [Skills config](/tools/skills-config)
|
||||
- [Default AGENTS](/reference/AGENTS.default)
|
||||
- [Templates: AGENTS](/reference/templates/AGENTS)
|
||||
- [Templates: BOOTSTRAP](/reference/templates/BOOTSTRAP)
|
||||
- [Templates: HEARTBEAT](/reference/templates/HEARTBEAT)
|
||||
- [Templates: IDENTITY](/reference/templates/IDENTITY)
|
||||
- [Templates: SOUL](/reference/templates/SOUL)
|
||||
- [Templates: TOOLS](/reference/templates/TOOLS)
|
||||
- [Templates: USER](/reference/templates/USER)
|
||||
|
||||
## Experiments (exploratory)
|
||||
|
||||
- [Onboarding config protocol](https://docs.clawd.bot/experiments/onboarding-config-protocol)
|
||||
- [Cron hardening notes](https://docs.clawd.bot/experiments/plans/cron-add-hardening)
|
||||
- [Group policy hardening notes](https://docs.clawd.bot/experiments/plans/group-policy-hardening)
|
||||
- [Research: memory](https://docs.clawd.bot/experiments/research/memory)
|
||||
- [Model config exploration](https://docs.clawd.bot/experiments/proposals/model-config)
|
||||
- [Onboarding config protocol](/experiments/onboarding-config-protocol)
|
||||
- [Cron hardening notes](/experiments/plans/cron-add-hardening)
|
||||
- [Group policy hardening notes](/experiments/plans/group-policy-hardening)
|
||||
- [Research: memory](/experiments/research/memory)
|
||||
- [Model config exploration](/experiments/proposals/model-config)
|
||||
|
||||
## Testing + release
|
||||
|
||||
- [Testing](https://docs.clawd.bot/reference/test)
|
||||
- [Release checklist](https://docs.clawd.bot/reference/RELEASING)
|
||||
- [Device models](https://docs.clawd.bot/reference/device-models)
|
||||
- [Testing](/reference/test)
|
||||
- [Release checklist](/reference/RELEASING)
|
||||
- [Device models](/reference/device-models)
|
||||
|
||||
@@ -17,7 +17,7 @@ Last updated: 2026-01-01
|
||||
## Prereqs (from source)
|
||||
- Node `>=22`
|
||||
- `pnpm`
|
||||
- Docker (optional; only for containerized setup/e2e — see [`docs/docker.md`](/install/docker))
|
||||
- Docker (optional; only for containerized setup/e2e — see [Docker](/install/docker))
|
||||
|
||||
## Tailoring strategy (so updates don’t hurt)
|
||||
|
||||
@@ -121,12 +121,12 @@ sudo loginctl enable-linger $USER
|
||||
```
|
||||
|
||||
For always-on or multi-user servers, consider a **system** service instead of a
|
||||
user service (no lingering needed). See [`docs/gateway.md`](/gateway) for the systemd notes.
|
||||
user service (no lingering needed). See [Gateway runbook](/gateway) for the systemd notes.
|
||||
|
||||
## Related docs
|
||||
|
||||
- [`docs/gateway.md`](/gateway) (Gateway runbook; flags, supervision, ports)
|
||||
- [`docs/configuration.md`](/gateway/configuration) (config schema + examples)
|
||||
- [`docs/discord.md`](/providers/discord) and [`docs/telegram.md`](/providers/telegram) (reply tags + replyToMode settings)
|
||||
- [`docs/clawd.md`](/start/clawd) (Clawdbot assistant setup)
|
||||
- [`docs/macos.md`](/platforms/macos) (macOS app behavior; gateway lifecycle + “Attach only”)
|
||||
- [Gateway runbook](/gateway) (flags, supervision, ports)
|
||||
- [Gateway configuration](/gateway/configuration) (config schema + examples)
|
||||
- [Discord](/providers/discord) and [Telegram](/providers/telegram) (reply tags + replyToMode settings)
|
||||
- [Clawdbot assistant setup](/start/clawd)
|
||||
- [macOS app](/platforms/macos) (gateway lifecycle + “Attach only”)
|
||||
|
||||
@@ -92,7 +92,7 @@ Tip: `--json` does **not** imply non-interactive mode. Use `--non-interactive` (
|
||||
3) **Workspace**
|
||||
- Default `~/clawd` (configurable).
|
||||
- Seeds the workspace files needed for the agent bootstrap ritual.
|
||||
- Full workspace layout + backup guide: [`docs/agent-workspace.md`](/concepts/agent-workspace)
|
||||
- Full workspace layout + backup guide: [Agent workspace](/concepts/agent-workspace)
|
||||
|
||||
4) **Gateway**
|
||||
- Port, bind, auth mode, tailscale exposure.
|
||||
@@ -259,7 +259,7 @@ Sessions are stored under `~/.clawdbot/agents/<agentId>/sessions/`.
|
||||
|
||||
## Related docs
|
||||
|
||||
- macOS app onboarding: [`docs/onboarding.md`](/start/onboarding)
|
||||
- Config reference: [`docs/configuration.md`](/gateway/configuration)
|
||||
- Providers: [`docs/whatsapp.md`](/providers/whatsapp), [`docs/telegram.md`](/providers/telegram), [`docs/discord.md`](/providers/discord), [`docs/signal.md`](/providers/signal), [`docs/imessage.md`](/providers/imessage)
|
||||
- Skills: [`docs/skills.md`](/tools/skills), [`docs/skills-config.md`](/tools/skills-config)
|
||||
- macOS app onboarding: [Onboarding](/start/onboarding)
|
||||
- Config reference: [Gateway configuration](/gateway/configuration)
|
||||
- Providers: [WhatsApp](/providers/whatsapp), [Telegram](/providers/telegram), [Discord](/providers/discord), [Signal](/providers/signal), [iMessage](/providers/imessage)
|
||||
- Skills: [Skills](/tools/skills), [Skills config](/tools/skills-config)
|
||||
|
||||
@@ -189,7 +189,7 @@ copy). Workspace skills are user-owned and override both on name conflicts.
|
||||
|
||||
## Config reference
|
||||
|
||||
See [`docs/skills-config.md`](/tools/skills-config) for the full configuration schema.
|
||||
See [Skills config](/tools/skills-config) for the full configuration schema.
|
||||
|
||||
## Looking for more skills?
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ read_when:
|
||||
- Send `/reasoning` (or `/reasoning:`) with no argument to see the current reasoning level.
|
||||
|
||||
## Related
|
||||
- Elevated mode docs live in [`docs/elevated.md`](/tools/elevated).
|
||||
- Elevated mode docs live in [Elevated mode](/tools/elevated).
|
||||
|
||||
## Heartbeats
|
||||
- Heartbeat probe body is the configured heartbeat prompt (default: `Read HEARTBEAT.md if exists. Consider outstanding tasks. Checkup sometimes on your human during (user local) day time.`). Inline directives in a heartbeat message apply as usual (but avoid changing session defaults from heartbeats).
|
||||
|
||||
@@ -12,9 +12,9 @@ Quick open (local Gateway):
|
||||
- http://127.0.0.1:18789/ (or http://localhost:18789/)
|
||||
|
||||
Key references:
|
||||
- [`docs/control-ui.md`](https://docs.clawd.bot/web/control-ui) for usage and UI capabilities.
|
||||
- [`docs/tailscale.md`](https://docs.clawd.bot/gateway/tailscale) for Serve/Funnel automation.
|
||||
- [`docs/web.md`](https://docs.clawd.bot/web) for bind modes and security notes.
|
||||
- [Control UI](/web/control-ui) for usage and UI capabilities.
|
||||
- [Tailscale](/gateway/tailscale) for Serve/Funnel automation.
|
||||
- [Web surfaces](/web) for bind modes and security notes.
|
||||
|
||||
Authentication is enforced at the WebSocket handshake via `connect.params.auth`
|
||||
(token or password). See `gateway.auth` in [`docs/configuration.md`](https://docs.clawd.bot/gateway/configuration).
|
||||
(token or password). See `gateway.auth` in [Gateway configuration](/gateway/configuration).
|
||||
|
||||
@@ -11,13 +11,13 @@ The Gateway serves a small **browser Control UI** (Vite + Lit) from the same por
|
||||
- default: `http://<host>:18789/`
|
||||
- optional prefix: set `gateway.controlUi.basePath` (e.g. `/clawdbot`)
|
||||
|
||||
Capabilities live in [`docs/control-ui.md`](https://docs.clawd.bot/web/control-ui).
|
||||
Capabilities live in [Control UI](/web/control-ui).
|
||||
This page focuses on bind modes, security, and web-facing surfaces.
|
||||
|
||||
## Webhooks
|
||||
|
||||
When `hooks.enabled=true`, the Gateway also exposes a small webhook endpoint on the same HTTP server.
|
||||
See [`docs/configuration.md`](https://docs.clawd.bot/gateway/configuration) → `hooks` for auth + payloads.
|
||||
See [Gateway configuration](/gateway/configuration) → `hooks` for auth + payloads.
|
||||
|
||||
## Config (default-on)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user