← Back to Skills Marketplace
850media

Frameo Photo Frame Control

by Michael · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
279
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install frameo
Description
Control Frameo digital photo frames via cloud API for frame info or ADB for full control including photo upload, brightness, screen, and navigation.
README (SKILL.md)

Frameo Digital Photo Frame Control

Control Frameo photo frames via cloud API or ADB.

Methods

Method 1: Cloud API (Limited)

  • ✅ List paired frames
  • ✅ Get account info
  • ❌ Send photos (requires FCM/Firebase)

Method 2: ADB (Full Control)

  • ✅ Push photos directly
  • ✅ Control brightness
  • ✅ Toggle screen
  • ✅ Navigate photos

Quick Start

Cloud API Setup

  1. Install: pip3 install requests pillow
  2. Get Bearer token from Frameo app traffic (Proxyman/Charles)
  3. Save token: echo '{"access_token": "YOUR_TOKEN"}' > ~/.frameo_token
  4. Run: python3 scripts/frameo_client.py --frames

ADB Setup (Recommended)

  1. Enable Developer Options on Frameo (Settings → About → tap Build 7x)
  2. Enable USB Debugging
  3. Connect USB-C data cable to computer
  4. Run: adb tcpip 5555 to enable wireless
  5. Disconnect USB, connect wireless: adb connect \x3Cframe-ip>:5555

Usage Examples

List Frames (Cloud API)

python3 scripts/frameo_client.py --frames

Send Photo (ADB)

adb push photo.jpg /sdcard/DCIM/
# Or to Frameo's photo directory:
adb push photo.jpg /sdcard/Frameo/

Control Frame (ADB)

# Screen on/off
adb shell input keyevent 26

# Set brightness (0-255)
adb shell settings put system screen_brightness 128

# Next photo (swipe right)
adb shell input swipe 800 500 200 500

# Previous photo (swipe left)  
adb shell input swipe 200 500 800 500

Remote Access via SSH Relay

If frame is on local network and agent is remote:

ssh user@local-mac "adb push /tmp/photo.jpg /sdcard/DCIM/"

References

  • references/api-endpoints.md - Frameo cloud API endpoints
  • references/adb-commands.md - Common ADB commands for Frameo

Troubleshooting

Token Expired (401)

Frameo tokens expire in ~5 minutes. Get fresh token from Proxyman.

ADB Connection Refused

Wireless ADB not enabled. Need USB cable first to run adb tcpip 5555.

USB Cable Not Detected

Ensure using a data cable, not charge-only. Data cables are usually thicker.

Usage Guidance
This skill mostly does what it says (cloud listing via Frameo API and local control via ADB), but treat it cautiously because: (1) the package metadata doesn't declare the environment variables the included script expects — you will need to provide credentials (FRAMEO_EMAIL / FRAMEO_PASSWORD or a token) which are sensitive; (2) the instructions ask you to capture bearer tokens from app traffic (man-in-the-middle proxy) and to enable wireless ADB (adb tcpip 5555), both of which carry security risks — wireless ADB can expose the frame to your LAN or the internet if misconfigured; (3) the skill will store tokens in ~/.frameo_token. Before installing: verify the skill's source/maintainer, prefer using USB ADB only (avoid enabling wireless ADB unless you understand the network exposure), avoid pasting secrets into third-party code, consider running the tool on an isolated machine, and review/modify the script so it only uses explicit, declared environment variables and handles credentials securely. If you need to proceed, request the author to update registry metadata to list required env vars and to document security implications explicitly.
Capability Analysis
Type: OpenClaw Skill Name: frameo Version: 1.0.0 The Frameo skill bundle provides a reverse-engineered Python client (`scripts/frameo_client.py`) and ADB command references for controlling digital photo frames. It handles authentication via Frameo's official OAuth2 endpoints and stores tokens locally in `~/.frameo_token`. The code and instructions in `SKILL.md` are consistent with the stated purpose of managing frames and do not exhibit signs of data exfiltration, malicious execution, or unauthorized access.
Capability Assessment
Purpose & Capability
Name/description match the included code and docs: the Python client targets Frameo's cloud API (read-only) and the ADB commands provide full local control (photo upload, brightness, navigation). Functionality requested (account token or ADB access) is coherent with the stated purpose.
Instruction Scope
SKILL.md instructs sensitive operations: capturing bearer tokens from mobile app traffic with a proxy (Proxyman/Charles), saving tokens to ~/.frameo_token, enabling wireless ADB (adb tcpip 5555) and using SSH relays to push files remotely. While these actions enable the described features, they broaden scope to network interception and exposing devices to remote connections — both have meaningful security implications and should be explicit and justified.
Install Mechanism
No install spec (instruction-only) and included code requires only standard Python libraries (requests). Quick-start suggests pip installing requests and pillow; pillow is not used by the provided script. Lack of an install spec reduces disk-write risk, but the skill will write ~/.frameo_token when logging in.
Credentials
Registry metadata lists no required env vars, but the script reads several environment variables (FRAMEO_EMAIL, FRAMEO_PASSWORD, FRAMEO_DEVICE_ID, FRAMEO_PEER_ID, CLIENT_USER_ID, FCM_TOKEN). The skill can store credentials to ~/.frameo_token. The undeclared but used credentials (especially FRAMEO_PASSWORD and FCM token) are sensitive; the metadata should declare them and justify each.
Persistence & Privilege
always:false and no system-wide configuration changes. The script writes its own token cache (~/.frameo_token) which is normal for a client. It does not request elevated system privileges or modify other skills' configs.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install frameo
  3. After installation, invoke the skill by name or use /frameo
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release - Cloud API + ADB control for Frameo digital photo frames
Metadata
Slug frameo
Version 1.0.0
License
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Frameo Photo Frame Control?

Control Frameo digital photo frames via cloud API for frame info or ADB for full control including photo upload, brightness, screen, and navigation. It is an AI Agent Skill for Claude Code / OpenClaw, with 279 downloads so far.

How do I install Frameo Photo Frame Control?

Run "/install frameo" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Frameo Photo Frame Control free?

Yes, Frameo Photo Frame Control is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Frameo Photo Frame Control support?

Frameo Photo Frame Control is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Frameo Photo Frame Control?

It is built and maintained by Michael (@850media); the current version is v1.0.0.

💬 Comments