[Bug] WeChat inbound images are downloaded but inaccessible to Claw analyze_image
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ó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 52/100
Hướng nghiên cứu
Bắt đầu bằng cách đọc phần chuyển đổi hình ảnh đến từ WeChat trong src/crates/assembly/core/src/service/remote_connect/bot/weixin.rs, quanh các dòng 220-255, sau đó theo dõi cách kết xuất đa phương thức chỉ có văn bản xử lý tệp đính kèm trong src/crates/assembly/core/src/agentic/execution/execution_engine.rs, quanh các dòng 1908-1944. Tái hiện luồng Claw chỉ có văn bản với một JPEG của WeChat và xác minh rằng hình ảnh có thể được kiểm tra mà không có đường dẫn tương đối với workspace bị thiếu.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Summary
When using BitFun's built-in WeChat gateway with Claw, an inbound image is downloaded successfully but cannot be inspected by a text-only primary model through the analyze_image tool.
The image is present as an inline data URL in the turn payload, but no local attachment path is created. Claw receives only the remote_img_<uuid> identifier and the tool treats it as a workspace-relative path.
Environment
- BitFun: 0.2.17 (macOS Apple Silicon)
- Channel: built-in WeChat gateway / Claw
- Primary model: GLM-5.3 (text-only; image inputs disabled)
- Reproduced: 2026-08-18
Steps to reproduce
- Configure a Claw session with a text-only primary model.
- Send a JPEG image to the Claw bot through WeChat.
- Let Claw try to inspect or describe the image.
Actual behavior
The image is received and displayed in the BitFun transcript, but Claw calls:
analyze_image(path="remote_img_<uuid>")
and fails with:
unable to locate image at <workspace>/remote_img_<uuid>: No such file or directory
The gateway logs show a successful CDN request immediately before the turn starts. The turn payload contains a valid data:image/jpeg;base64,... value, so the media download itself is not the failing step.
Expected behavior
One of these should happen:
- Save the downloaded/decoded image in a session-scoped temporary directory and expose its real
image_path; or - Make
analyze_imageaccept the attachment ID / inline data URL directly; or - Route the attachment directly to a configured vision-capable primary model when available.
The current prompt says to use analyze_image when a path is available, but the WeChat adapter only supplies a data URL.
Upstream references
The current implementation still follows this path in 0.2.18:
- WeChat inbound image conversion creates only a data URL.
- Text-only multimodal rendering exposes only an image ID when no path exists.
I have not tested outbound file delivery in this report; this issue is specifically about inbound image inspection from WeChat.
- Ngôn ngữ chính
- Rust
- Star
- 2.3k
- Fork
- 236
- Merge trung bình
- 3 giờ 33 phút
- Pull request đã merge (30 ngày)
- 339
Chuẩn bị môi trường
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 GCWing/OpenBitFun
-
Độ khó 2/5 Nửa ngày Mức phù hợp với người mới 74/100
GCWing/OpenBitFun#3279 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[Bug]: 界面写“敏感诊断信息默认关闭”,但后端配置当前实际默认是 trueCó thể đã có người làm @xiechimon đã nhận 16 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
GCWing/OpenBitFun#3213 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
GCWing/OpenBitFun#2363 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
question
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 78/100
GCWing/OpenBitFun#2340 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[Feature]: 用量提醒Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
GCWing/OpenBitFun#3325 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của GCWing/OpenBitFun
Issue tương tự
-
bug user-priority/P2
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
t8y2/dbx#11718 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
rescript-lang/rescript#8765 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
nautechsystems/nautilus_trader#5287 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
farion1231/cc-switch#8072 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Python 3.15 supportCó thể đã có người làm @amnesiaof đã nhận hôm nay. Đang mởL: python L: python:uv
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
dependabot/dependabot-core#16524 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày