From cf258545de321b6f6126f89cc25beeae3110faae Mon Sep 17 00:00:00 2001 From: codes-factory-of-bg Date: Thu, 6 Aug 2026 23:53:16 +0800 Subject: [PATCH 1/4] =?UTF-8?q?feat(config):=20=E6=8E=A8=E8=8D=90=E5=A4=A7?= =?UTF-8?q?=E6=A8=A1=E5=9E=8B=E5=88=87=E5=88=B0=E9=98=BF=E9=87=8C=E4=BA=91?= =?UTF-8?q?=E7=99=BE=E7=82=BC=EF=BC=8C=E5=8E=BB=E6=8E=89=20AihubMix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## config-templates/openclaw.json - 新增 bailian-token-plan provider(baseUrl 走百炼 token-plan 端点, anthropic-messages api,三个模型:deepseek-v4-flash-0731 / glm-5.2 / qwen3.6-flash) - agents.defaults.model.primary 改为 bailian-token-plan/deepseek-v4-flash-0731, fallbacks 改为 bailian-token-plan/glm-5.2 - imageModel.primary 改为 bailian-token-plan/qwen3.6-flash - 火山 awk provider 保留不删(用户手动复制可继续用) ## README - 「准备 API Key」段:推荐从火山方舟 Coding Plan 切到阿里云百炼 「AI Superstar」套餐,附推荐链接,说明 Lite/Standard 版本选择 - 「模型费用说明」段:主力模型推荐百炼;火山改为「仍想用火山」 的手动切换说明;去掉 AihubMix 海外模型备选段 - 友情链接:去掉 AihubMix logo(合作到期) - 目录树注释:openclaw-aihubmix.json 标注「已停推,保留历史兼容」 ## install.ps1 / install-atomgit.ps1 - 交互提示文案从 "Volces ARK API key" 改为 "Aliyun Bailian API key" ## 环境变量名 - AWK_API_KEY 不改(跟旧版兼容),百炼 provider 的 apiKey 仍引用 ${AWK_API_KEY} Co-Authored-By: AtomCode (GLM-5.2) --- README.md | 16 ++++----- config-templates/openclaw.json | 59 +++++++++++++++++++++++++--------- scripts/install-atomgit.ps1 | 2 +- scripts/install.ps1 | 2 +- 4 files changed, 51 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index 55039b01..4e1875bd 100755 --- a/README.md +++ b/README.md @@ -57,11 +57,9 @@ xiaobei 由Wiseflow (原AI首席情报官)作者 bigbrother666sh 开发。 ### 0. 准备 API Key -推荐注册 [火山引擎方舟 Coding Plan](https://volcengine.com/L/dx-wt80li-I/)(🎁 欢迎使用 xiaobei 邀请链接 / 邀请码 `5Y5A6L86`,订阅叠加 9.5 折,首月尝鲜低至 9.4 元),开通后获得 `AWK_API_KEY`——主力模型 GLM-5.2、视觉与替补模型全部走此通道,**一个 key 即可**。 +推荐开通 [阿里云百炼「AI Superstar」套餐](https://www.aliyun.com/benefit/ai/aistar?clubBiz=subTask..12766005..10274..)——一个套餐覆盖 DeepSeek-V4-Flash、GLM-5.2、Qwen3.6-Flash 等主流模型,**无月限额、不限购**,xiaobei 默认主力模型 DeepSeek-V4-Flash 即走此通道。开通后获得 `AWK_API_KEY`,主力模型、视觉模型、替补模型**一个 key 全覆盖**。 -> ⚠️ **火山方舟 Coding Plan 目前限量发售**,额度通常在每天上午放量,**建议在每天 10 点前购买**更容易抢到。 - -> 如果习惯使用 ChatGPT / Gemini / Claude 等海外模型见下方[模型费用说明](#-模型费用说明)中的 AiHubMix 备选方案。 +> 💡 **套餐选择**:前期熟悉安装可选 **Lite 版 39 元/月**;正常使用建议 **Standard 版 139 元/月**。 > 🎬 **想用视频生成能力?** 需额外开通火山方舟 `doubao-seedance-2.0` 系列或阿里云百炼 `happyhorse-1.1` 系列模型,并把对应 key(`AWK_GEN_KEY` 或 `MODELSTUDIO_API_KEY`)配置到 `daemon.env`。详见下方[视频生成模型配置](#-视频生成模型配置)。 @@ -182,11 +180,9 @@ irm https://raw.atomgit.com/wiseflow/xiaobei/raw/master/scripts/install-atomgit. > > xiaobei 底层基于 openclaw,建议先准备好大模型 API: > -> - **主力模型(强烈推荐)**:[火山引擎方舟 Coding Plan](https://volcengine.com/L/dx-wt80li-I/) — 一个套餐覆盖 GLM-5.2、Kimi-K2.7、MiniMax-M3、DeepSeek-V4 系列、Doubao-Seed-2.0 系列等主流模型,**工具不限**,xiaobei 默认主力模型 GLM-5.2 即走此通道。需要注册并开通 Coding Plan 获得 `AWK_API_KEY`。 -> > 🎁 **通过 xiaobei 邀请链接** [https://volcengine.com/L/dx-wt80li-I/](https://volcengine.com/L/dx-wt80li-I/) **订阅**(邀请码 `5Y5A6L86`),可叠加 **9.5 折**优惠,首月尝鲜低至 **9.4 元**,订得越多折扣越大。 -> > ⚠️ Coding Plan 目前限量发售,建议每天 10 点前购买。 +> - **主力模型(强烈推荐)**:[阿里云百炼「AI Superstar」套餐](https://www.aliyun.com/benefit/ai/aistar?clubBiz=subTask..12766005..10274..) — 一个套餐覆盖 DeepSeek-V4-Flash、GLM-5.2、Qwen3.6-Flash 等主流模型,**无月限额、不限购**。前期熟悉安装可选 Lite 版 39 元/月,正常使用建议 Standard 版 139 元/月。开通后获得 `AWK_API_KEY`,xiaobei 默认主力模型 DeepSeek-V4-Flash 即走此通道。 > -> - **海外模型用户**:如果想使用 ChatGPT / Gemini / Claude 等海外模型,可通过 [AiHubMix](https://aihubmix.com/?aff=Gp54) 统一接入(全兼容 OpenAI 接口,国内直连)。欢迎通过此[邀请链接](https://aihubmix.com/?aff=Gp54)注册。备选配置模板见 `config-templates/openclaw-aihubmix.json`。 +> - **仍想用火山方舟 Coding Plan 的用户**:默认配置模板已切到百炼,但火山 provider 仍保留在 `config-templates/openclaw.json` 的 `models.providers.awk`。如需切回火山,手动把 `agents.defaults.model.primary` 改成 `awk/glm-latest`、fallbacks 改成 `awk/deepseek-v4-pro` 等,然后重新跑 `setup-crew.sh` 即可。 > > 配置模板已预置以上最佳实践,`install.sh` 会自动检测所需环境变量并引导你输入。安装后重启 openclaw gateway 即可生效。 @@ -319,7 +315,7 @@ wiseflow/ │ └── overrides.sh # pnpm 依赖覆盖(如替换 playwright → patchright) ├── config-templates/ # 配置模板(开箱即用的最佳实践) │ ├── openclaw.json # 默认配置模板(AWK 主力 + fts-only 记忆 + dream 关) -│ └── openclaw-aihubmix.json # AiHubMix 海外模型备选模板 +│ └── openclaw-aihubmix.json # AiHubMix 海外模型备选模板(已停推,保留历史兼容) ├── scripts/ # 工具脚本(详见 scripts/README.md) │ ├── lib/ # 脚本共享工具(agent-skills.sh 等) │ ├── install.sh # 一键安装 + 升级(预构建 tarball 路线,macOS + Linux,GitHub 线路;重跑即升级,保留 ~/.openclaw) @@ -379,4 +375,4 @@ https://github.com/TeamWiseFlow/xiaobei ## 友情链接 -[atomgit](https://gitcode.com/atomgit_atomcode)      [aihubmix](https://aihubmix.com/?aff=Gp54)      [siliconflow](https://cloud.siliconflow.cn/i/WNLYbBpi) +[atomgit](https://gitcode.com/atomgit_atomcode)      [siliconflow](https://cloud.siliconflow.cn/i/WNLYbBpi) diff --git a/config-templates/openclaw.json b/config-templates/openclaw.json index d852e200..3ceff330 100644 --- a/config-templates/openclaw.json +++ b/config-templates/openclaw.json @@ -9,6 +9,43 @@ "models": { "mode": "merge", "providers": { + "bailian-token-plan": { + "baseUrl": "https://token-plan.cn-beijing.maas.aliyuncs.com/apps/anthropic", + "apiKey": "${AWK_API_KEY}", + "api": "anthropic-messages", + "models": [ + { + "id": "deepseek-v4-flash-0731", + "name": "deepseek-v4-flash-0731", + "reasoning": false, + "input": ["text"], + "contextWindow": 1000000, + "maxTokens": 393216, + "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }, + "compat": { "thinkingFormat": "openai" } + }, + { + "id": "glm-5.2", + "name": "glm-5.2", + "reasoning": false, + "input": ["text"], + "contextWindow": 1000000, + "maxTokens": 16384, + "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }, + "compat": { "thinkingFormat": "openai" } + }, + { + "id": "qwen3.6-flash", + "name": "qwen3.6-flash", + "reasoning": false, + "input": ["text", "image"], + "contextWindow": 1000000, + "maxTokens": 32768, + "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }, + "compat": { "thinkingFormat": "openai" } + } + ] + }, "awk": { "baseUrl": "https://ark.cn-beijing.volces.com/api/coding/v3", "api": "openai-completions", @@ -79,31 +116,21 @@ "agents": { "defaults": { "model": { - "primary": "awk/glm-latest", + "primary": "bailian-token-plan/deepseek-v4-flash-0731", "fallbacks": [ - "awk/deepseek-v4-pro", - "awk/deepseek-v4-flash" + "bailian-token-plan/glm-5.2" ] }, "imageModel": { - "primary": "awk/doubao-seed-2.0-lite" + "primary": "bailian-token-plan/qwen3.6-flash" }, "memorySearch": { "provider": "none" }, "models": { - "awk/glm-latest": { - "alias": "awk/glm-5.2" - }, - "awk/deepseek-v4-flash": { - "alias": "awk/ds-v4-flash" - }, - "awk/deepseek-v4-pro": { - "alias": "awk/ds-v4-pro" - }, - "awk/doubao-seed-2.0-lite": { - "alias": "awk/seed-2-lite" - } + "bailian-token-plan/deepseek-v4-flash-0731": {}, + "bailian-token-plan/glm-5.2": {}, + "bailian-token-plan/qwen3.6-flash": {} }, "compaction": { "mode": "safeguard" diff --git a/scripts/install-atomgit.ps1 b/scripts/install-atomgit.ps1 index f48ec04c..8115657c 100755 --- a/scripts/install-atomgit.ps1 +++ b/scripts/install-atomgit.ps1 @@ -537,7 +537,7 @@ function Install-GatewayAndEnv { # --- Interactive AWK_API_KEY prompt --- $awkKey = $env:AWK_API_KEY if (-not $script:NoPrompt -and -not $awkKey) { - $awkKey = Read-Host "Enter AWK_API_KEY (Volces ARK API key)" + $awkKey = Read-Host "Enter AWK_API_KEY (Aliyun Bailian API key)" } # --- Write .env (business vars, export format for bash/sh source, read by the bare CLI) --- diff --git a/scripts/install.ps1 b/scripts/install.ps1 index a2a1c347..0119ae87 100755 --- a/scripts/install.ps1 +++ b/scripts/install.ps1 @@ -554,7 +554,7 @@ function Install-GatewayAndEnv { # --- Interactive AWK_API_KEY prompt --- $awkKey = $env:AWK_API_KEY if (-not $script:NoPrompt -and -not $awkKey) { - $awkKey = Read-Host "Enter AWK_API_KEY (Volces ARK API key)" + $awkKey = Read-Host "Enter AWK_API_KEY (Aliyun Bailian API key)" } # --- Write .env (business vars, export format for bash/sh source, read by the bare CLI) --- From 182ef323c96cbf3b3062e877496c817de7edd6d4 Mon Sep 17 00:00:00 2001 From: codes-factory-of-bg Date: Fri, 7 Aug 2026 00:20:54 +0800 Subject: [PATCH 2/4] =?UTF-8?q?feat(config/templates+install):=20=E6=8B=86?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E4=B8=BA=E7=99=BE=E7=82=BC/=E7=81=AB?= =?UTF-8?q?=E5=B1=B1=E4=B8=A4=E5=A5=97=EF=BC=8C=E4=BF=AE=E5=A4=8D=20Window?= =?UTF-8?q?s=20skills=20=E8=BD=AF=E9=93=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## config-templates - `openclaw.json`:删火山 awk provider,只留百 bailian-token-plan(主力 deepseek-v4-flash-0731 / fallback glm-5.2 / 视觉 qwen3.6-flash) - 新建 `openclaw-awk.json`:火山方舟 Coding Plan 备选模板(主力 awk/glm-latest / fallback awk/deepseek-v4-pro 等 / 视觉 awk/doubao-seed-2.0-lite),agents list / bindings / channels / plugins 结构与百炼版一致 - 删 `openclaw-aihubmix.json`(AihubMix 合作到期,不再推) ## README.md - 「准备 API Key」段推荐阿里云百炼「AI Superstar」套餐(附推荐链接, 说明 Lite 39 元/月、Standard 139 元/月),去掉火山限量发售提示 - 「模型费用说明」段:主力推荐百炼;火山改为「仍想用火山」手动切换 说明(改 agents.defaults.model.primary 为 awk/glm-latest 后重跑 setup-crew.sh),不再提 AihubMix 海外模型备选 - 友情链接:去掉 AihubMix logo(合作到期) - 目录树注释:openclaw-aihubmix.json → openclaw-awk.json(火山备选), 完全不出现 AihubMix 字样 ## scripts/install.ps1 / install-atomgit.ps1(修复 Windows skills 软链) - `Run-SetupCrew` 调 bash 前导出 `MSYS=winsymlinks:nativestrict`: Git Bash 的 MSYS2 层默认把 `ln -s` 当 `cp -r` 真拷贝,导致 setup-crew.sh 落的 ~/.openclaw/workspace-/skills/ 是真文件夹 而非软链;开 winsymlinks:nativestrict 让 `ln -s` 走真 NTFS 软链 (需 Win10+ 开发者模式或管理员;无则回退旧行为,不回归) - 新增 `Sync-GlobalSkills` 函数:把仓根 skills/ 软链到 ~/.openclaw/skills(镜像 apply-addons.sh 那段语义,Windows 路线 原本没调 apply-addons.sh,所以 ~/.openclaw/skills 要么缺失要么是 旧真文件夹)。幂等:已是正确软链则 no-op;是软链但指向别处则 重建;是真文件夹则警告不删(保用户编辑);创建失败回退 copy - main 流程在 Run-SetupCrew 后、Expose-SkillWrappers 前调用 Sync-GlobalSkills - 交互提示文案从 "Volces ARK API key" 改为 "Aliyun Bailian API key" ## 环境变量名 - AWK_API_KEY 不改(跟旧版兼容),百炼 provider 的 apiKey 仍引用 ${AWK_API_KEY} Co-Authored-By: AtomCode (GLM-5.2) --- README.md | 4 +- ...enclaw-aihubmix.json => openclaw-awk.json} | 233 ++++++++---------- config-templates/openclaw.json | 65 ----- scripts/install-atomgit.ps1 | 51 ++++ scripts/install.ps1 | 51 ++++ 5 files changed, 201 insertions(+), 203 deletions(-) rename config-templates/{openclaw-aihubmix.json => openclaw-awk.json} (65%) diff --git a/README.md b/README.md index 4e1875bd..e8c90536 100755 --- a/README.md +++ b/README.md @@ -314,8 +314,8 @@ wiseflow/ │ ├── *.patch # git 补丁(按序号顺序应用到 openclaw/) │ └── overrides.sh # pnpm 依赖覆盖(如替换 playwright → patchright) ├── config-templates/ # 配置模板(开箱即用的最佳实践) -│ ├── openclaw.json # 默认配置模板(AWK 主力 + fts-only 记忆 + dream 关) -│ └── openclaw-aihubmix.json # AiHubMix 海外模型备选模板(已停推,保留历史兼容) +│ ├── openclaw.json # 默认配置模板(阿里云百炼主力 + fts-only 记忆 + dream 关) +│ └── openclaw-awk.json # 火山引擎方舟 Coding Plan 备选模板(主力 GLM-5.2) ├── scripts/ # 工具脚本(详见 scripts/README.md) │ ├── lib/ # 脚本共享工具(agent-skills.sh 等) │ ├── install.sh # 一键安装 + 升级(预构建 tarball 路线,macOS + Linux,GitHub 线路;重跑即升级,保留 ~/.openclaw) diff --git a/config-templates/openclaw-aihubmix.json b/config-templates/openclaw-awk.json similarity index 65% rename from config-templates/openclaw-aihubmix.json rename to config-templates/openclaw-awk.json index 0eea20db..d852e200 100644 --- a/config-templates/openclaw-aihubmix.json +++ b/config-templates/openclaw-awk.json @@ -9,44 +9,68 @@ "models": { "mode": "merge", "providers": { - "aihubmix": { + "awk": { + "baseUrl": "https://ark.cn-beijing.volces.com/api/coding/v3", "api": "openai-completions", - "baseUrl": "https://aihubmix.com/v1", - "apiKey": "", + "apiKey": "${AWK_API_KEY}", "models": [ { - "id": "gpt-5.5", - "name": "GPT-5.5", + "id": "glm-latest", + "name": "GLM-5.2", "reasoning": true, "input": [ - "text", - "image" + "text" ], - "cost": { - "input": 10, - "output": 30, - "cacheRead": 2.5, - "cacheWrite": 0 + "contextWindow": 1024000, + "maxTokens": 65536, + "compat": { + "supportsReasoningEffort": true, + "supportsUsageInStreaming": true, + "maxTokensField": "max_tokens" }, - "contextWindow": 1000000, - "maxTokens": 32768 + "api": "openai-completions" }, { - "id": "qwen3.6-flash", - "name": "Qwen3.6 Flash", + "id": "deepseek-v4-flash", + "name": "DeepSeek V4 Flash", "reasoning": true, + "input": [ + "text" + ], + "contextWindow": 1024000, + "maxTokens": 65536, + "compat": { + "supportsReasoningEffort": true, + "supportsUsageInStreaming": true, + "maxTokensField": "max_tokens" + }, + "api": "openai-completions" + }, + { + "id": "deepseek-v4-pro", + "name": "deepseek-v4-pro", + "input": [ + "text" + ], + "contextWindow": 1024000, + "maxTokens": 65536, + "compat": { + "supportsReasoningEffort": true, + "supportsUsageInStreaming": true, + "maxTokensField": "max_tokens" + }, + "api": "openai-completions" + }, + { + "id": "doubao-seed-2.0-lite", + "name": "doubao-seed-2.0-lite", + "contextWindow": 256000, + "maxTokens": 65536, "input": [ "text", "image" ], - "cost": { - "input": 0.05, - "output": 0.25, - "cacheRead": 0, - "cacheWrite": 0 - }, - "contextWindow": 128000, - "maxTokens": 8192 + "api": "openai-completions" } ] } @@ -55,23 +79,30 @@ "agents": { "defaults": { "model": { - "primary": "aihubmix/gpt-5.5", + "primary": "awk/glm-latest", "fallbacks": [ - "aihubmix/qwen3.6-flash" + "awk/deepseek-v4-pro", + "awk/deepseek-v4-flash" ] }, "imageModel": { - "primary": "aihubmix/gpt-5.5" + "primary": "awk/doubao-seed-2.0-lite" }, "memorySearch": { "provider": "none" }, "models": { - "aihubmix/gpt-5.5": { - "alias": "default" + "awk/glm-latest": { + "alias": "awk/glm-5.2" + }, + "awk/deepseek-v4-flash": { + "alias": "awk/ds-v4-flash" }, - "aihubmix/qwen3.6-flash": { - "alias": "fast" + "awk/deepseek-v4-pro": { + "alias": "awk/ds-v4-pro" + }, + "awk/doubao-seed-2.0-lite": { + "alias": "awk/seed-2-lite" } }, "compaction": { @@ -92,17 +123,17 @@ "name": "小贝", "workspace": "~/.openclaw/workspace-main", "skills": [ - "nano-pdf", - "skill-creator", + "smart-search", + "browser-guide", + "email-ops", + "council", "session-logs", - "tmux", - "weather", - "summarize", - "gifgrep" + "tmux" ], "subagents": { "allowAgents": [ - "it-engineer" + "it-engineer", + "content-producer" ] }, "tools": { @@ -117,27 +148,26 @@ "target": "none", "isolatedSession": true }, - "thinkingDefault": "high", "reasoningDefault": "off" }, { - "id": "hrbp", - "name": "HRBP", - "workspace": "~/.openclaw/workspace-hrbp", + "id": "it-engineer", + "name": "IT Engineer", + "workspace": "~/.openclaw/workspace-it-engineer", "skills": [ - "model-usage", + "healthcheck", "nano-pdf", "skill-creator", "session-logs", "tmux", "weather", - "summarize" + "summarize", + "gifgrep", + "node-connect", + "github", + "gh-issues", + "coding-agent" ], - "subagents": { - "allowAgents": [ - "it-engineer" - ] - }, "tools": { "exec": { "host": "gateway", @@ -149,27 +179,24 @@ "reasoningDefault": "off" }, { - "id": "it-engineer", - "name": "IT Engineer", - "workspace": "~/.openclaw/workspace-it-engineer", + "id": "content-producer", + "name": "producer", + "workspace": "~/.openclaw/workspace-content-producer", "skills": [ - "healthcheck", - "nano-pdf", - "skill-creator", + "smart-search", + "browser-guide", "session-logs", - "tmux", - "weather", - "summarize", - "gifgrep", - "node-connect", - "github", - "gh-issues", - "coding-agent" + "tmux" ], + "subagents": { + "allowAgents": [ + "it-engineer" + ] + }, "tools": { "exec": { "host": "gateway", - "security": "full", + "security": "allowlist", "ask": "off" } }, @@ -181,26 +208,9 @@ "bindings": [ { "agentId": "main", - "comment": "main-bot -> Main Agent", - "match": { - "channel": "feishu", - "accountId": "main-bot" - } - }, - { - "agentId": "hrbp", - "comment": "hrbp-bot -> HRBP Agent", - "match": { - "channel": "feishu", - "accountId": "hrbp-bot" - } - }, - { - "agentId": "it-engineer", - "comment": "it-engineer-bot -> IT Engineer Agent", + "comment": "openclaw-weixin -> Main Agent onboarding entry", "match": { - "channel": "feishu", - "accountId": "it-engineer-bot" + "channel": "openclaw-weixin" } } ], @@ -240,54 +250,8 @@ } }, "channels": { - "feishu": { - "enabled": true, - "domain": "feishu", - "connectionMode": "websocket", - "requireMention": true, - "streaming": true, - "tools": { - "doc": true, - "chat": true, - "wiki": true, - "drive": true, - "perm": true - }, - "accounts": { - "main-bot": { - "name": "Main Bot", - "appId": "", - "appSecret": "", - "dmPolicy": "open", - "allowFrom": [ - "*" - ], - "groupPolicy": "allowlist" - }, - "hrbp-bot": { - "name": "HRBP Bot", - "appId": "", - "appSecret": "", - "dmPolicy": "open", - "allowFrom": [ - "*" - ], - "groupPolicy": "allowlist" - }, - "it-engineer-bot": { - "name": "IT Engineer Bot", - "appId": "", - "appSecret": "", - "dmPolicy": "open", - "allowFrom": [ - "*" - ], - "groupPolicy": "allowlist" - } - }, - "reactionNotifications": "own", - "typingIndicator": true, - "resolveSenderNames": true + "openclaw-weixin": { + "enabled": true } }, "gateway": { @@ -382,12 +346,9 @@ }, "plugins": { "load": { - "paths": [] + "paths": ["${XIAOBEI_HOME}/awada"] }, "entries": { - "feishu": { - "enabled": true - }, "awada": { "enabled": false }, @@ -411,7 +372,7 @@ } } }, - "deepseek": { + "openclaw-weixin": { "enabled": true } } diff --git a/config-templates/openclaw.json b/config-templates/openclaw.json index 3ceff330..8cc6cdf4 100644 --- a/config-templates/openclaw.json +++ b/config-templates/openclaw.json @@ -45,71 +45,6 @@ "compat": { "thinkingFormat": "openai" } } ] - }, - "awk": { - "baseUrl": "https://ark.cn-beijing.volces.com/api/coding/v3", - "api": "openai-completions", - "apiKey": "${AWK_API_KEY}", - "models": [ - { - "id": "glm-latest", - "name": "GLM-5.2", - "reasoning": true, - "input": [ - "text" - ], - "contextWindow": 1024000, - "maxTokens": 65536, - "compat": { - "supportsReasoningEffort": true, - "supportsUsageInStreaming": true, - "maxTokensField": "max_tokens" - }, - "api": "openai-completions" - }, - { - "id": "deepseek-v4-flash", - "name": "DeepSeek V4 Flash", - "reasoning": true, - "input": [ - "text" - ], - "contextWindow": 1024000, - "maxTokens": 65536, - "compat": { - "supportsReasoningEffort": true, - "supportsUsageInStreaming": true, - "maxTokensField": "max_tokens" - }, - "api": "openai-completions" - }, - { - "id": "deepseek-v4-pro", - "name": "deepseek-v4-pro", - "input": [ - "text" - ], - "contextWindow": 1024000, - "maxTokens": 65536, - "compat": { - "supportsReasoningEffort": true, - "supportsUsageInStreaming": true, - "maxTokensField": "max_tokens" - }, - "api": "openai-completions" - }, - { - "id": "doubao-seed-2.0-lite", - "name": "doubao-seed-2.0-lite", - "contextWindow": 256000, - "maxTokens": 65536, - "input": [ - "text", - "image" - ], - "api": "openai-completions" - } - ] } } }, diff --git a/scripts/install-atomgit.ps1 b/scripts/install-atomgit.ps1 index 8115657c..fa8978a6 100755 --- a/scripts/install-atomgit.ps1 +++ b/scripts/install-atomgit.ps1 @@ -313,15 +313,65 @@ function Run-SetupCrew { # to $HOME/.openclaw, and under Git Bash's MSYS path conversion + a Chinese username this yields a # bogus path like C:\c\Users\\.openclaw (ENOENT). $env:OPENCLAW_HOME = ($OpenclawHome -replace '\\', '/') + # Git Bash's MSYS2 layer defaults `ln -s` to `cp -r` (real copy), not a true symlink. setup-crew.sh + # uses `ln -s` to symlink crew skills into ~/.openclaw/workspace-/skills/, so without this flag + # Windows users end up with real folders instead of links (edits in the repo don't propagate, and + # re-runs copy over stale copies). MSYS=winsymlinks:nativestrict makes `ln -s` create real NTFS + # symlinks (requires Developer Mode on Win10+, or admin). Falls back to copies if neither is + # available, which is the previous behavior (no regression). + $env:MSYS = "winsymlinks:nativestrict" Invoke-Streamed { & $bashExe ($sh -replace '\\', '/') } # After setup-crew.sh finishes, clear OPENCLAW_HOME so subsequent install phases (gateway/daemon) # do not inherit this value - the engine would treat OPENCLAW_HOME as a homedir and append # /.openclaw, producing a nested layer. Remove-Item Env:OPENCLAW_HOME -ErrorAction SilentlyContinue + Remove-Item Env:MSYS -ErrorAction SilentlyContinue if ($LASTEXITCODE -ne 0) { Write-Warn "setup-crew.sh exited non-zero (you can manually re-run with --force later to fix)" } else { Write-Ok "crew templates set up" } } +# --- 7c. Sync global skills -> ~/.openclaw/skills --- +# On linux/macOS this is done by apply-addons.sh (which symlinks the repo's skills/ into +# ~/.openclaw/skills so the openclaw skill loader picks them up). The Windows route does not run +# apply-addons.sh, so we mirror that logic here: create a true NTFS symlink ~/.openclaw/skills -> +# /skills. Idempotent: if the target is already a symlink pointing to the right repo path, +# this is a no-op; if it's a stale real directory (from an old copy-based install), we warn and +# leave it untouched rather than risk deleting user edits. +function Sync-GlobalSkills { + Write-Stage "Syncing global skills -> ~/.openclaw/skills" + $src = Join-Path $Root "skills" + if (-not (Test-Path $src)) { Write-Ok "no global skills dir in repo, skipping"; return } + $dest = Join-Path $OpenclawHome "skills" + $srcFwd = ($src -replace '\\', '/') + + if (Test-Path $dest) { + $item = Get-Item $dest -Force + if ($item.LinkType -eq 'SymbolicLink' -and $item.Target -and (($item.Target -replace '\\', '/') -ieq $srcFwd)) { + Write-Ok "global skills symlink already correct" + return + } + if ($item.LinkType -eq 'SymbolicLink') { + Remove-Item $dest -Force -Recurse + } else { + Write-Warn "$dest already exists as a real directory (likely from an old install); leaving untouched to avoid overwriting user edits" + Write-Host " To switch to a symlink: delete $dest, then re-run install" -ForegroundColor Yellow + return + } + } + + try { + New-Item -ItemType SymbolicLink -Path $dest -Target $src -ErrorAction Stop | Out-Null + Write-Ok "global skills symlinked -> $src" + } catch { + Write-Warn "failed to create symlink $dest -> $src ($_)" + Write-Host " This usually means Developer Mode is off and the shell is not elevated." -ForegroundColor Yellow + Write-Host " Either enable Windows Developer Mode, or run this shell as Administrator." -ForegroundColor Yellow + Write-Host " Falling back to a copy (skills will not auto-update from the repo until you re-run install)." -ForegroundColor Yellow + Copy-Item -Path $src -Destination $dest -Recurse -Force + Write-Ok "global skills copied (fallback) -> $dest" + } +} + # --- 7b. Expose skill wrappers as .cmd shims into ~\.openclaw\bin --- # Mirrors the .sh route's expose_skill_wrappers + ensure_openclaw_bin_in_path # (scripts/lib/skill-wrappers.sh). On Windows we cannot rely on symlinks @@ -685,6 +735,7 @@ function Main { } else { Place-Config Run-SetupCrew + Sync-GlobalSkills Expose-SkillWrappers Install-GatewayAndEnv Bind-WeixinChannel diff --git a/scripts/install.ps1 b/scripts/install.ps1 index 0119ae87..e0108ba8 100755 --- a/scripts/install.ps1 +++ b/scripts/install.ps1 @@ -330,15 +330,65 @@ function Run-SetupCrew { # to $HOME/.openclaw, and under Git Bash's MSYS path conversion + a Chinese username this yields a # bogus path like C:\c\Users\\.openclaw (ENOENT). $env:OPENCLAW_HOME = ($OpenclawHome -replace '\\', '/') + # Git Bash's MSYS2 layer defaults `ln -s` to `cp -r` (real copy), not a true symlink. setup-crew.sh + # uses `ln -s` to symlink crew skills into ~/.openclaw/workspace-/skills/, so without this flag + # Windows users end up with real folders instead of links (edits in the repo don't propagate, and + # re-runs copy over stale copies). MSYS=winsymlinks:nativestrict makes `ln -s` create real NTFS + # symlinks (requires Developer Mode on Win10+, or admin). Falls back to copies if neither is + # available, which is the previous behavior (no regression). + $env:MSYS = "winsymlinks:nativestrict" Invoke-Streamed { & $bashExe ($sh -replace '\\', '/') } # After setup-crew.sh finishes, clear OPENCLAW_HOME so subsequent install phases (gateway/daemon) # do not inherit this value - the engine would treat OPENCLAW_HOME as a homedir and append # /.openclaw, producing a nested layer. Remove-Item Env:OPENCLAW_HOME -ErrorAction SilentlyContinue + Remove-Item Env:MSYS -ErrorAction SilentlyContinue if ($LASTEXITCODE -ne 0) { Write-Warn "setup-crew.sh exited non-zero (you can manually re-run with --force later to fix)" } else { Write-Ok "crew templates set up" } } +# --- 7c. Sync global skills -> ~/.openclaw/skills --- +# On Linux/macOS this is done by apply-addons.sh (which symlinks the repo's skills/ into +# ~/.openclaw/skills so the openclaw skill loader picks them up). The Windows route does not run +# apply-addons.sh, so we mirror that logic here: create a true NTFS symlink ~/.openclaw/skills -> +# /skills. Idempotent: if the target is already a symlink pointing to the right repo path, +# this is a no-op; if it's a stale real directory (from an old copy-based install), we warn and +# leave it untouched rather than risk deleting user edits. +function Sync-GlobalSkills { + Write-Stage "Syncing global skills -> ~/.openclaw/skills" + $src = Join-Path $Root "skills" + if (-not (Test-Path $src)) { Write-Ok "no global skills dir in repo, skipping"; return } + $dest = Join-Path $OpenclawHome "skills" + $srcFwd = ($src -replace '\\', '/') + + if (Test-Path $dest) { + $item = Get-Item $dest -Force + if ($item.LinkType -eq 'SymbolicLink' -and $item.Target -and (($item.Target -replace '\\', '/') -ieq $srcFwd)) { + Write-Ok "global skills symlink already correct" + return + } + if ($item.LinkType -eq 'SymbolicLink') { + Remove-Item $dest -Force -Recurse + } else { + Write-Warn "$dest already exists as a real directory (likely from an old install); leaving untouched to avoid overwriting user edits" + Write-Host " To switch to a symlink: delete $dest, then re-run install" -ForegroundColor Yellow + return + } + } + + try { + New-Item -ItemType SymbolicLink -Path $dest -Target $src -ErrorAction Stop | Out-Null + Write-Ok "global skills symlinked -> $src" + } catch { + Write-Warn "failed to create symlink $dest -> $src ($_)" + Write-Host " This usually means Developer Mode is off and the shell is not elevated." -ForegroundColor Yellow + Write-Host " Either enable Windows Developer Mode, or run this shell as Administrator." -ForegroundColor Yellow + Write-Host " Falling back to a copy (skills will not auto-update from the repo until you re-run install)." -ForegroundColor Yellow + Copy-Item -Path $src -Destination $dest -Recurse -Force + Write-Ok "global skills copied (fallback) -> $dest" + } +} + # --- 7b. Expose skill wrappers as .cmd shims into ~\.openclaw\bin --- # Mirrors the .sh route's expose_skill_wrappers + ensure_openclaw_bin_in_path # (scripts/lib/skill-wrappers.sh). On Windows we cannot rely on symlinks @@ -705,6 +755,7 @@ function Main { } else { Place-Config Run-SetupCrew + Sync-GlobalSkills Expose-SkillWrappers Install-GatewayAndEnv Bind-WeixinChannel From 686c1182931808e9f32e98c97cdf756e928cd078 Mon Sep 17 00:00:00 2001 From: codes-factory-of-bg Date: Fri, 7 Aug 2026 00:28:33 +0800 Subject: [PATCH 3/4] =?UTF-8?q?fix(install):=20atomgit=20=E8=B7=AF?= =?UTF-8?q?=E7=BA=BF=E9=BB=98=E8=AE=A4=E8=B7=B3=E8=BF=87=20gum=20spinner?= =?UTF-8?q?=20bootstrap=20+=20OPENCLAW=5FHOME=20=E8=A3=B8=E5=BC=95?= =?UTF-8?q?=E7=94=A8=E8=A1=A5=E5=85=9C=E5=BA=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## scripts/install-atomgit.sh ### spinner 连 GitHub 超时(atomgit 国内线路不该走 GitHub) - charmbracelet/gum 的 release 只在 GitHub,atomgit 国内线路连 GitHub 常超 75s 拖慢安装(用户实测报错 curl: (28) ... port 443 after 75012ms) - 改 atomgit 版顶部 GUM_VERSION 默认值由 "0.17.0" 改为空, bootstrap_gum_temp 函数在「command -v gum 命中系统已装」之后插 空判定短路:GUM_VERSION 为空时跳过 GitHub 下载, GUM_REASON="gum bootstrap disabled on atomgit route" - spinner 失败本就自动回退无 spinner 继续,不影响安装结果,只是没动画 - 用户机器已装 gum(brew install gum)仍会被 command -v 命中使用; 想强制 bootstrap 走 GitHub 可 export OPENCLAW_GUM_VERSION=0.17.0 ### OPENCLAW_HOME?: unbound variable(set -u 下报错) - install_gateway_and_env 里「提示用户清掉错误的 OPENCLAW_HOME」段: if [ -n "${OPENCLAW_HOME:-}" ] && [ "$(cd "${OPENCLAW_HOME}" && pwd)" = ... 前半有兜底,但 cd 那段裸引 ${OPENCLAW_HOME},set -u 下若变量未绑会报错 - cd 那段也改 ${OPENCLAW_HOME:-} 兜底;ui_info 里 $OPENCLAW_HOME 同步加兜底 ## scripts/install.sh(保持两版一致) - 同样那段 cd "${OPENCLAW_HOME}" 裸引用也补 ${OPENCLAW_HOME:-} 兜底, 虽然 GitHub 路线暂未收到同样报错,但两版写法本应一致避免回归 Co-Authored-By: AtomCode (GLM-5.2) --- scripts/install-atomgit.sh | 17 ++++++++++++++--- scripts/install.sh | 4 ++-- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/scripts/install-atomgit.sh b/scripts/install-atomgit.sh index 599b0484..926367b3 100755 --- a/scripts/install-atomgit.sh +++ b/scripts/install-atomgit.sh @@ -87,7 +87,10 @@ mktempfile() { # ═══════════════════════════════════════════════════════════════════ # gum UI(TTY 才 bootstrap,非 TTY 静默跳过) # ═══════════════════════════════════════════════════════════════════ -GUM_VERSION="${OPENCLAW_GUM_VERSION:-0.17.0}" +# atomgit 国内线路默认不拉 gum bootstrap(charmbracelet/gum 的 release 只在 GitHub, +# 国内连 GitHub 常超 75s 拖慢安装)。若机器已装 gum(brew install gum)仍会被检测使用; +# 想强制 bootstrap 走 GitHub 可 export OPENCLAW_GUM_VERSION=0.17.0。 +GUM_VERSION="${OPENCLAW_GUM_VERSION:-}" GUM="" GUM_STATUS="skipped" GUM_REASON="" @@ -182,6 +185,14 @@ bootstrap_gum_temp() { return 0 fi + # atomgit 国内线路默认不 bootstrap gum(GUM_VERSION 置空时跳下载,避免连 GitHub + # 超时拖慢安装)。系统已装 gum 在上面 command -v 已命中。用户想强制 bootstrap 可 + # export OPENCLAW_GUM_VERSION=0.17.0。 + if [ -z "$GUM_VERSION" ]; then + GUM_REASON="gum bootstrap disabled on atomgit route (export OPENCLAW_GUM_VERSION to enable)" + return 1 + fi + if ! command -v tar >/dev/null 2>&1; then GUM_REASON="tar not found" return 1 @@ -1375,8 +1386,8 @@ install_gateway_and_env() { # 会产出嵌套路径。本脚本顶部已把 OPENCLAW_HOME 设成内部变量且未 export,不会传给引擎子进程, # 所以这里只打 info 提示用户清理 shell 环境变量,不能 unset——unset 会误伤脚本内部变量, # 导致后续 ${OPENCLAW_HOME//...} 在 set -u 下报 unbound variable。 - if [ -n "${OPENCLAW_HOME:-}" ] && [ "$(cd "${OPENCLAW_HOME}" && pwd)" = "$(cd "$HOME/.openclaw" && pwd)" ]; then - ui_info "检测到 shell 里 export OPENCLAW_HOME=$OPENCLAW_HOME(不影响本次安装,但建议清掉避免引擎嵌套)" + if [ -n "${OPENCLAW_HOME:-}" ] && [ "$(cd "${OPENCLAW_HOME:-}" && pwd)" = "$(cd "$HOME/.openclaw" && pwd)" ]; then + ui_info "检测到 shell 里 export OPENCLAW_HOME=${OPENCLAW_HOME:-}(不影响本次安装,但建议清掉避免引擎嵌套)" fi # redirect stdin from /dev/tty so interactive read 工作于 curl|bash diff --git a/scripts/install.sh b/scripts/install.sh index 6bc6ee4a..30745ee1 100755 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -1699,8 +1699,8 @@ install_gateway_and_env() { # 会产出嵌套路径。本脚本顶部已把 OPENCLAW_HOME 设成内部变量且未 export,不会传给引擎子进程, # 所以这里只打 info 提示用户清理 shell 环境变量,不能 unset——unset 会误伤脚本内部变量, # 导致后续 ${OPENCLAW_HOME//...} 在 set -u 下报 unbound variable。 - if [ -n "${OPENCLAW_HOME:-}" ] && [ "$(cd "${OPENCLAW_HOME}" && pwd)" = "$(cd "$HOME/.openclaw" && pwd)" ]; then - ui_info "检测到 shell 里 export OPENCLAW_HOME=$OPENCLAW_HOME(不影响本次安装,但建议清掉避免引擎嵌套)" + if [ -n "${OPENCLAW_HOME:-}" ] && [ "$(cd "${OPENCLAW_HOME:-}" && pwd)" = "$(cd "$HOME/.openclaw" && pwd)" ]; then + ui_info "检测到 shell 里 export OPENCLAW_HOME=${OPENCLAW_HOME:-}(不影响本次安装,但建议清掉避免引擎嵌套)" fi # redirect stdin from /dev/tty so interactive read 工作于 curl|bash From bb0300653571088f1b13b8d4bc188ee043356b6a Mon Sep 17 00:00:00 2001 From: codes-factory-of-bg Date: Fri, 7 Aug 2026 00:47:44 +0800 Subject: [PATCH 4/4] =?UTF-8?q?docs:=20README=20+=20CHANGELOG=20=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E5=88=B0=20v5.6.3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## README.md - 安装段补「Windows 建议打开开发者模式」说明(软链需要, 否则脚本回退拷贝,技能不会随仓更新自动同步) - 更新段 5.6.0 → 5.6.3: - 重点 Content Producer 正式发布(此前预发布),视频制作全面进化 - 数据闭环彻底打通(calibrator + published-track),为自我进化奠基 - 底座升级到 OpenClaw 七 v2026.7.1 - 安装脚本大幅优化,对比 5.6.0 修了若干 bug,产品稳定性显著提高 - wx-mp-hunter 接口重写(官方调整旧接口已不可用) - 推荐大模型切到阿里云百炼 - 零碎 5.6.0 引用清理:XIAOBEI_TAG 默认值、浏览器栈段引言 ## CHANGELOG.md - 新增 v5.6.3 (2026-08-07) 段,含四块: - 数据闭环彻底打通(calibrator + published-track + content-producer 正式发布) - wx-mp-hunter 接口重写 - 5.6.2 bug 修复(install 四脚本实测踩坑 8 条逐一列出) - 推荐大模型切到阿里云百炼(config 模板拆分 + README 文案) - 底座升级到 OpenClaw 七 v2026.7.1 Co-Authored-By: AtomCode (GLM-5.2) --- CHANGELOG.md | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 18 ++++++++++++------ 2 files changed, 62 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ca649203..5255d505 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,53 @@ +# v5.6.3 (2026-08-07) + +### 数据闭环彻底打通,为自我进化奠基 + +- **`content-calibrator` 盍打分+预测机制完善**:内容产出 → 发布 → 数据回流 → 下一轮策略调优的闭环不再有断点。calibrator 拿 published-track 回流的实际数据(阅读/点赞/转发/转化)对照预测打分,自动校准后续选题与打法的权重,为小贝自主迭代提供燃料。 +- **`published-track` 数据复盘机制完善**:18 平台文本/媒体限制规则表与内容校验、twitter 互动操作模式补齐;发布结果数据回流进 calibrator,闭环生效。 +- **`content-producer` crew 正式发布**(此前为预发布):端到端承担内容生产线重活,脚本→素材→TTS→渲染→合成全程贯通,网页/落地页/APP 视觉设计一站搞定。`video-producer` 端到端主技能 17 子脚本覆盖 Stage 0–14 全链 + 两道闸门 GATE A/B;视频分发新增微信视频号发布(`wechat-channels-publish`,处理 wujie shadow DOM),结合既有小红书/抖音/Twitter/X/B站/快手等平台,实现短视频制作→多平台分发的闭环。 +- **公共底座换火山**:`skills/siliconflow-tts` → `skills/awk-tts`(火山方舟豆包语音合成 2.0 / seed-tts-2.0 字符版,NDJSON 流式响应 + X-Api-* 鉴权 + speaker 路由 + 火山 ASR 自检复用 viral-chaser 凭据池)。 +- **新建 `design-full`**:整合 design-system-picker + init-workspace + AGENTS.md 工作模式 2,含 14 套设计系统库 + 三条子工作流 A/B/C。 +- 两个剪辑辅助技能:`de-mouth`(口播视频去口误,自动识别并删除静音/语气词/卡顿词/重复句/残句,输出干净视频+字幕+剪辑草稿)、`talking-head-cut`(口播轻剪辑,高光剪辑算法与工作流借鉴 AutoClip)。 + +### wx-mp-hunter 接口重写 + +- 原微信公众号素材接口方案因官方接口调整已不可用,本轮按新版接口重写 `crews/main/skills/wx-mp-hunter`(cheerio 解析新响应结构)。 + +### 5.6.2 bug 修复(本轮实测踩坑) + +- **install.ps1 / install-atomgit.ps1**: + - Bug1 `.env`/`daemon.env` 不换行:新增 `Write-EnvFile` 辅助函数(UTF8 no BOM + 显式 CRLF),`@(...)` 强制数组。 + - Bug2 技能 wrapper 在 Windows 用 `.cmd` shim 替代软链(Windows 软链需管理员/开发者模式,不靠谱):新增 `Expose-SkillWrappers` 函数。 + - Bug3 `$Force`/`$SkipBind`/`$SkipBrowser`/`$NoPrompt` 改为 `$script:` 前缀(PowerShell 函数内默认看不到顶层 bare 变量,读局部 `$null`,是 `XIAOBEI_FORCE=1` 不生效的根因)。 + - Bug4 `OPENCLAW_HOME` warning 3 行 `ui_warn` 降级为 1 行 `ui_info`(实际安装结构正确,warning 纯噪音吓人)。 +- **install.sh / install-atomgit.sh**: + - Bug4 `unset OPENCLAW_HOME` 误伤内部变量:删除 unset,保留 warning→降级为 info。 + - tarball 下载原子写优化(`.part` → rename)。 + - pip install 无条件加 `--break-system-packages`(PEP 668,不做探测简化小白体验)。 + - Bug5 `OPENCLAW_HOME` 在 `set -u` 下报 unbound:`cd "${OPENCLAW_HOME}"` 裸引用补 `${OPENCLAW_HOME:-}` 兜底。 + - Bug6 atomgit 国内线路默认跳过 gum spinner bootstrap:`GUM_VERSION` 默认置空,`bootstrap_gum_temp` 加空判定短路,避免连 GitHub 超时 75 秒拖慢安装(系统已装 gum 仍会用;想强制走 GitHub 可 `export OPENCLAW_GUM_VERSION=0.17.0`)。 +- **install.ps1 / install-atomgit.ps1 Windows 软链**: + - Bug7 `workspace-/skills` 落真文件夹而非软链:根因是 Git Bash 的 MSYS2 默认把 `ln -s` 当 `cp -r`。`Run-SetupCrew` 调 bash 前导出 `MSYS=winsymlinks:nativestrict` 让 `ln -s` 走真 NTFS 软链。 + - Bug8 `~/.openclaw/skills` 缺失/真文件夹:根因是 Windows 路线没调 `apply-addons.sh`。新增 `Sync-GlobalSkills` 函数把仓根 `skills/` 软链到 `~/.openclaw/skills`,幂等 + 失败回退 copy。README 安装段补「Windows 建议打开开发者模式」说明。 +- 四脚本语法校验通过(`bash -n` + Python PS1 括号平衡校验)。 + +### 推荐大模型切到阿里云百炼 + +- **`config-templates/openclaw.json`**:新增 `bailian-token-plan` provider(baseUrl 走百炼 token-plan 端点,anthropic-messages api,三模型:`deepseek-v4-flash-0731` / `glm-5.2` / `qwen3.6-flash`),主力 `deepseek-v4-flash-0731` / fallback `glm-5.2` / 视觉 `qwen3.6-flash`;删火山 `awk` provider。 +- **新建 `config-templates/openclaw-awk.json`**:火山方舟 Coding Plan 备选模板(主力 `awk/glm-latest` + fallback + 视觉 `awk/doubao-seed-2.0-lite`),结构与百炼版一致。 +- **删 `config-templates/openclaw-aihubmix.json`**:AihubMix 合作到期,不再推。 +- **README**:「准备 API Key」段推荐百炼(附 Lite 39 元/月、Standard 139 元/月);「模型费用说明」段火山改手动切换说明;友情链接去 AihubMix logo;目录树注释换 `openclaw-awk.json`,完全不出现 AihubMix 字样。 +- **install.ps1 / install-atomgit.ps1**:交互提示文案从 "Volces ARK API key" 改为 "Aliyun Bailian API key"。 +- 环境变量名 `AWK_API_KEY` 不改(跟旧版兼容),百炼 provider 的 `apiKey` 仍引用 `${AWK_API_KEY}`。 +- 切换理由:阿里云百炼无月限额、不限购,比火山方舟 Coding Plan(限量发售、每天 10 点前抢)体验更好。 + +### 底座升级到 OpenClaw 七(v2026.7.1) + +- 从 v2026.6.11 升级到 v2026.7.1(7.1 是 2026-07 最新稳定版,7.2 仍 beta)。6 个 browser-camoufox-pivot per-file patch 按 7.1 上游漂移重新生成。 +- `overrides.sh` 已与版本无关(浏览器转向后去掉 patchright 注入,仅注入 `OPENCLAW_DISABLE_WEB_SEARCH`),7.1 `package.json` 无 `pnpm.overrides`,兼容。 + +--- + # v5.6.1 (2026-07-31) ### content-producer 视频能力四方向重构 diff --git a/README.md b/README.md index e8c90536..24aaeee2 100755 --- a/README.md +++ b/README.md @@ -32,7 +32,7 @@ xiaobei 由Wiseflow (原AI首席情报官)作者 bigbrother666sh 开发。 --- -## 🚀 **v5.6.0 更新** +## 🚀 **v5.6.3 更新** - 产品重大重构,更简洁、更易上手、更精炼! - **重新认识你的 main agent——小贝**:这一版的小贝不再是单一职能的运营助手,而是把此前分散的几个 agent 融合成了一个—— @@ -46,8 +46,12 @@ xiaobei 由Wiseflow (原AI首席情报官)作者 bigbrother666sh 开发。 - **线 1(日常主力)**:forked [camoufox-cli](https://github.com/daijro/camoufox)(vendor 进 `patches/camoufox-cli/`,基于上游 `camoufox-cli@0.6.2` + 三个新功能:`upload` 命令 / fail-first 队列 / `identity export`)走旁路,反指纹 Firefox + JSON-over-unix-socket,绕开 routes/、pw-session、chrome-mcp。无头胜有头,资源占用更少,速度更快,反侦测能力依然在线。 - **线 2**:保留openclaw原版 `target=host`(existing-session 真机 Chrome + chrome-mcp relay)+ `target=node`(remote-cdp 远端 Chrome)。 - **profile 丢失 / 损坏 / 指纹错配 → 重建 + 重登录 -- 适配 openclaw 2026-6-11 版本(近两个月最稳定版本)、openclaw-weixin 2.4.6 版本。 -- 新增一键安装脚本,无需提前配置环境,脚本会搞定一切。 +- **🎬 Content Producer 正式发布,视频制作能力全面进化**:全新 `content-producer` crew 正式上线(此前为预发布),端到端承担内容生产线重活——脚本→素材→TTS→渲染→合成全程贯通,网页/落地页/APP 视觉设计一站搞定。底座换火山方舟豆包语音合成 2.0 / seed-tts-2.0,NDJSON 流式响应 + speaker 路由;`video-producer` 端到端主技能 17 子脚本覆盖 Stage 0–14 全链 + 两道闸门 GATE A/B;视频分发新增微信视频号发布,结合既有小红书/抖音/Twitter/X/B站/快手等平台,实现短视频制作→多平台分发的闭环。 +- **🔄 数据闭环彻底打通,为自我进化奠基**:`content-calibrator`(盍打分+预测)与 `published-track`(数据复盘)机制全面完善,内容产出→发布→数据回流→下一轮策略调优的闭环不再有断点,为后续小贝自主迭代选题与打法提供燃料。 +- **底座升级到 OpenClaw 七(v2026.7.1)**——近两个月最稳定版本,6 个 browser-camoufox-pivot per-file patch 按 7.1 上游漂移重新生成;openclaw-weixin 2.4.6。 +- **安装脚本大幅优化,全面测试 bug 排除**:对比 5.6.0,install.sh / install-atomgit.sh / install.ps1 / install-atomgit.ps1 四脚本修了若干实测踩坑——tarball 下载原子写、Windows `.env`/`daemon.env` 换行与 BOM、技能 wrapper 在 Windows 用 `.cmd` shim 替代软链、`OPENCLAW_HOME` 在 `set -u` 下报 unbound、atomgit 国内线路默认跳过 gum spinner bootstrap 避免连 GitHub 超时、Windows 软链需要开发者模式等,产品稳定性显著提高。 +- **wx-mp-hunter 更新**:原微信公众号素材接口方案因官方接口调整已不可用,本轮按新版接口重写。 +- 推荐大模型切到**阿里云百炼**「AI Superstar」套餐(无月限额、不限购),默认主力 DeepSeek-V4-Flash / fallback GLM-5.2 / 视觉 Qwen3.6-Flash;仍想用火山方舟 Coding Plan 的用户可手动切 `config-templates/openclaw-awk.json`。 详见 [CHANGELOG.md](CHANGELOG.md) @@ -65,7 +69,7 @@ xiaobei 由Wiseflow (原AI首席情报官)作者 bigbrother666sh 开发。 ### 推荐:一键脚本安装(预构建 tarball 路线) -一行命令,全程无需预装 Node / pnpm / git(tarball 自带 portable Node + pnpm)。脚本完成后**唯一人工输入**是填 `AWK_API_KEY`(火山方舟 Coding Plan 的 key)。 +一行命令,全程无需预装 Node / pnpm / git(tarball 自带 portable Node + pnpm)。脚本完成后**唯一人工输入**是填 `AWK_API_KEY`(阿里云百炼「AI Superstar」套餐的 key)。 **macOS / Linux(bash,一行命令):** @@ -87,7 +91,7 @@ irm https://raw.atomgit.com/wiseflow/xiaobei/raw/master/scripts/install-atomgit. > 按网络环境选一条命令即可:能正常访问 GitHub 走 GitHub 线路(脚本 `install.sh` / `install.ps1`);国内网络走 atomgit 线路(脚本 `install-atomgit.sh` / `install-atomgit.ps1`,全程不经 GitHub)。两条线路安装产物完全一致,只是下载源不同。 -> install 脚本默认拉最新 release tag + 下载 tarball。指定版本:`export XIAOBEI_TAG=v5.6.0`(PowerShell:`$env:XIAOBEI_TAG="v5.6.0"`)。 +> install 脚本默认拉最新 release tag + 下载 tarball。指定版本:`export XIAOBEI_TAG=v5.6.3`(PowerShell:`$env:XIAOBEI_TAG="v5.6.3"`)。 > 💡 **下载中断 / 安装失败?多试几次就好。** tarball 体积较大(~140MB),首装还要下 Firefox 反指纹浏览器(~557MB),网络偶发中断属正常。脚本幂等,重跑会续上已下的部分。 @@ -95,6 +99,8 @@ irm https://raw.atomgit.com/wiseflow/xiaobei/raw/master/scripts/install-atomgit. > 完整步骤:先装 Git Bash(安装时勾选 "Add to PATH",让 bash 进 PowerShell 的 PATH)→ 再在 PowerShell 跑上面那条 `irm | iex`。 +> 💡 **Windows 建议打开「开发者模式」**(设置 → 隐私和安全 → 开发者选项 → 开启开发人员模式,Win10 1703+ 支持)。安装脚本会创建两条软链:仓内 `skills/` → `~/.openclaw/skills`、各 crew 的 `skills/` → `~/.openclaw/workspace-/skills/`,让 openclaw 的 skill loader 拾取技能、且仓内改完即生效无需重跑安装。软链在 Windows 上需要开发者模式(或管理员 PowerShell);两者都没打开时脚本会自动回退为拷贝——功能正常但技能不会随仓更新自动同步,重跑安装才会刷新。 + 脚本自动完成(约 5-15 分钟,CI 已预构建引擎,用户侧只 `pnpm install --prod` 拉依赖 + 下 Firefox): 1. 检测 OS + arch → 选 tarball asset(linux-x64 / mac-arm64 / mac-x64 / win-x64) @@ -276,7 +282,7 @@ Crew 遇到自己不能解决的问题: ## 🔧 全新的浏览器栈 -v5.6.0中,我们几乎重构了OpenClaw原版的浏览器自动化方案(详见 `docs/browser-stack-replacement-spec-2026-07.md`): +v5.6.0 中我们几乎重构了 OpenClaw 原版的浏览器自动化方案(详见 `docs/browser-stack-replacement-spec-2026-07.md`),v5.6.3 沿用此双线栈并按 OpenClaw v2026.7.1 重新对齐 patch: | 项 | 说明 | |----|------|