Skip to main content

CLI reference

The wednesdayai CLI is the primary interface for managing the gateway, channels, agents, models, and configuration. Install it globally via npm or pnpm - see Getting started. The primary binary is wednesdayai; openclaw remains a permanent backward-compatible alias (both shims ship in the same package, so every command below works with either name).
This page summarises the command surface. Flags evolve between releases - when a flag is not listed here, run wednesdayai <command> --help for the authoritative set on your install.

Global flags

These apply to every command. Per-command flags such as --json, --verbose, and --log-level are documented under each command, not here.

Output styling

  • ANSI colours and progress indicators only render in TTY sessions.
  • OSC-8 hyperlinks render as clickable links in supported terminals; otherwise we fall back to plain URLs.
  • --json (and --plain where supported) disables styling for clean machine output.
  • Long-running commands show an OSC 9;4 progress indicator where supported.

Setup and onboarding

wednesdayai setup

Initialise config and workspace. Auto-runs the onboarding wizard when any wizard flag is present.
Key flags: --workspace <dir>, --wizard, --non-interactive, --mode <local\|remote>, --remote-url <url>, --remote-token <token>.

wednesdayai onboard

Interactive wizard to set up gateway, workspace, model auth, channels, and skills.
Key flags: --workspace <dir>, --reset, --reset-scope <config\|config+creds+sessions\|full>, --non-interactive, --mode <local\|remote>, --flow <quickstart\|advanced\|manual>, --auth-choice <id>, --gateway-port <port>, --gateway-bind <loopback\|lan\|tailnet\|auto\|custom>, --gateway-auth <token\|password>, --tailscale <off\|serve\|funnel>, --install-daemon / --no-install-daemon, --node-manager <npm\|pnpm\|bun>, --json. Many provider-specific key flags exist (for example --anthropic-api-key, --openai-api-key) - see wednesdayai onboard --help.

wednesdayai configure

Interactive configuration wizard (models, channels, skills, gateway). Re-runs onboarding-style prompts against an existing config. If the config file exists but fails validation, the wizard exits with an error - run wednesdayai doctor to repair it first. With no flags, the wizard first asks where the gateway runs (local or remote), then loops a “Select sections to configure” menu until you exit. configure has no subcommands; sections are selected via a repeatable flag: Key flags: --section <section> — run only the specified wizard section(s) — can be passed multiple times to run several sections in sequence (invalid values are rejected with the valid list). Sections run in a fixed order: workspace, model, web, gateway, channels, skills, then config is persisted, then daemon install and health checks run last.

wednesdayai completion

Print a shell completion script for your shell.

wednesdayai reset

Reset local config/state while keeping the CLI installed.
Key flags: --scope <config\|config+creds+sessions\|full>, --yes, --non-interactive, --dry-run. Non-interactive use requires both --scope and --yes.

wednesdayai uninstall

Remove the gateway service and local data (the CLI itself remains).
Key flags: --service, --state, --workspace, --app, --all, --yes, --non-interactive, --dry-run.

wednesdayai update

Update WednesdayAI to a newer version (source/npm installs).

Gateway

wednesdayai gateway

Run the WebSocket gateway in the foreground, or manage it as a system service. Subcommands cover the service lifecycle and RPC helpers.
Foreground run flags: --port <port>, --bind <loopback\|tailnet\|lan\|auto\|custom>, --token <token>, --auth <none\|token\|password\|trusted-proxy>, --password <password>, --tailscale <off\|serve\|funnel>, --tailscale-reset-on-exit (reset Tailscale serve/funnel configuration on shutdown), --allow-unconfigured, --force, --verbose, --ws-log <auto\|full\|compact>, --claude-cli-logs (enable Claude CLI log output), --raw-stream (write raw stream to stdout), --raw-stream-path <path> (write raw stream to the specified file path). RPC subcommands (call, health, status, probe, discover) accept --url, --token, --password, --timeout. call, health, and usage-cost also accept --expect-final. gateway status additional flags: --no-probe (skip RPC probe, show service status only). gateway probe additional flags: --ssh <user@host[:port]> (route probe through SSH tunnel), --ssh-identity <path> (SSH identity file path), --ssh-auto (auto-derive SSH target via Bonjour discovery). gateway usage-cost — Fetch rolling usage/cost summary from session logs. Flags: --days <days> (number of days to include), --url <url>, --token <token>, --json, --expect-final (wait for a final response before returning).
When you pass --url, the CLI does not auto-apply config or environment credentials. Include --token or --password explicitly; missing credentials is an error.
The gateway runs on port 18789 by default. Common RPC methods for gateway call: config.apply, config.patch, update.run. See the API reference for the full method surface. Systemd (Linux):

wednesdayai daemon

Legacy alias namespace for the gateway service commands (status, install, uninstall, start, stop, restart). Prefer wednesdayai gateway <subcommand>.

wednesdayai status

Local and channel diagnostics summary.
Key flags: --json, --all, --deep, --usage, --timeout <ms>, --verbose.

