一键导入
macos-screenshot
Capture and send screenshots from remote macOS nodes without context bloat
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Capture and send screenshots from remote macOS nodes without context bloat
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | macos-screenshot |
| allowed-tools | nodes, exec, message |
| description | Capture and send screenshots from remote macOS nodes without context bloat |
Capture screenshots from remote macOS nodes and send them to users. Avoids context bloat by using proper file-based workflows instead of base64 encoding.
# WRONG: Base64 encoding a screenshot will blow up your context
nodes.run: base64 -i /tmp/screenshot.png # 200K+ tokens = instant failure
Use screen_record with minimal duration (1ms) to capture a single frame:
{
"action": "screen_record",
"node": "<node-id>",
"durationMs": 1
}
Returns: FILE:/tmp/openclaw-screen-record-<uuid>.mp4
Use ffmpeg on the gateway host to extract a PNG frame:
ffmpeg -i /tmp/openclaw-screen-record-<uuid>.mp4 \
-frames:v 1 -update 1 -y /tmp/screenshot.png 2>/dev/null
Send the image file directly via the message tool:
{
"action": "send",
"channel": "telegram",
"target": "<chat-id>",
"media": "/tmp/screenshot.png"
}
# 1. Capture
result = nodes(action="screen_record", node="mac-xxx", durationMs=1)
# Returns: FILE:/tmp/openclaw-screen-record-abc123.mp4
# 2. Extract frame
exec("ffmpeg -i /tmp/openclaw-screen-record-abc123.mp4 -frames:v 1 -update 1 -y /tmp/mac-ss.png 2>/dev/null")
# 3. Send to user
message(action="send", channel="telegram", target="123456", media="/tmp/mac-ss.png")
To analyze what's on screen, use the image tool after extraction:
{
"image": "/tmp/screenshot.png",
"prompt": "Describe what's visible on this macOS screen"
}
Find available macOS nodes:
{
"action": "status"
}
Look for nodes with platform: "macos" and connected: true.
| Issue | Cause | Fix |
|---|---|---|
| Context overflow (200K+) | Used base64 encoding | Use file-based workflow |
screen_record timeout | Node disconnected | Check nodes status |
| ffmpeg not found | Missing on gateway | Install ffmpeg |
| Empty/black screenshot | Screen locked | Unlock Mac first |
media parameterTurn complex work into a goal-first plan with parallel agents and synthesized results
Interview user in-depth to create a detailed spec
Generate changeset entries following Changesets semantics
Validate commit messages against conventional commit format
Create GitHub PRs with proper formatting, labeling, and quality checks
Apply labels to PRs based on conventional commit types