Skills 2captcha
Solve CAPTCHAs using 2Captcha service via CLI. Use for bypassing captchas during web automation, account creation, or form submission.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/adinvadim/2captcha" ~/.claude/skills/clawdbot-skills-2captcha && rm -rf "$T"
manifest:
skills/adinvadim/2captcha/SKILL.mdsource content
2Captcha Skill
Solve CAPTCHAs programmatically using the 2Captcha human-powered service.
Installation
# One-line install curl -fsSL https://raw.githubusercontent.com/adinvadim/2captcha-cli/main/solve-captcha \ -o /usr/local/bin/solve-captcha && chmod +x /usr/local/bin/solve-captcha # Verify solve-captcha --version
Configuration
# Save your 2Captcha API key mkdir -p ~/.config/2captcha echo "YOUR_API_KEY" > ~/.config/2captcha/api-key # Or use environment variable export TWOCAPTCHA_API_KEY="your-key"
Get your API key at https://2captcha.com/enterpage
Quick Reference
Check Balance First
./solve-captcha balance
Image CAPTCHA
# From file ./solve-captcha image /path/to/captcha.png # From URL ./solve-captcha image "https://site.com/captcha.jpg" # With options ./solve-captcha image captcha.png --numeric 1 --math ./solve-captcha image captcha.png --comment "Enter red letters only"
reCAPTCHA v2
./solve-captcha recaptcha2 --sitekey "6Le-wvk..." --url "https://example.com"
reCAPTCHA v3
./solve-captcha recaptcha3 --sitekey "KEY" --url "URL" --action "submit" --min-score 0.7
hCaptcha
./solve-captcha hcaptcha --sitekey "KEY" --url "URL"
Cloudflare Turnstile
./solve-captcha turnstile --sitekey "0x4AAA..." --url "URL"
FunCaptcha (Arkose)
./solve-captcha funcaptcha --public-key "KEY" --url "URL"
GeeTest
# v3 ./solve-captcha geetest --gt "GT" --challenge "CHALLENGE" --url "URL" # v4 ./solve-captcha geetest4 --captcha-id "ID" --url "URL"
Text Question
./solve-captcha text "What color is the sky?" --lang en
Finding CAPTCHA Parameters
reCAPTCHA sitekey
Look for:
attribute in HTMLdata-sitekey
parameter in reCAPTCHA iframe URLk=- Network request to
google.com/recaptcha/api2/anchor
hCaptcha sitekey
Look for:
in hCaptcha divdata-sitekey- Network requests to
hcaptcha.com
Turnstile sitekey
Look for:
in Turnstile widgetdata-sitekey
class elementscf-turnstile
Workflow for Browser Automation
- Detect CAPTCHA - Check if page has captcha element
- Extract params - Get sitekey/challenge from page source
- Solve via CLI - Call solve-captcha with params
- Inject token - Set
or callbackg-recaptcha-response
Example: Inject reCAPTCHA Token
// After getting token from solve-captcha document.getElementById('g-recaptcha-response').value = token; // Or call callback if defined ___grecaptcha_cfg.clients[0].callback(token);
Cost Awareness
- Check balance before heavy automation
- Image: ~$0.001 per solve
- reCAPTCHA/hCaptcha/Turnstile: ~$0.003 per solve
Error Handling
Common errors:
- Top up accountERROR_ZERO_BALANCE
- Retry in few secondsERROR_NO_SLOT_AVAILABLE
- Bad image or impossible captchaERROR_CAPTCHA_UNSOLVABLE
- Invalid task IDERROR_WRONG_CAPTCHA_ID
Notes
- Solving takes 10-60 seconds depending on type
- reCAPTCHA v3 may need multiple attempts for high scores
- Some sites detect automation - use carefully
- Tokens expire! Use within 2-5 minutes