Skip to content
Back to skills

2captcha

ASecurity

Solve CAPTCHAs using 2Captcha service via CLI. Use for bypassing captchas during web automation, account creation, or form submission.

  • 33 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 5, 2026
toolsjavascriptgojavabashgitapi

Works with

  • cli
  • api

Security analysis

A96/100
  • mediumUses curl or wget to download content

Pro scans all 2 files and shows the line behind each finding

Scanned September 5, 2026

npx -y skills add dvcrn/openclaw-skills-marketplace --skill 2captcha --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of 2captcha?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for 2captcha
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/dvcrn-2captcha/badge)](https://www.skillsdirectory.com/skills/dvcrn-2captcha)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: 2captcha
description: "Solve CAPTCHAs using 2Captcha service via CLI. Use for bypassing captchas during web automation, account creation, or form submission."
homepage: https://github.com/adinvadim/2captcha-cli
---

# 2Captcha Skill

Solve CAPTCHAs programmatically using the 2Captcha human-powered service.

## Installation

```bash
# 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

```bash
# 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
```bash
./solve-captcha balance
```

### Image CAPTCHA
```bash
# 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
```bash
./solve-captcha recaptcha2 --sitekey "6Le-wvk..." --url "https://example.com"
```

### reCAPTCHA v3
```bash
./solve-captcha recaptcha3 --sitekey "KEY" --url "URL" --action "submit" --min-score 0.7
```

### hCaptcha
```bash
./solve-captcha hcaptcha --sitekey "KEY" --url "URL"
```

### Cloudflare Turnstile
```bash
./solve-captcha turnstile --sitekey "0x4AAA..." --url "URL"
```

### FunCaptcha (Arkose)
```bash
./solve-captcha funcaptcha --public-key "KEY" --url "URL"
```

### GeeTest
```bash
# v3
./solve-captcha geetest --gt "GT" --challenge "CHALLENGE" --url "URL"

# v4
./solve-captcha geetest4 --captcha-id "ID" --url "URL"
```

### Text Question
```bash
./solve-captcha text "What color is the sky?" --lang en
```

## Finding CAPTCHA Parameters

### reCAPTCHA sitekey
Look for:
- `data-sitekey` attribute in HTML
- `k=` parameter in reCAPTCHA iframe URL
- Network request to `google.com/recaptcha/api2/anchor`

### hCaptcha sitekey
Look for:
- `data-sitekey` in hCaptcha div
- Network requests to `hcaptcha.com`

### Turnstile sitekey
Look for:
- `data-sitekey` in Turnstile widget
- `cf-turnstile` class elements

## Workflow for Browser Automation

1. **Detect CAPTCHA** - Check if page has captcha element
2. **Extract params** - Get sitekey/challenge from page source
3. **Solve via CLI** - Call solve-captcha with params
4. **Inject token** - Set `g-recaptcha-response` or callback

### Example: Inject reCAPTCHA Token
```javascript
// 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:
- `ERROR_ZERO_BALANCE` - Top up account
- `ERROR_NO_SLOT_AVAILABLE` - Retry in few seconds
- `ERROR_CAPTCHA_UNSOLVABLE` - Bad image or impossible captcha
- `ERROR_WRONG_CAPTCHA_ID` - Invalid task 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

Files in this skill

  • README.md3.9 KB
  • SKILL.md3.3 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…