返回 CodeWhale
SKILL.md
1 ---
2 name: recording
3 description: Capture screenshots on registered computers, record on macOS or HarmonyOS, and manage saved captures. Probe capabilities before recording.
4 ---
5
6 # Recording and screenshots
7
8 1. Pick the computer (`computer_list`, or pass `computer` — it switches).
9 2. Check `request_access` when readiness is unknown. On a supported target,
10 use `recording_start` with optional `display`, `region`, `fps` and
11 `durationSec` (macOS auto-stop), or `intervalMs` (HarmonyOS snapshot cadence).
12 3. Do the work (or let the user do it).
13 4. `recording_stop` with the returned `id` → finalized file path + bytes.
14 5. `recording_list` shows everything saved; `recording_status` checks one.
15
16 Platform truths:
17
18 - **macOS**: ScreenCaptureKit inside the signed helper captures a display or
19 region straight to .mov — no system recorder selection UI and no desktop
20 dimming overlay. If capture is denied, Screen Recording permission is
21 missing for whoever ran it: the Codewhale Computer Use app when
22 `request_access` says `via: "app"`, else the terminal that hosts the
23 server — tell the user which, do not retry.
24 - **Windows and Linux**: recording is unavailable pending session-owned
25 recorder cleanup. Use screenshots; installing ffmpeg does not enable it.
26 - **HarmonyOS**: no native CLI recorder; the backend captures
27 `snapshot_display` frames at `intervalMs` and muxes with ffmpeg on stop.
28 The receipt labels the mode `snapshot-series` — never call it real-time.
29
30 Screenshots: `screenshot` returns the saved path and raster geometry; `zoom`
31 crops the latest raster when a target is too small to read.
32
32 lines MARKDOWN