### Start Development Gateway Source: https://docs.openclaw.ai/start/setup Installs dependencies, performs initial setup, and starts the gateway in watch mode. ```bash pnpm install # First run only (or after resetting local OpenClaw config/workspace) pnpm openclaw setup pnpm gateway:watch ``` -------------------------------- ### Initial Setup Workflow Source: https://docs.openclaw.ai/install/clawdock Standard sequence of commands to initialize the gateway and dashboard after installation. ```bash clawdock-startclawdock-fix-tokenclawdock-dashboard ``` -------------------------------- ### Run the Feishu channel setup wizard Source: https://docs.openclaw.ai/channels/feishu Initiates the interactive setup process for the Feishu channel, including plugin installation and credential configuration. ```bash openclaw channels login --channel feishu ``` -------------------------------- ### Install and Setup Moonshot Plugin Source: https://docs.openclaw.ai/providers/moonshot Commands to install the plugin and run the initial onboarding process. ```bash openclaw plugins install @openclaw/kimi-provider openclaw gateway restart ``` ```bash openclaw onboard --auth-choice kimi-code-api-key ``` -------------------------------- ### Install and Setup Honcho Source: https://docs.openclaw.ai/concepts/memory-honcho Commands to install the Honcho plugin and initialize the configuration. ```bash openclaw plugins install @honcho-ai/openclaw-honcho openclaw honcho setup openclaw gateway --force ``` -------------------------------- ### Recommended Model Setup Source: https://docs.openclaw.ai/install/raspberry-pi Example configuration for using cloud-hosted API models instead of local LLMs. ```json { "agents": { "defaults": { "model": { "primary": "anthropic/claude-sonnet-4-6", "fallbacks": ["openai/gpt-5.4-mini"] } } } } ``` -------------------------------- ### Run Conversational Onboarding Source: https://docs.openclaw.ai/start/onboarding-overview Starts the conversational setup and repair flow using the modern interface. ```bash openclaw onboard --modern ``` ```bash openclaw crestodian ``` -------------------------------- ### Forcing Installation Method Source: https://docs.openclaw.ai/help/faq-first-run Use these commands to force a specific installation method during the initial setup process. ```bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --install-method git curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --install-method npm ``` -------------------------------- ### Gmail Setup Command Variants Source: https://docs.openclaw.ai/cli/webhooks Examples of configuring Gmail webhooks with different project, output, and URL parameters. ```bash openclaw webhooks gmail setup --account you@example.com openclaw webhooks gmail setup --account you@example.com --project my-gcp-project --json openclaw webhooks gmail setup --account you@example.com --hook-url https://gateway.example.com/hooks/gmail ``` -------------------------------- ### Media Understanding Configuration Examples Source: https://docs.openclaw.ai/nodes/media-understanding Various configurations for setting up media tools, including shared models, modality-specific overrides, and multi-modal setups. ```json5 { tools: { media: { models: [ { provider: "openai", model: "gpt-5.5", capabilities: ["image"] }, { provider: "google", model: "gemini-3-flash-preview", capabilities: ["image", "audio", "video"], }, { type: "cli", command: "gemini", args: [ "-m", "gemini-3-flash", "--allowed-tools", "read_file", "Read the media at {{MediaPath}} and describe it in <= {{MaxChars}} characters.", ], capabilities: ["image", "video"], }, ], audio: { attachments: { mode: "all", maxAttachments: 2 }, }, video: { maxChars: 500, }, }, }, } ``` ```json5 { tools: { media: { audio: { enabled: true, models: [ { provider: "openai", model: "gpt-4o-mini-transcribe" }, { type: "cli", command: "whisper", args: ["--model", "base", "{{MediaPath}}"], }, ], }, video: { enabled: true, maxChars: 500, models: [ { provider: "google", model: "gemini-3-flash-preview" }, { type: "cli", command: "gemini", args: [ "-m", "gemini-3-flash", "--allowed-tools", "read_file", "Read the media at {{MediaPath}} and describe it in <= {{MaxChars}} characters.", ], }, ], }, }, }, } ``` ```json5 { tools: { media: { image: { enabled: true, maxBytes: 10485760, maxChars: 500, models: [ { provider: "openai", model: "gpt-5.5" }, { provider: "anthropic", model: "claude-opus-4-8" }, { type: "cli", command: "gemini", args: [ "-m", "gemini-3-flash", "--allowed-tools", "read_file", "Read the media at {{MediaPath}} and describe it in <= {{MaxChars}} characters.", ], }, ], }, }, }, } ``` ```json5 { tools: { media: { image: { models: [ { provider: "google", model: "gemini-3.1-pro-preview", capabilities: ["image", "video", "audio"], }, ], }, audio: { models: [ { provider: "google", model: "gemini-3.1-pro-preview", capabilities: ["image", "video", "audio"], }, ], }, video: { models: [ { provider: "google", model: "gemini-3.1-pro-preview", capabilities: ["image", "video", "audio"], }, ], }, }, }, } ``` -------------------------------- ### Configure Skills and MCP Server Entries Source: https://docs.openclaw.ai/gateway/configuration-reference Example configuration for skill loading, installation preferences, and specific skill entries including API key management. ```json5 { skills: { allowBundled: ["gemini", "peekaboo"], load: { extraDirs: ["~/Projects/agent-scripts/skills"], allowSymlinkTargets: ["~/Projects/manager/skills"], }, install: { preferBrew: true, nodeManager: "npm", // npm | pnpm | yarn | bun allowUploadedArchives: false, }, workshop: { allowSymlinkTargetWrites: false, }, entries: { "image-lab": { apiKey: { source: "env", provider: "default", id: "GEMINI_API_KEY" }, // or plaintext string env: { GEMINI_API_KEY: "GEMINI_KEY_HERE" }, }, peekaboo: { enabled: true }, sag: { enabled: false }, }, },} ``` -------------------------------- ### Run Onboarding Source: https://docs.openclaw.ai/install/podman Initializes the container setup process for first-time configuration. ```bash ./scripts/run-openclaw-podman.sh launch setup ``` -------------------------------- ### Inspect Setup Logs Source: https://docs.openclaw.ai/platforms/windows Opens the OpenClaw setup log file for troubleshooting installation failures. ```powershell notepad "$env:LOCALAPPDATA\OpenClawTray\Logs\Setup\easy-setup-latest.txt" ``` -------------------------------- ### Onboard and Install Daemon Source: https://docs.openclaw.ai/ Run the onboarding wizard to configure the service and install the background daemon. ```bash openclaw onboard --install-daemon ``` -------------------------------- ### Developer Installation from Source Source: https://docs.openclaw.ai/help/faq-first-run Steps for contributors to clone, build, and initialize the project locally. ```bash git clone https://github.com/openclaw/openclaw.git cd openclaw pnpm install pnpm build pnpm ui:build openclaw onboard ``` -------------------------------- ### Retrieve app install link Source: https://docs.openclaw.ai/channels/msteams Get the installation link for a specific Teams app ID. ```bash teams app get --install-link ``` -------------------------------- ### Run interactive onboarding Source: https://docs.openclaw.ai/providers/opencode-go Initiates the interactive setup process for the OpenCode Go provider. ```bash openclaw onboard --auth-choice opencode-go ``` -------------------------------- ### Run Onboarding Source: https://docs.openclaw.ai/providers/longcat Initializes the LongCat provider using an API key. ```bash openclaw onboard --auth-choice longcat-api-key ``` -------------------------------- ### Start Development Gateway Watcher Source: https://docs.openclaw.ai/start/setup Install dependencies and start the gateway in watch mode for hot-reloading during development. ```bash pnpm install pnpm openclaw setup pnpm gateway:watch ``` -------------------------------- ### Get Skill Details API Response Source: https://docs.openclaw.ai/clawhub/http-api Example response structure for the GET /api/v1/skills/{slug} endpoint. ```json { "skill": { "slug": "gifgrep", "displayName": "GifGrep", "summary": "…", "topics": ["Productivity"], "tags": { "latest": "1.2.3" }, "stats": {}, "createdAt": 0, "updatedAt": 0 }, "latestVersion": { "version": "1.2.3", "createdAt": 0, "changelog": "…" }, "metadata": { "os": ["macos"], "systems": ["aarch64-darwin"] }, "owner": { "handle": "steipete", "displayName": "Peter", "image": null }, "moderation": { "isSuspicious": false, "isMalwareBlocked": false, "verdict": "clean", "reasonCodes": [], "summary": null, "engineVersion": "v2.0.0", "updatedAt": 0 } } ``` -------------------------------- ### Full Configuration Example Source: https://docs.openclaw.ai/providers/groq Example of a complete configuration file including the API key and default model. ```json5 { env: { GROQ_API_KEY: "gsk_..." }, agents: { defaults: { model: { primary: "groq/llama-3.3-70b-versatile" }, }, }, } ``` -------------------------------- ### Standard Installation and Onboarding Source: https://docs.openclaw.ai/help/faq-first-run The recommended sequence for installing the OpenClaw binary and initializing the daemon. ```bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash openclaw onboard --install-daemon ``` -------------------------------- ### Install OpenClaw CLI manually Source: https://docs.openclaw.ai/platforms/mac/bundled-gateway Use this command to install the OpenClaw CLI globally if the automatic setup fails. ```bash npm install -g openclaw@ ``` -------------------------------- ### Install and Run SearXNG Source: https://docs.openclaw.ai/tools/searxng-search Commands to install the OpenClaw plugin and start a local SearXNG instance using Docker. ```bash openclaw plugins install @openclaw/searxng-plugin ``` ```bash docker run -d -p 8888:8080 searxng/searxng ``` -------------------------------- ### Manual Installation Steps Source: https://docs.openclaw.ai/install/ansible Commands for manually installing prerequisites, cloning the repository, and running the deployment playbook. ```bash sudo apt update && sudo apt install -y ansible git ``` ```bash git clone https://github.com/openclaw/openclaw-ansible.git cd openclaw-ansible ``` ```bash ansible-galaxy collection install -r requirements.yml ``` ```bash ./run-playbook.sh ``` ```bash ansible-playbook playbook.yml --ask-become-pass # Then run: /tmp/openclaw-setup.sh ``` -------------------------------- ### Run onboarding Source: https://docs.openclaw.ai/providers/deepseek Initialize the DeepSeek provider by providing your API key and setting the default model. ```bash openclaw onboard --auth-choice deepseek-api-key ``` -------------------------------- ### Get Moderation State API Response Source: https://docs.openclaw.ai/clawhub/http-api Example response structure for the GET /api/v1/skills/{slug}/moderation endpoint. ```json { "moderation": { "isSuspicious": true, "isMalwareBlocked": false, "verdict": "suspicious", "reasonCodes": ["suspicious.dynamic_code_execution"], "summary": "Detected: suspicious.dynamic_code_execution", "engineVersion": "v2.0.0", "updatedAt": 0, "legacyReason": null, "evidence": [ { "code": "suspicious.dynamic_code_execution", "severity": "critical", "file": "index.ts", "line": 3, "message": "Dynamic code execution detected.", "evidence": "" } ] } } ``` -------------------------------- ### Define Setup Entry Point Source: https://docs.openclaw.ai/plugins/sdk-setup Lightweight entry point for plugins to register setup surfaces without loading heavy runtime dependencies. ```typescript // setup-entry.ts export default defineSetupPluginEntry(myChannelPlugin); ``` -------------------------------- ### Reload existing installation environment Source: https://docs.openclaw.ai/install/docker Stop the stack and reload environment variables before running the setup script for existing installations. ```bash set -a . ./.env set +a export OPENCLAW_HOME_VOLUME="${OPENCLAW_HOME_VOLUME:-openclaw_home}" ./scripts/docker/setup.sh ``` -------------------------------- ### Create Optional Setup Surface Source: https://docs.openclaw.ai/plugins/sdk-setup Use this helper to define setup surfaces that only appear under specific conditions, such as when a plugin is not yet installed. ```typescript import { createOptionalSetupSurface } from "openclaw/plugin-sdk/channel-setup"; const setupSurface = createOptionalSetupSurface({ channel: "my-channel", label: "My Channel", npmSpec: "@myorg/openclaw-my-channel", docsPath: "/channels/my-channel",});// Returns { setupAdapter, setupWizard } ``` -------------------------------- ### Provider-Specific Onboarding Commands Source: https://docs.openclaw.ai/start/wizard-cli-automation Examples for onboarding various providers including Ollama, OpenCode, Synthetic, Vercel AI Gateway, and Z.AI. ```bash openclaw onboard --non-interactive --accept-risk \ --mode local \ --auth-choice ollama \ --custom-model-id "qwen3.5:27b" \ --gateway-bind loopback ``` ```bash openclaw onboard --non-interactive --accept-risk \ --mode local \ --auth-choice opencode-zen \ --opencode-zen-api-key "$OPENCODE_API_KEY" \ --gateway-bind loopback ``` ```bash openclaw onboard --non-interactive --accept-risk \ --mode local \ --auth-choice synthetic-api-key \ --synthetic-api-key "$SYNTHETIC_API_KEY" \ --gateway-bind loopback ``` ```bash openclaw onboard --non-interactive --accept-risk \ --mode local \ --auth-choice ai-gateway-api-key \ --ai-gateway-api-key "$AI_GATEWAY_API_KEY" \ --gateway-bind loopback ``` ```bash openclaw onboard --non-interactive --accept-risk \ --mode local \ --auth-choice zai-api-key \ --zai-api-key "$ZAI_API_KEY" \ --gateway-bind loopback ``` -------------------------------- ### OpenClaw Channel Configuration Example Source: https://docs.openclaw.ai/plugins/sdk-setup Example of defining channel metadata within the openclaw package configuration to support discovery and setup surfaces. ```json { "openclaw": { "channel": { "id": "my-channel", "label": "My Channel", "selectionLabel": "My Channel (self-hosted)", "detailLabel": "My Channel Bot", "docsPath": "/channels/my-channel", "docsLabel": "my-channel", "blurb": "Webhook-based self-hosted chat integration.", "order": 80, "aliases": ["mc"], "preferOver": ["my-channel-legacy"], "selectionDocsPrefix": "Guide:", "selectionExtras": ["Markdown"], "markdownCapable": true, "exposure": { "configured": true, "setup": true, "docs": true }, "quickstartAllowFrom": true } } } ``` -------------------------------- ### Define Installer Specifications Source: https://docs.openclaw.ai/tools/skills Example of providing installer instructions within the metadata.openclaw block to help the macOS Skills UI manage dependencies. ```markdown --- name: gemini description: Use Gemini CLI for coding assistance and Google search lookups. metadata: { "openclaw": { "emoji": "♊️", "requires": { "bins": ["gemini"] }, "install": [ { "id": "brew", "kind": "brew", "formula": "gemini-cli", "bins": ["gemini"], "label": "Install Gemini CLI (brew)", }, ], }, } --- ``` -------------------------------- ### Setup and Join Meeting Source: https://docs.openclaw.ai/plugins/google-meet Run the setup command and join a specific Google Meet URL. ```bash openclaw googlemeet setup openclaw googlemeet join https://meet.google.com/abc-defg-hij ``` -------------------------------- ### Quick Start Deployment Source: https://docs.openclaw.ai/install/kubernetes Commands to set the API key, deploy the application, and forward ports for local access. ```bash # Replace with your provider: ANTHROPIC, GEMINI, OPENAI, or OPENROUTER export _API_KEY="..." ./scripts/k8s/deploy.sh kubectl port-forward svc/openclaw 18789:18789 -n openclaw open http://localhost:18789 ``` -------------------------------- ### GET /api/v1/packages/reports Response Source: https://docs.openclaw.ai/clawhub/http-api Example response for the package report intake endpoint. ```json { "items": [ { "reportId": "packageReports:...", "packageId": "packages:...", "releaseId": "packageReleases:...", "name": "@openclaw/example-plugin", "displayName": "Example Plugin", "family": "code-plugin", "version": "1.2.3", "reason": "Suspicious native binary", "status": "open", "createdAt": 1730000000000, "reporter": { "userId": "users:...", "handle": "reporter", "displayName": "Reporter" }, "triagedAt": null, "triagedBy": null, "triageNote": null } ], "nextCursor": null, "done": true } ``` -------------------------------- ### Enable Plugin and Start Node Host Source: https://docs.openclaw.ai/plugins/google-meet Enable the Google Meet plugin and start the node host on the VM. ```bash openclaw plugins enable google-meet openclaw node run --host --port 18789 --display-name parallels-macos ``` -------------------------------- ### List Skill Reports Response Source: https://docs.openclaw.ai/clawhub/http-api Example JSON response for the GET /api/v1/skills/-/reports endpoint. ```json { "items": [ { "reportId": "skillReports:...", "skillId": "skills:...", "skillVersionId": "skillVersions:...", "slug": "gifgrep", "displayName": "GifGrep", "version": "1.2.3", "reason": "Suspicious install step", "status": "open", "createdAt": 1730000000000, "reporter": { "userId": "users:...", "handle": "reporter", "displayName": "Reporter" }, "triagedAt": null, "triagedBy": null, "triageNote": null } ], "nextCursor": null, "done": true} ``` -------------------------------- ### Implement Channel Setup Wizard Source: https://docs.openclaw.ai/plugins/sdk-setup Create an interactive setup wizard to handle credential input and configuration status. ```typescript import type { ChannelSetupWizard } from "openclaw/plugin-sdk/channel-setup"; const setupWizard: ChannelSetupWizard = { channel: "my-channel", status: { configuredLabel: "Connected", unconfiguredLabel: "Not configured", resolveConfigured: ({ cfg }) => Boolean((cfg.channels as any)?.["my-channel"]?.token), }, credentials: [ { inputKey: "token", providerHint: "my-channel", credentialLabel: "Bot token", preferredEnvVar: "MY_CHANNEL_BOT_TOKEN", envPrompt: "Use MY_CHANNEL_BOT_TOKEN from environment?", keepPrompt: "Keep current token?", inputPrompt: "Enter your bot token:", inspect: ({ cfg, accountId }) => { const token = (cfg.channels as any)?.["my-channel"]?.token; return { accountConfigured: Boolean(token), hasConfiguredValue: Boolean(token), }; }, }, ], }; ``` -------------------------------- ### List Skills API Response Source: https://docs.openclaw.ai/clawhub/http-api Example response structure for the GET /api/v1/skills endpoint. ```json { "items": [ { "slug": "gifgrep", "displayName": "GifGrep", "summary": "…", "topics": ["Productivity"], "tags": { "latest": "1.2.3" }, "stats": {}, "createdAt": 0, "updatedAt": 0, "latestVersion": { "version": "1.2.3", "createdAt": 0, "changelog": "…" }, "metadata": { "os": ["macos"], "systems": ["aarch64-darwin"] } } ], "nextCursor": null } ``` -------------------------------- ### Wizard Metadata Configuration Source: https://docs.openclaw.ai/gateway/configuration-reference Represents metadata generated by CLI guided setup flows. ```json5 { wizard: { lastRunAt: "2026-01-01T00:00:00.000Z", lastRunVersion: "2026.1.4", lastRunCommit: "abc1234", lastRunCommand: "configure", lastRunMode: "local", securityAcknowledgedAt: "2026-01-01T00:00:00.000Z", }, } ``` -------------------------------- ### Run Classic CLI Onboarding Source: https://docs.openclaw.ai/start/onboarding-overview Launches the classic wizard for detailed configuration of models, authentication, channels, skills, and remote gateways. ```bash openclaw onboard --classic ``` -------------------------------- ### Run interactive onboarding for Hugging Face Source: https://docs.openclaw.ai/providers/huggingface Initiates the interactive setup process to configure the Hugging Face provider. ```bash openclaw onboard --auth-choice huggingface-api-key ``` -------------------------------- ### Perform non-interactive setup Source: https://docs.openclaw.ai/providers/fireworks Use this command for scripted or CI/CD installations to bypass interactive prompts. ```bash openclaw onboard --non-interactive \ --mode local \ --auth-choice fireworks-api-key \ --fireworks-api-key "$FIREWORKS_API_KEY" \ --skip-health \ --accept-risk ``` -------------------------------- ### Enable Plugin and Start Node Host Source: https://docs.openclaw.ai/plugins/google-meet Enable the Google Meet plugin and start the node host within the VM environment. ```bash openclaw plugins enable google-meetopenclaw node run --host --port 18789 --display-name parallels-macos ``` -------------------------------- ### Perform Airgapped Installation Source: https://docs.openclaw.ai/install/docker Load a pre-transferred image and run the setup script in offline mode. ```bash docker load -i openclaw-image.tar export OPENCLAW_IMAGE="ghcr.io/openclaw/openclaw:latest" ./scripts/docker/setup.sh --offline ``` -------------------------------- ### Install and Configure Kimi Provider Source: https://docs.openclaw.ai/providers/moonshot Commands to install the plugin, run the onboarding process, set the default model, and verify availability. ```bash openclaw plugins install @openclaw/kimi-provider openclaw gateway restart ``` ```bash openclaw onboard --auth-choice kimi-code-api-key ``` ```json5 { agents: { defaults: { model: { primary: "kimi/kimi-for-coding" }, }, },} ``` ```bash openclaw models list --provider kimi ``` -------------------------------- ### Onboard Zalo ClawBot Source: https://docs.openclaw.ai/channels/zaloclawbot Use the interactive wizard to install the plugin and complete the channel setup. ```bash openclaw onboard ``` -------------------------------- ### Manual Build and Deployment Source: https://docs.openclaw.ai/install/docker Build the image from source and manually configure the gateway for local operation. ```bash BUILD_GIT_COMMIT="$(git rev-parse HEAD)" BUILD_TIMESTAMP="$(date -u +%Y-%m-%dT%H:%M:%SZ)" docker build \ --build-arg "GIT_COMMIT=${BUILD_GIT_COMMIT}" \ --build-arg "OPENCLAW_BUILD_TIMESTAMP=${BUILD_TIMESTAMP}" \ -t openclaw:local -f Dockerfile . docker compose run --rm --no-deps --entrypoint node openclaw-gateway \ dist/index.js onboard --mode local --no-install-daemon docker compose run --rm --no-deps --entrypoint node openclaw-gateway \ dist/index.js config set --batch-json '[{"path":"gateway.mode","value":"local"},{"path":"gateway.bind","value":"lan"},{"path":"gateway.controlUi.allowedOrigins","value":["http://localhost:18789","http://127.0.0.1:18789"]}]' docker compose up -d openclaw-gateway ``` -------------------------------- ### Run Onboarding Source: https://docs.openclaw.ai/providers/featherless Execute the interactive onboarding process to configure Featherless authentication. ```bash openclaw onboard --auth-choice featherless-api-key ``` -------------------------------- ### Install Policy Configuration Source: https://docs.openclaw.ai/tools/skills-config Example configuration for the security.installPolicy object, defining the executable command and environment settings. ```json { security: { installPolicy: { enabled: true, // Omit targets to cover every supported target. targets: ["skill", "plugin"], exec: { source: "exec", command: "/usr/local/bin/openclaw-install-policy", args: ["--json"], timeoutMs: 10000, noOutputTimeoutMs: 10000, maxOutputBytes: 1048576, passEnv: ["OPENCLAW_STATE_DIR", "PATH"], env: { POLICY_MODE: "strict" }, trustedDirs: ["/usr/local/bin"], }, }, },} ``` -------------------------------- ### Enable Deferred Full Load Source: https://docs.openclaw.ai/plugins/sdk-setup Configure a plugin to load only the setupEntry during the pre-listen phase to improve startup performance. ```json { "openclaw": { "extensions": ["./index.ts"], "setupEntry": "./setup-entry.ts", "startup": { "deferConfiguredChannelFullLoadUntilAfterListen": true } } } ``` -------------------------------- ### Configure Twitch Channel Settings Source: https://docs.openclaw.ai/channels/twitch Example configuration for single and multi-account Twitch setups using JSON5. ```json5 { channels: { twitch: { enabled: true, username: "openclaw", accessToken: "oauth:abc123...", clientId: "xyz789...", channel: "yourchannel", clientSecret: "secret123...", refreshToken: "refresh456...", allowFrom: ["123456789"], accounts: { second: { username: "mybot", accessToken: "oauth:def456...", clientId: "uvw012...", channel: "your_channel", enabled: true, expiresIn: 14400, obtainmentTimestamp: 1706092800000, allowedRoles: ["moderator"], }, }, }, }, } ``` -------------------------------- ### Start and Open Browser via CLI Source: https://docs.openclaw.ai/tools/browser-login Commands to initialize the browser and navigate to a specific URL. ```bash openclaw browser start openclaw browser open https://x.com ``` -------------------------------- ### Configure Setup and Onboarding Metadata Source: https://docs.openclaw.ai/plugins/manifest Provides static metadata for setup surfaces before the full runtime loads, including provider authentication and configuration migrations. ```json { "setup": { "providers": [ { "id": "openai", "authMethods": ["api-key"], "envVars": ["OPENAI_API_KEY"], "authEvidence": [ { "type": "local-file-with-env", "fileEnvVar": "OPENAI_CREDENTIALS_FILE", "requiresAllEnv": ["OPENAI_PROJECT"], "credentialMarker": "openai-local-credentials", "source": "openai local credentials" } ] } ], "cliBackends": ["openai-cli"], "configMigrations": ["legacy-openai-auth"], "requiresRuntime": false }} ``` -------------------------------- ### Manage Gateway Service Lifecycle Source: https://docs.openclaw.ai/cli/gateway Standard commands for installing, starting, stopping, and managing the gateway service. ```bash openclaw gateway install openclaw gateway start openclaw gateway stop openclaw gateway restart openclaw gateway uninstall ``` -------------------------------- ### GET /api/v1/packages/{name}/moderation Response Source: https://docs.openclaw.ai/clawhub/http-api Example response for checking the moderation visibility of a specific package. ```json { "package": { "packageId": "packages:...", "name": "@openclaw/example-plugin", "displayName": "Example Plugin", "family": "code-plugin", "channel": "community", "isOfficial": false, "reportCount": 2, "lastReportedAt": 1730000001000, "scanStatus": "malicious" }, "latestRelease": { "releaseId": "packageReleases:...", "version": "1.2.3", "artifactKind": "npm-pack", "scanStatus": "malicious", "moderationState": "quarantined", "moderationReason": "manual review", "blockedFromDownload": true, "reasons": ["manual:quarantined", "scan:malicious", "reports:2"], "createdAt": 1730000000000 } } ``` -------------------------------- ### Start UI Development Server Source: https://docs.openclaw.ai/web/control-ui Command to launch the local development server for the UI. ```bash pnpm ui:dev ``` -------------------------------- ### Baseline non-interactive onboarding Source: https://docs.openclaw.ai/start/wizard-cli-automation Performs a standard non-interactive setup with Anthropic API key authentication and daemon installation. ```bash openclaw onboard --non-interactive --accept-risk \ --mode local \ --auth-choice apiKey \ --anthropic-api-key "$ANTHROPIC_API_KEY" \ --secret-input-mode plaintext \ --gateway-bind loopback \ --install-daemon \ --daemon-runtime node \ --skip-bootstrap \ --skip-skills ``` -------------------------------- ### Initialize persistent OpenClaw installation Source: https://docs.openclaw.ai/install/docker Set up a persistent volume for the node home directory before running the setup script. ```bash export OPENCLAW_IMAGE="ghcr.io/openclaw/openclaw:latest" export OPENCLAW_HOME_VOLUME="openclaw_home" ./scripts/docker/setup.sh ```