2026-03

N_Vibecoding_Claude

Openclaw

https://docs.openclaw.ai/zh-CN/

安装

https://docs.openclaw.ai/zh-CN/install#%E5%BF%AB%E9%80%9F%E5%AE%89%E8%A3%85%EF%BC%88%E6%8E%A8%E8%8D%90%EF%BC%89

看源码 Openclaw 本质基于node 开发的,

脚本安装

Linux

curl -fsSL https://openclaw.ai/install.sh | bash

Windows(PowerShell):

iwr -useb https://openclaw.ai/install.ps1 | iex

全局安装(npm)

npm install -g openclaw@latest

源码安装

git clone https://github.com/openclaw/openclaw.git
cd openclaw
pnpm install
pnpm ui:build # 首次运行时自动安装 UI 依赖
pnpm build
openclaw onboard --install-daemon

新手引导

  • 运行新手引导:openclaw onboard --install-daemon
  • 快速检查:openclaw doctor
  • 检查 Gateway 网关健康状态:openclaw status + openclaw health
  • 打开仪表板:openclaw dashboard

管理 Gateway 网关

openclaw gateway status
openclaw gateway stop
openclaw gateway restart
openclaw gateway --port 18789
openclaw logs --follow

启动

# 启动网关
openclaw gateway --port 18789
# 直接访问是不行的
 
# 打开web ui 自动认证
openclaw dashboard
# 实际打开的是附带tokent地址 http://127.0.0.1:18789/#token=2dca799fd1575b6436bdbd5135030e7664cbed59d7567844
# token 在 openclaw.json : gateway.auth.token 配置

配置文件

不管它新手引导, 一个黑盒, 不知道都有哪些配置文件 运行:

openclaw setup

它会你的用户主目录, 生成初始化需要的配置文件

Wrote ~\.openclaw\openclaw.json
Workspace OK: ~\.openclaw\workspace
Sessions OK: ~\.openclaw\agents\main\sessions

核心的配置文件是openclaw.json

配置模型

https://docs.openclaw.ai/providers/models

nano ~/.openclaw/openclaw.json

千问的模型配置

{
  "models": {
    "mode": "merge",
    "providers": {
      "bailian": {
        "baseUrl": "https://coding.dashscope.aliyuncs.com/v1",
        "apiKey": "YOUR_API_KEY",
        "api": "openai-completions",
        "models": [
          {
            "id": "qwen3.5-plus",
            "name": "qwen3.5-plus",
            "reasoning": false,
            "input": ["text", "image"],
            "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
            "contextWindow": 1000000,
            "maxTokens": 65536
          },
          {
            "id": "qwen3-max-2026-01-23",
            "name": "qwen3-max-2026-01-23",
            "reasoning": false,
            "input": ["text"],
            "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
            "contextWindow": 262144,
            "maxTokens": 65536
          },
          {
            "id": "qwen3-coder-next",
            "name": "qwen3-coder-next",
            "reasoning": false,
            "input": ["text"],
            "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
            "contextWindow": 262144,
            "maxTokens": 65536
          },
          {
            "id": "qwen3-coder-plus",
            "name": "qwen3-coder-plus",
            "reasoning": false,
            "input": ["text"],
            "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
            "contextWindow": 1000000,
            "maxTokens": 65536
          },
          {
            "id": "MiniMax-M2.5",
            "name": "MiniMax-M2.5",
            "reasoning": false,
            "input": ["text"],
            "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
            "contextWindow": 196608,
            "maxTokens": 32768
          },
          {
            "id": "glm-5",
            "name": "glm-5",
            "reasoning": false,
            "input": ["text"],
            "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
            "contextWindow": 202752,
            "maxTokens": 16384
          },
          {
            "id": "glm-4.7",
            "name": "glm-4.7",
            "reasoning": false,
            "input": ["text"],
            "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
            "contextWindow": 202752,
            "maxTokens": 16384
          },
          {
            "id": "kimi-k2.5",
            "name": "kimi-k2.5",
            "reasoning": false,
            "input": ["text", "image"],
            "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
            "contextWindow": 262144,
            "maxTokens": 32768
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "bailian/qwen3.5-plus"
      },
      "models": {
        "bailian/qwen3.5-plus": {},
        "bailian/qwen3-max-2026-01-23": {},
        "bailian/qwen3-coder-next": {},
        "bailian/qwen3-coder-plus": {},
        "bailian/MiniMax-M2.5": {},
        "bailian/glm-5": {},
        "bailian/glm-4.7": {},
        "bailian/kimi-k2.5": {}
      }
    }
  }
  
}

Set the default model:

{
  agents: { defaults: { model: { primary: "anthropic/claude-opus-4-6" } } },
}

配置Skills

OpenClaw uses AgentSkills-compatible skill folders to teach the agent how to use tools. Each skill is a directory containing a SKILL.md with YAML frontmatter and instructions. OpenClaw loads bundled skills plus optional local overrides, and filters them at load time based on environment, config, and binary presence.

加载的位置和优先级

  1. Bundled skills: shipped with the install (npm package or OpenClaw.app) 内置的
  2. Managed/local skills~/.openclaw/skills 用户全局
  3. Workspace skills<workspace>/skills 工作空间

If a skill name conflicts, precedence is:<workspace>/skills (highest) → ~/.openclaw/skills → bundled skills (lowest)

Additionally, you can configure extra skill folders (lowest precedence) via skills.load.extraDirs in ~/.openclaw/openclaw.json.

格式

SKILL.md must include at least:

---
name: nano-banana-pro
description: Generate or edit images via Gemini 3 Pro Image
---

核心概念

Chat Channels

https://docs.openclaw.ai/channels

OpenClaw can talk to you on any chat app you already use. Each channel connects via the Gateway. Text is supported everywhere; media and reactions vary by channel.

  • BlueBubbles — Recommended for iMessage; uses the BlueBubbles macOS server REST API with full feature support (edit, unsend, effects, reactions, group management — edit currently broken on macOS 26 Tahoe).
  • Discord — Discord Bot API + Gateway; supports servers, channels, and DMs.
  • Feishu — Feishu/Lark bot via WebSocket (plugin, installed separately).
  • Google Chat — Google Chat API app via HTTP webhook.
  • iMessage (legacy) — Legacy macOS integration via imsg CLI (deprecated, use BlueBubbles for new setups).
  • IRC — Classic IRC servers; channels + DMs with pairing/allowlist controls.
  • LINE — LINE Messaging API bot (plugin, installed separately).
  • Matrix — Matrix protocol (plugin, installed separately).
  • Mattermost — Bot API + WebSocket; channels, groups, DMs (plugin, installed separately).
  • Microsoft Teams — Bot Framework; enterprise support (plugin, installed separately).
  • Nextcloud Talk — Self-hosted chat via Nextcloud Talk (plugin, installed separately).
  • Nostr — Decentralized DMs via NIP-04 (plugin, installed separately).
  • Signal — signal-cli; privacy-focused.
  • Synology Chat — Synology NAS Chat via outgoing+incoming webhooks (plugin, installed separately).
  • Slack — Bolt SDK; workspace apps.
  • Telegram — Bot API via grammY; supports groups.
  • Tlon — Urbit-based messenger (plugin, installed separately).
  • Twitch — Twitch chat via IRC connection (plugin, installed separately).
  • WebChat — Gateway WebChat UI over WebSocket.
  • WhatsApp — Most popular; uses Baileys and requires QR pairing.
  • Zalo — Zalo Bot API; Vietnam’s popular messenger (plugin, installed separately).
  • Zalo Personal — Zalo personal account via QR login (plugin, installed separately).

其实就是对我提供的对方方式