
pikvm
by vm0-ai
SKILL.md
name: pikvm description: Remote KVM control via PiKVM REST API. Use for controlling remote computers through PiKVM - taking screenshots, moving mouse, clicking, typing text, pressing keys, keyboard shortcuts, scrolling, or power management. vm0_secrets:
- PIKVM_AUTH
- PIKVM_URL
PiKVM Remote Control
Control remote computers via PiKVM REST API with mouse, keyboard, and power management.
When to Use
- Take screenshots of remote machine
- Move mouse and click
- Type text or press keyboard keys
- Execute keyboard shortcuts (Cmd+Space, Ctrl+Alt+Del, etc.)
- Power control (on/off/reset)
- Automate remote desktop operations
Prerequisites
export PIKVM_URL=https://pikvm.example.com
export PIKVM_AUTH=admin:admin
Get Credentials
- Access your PiKVM web interface
- Default credentials:
admin:admin
Important: When using
$VARin a command that pipes to another command, wrap the command containing$VARinbash -c '...'. Due to a Claude Code bug, environment variables are silently cleared when pipes are used directly.
Coordinate System
Mouse coordinates use screen center as origin (0,0):
- Negative X = left, Positive X = right
- Negative Y = up, Positive Y = down
For 1920x1080 screen:
- Top-left:
(-960, -540) - Center:
(0, 0) - Bottom-right:
(960, 540)
Usage
Take Screenshot
bash -c 'curl -k -s -o /tmp/screenshot.jpg -u "$PIKVM_AUTH" "${PIKVM_URL}/api/streamer/snapshot"'
Type Text
Text must be sent as raw body with Content-Type: text/plain:
bash -c 'curl -k -s -X POST \
-H "Content-Type: text/plain" \
-u "$PIKVM_AUTH" \
-d "Hello World" \
"${PIKVM_URL}/api/hid/print?limit=0"'
Move Mouse
Move to absolute position (0,0 = screen center):
bash -c 'curl -k -s -X POST \
-u "$PIKVM_AUTH" \
"${PIKVM_URL}/api/hid/events/send_mouse_move?to_x=-500&to_y=-300"'
Mouse Click
# Press
bash -c 'curl -k -s -X POST \
-u "$PIKVM_AUTH" \
"${PIKVM_URL}/api/hid/events/send_mouse_button?button=left&state=true"'
# Release
bash -c 'curl -k -s -X POST \
-u "$PIKVM_AUTH" \
"${PIKVM_URL}/api/hid/events/send_mouse_button?button=left&state=false"'
Press Key
Press and release with state=true then state=false:
# Press Enter
bash -c 'curl -k -s -X POST \
-u "$PIKVM_AUTH" \
"${PIKVM_URL}/api/hid/events/send_key?key=Enter&state=true"'
bash -c 'curl -k -s -X POST \
-u "$PIKVM_AUTH" \
"${PIKVM_URL}/api/hid/events/send_key?key=Enter&state=false"'
Key Combo (e.g., Cmd+Space for Spotlight)
Press all keys in order, then release in reverse:
# Press Cmd
bash -c 'curl -k -s -X POST -u "$PIKVM_AUTH" "${PIKVM_URL}/api/hid/events/send_key?key=MetaLeft&state=true"'
# Press Space
bash -c 'curl -k -s -X POST -u "$PIKVM_AUTH" "${PIKVM_URL}/api/hid/events/send_key?key=Space&state=true"'
# Release Space
bash -c 'curl -k -s -X POST -u "$PIKVM_AUTH" "${PIKVM_URL}/api/hid/events/send_key?key=Space&state=false"'
# Release Cmd
bash -c 'curl -k -s -X POST -u "$PIKVM_AUTH" "${PIKVM_URL}/api/hid/events/send_key?key=MetaLeft&state=false"'
Mouse Scroll
bash -c 'curl -k -s -X POST \
-u "$PIKVM_AUTH" \
"${PIKVM_URL}/api/hid/events/send_mouse_wheel?delta_x=0&delta_y=-50"'
Get Device Info
bash -c 'curl -k -s \
-u "$PIKVM_AUTH" \
"${PIKVM_URL}/api/info"' | jq .
ATX Power Control
# Power on
bash -c 'curl -k -s -X POST \
-u "$PIKVM_AUTH" \
"${PIKVM_URL}/api/atx/power?action=on"'
# Power off
bash -c 'curl -k -s -X POST -u "$PIKVM_AUTH" "${PIKVM_URL}/api/atx/power?action=off"'
# Hard reset
bash -c 'curl -k -s -X POST -u "$PIKVM_AUTH" "${PIKVM_URL}/api/atx/power?action=reset_hard"'
Common Key Names
MetaLeft (Cmd), ControlLeft, AltLeft, ShiftLeft
Enter, Space, Escape, Tab, Backspace, Delete
ArrowUp, ArrowDown, ArrowLeft, ArrowRight
KeyA-KeyZ, Digit0-Digit9, F1-F12
PageUp, PageDown, Home, End
Equal (+), Minus (-)
API Endpoints Reference
| Endpoint | Method | Description |
|---|---|---|
/api/streamer/snapshot | GET | Screenshot (JPEG) |
/api/hid/print | POST | Type text (body: raw text) |
/api/hid/events/send_mouse_move | POST | Move mouse (to_x, to_y) |
/api/hid/events/send_mouse_button | POST | Click (button, state) |
/api/hid/events/send_mouse_wheel | POST | Scroll (delta_x, delta_y) |
/api/hid/events/send_key | POST | Key press (key, state) |
/api/atx/power | POST | Power control (action) |
/api/info | GET | Device info |
/api/atx | GET | ATX status |
API Reference
- Official docs: https://docs.pikvm.org/api/
スコア
総合スコア
リポジトリの品質指標に基づく評価
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
3ヶ月以内に更新がある
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
レビュー
レビュー機能は近日公開予定です