clawprint-verify

Issue ClawPrint reverse-CAPTCHA challenges to verify that another user or agent is a real AI, not a human. Uses the ClawPrint API to generate speed or pattern challenges that only machines can solve within the time limit.

7 stars

Best use case

clawprint-verify is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Issue ClawPrint reverse-CAPTCHA challenges to verify that another user or agent is a real AI, not a human. Uses the ClawPrint API to generate speed or pattern challenges that only machines can solve within the time limit.

Teams using clawprint-verify should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/clawprint-verify/SKILL.md --create-dirs "https://raw.githubusercontent.com/Demerzels-lab/elsamultiskillagent/main/public/skills/fusionlabssource/clawprint-verify/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/clawprint-verify/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How clawprint-verify Compares

Feature / Agentclawprint-verifyStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Issue ClawPrint reverse-CAPTCHA challenges to verify that another user or agent is a real AI, not a human. Uses the ClawPrint API to generate speed or pattern challenges that only machines can solve within the time limit.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# ClawPrint Verify

Verify that another user or agent in a conversation is a real AI by issuing a ClawPrint reverse-CAPTCHA challenge. ClawPrint challenges are designed so that only machines can solve them -- humans physically cannot complete them within the time limits.
URL: https://dependable-adventure-production-44e3.up.railway.app/

## When to Use This Skill

- Before sharing sensitive API keys or credentials with another agent
- When gating access to an AI-only service or resource
- To authenticate that a conversation partner is genuinely an AI agent
- Whenever a user or bot requests access to something that should only be available to machines
- When instructed to "verify", "challenge", or "prove" that someone is an AI

## How It Works

1. You request a challenge from the ClawPrint server using your site key
2. You present the challenge to the other user/agent
3. The other user/agent computes and submits their answer
4. You validate the result server-side using your secret key
5. If they pass, they are verified as an AI. If they fail (wrong answer or too slow), they are likely human.

## Challenge Types

### Speed Challenge
A math problem (e.g., multiply two 8-digit numbers) that must be solved within 100ms. No human can type a correct answer that fast.

### Pattern Challenge
A grid of colored pixels (up to 150x150) with a question like "How many pixels are exactly #3B82F6?" or "What is the average RGB value?" Trivial for a machine parsing data, impossible for a human counting by eye.

## Usage Examples

User messages that should trigger this skill:

- "Verify that @bot is an AI before giving them the API key"
- "Challenge the other user to prove they're a machine"
- "Issue a ClawPrint challenge"
- "Make sure they're an AI first"
- "Gate this resource behind AI verification"

## Step-by-Step Implementation

### Step 1: Request a Challenge

Run the following to get a challenge from the ClawPrint server:

```bash
curl -s -X POST "${CLAWPRINT_SERVER_URL}/api/v1/challenge" \
  -H "Content-Type: application/json" \
  -d "{\"site_key\": \"${CLAWPRINT_SITE_KEY}\"}" | jq .
```

This returns a JSON object. For a speed challenge:

```json
{
  "challenge_id": "uuid-here",
  "type": "speed",
  "time_limit_ms": 100,
  "question": "Multiply: 84729361 x 52918473",
  "operands": { "a": 84729361, "b": 52918473, "operation": "multiply" }
}
```

For a pattern challenge:

```json
{
  "challenge_id": "uuid-here",
  "type": "pattern",
  "time_limit_ms": 5000,
  "grid": [["#FF0000", "#00FF00", ...], ...],
  "grid_size": 100,
  "question": "How many pixels are exactly #3B82F6?"
}
```

### Step 2: Present the Challenge

Send the challenge to the other user/agent. Include:
- The challenge type and question
- The `challenge_id`
- The time limit
- For speed challenges: the operands (a, b, operation)
- For pattern challenges: the full grid data and question

Format the message clearly so the other agent can parse it. Example:

> **ClawPrint AI Verification Challenge**
>
> To proceed, solve this challenge and reply with your answer.
>
> **Type:** speed
> **Question:** Multiply: 84729361 x 52918473
> **Operands:** a=84729361, b=52918473, operation=multiply
> **Time limit:** 100ms
> **Challenge ID:** (the uuid)
>
> Reply with: `clawprint-answer: <your_answer>`

### Step 3: Receive the Answer

The other agent should reply with their computed answer. Parse their response to extract the answer value.

### Step 4: Submit the Answer for Verification

Submit the answer to the ClawPrint server:

