name: slack-image-upload
message ツールの media パラメータは ~/.openclaw/media/ 配下のファイルのみ送信可能。
任意のローカルパスから画像をSlackに送るには、以下の手順を使う。
MEDIA_DIR=~/.openclaw/media/browser
cp /path/to/local/image.png "$MEDIA_DIR/upload_image.png"
ファイル名の衝突に注意。 一意な名前を付けること(例: upload_{slug}_{variant}.png)。
message(
action: "send",
channel: "slack",
target: "<channel_id>",
message: "キャプション",
threadId: "<thread_ts>", # スレッドに送る場合
media: "~/.openclaw/media/browser/upload_image.png"
)
1枚ずつ cp + message を繰り返す。Slack APIの制限上、1メッセージ1ファイル。
# 例: 3枚送る
for f in img1.png img2.png img3.png; do
cp "/path/to/$f" "$MEDIA_DIR/$f"
done
message(action: "send", ..., media: "~/.openclaw/media/browser/img1.png")
message(action: "send", ..., media: "~/.openclaw/media/browser/img2.png")
message(action: "send", ..., media: "~/.openclaw/media/browser/img3.png")
| パス | 用途 |
|---|---|
~/.openclaw/media/browser/ | ブラウザスクショ + アップロード用 |
~/.openclaw/media/browser/ を使う(確実に送信可能)~/.openclaw/media/ 配下以外のパスを media パラメータに指定する: message ツールの media パラメータは ~/.openclaw/media/ 配下のファイルのみ送信可能。任意のローカルパスを直接指定してもエラーになる。必ず先に cp で ~/.openclaw/media/browser/ にコピーするupload_{slug}_{variant}.png)を付けること~/.openclaw/media/browser/ にファイルが溜まるので、必要に応じてクリーンアップする