⚠
High Risk:This skill has significant security concerns. Review the findings below before installing.
lybic-cloud-computer-skill
⚠Caution·Scanned 2/17/2026
High-risk skill: enables arbitrary remote command execution and external network access. It requires LYBIC_ORG_ID and LYBIC_API_KEY, shows running client.sandbox.execute_process (including sh -c and python3 -m http.server), and fetches URLs like https://raw.githubusercontent.com/plotly/datasets/master/iris.csv.
from clawhub.ai·vf086a9e·45.4 KB·0 installs
Scanned from 0.1.3 at f086a9e · Transparency log ↗
$ vett add clawhub.ai/aenjoy/lybic-cloud-computer-skillReview security findings before installing
Lybic Skill
An Agent Skill that provides AI agents with the ability to control Lybic cloud sandboxes through the Python SDK.
Overview
This skill enables agents to:
-
Sandbox Management
- Create, list, get, and delete sandboxes
- Support for Windows, Linux, and Android sandboxes
- Monitor sandbox state and lifecycle
-
GUI Automation
- Computer Use: Mouse and keyboard operations for desktop (Windows/Linux)
- Mobile Use: Touch operations for mobile (Android)
- Screenshot capture and visual feedback
-
Code Execution
- Run Python, Node.js, Go, Rust, Java, and other languages
- Execute shell commands and scripts
- Support for long-running processes
-
File Operations
- Download files from URLs into sandbox
- Upload/download files between sandbox and external storage
- Copy files within sandbox
-
Network Features
- HTTP port mapping for web services
- Forward sandbox ports to public URLs
-
Project Management
- Create and manage projects
- Organize sandboxes by project
Installation
Prerequisites
- Python 3.10 or higher
- A lybic account with API key
Setup
- Install the Lybic Python SDK:
pip install lybic
- Set up your Lybic credentials:
export LYBIC_ORG_ID="your_org_id"
export LYBIC_API_KEY="your_api_key"
Or configure in code:
from lybic import LybicClient, LybicAuth
client = LybicClient(
LybicAuth(
org_id="your_org_id",
api_key="your_api_key",
endpoint="https://api.lybic.cn"
)
)
Usage Examples
Create a Sandbox
from lybic import LybicClient
async with LybicClient() as client:
sandbox = await client.sandbox.create(
name="my-workspace",
shape="beijing-2c-4g-cpu-linux", # linux sandbox with 2 vCPU and 4GB RAM
maxLifeSeconds=7200 # 2 hours
)
print(f"Sandbox ID: {sandbox.id}")
Execute GUI Actions
# Click at coordinates
await client.sandbox.execute_sandbox_action(
sandbox_id="SBX-xxxx",
action={
"type": "mouse:click",
"x": {"type": "/", "numerator": 1, "denominator": 2},
"y": {"type": "/", "numerator": 1, "denominator": 2},
"button": 1
}
)
# Type text
await client.sandbox.execute_sandbox_action(
sandbox_id="SBX-xxxx",
action={
"type": "keyboard:type",
"content": "Hello, Lybic!"
}
)
Run Code in Sandbox
import base64
# Execute Python code
code = "print('Hello from sandbox!')"
result = await client.sandbox.execute_process(
sandbox_id="SBX-xxxx",
executable="python3",
stdinBase64=base64.b64encode(code.encode()).decode()
)
output = base64.b64decode(result.stdoutBase64).decode()
print(output)
Take Screenshot
url, image, base64_str = await client.sandbox.get_screenshot(
sandbox_id="SBX-xxxx"
)
image.show() # Display with PIL
Download File into Sandbox
from lybic.dto import FileCopyItem, HttpGetLocation, SandboxFileLocation
await client.sandbox.copy_files(
sandbox_id="SBX-xxxx",
files=[
FileCopyItem(
id="download-dataset",
src=HttpGetLocation(url="https://example.com/data.csv"),
dest=SandboxFileLocation(path="/home/agent/data.csv")
)
]
)
Action Types Reference
Computer Use (Desktop)
Mouse Actions:
mouse:click- Click at coordinatesmouse:doubleClick- Double-clickmouse:tripleClick- Triple-clickmouse:move- Move cursormouse:drag- Drag from start to endmouse:scroll- Scroll wheel
Keyboard Actions:
keyboard:type- Type textkeyboard:hotkey- Press hotkey combination (e.g., "ctrl+c")key:down/key:up- Press/release single key
Common Actions:
screenshot- Take screenshotwait- Wait for durationfinished- Mark task completefailed- Mark task failed
Mobile Use (Android)
Touch Actions:
touch:tap- Tap at coordinatestouch:longPress- Long presstouch:drag- Drag gesturetouch:swipe- Swipe in direction
System Actions:
android:back- Press back buttonandroid:home- Press home button
App Management:
os:startApp- Start app by package nameos:startAppByName- Start app by display nameos:closeApp- Close app by package nameos:closeAppByName- Close app by display nameos:listApps- List installed apps
Coordinate Systems
Lybic supports two coordinate formats:
- Fractional (recommended for resolution independence):
{"type": "/", "numerator": 500, "denominator": 1000} # 50% of screen
- Pixel (absolute positioning):
{"type": "px", "value": 500}
Environment Variables
LYBIC_ORG_ID- Your Lybic organization IDLYBIC_API_KEY- Your Lybic API keyLYBIC_API_ENDPOINT- API endpoint (default: https://api.lybic.cn)
Supported Languages in Sandbox
- Python 3.12 (Linux) / 3.13 (Windows)
- Node.js v24
- Go 1.25
- Rust 1.92
- Java 25
- GCC 13 (Linux) / MSVC 14.50 (Windows)
Documentation
For detailed API documentation, visit:
License
MIT