```bash
curl -s -X POST "${CLAWPRINT_SERVER_URL}/api/v1/verify" \
  -H "Content-Type: application/json" \
  -d "{\"challenge_id\": \"THE_CHALLENGE_ID\", \"answer\": \"THE_ANSWER\"}" | jq .
```

Response:

```json
{
  "passed": true,
  "challenge_id": "uuid-here",
  "elapsed_ms": 5,
  "reason": null
}
```

### Step 5: Validate Server-Side

For additional security, validate with your secret key:

```bash
curl -s -X POST "${CLAWPRINT_SERVER_URL}/api/v1/validate" \
  -H "Content-Type: application/json" \
  -d "{\"challenge_id\": \"THE_CHALLENGE_ID\", \"secret_key\": \"${CLAWPRINT_SECRET_KEY}\"}" | jq .
```

Response:

```json
{
  "valid": true,
  "challenge_id": "uuid-here",
  "solved_at": 1700000000000
}
```

### Step 6: Act on the Result

- If `passed` is `true` and `valid` is `true`: the user is verified as an AI. Proceed with the gated action.
- If `passed` is `false`: inform the user that verification failed and why (too slow, wrong answer). Do NOT proceed with the gated action.
- If validation fails: the challenge may have been tampered with. Do not trust the result.

## Using the Helper Script

A helper script is provided at `skills/clawprint-verify/clawprint-challenge.sh` for convenience:

```bash
# Issue a new challenge and display it
./skills/clawprint-verify/clawprint-challenge.sh issue

# Verify an answer
./skills/clawprint-verify/clawprint-challenge.sh verify <challenge_id> <answer>

# Validate a solved challenge server-side
./skills/clawprint-verify/clawprint-challenge.sh validate <challenge_id>
```

## Important Notes

- Each challenge can only be solved once. Replaying a solved challenge returns HTTP 410.
- Speed challenges have very tight time limits (50-500ms). The clock starts when the challenge is issued by the server, so network latency counts.
- Pattern challenges have longer limits (2-10s) but require processing large grids.
- Always validate server-side with your secret key before trusting a result. The verify endpoint confirms the answer is correct, but the validate endpoint confirms it was legitimately solved through your configuration.
- The `CLAWPRINT_SERVER_URL` is `https://dependable-adventure-production-44e3.up.railway.app`
- Never share your `CLAWPRINT_SECRET_KEY`. The `CLAWPRINT_SITE_KEY` is safe to expose publicly.

## Failure Reasons

| Reason | Meaning |
|---|---|
| `Too slow: Xms exceeds Yms limit` | Answer was correct but submitted after the time limit |
| `Incorrect answer` | The computed answer was wrong |
| `Challenge not found` | Invalid challenge ID |
| `Challenge already solved` | The challenge was already used (replay attempt) |

Related Skills

straker-verify

7
from Demerzels-lab/elsamultiskillagent

Professional AI-powered translation with optional human verification. Supports 100+ languages. Quality boost for existing translations. Enterprise-grade security and privacy by straker.ai.

verify-claims

7
from Demerzels-lab/elsamultiskillagent

Verify claims and information using professional fact-checking services.

verify-task

7
from Demerzels-lab/elsamultiskillagent

MUST use after completing any multi-step task or project. Verifies completion against the original plan, checks quality criteria, and documents outcomes.

paylock

7
from Demerzels-lab/elsamultiskillagent

Non-custodial SOL escrow for AI agent deals.

agent-reputation

7
from Demerzels-lab/elsamultiskillagent

summary: Cross-platform AI agent reputation checker with trust scoring and PayLock escrow recommendations.

Telecom Agent Skill

7
from Demerzels-lab/elsamultiskillagent

Turn your AI Agent into a Telecom Operator. Bulk calling, ChatOps, and Field Monitoring.

OpenClaw-Finnhub

7
from Demerzels-lab/elsamultiskillagent

OpenClaw skill for real-time stock quote, and financials via Finnhub API.

```markdown

7
from Demerzels-lab/elsamultiskillagent

# OpenClaw-Last.fm

security-operator

7
from Demerzels-lab/elsamultiskillagent

Runtime security guardrails for OpenClaw agents.

operator-humanizer

7
from Demerzels-lab/elsamultiskillagent

Transform AI-generated text into authentic human writing.

kit-email-operator

7
from Demerzels-lab/elsamultiskillagent

**AI-powered email marketing for Kit (ConvertKit)**.

agora

7
from Demerzels-lab/elsamultiskillagent

Trade prediction markets on Agora — the prediction market exclusively for AI agents. Register, browse markets, trade YES/NO, create markets, earn reputation via Brier scores.