[Bug]: 官方镜像未安装 wecom-cli,企业微信通知报「通知服务未安装 wecom-cli」
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 76/100
Hướng nghiên cứu
Đọc phần cài đặt lúc chạy trong Dockerfile và lời gọi wecom-cli trong internal/notification/provider.go. Thêm CLI vào ảnh runtime như mô tả trong issue, sau đó kiểm tra scripts/test-runtime-image.sh để xem các bước kiểm tra CLI hiện có. Hoàn tất khi ảnh được tạo cung cấp wecom-cli --version và bước kiểm tra ảnh runtime phát hiện CLI bị thiếu.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Component / host
Platform — deployment
Edition
Platform
LoopForge version
v0.3.3(ghcr.io/tencent/loopforge:0.3.3),main @ ffaed15 的源码构建同样存在
What happened?
用官方镜像部署后,在通知机器人里发送企业微信通知,接口返回:
通知服务未安装 wecom-cli,请联系管理员
企业微信通知走 internal/notification/provider.go 的 CLIProvider,它用 exec.CommandContext 调用名为 wecom-cli 的可执行文件(NewCLIProvider 中 Binary: "wecom-cli"),找不到时返回上面的提示。但 Dockerfile 的运行阶段只全局安装了 @openai/codex 和 @tencent-ai/codebuddy-code,没有安装 wecom-cli,docs/ 和 README 里也没有提到需要另外安装。所以按文档用官方镜像或 scripts/install.sh 部署的平台,企业微信通知功能一定用不了。
预期:官方镜像开箱即可发送企业微信通知;或者文档写明需要自行提供 wecom-cli,并说明安装方式。
Reproduction
- 用
scripts/install.sh(官方 GHCR 镜像)或compose.dev.yaml源码构建部署平台。 docker compose exec platform sh -c 'command -v wecom-cli || echo missing',输出missing。- 在平台里配置企业微信通知机器人(Bot ID / Secret)并触发一次通知。
- 返回「通知服务未安装 wecom-cli,请联系管理员」。
Suggested fix
wecom-cli 是企业微信官方 npm 包 @wecom/cli(源码 WecomTeam/wecom-cli),bin 名就是 wecom-cli,按平台通过 optionalDependencies 带 @wecom/cli-linux-x64 / @wecom/cli-linux-arm64 等静态链接的二进制,没有 postinstall 脚本。可以和现有 CLI 一样固定版本装进运行阶段:
&& npm install -g @openai/[email protected] @tencent-ai/[email protected] @wecom/[email protected]
arm64 镜像会自动装上 @wecom/cli-linux-arm64。另外建议在 scripts/test-runtime-image.sh 里加一条 wecom-cli --version 检查,防止以后再漏掉。
Sanitized diagnostics
# 在 v0.3.3 平台镜像中临时挂入 @wecom/[email protected] 的二进制(sha512 与 npm 登记的 integrity 一致)后:
$ docker run --rm --network none -v ./wecom-cli:/usr/local/bin/wecom-cli:ro --entrypoint sh <platform-image> -c 'wecom-cli --version'
wecom-cli 1.3.4 (wecom 2026-09-23T11:45:45Z f9b2815)
# 镜像里已有 ca-certificates,二进制在 node:22-bookworm 上可直接运行(缺 CA 证书时会 panic:No CA certificates were loaded from the system)。
# 目前的临时做法:宿主机放置二进制,通过 compose.override.yaml 只读挂载
services:
platform:
volumes:
- /opt/wecom-cli/wecom-cli:/usr/local/bin/wecom-cli:ro
Safety checks
- I removed credentials, private endpoints, internal identifiers, and personal data.
- I searched existing issues for duplicates.
- Ngôn ngữ chính
- Go
- Star
- 141
- Fork
- 28
- Merge trung bình
- 2 ngày 15 giờ
- Pull request đã merge (30 ngày)
- 41
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của Tencent/LoopForge
-
MCP/API setup copies force `http://` base URLs that embed personal Bearer tokensCó thể đã có người làm @Robert0622 đã nhận 1 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Maintainer thường phản hồi trong vòng 1 ngày
-
[Feature]: 使用ssh key 支持所有gitĐang mởenhancement
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 48/100
Maintainer thường phản hồi trong vòng 1 ngày
-
[Bug]: SOP 设计器「AI 编排助手」侧栏输入框叠住场景标签,标题按钮换行Có thể đã có người làm @Robert0622 đã nhận hôm nay. Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 35/100
Tencent/LoopForge#134 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
Tencent/LoopForge#128 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của Tencent/LoopForge
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
tomasz-tomczyk/crit#1159 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
SelectOneHealthyInstance panics when instance weights are fractional (e.g. 0.5)Có thể đã có người làm @Ajax-1 đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
nacos-group/nacos-sdk-go#929 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
google/osv-scanner#3270 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Batch JSON validation reports the wrong input indexCó thể đã có người làm @Dazhou-del đã nhận hôm nay. Đang mởtype/bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
gin-gonic/gin#4928 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 6 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Maintainer thường phản hồi trong vòng 1 ngày