wednesdayai health

Fetch a health snapshot from the running gateway via RPC. Exits non-zero if unreachable or any probe fails.
Key flags: --json, --timeout <ms>, --verbose.

wednesdayai doctor

Health checks and guided repairs (config, model auth, channel connectivity, service health, port collisions, permissions, legacy migrations).
Key flags: --yes, --non-interactive (safe migrations only), --deep, --no-workspace-suggestions, --fix (auto-remediate detected issues where safe to do so), --json (output findings as JSON for scripting), --check <name> (run only the named check, e.g. --check ollama, --check disk).

wednesdayai logs

Tail the gateway log file via RPC.

wednesdayai dashboard

Open the control panel in your browser (default http://localhost:18789/).

wednesdayai tui

Open the terminal UI connected to the gateway.
Key flags: --url <url>, --token <token>, --password <password>, --session <key>, --deliver, --thinking <level>, --message <text>, --timeout-ms <ms>, --history-limit <n>.

wednesdayai qr

Display a QR code for mobile pairing.

Authentication, models, and providers

wednesdayai models

Manage AI model credentials and selection. wednesdayai models with no subcommand is an alias for models status.
Subcommands: list, status, set <model>, set-image <model>, aliases list\|add\|rm, fallbacks list\|add\|rm\|clear, image-fallbacks list\|add\|rm\|clear, scan, auth add\|setup-token\|paste-token, auth order get\|set\|clear. models status key flags: --check, --probe (validates credentials live — does not send a completion), --probe-timeout <ms> (probe timeout, default 10000), --probe-provider <name> (probe only the named provider), --probe-profile <id> (filter to specific profile(s); repeatable or comma-separated), --probe-concurrency <n> (number of concurrent probe requests), --probe-max-tokens <n> (max tokens for probe completion request), --plain (plain line output, no table formatting), --agent <id> (inspect a specific configured agent’s model and auth state). models set writes agents.defaults.model.primary; models set-image writes agents.defaults.imageModel.primary.

wednesdayai models auth

Authenticate with model providers interactively.
auth login flags: --provider <name> (required — specifies the provider to authenticate with).

Channels and pairing

wednesdayai channels

Manage chat channel accounts.
Subcommands: list, status, logs, add, remove, login, logout, capabilities --channel <name>, resolve <entries...> --channel <name> [--kind <auto|user|group>]. Common flags: --channel <name>, --account <id>, --name <label>, --json. --channel accepts whatsapp\|telegram\|discord\|googlechat\|slack\|mattermost\|signal\|imessage\|msteams\|irc (plus installed channel extensions). channels add runs a wizard when no flags are passed; flags switch to non-interactive mode.

wednesdayai pairing

Approve DM pairing requests across channels.
Subcommands: list [channel], approve <channel> <code>. Flags: --channel <channel>, --account <id>, --json, --notify (on approve).
There is no pairing deny and no pairing list --all. To refuse a sender, leave the request unapproved or tighten channels.<channel>.dmPolicy/allowFrom.

wednesdayai devices

Manage gateway device-pairing entries and per-role device tokens.
Subcommands: list, approve [requestId] [--latest], reject <requestId>, remove <deviceId>, clear --yes [--pending], rotate --device <id> --role <role> [--scope <scope...>], revoke --device <id> --role <role>.

Configuration

wednesdayai config

Read and write gateway configuration. Running wednesdayai config with no subcommand launches the wizard.
Subcommands: get <path>, set <path> <value> (value is JSON5 or a raw string), unset <path>, file, validate.

wednesdayai secrets

Manage SecretRef resolution and provider mappings.
Subcommands: reload, audit, configure, apply --from <plan.json> (migrate also exists as an alias surface).

wednesdayai directory

Look up contact and group IDs for supported chat channels.

wednesdayai dns

Wide-area discovery DNS helper (CoreDNS + Tailscale).
See /gateway/discovery.

Agents, sessions, and ACP

wednesdayai agent

Run one agent turn via the gateway (or --local embedded).
Required: --message <text>. Key flags: --to <dest>, --session-id <id>, --thinking <off\|minimal\|low\|medium\|high>, --verbose <on\|off>, --channel <name>, --local, --deliver, --json, --timeout <seconds>.

wednesdayai agent nudge

Interrupt an active agent session mid-turn with a nudge message.
Flags: --agent <id> (target a specific agent by id; defaults to the current active agent), --all (broadcast the nudge to all active agents).

wednesdayai agents

Manage isolated agents (workspaces + auth + routing). There is no agents status.
Subcommands: list, add [name], bindings, bind, unbind, delete <id>, set-identity <agent-id> <name>. Binding specs use channel[:accountId]. --workspace is required for non-interactive add.

wednesdayai sessions

List stored conversation sessions.
Key flags: --json, --verbose, --store <path>, --active <minutes>, --agent <id> (inspect a specific agent’s store), --all-agents (aggregate across all agents). sessions cleanup — Enforce session-store storage budgets and caps. Prunes sessions exceeding configured limits. sessions backfill-user-ids is safe on live data and idempotent — re-running it is a no-op for records already migrated. Flags: --batch-size <n> (rows per batch, default 500), --dry-run (preview without writing).

wednesdayai session-storage

Manage the session backing store.
Subcommands: init, validate, cutover, drop-legacy-archive. Common flags: --json.

wednesdayai acp

Run the ACP bridge that connects IDEs (Agent Client Protocol) to the gateway. See acp for options.

Messaging

wednesdayai message

Unified outbound messaging and channel actions.
Subcommands: send, poll, react, reactions, read, edit, delete, pin, unpin, pins, permissions, search, timeout, kick, ban, thread <create\|list\|reply>, emoji <list\|upload>, sticker <send\|upload>, role <info\|add\|rm>, channel <info\|list>, member info, voice status, event <list\|create>, broadcast <message>. See /cli/message for per-subcommand flags. message broadcast flags: --channel <name> (restrict broadcast to one channel; omit to send across all active channels), --dry-run (print targets without sending).

Skills and hooks

wednesdayai skills

List and inspect available skills plus readiness info. Skills are read-only from the CLI.
Subcommands: list, info <name>, check. Flags: --eligible, --json, --verbose.
There is no skills enable, skills disable, or skills install. Use npx clawhub to search, install, and sync skills; control which bundled skills load via skills.allowBundled and skills.load.extraDirs in config.

wednesdayai hooks

Manage gateway hooks.
Subcommands: list, info, check, enable, disable, install, update [id]. update flags: --all (update all tracked hooks), --dry-run. See the Hooks catalogue.

Plugins

wednesdayai plugins

Manage extensions and their config. Most plugin changes require a gateway restart.
Subcommands: list, info <id>, install, enable <id>, disable <id>, doctor, status, uninstall <id>, update [id]. plugins install flags: -l, --link (link local path instead of copying), --pin (pin to exact version), --force (overwrite existing install). plugins list flags: --json, --verbose (show detailed entries including config and state). plugins uninstall flags: --keep-files (preserve plugin files), --force (skip confirmation), --dry-run (preview without removing).

Memory

wednesdayai memory

Vector search over MEMORY.md and memory/*.md.
Subcommands: status, index, search "<query>" (--query also accepted).

Nodes and node host

wednesdayai nodes

Target paired nodes (mobile/desktop) via the gateway.
Subcommands include: status, list, pending, approve, reject, describe, rename, invoke, run, notify, camera <list\|snap\|clip>, canvas <snapshot\|present\|hide\|navigate\|eval\|a2ui>, screen record, location get. Common flags: --url, --token, --timeout, --json. See /nodes.

wednesdayai node

Run a headless node host, or manage it as a background service.
Subcommands: run, status, install, uninstall, start, stop, restart. See wednesdayai node.

Approvals and sandbox

wednesdayai approvals

Manage exec-approval policy and allowlists.
Subcommands: get, set, allowlist add\|remove.

wednesdayai sandbox

Inspect and manage agent sandboxes.
Subcommands: list, recreate, explain.

Browser

wednesdayai browser

Control a dedicated Chrome/Brave/Edge/Chromium instance. Common flags: --url, --token, --timeout, --json, --browser-profile <name>.
Manage: status, start, stop, reset-profile, tabs, open <url>, focus <targetId>, close [targetId], profiles, create-profile, delete-profile. Inspect: screenshot, snapshot. Actions: navigate, resize, click, type, press, hover, drag, select, upload, fill, dialog, wait, evaluate, console, pdf. See wednesdayai browser and the Browser tool.

System

wednesdayai system

Enqueue system events and manage heartbeat/presence (gateway RPC).
Subcommands: event (--text required; --mode <now\|next-heartbeat>), heartbeat last\|enable\|disable, presence. All accept --json, --url, --token, --timeout, --expect-final.

Cron

wednesdayai cron

Manage scheduled jobs (gateway RPC). See /automation/cron-jobs.
Subcommands: status, list, add (alias create), edit <id>, rm <id> (aliases remove, delete), enable <id>, disable <id>, runs --id <id>, run <id>. cron add delivery and lifecycle flags:
Use --cron for cron expressions (not --schedule). cron add requires --name and exactly one schedule of --at / --every / --cron, plus exactly one payload of --message / --system-event. Use cron rm (canonical) for deletion and cron runs --id <id> (not logs) for run history.

Security

wednesdayai security

Audit config and local state for common security foot-guns.
Subcommand: audit. Flags: --deep, --fix, --json.

Webhooks and docs

wednesdayai webhooks

Inbound webhook helpers.
Subcommands: gmail setup, gmail run. See /automation/gmail-pubsub.

wednesdayai docs

Search the live docs index.

Legacy and plugin commands

wednesdayai clawbot

Legacy alias namespace (for example wednesdayai clawbot qr). Prefer the modern equivalents.

wednesdayai voicecall

Provided by the voice-call plugin when installed. Plugins can register additional top-level commands.

Environment variables