Install
openclaw skills install cliany-siteUse when the user wants to automate web workflows into CLI commands via Chrome CDP and LLM. Supports exploring pages, generating adapters, and replaying actions through the cliany-site tool.
openclaw skills install cliany-siteUse this skill when the user wants to automate web workflows into callable CLI commands using cliany-site.
cliany-site converts any web workflow into an executable CLI command. It connects to Chrome via CDP, captures page accessibility trees (AXTree), uses an LLM to plan actions, and generates Python/Click command-line adapters.
Before using cliany-site, verify the environment:
cliany-site installed--remote-debugging-port=9222)CLIANY_ANTHROPIC_API_KEY (recommended)CLIANY_OPENAI_API_KEYANTHROPIC_API_KEY (still supported)Run the doctor command to verify all prerequisites:
cliany-site doctor --json
Expected output on success:
{
"success": true,
"data": {"cdp": true, "llm": true, "adapters_dir": "/Users/you/.cliany-site/adapters"},
"error": null
}
# Clone and install
git clone https://github.com/pearjelly/cliany.site.git
cd cliany.site
pip install -e .
# Verify
cliany-site --version
cliany-site doctor --json
Set up via environment variables or .env file:
# Anthropic (recommended)
export CLIANY_LLM_PROVIDER=anthropic
export CLIANY_ANTHROPIC_API_KEY="sk-ant-..."
# OpenAI alternative
export CLIANY_LLM_PROVIDER=openai
export CLIANY_OPENAI_API_KEY="sk-..."
Configuration file locations (priority low to high):
~/.config/cliany-site/.env~/.cliany-site/.env.envcliany-site doctor [--json]
Checks all prerequisites: CDP connection, LLM key, adapter directory structure.
Output fields:
cdp (bool): Chrome CDP availablellm (bool): LLM API key configuredadapters_dir (str): adapter storage pathAlways run doctor first before any other operation to ensure the environment is ready.
cliany-site login <url> [--json]
Opens the specified URL, waits for the user to complete manual login, then saves the session to ~/.cliany-site/sessions/.
When to use: Before exploring workflows that require authentication.
cliany-site explore <url> <workflow_description> [--json]
This is the core command. It:
~/.cliany-site/adapters/<domain>/Parameters:
url: Target web page URLworkflow_description: Natural language description of the workflowExample:
cliany-site explore "https://github.com" "Search for cliany.site repository and view README" --json
After success, a github.com adapter is auto-registered as a subcommand.
cliany-site list [--json]
Lists all generated adapters by domain name.
cliany-site <domain> <command> [args...] [--json]
Runs a specific command from a generated adapter.
Example:
cliany-site github.com search --query "browser-use" --json
cliany-site tui
Visual terminal interface for managing adapters, viewing logs, and configuration.
All commands output a standard JSON envelope when --json is passed:
{
"success": true,
"data": { "..." },
"error": null
}
On failure:
{
"success": false,
"data": null,
"error": {
"code": "ERROR_CODE",
"message": "Error description"
}
}
Error codes:
| Code | Meaning |
|---|---|
CDP_UNAVAILABLE | Chrome not running or port 9222 not open |
LLM_KEY_MISSING | No LLM API key configured |
COMMAND_NOT_FOUND | Unknown command or adapter not found |
EXPLORE_FAILED | Workflow exploration failed |
Exit codes:
0: success1: failure (details in JSON error field)Follow this sequence when automating a new website:
cliany-site doctor --json
If cdp is false, Chrome will be auto-started. If llm is false, configure API keys first.
cliany-site login "https://target-site.com" --json
Wait for the user to complete manual login in the browser.
cliany-site explore "https://target-site.com" "describe the workflow here" --json
The LLM analyzes the page and generates adapter commands.
cliany-site list --json
cliany-site target-site.com <generated-command> [args] --json
Run explore again on the same domain to add more commands. Existing adapters are merged incrementally — existing commands are preserved.
#!/bin/bash
set -e
# Check environment
result=$(cliany-site doctor --json)
if ! echo "$result" | python3 -c "import sys,json; d=json.loads(sys.stdin.read()); exit(0 if d['success'] else 1)"; then
echo "Environment not ready"
exit 1
fi
# Explore workflow
cliany-site explore "https://example.com" "submit the contact form" --json
# Execute generated command
cliany-site example.com submit --name "Test" --email "test@test.com" --json
~/.cliany-site/adapters/<domain>/ (commands.py + metadata.json)~/.cliany-site/sessions/localhost:9222~/.cliany-site/sessions/| Endpoint | Purpose | Data Sent |
|---|---|---|
| Configured LLM API (Anthropic/OpenAI) | Workflow analysis and action planning | Page AXTree structure, workflow description |
localhost:9222 | Chrome CDP connection | CDP protocol commands |
By using this skill, page accessibility tree data is sent to your configured LLM provider (Anthropic or OpenAI) for workflow analysis. Only install and use if you trust your LLM provider with the structural content of pages you browse.
This skill is designed for autonomous invocation by AI agents. When installed, the agent may automatically call cliany-site commands (doctor, login, explore, list) based on user intent without explicit per-command confirmation. This is standard behavior for agent skills. To disable autonomous invocation, remove the skill from the agent's skill directory.
| Issue | Solution |
|---|---|
CDP_UNAVAILABLE | Run cliany-site doctor to auto-start Chrome, or manually start with --remote-debugging-port=9222 |
LLM_KEY_MISSING | Set CLIANY_ANTHROPIC_API_KEY or CLIANY_OPENAI_API_KEY |
| Explore produces no commands | Provide more specific workflow description; ensure the page has loaded fully |
| Adapter command fails | Page structure may have changed; re-run explore to regenerate |
| Login session expired | Re-run cliany-site login <url> |