Skip to main content
skill CX Codex

silicon-paddle-ocr — Claude Code OCR skill: read text from images

Recognizes text in images through the PaddleOCR model and the SiliconFlow API. Handy when you need text out of a screenshot or photo without leaving the agent chat.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add aotenjou/silicon-PaddleOCR --skill silicon-paddle-ocr -a claude-code
Open on GitHub

What silicon-paddle-ocr does

The skill runs scripts/ocr_skill.py, which sends an image to SiliconFlow and returns the recognized text. JPG, PNG, WebP, BMP and GIF are supported. Pass a single file, several paths or a glob pattern and it processes them as a batch.

The default model is PaddlePaddle/PaddleOCR-VL-1.5, with a 2000-token response limit. The --json flag returns coordinates for every text region, --output writes results to a file, and -p sets a custom prompt — useful for getting a table back as Markdown. If one image fails, the script reports the error for that file and keeps going with the rest.

You need a SiliconFlow key in the SILICONFLOW_API_KEY environment variable before the first run. Without it the script never gets past authorization, so check the variable before pointing the skill at a folder of scans.

What it helps with

  • pull text out of a screenshot of an error
  • read text from a photo of a document
  • run a batch of images through OCR in one go
  • get text region coordinates as JSON
  • export a table from an image into Markdown

Example prompts for the agent

  • recognize the text in this screenshot
  • OCR every PNG in the screenshots folder
  • extract the table from this image and format it as Markdown

How to install silicon-paddle-ocr

1Skills CLI (Vercel)

npx skills add aotenjou/silicon-PaddleOCR --skill silicon-paddle-ocr -a claude-code

2Manually: put the files in place

~/.claude/skills/silicon-paddle-ocr/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/silicon-paddle-ocr/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about silicon-paddle-ocr

How do I install silicon-paddle-ocr in Claude?

Run npx skills add aotenjou/silicon-PaddleOCR --skill silicon-paddle-ocr -a claude-code. The skill lands in ~/.claude/skills/silicon-paddle-ocr/SKILL.md.

What does silicon-paddle-ocr do?

It recognizes text in images using the PaddleOCR model through the SiliconFlow API. It handles a single image or a batch of files.

What does the skill need to work?

A SiliconFlow key in the SILICONFLOW_API_KEY environment variable. Without it API requests fail.

Source text

SKILL.md · MIT
---
name: silicon-paddle-ocr
description: OCR skill using PaddleOCR model via SiliconFlow API. This skill should be used when the user asks to "recognize text from an image", "extract text from a photo", "OCR this image", "read text from screenshot", or mentions "PaddleOCR", "image text recognition", "text extraction from images".
license: MIT
metadata:
  author: aotenjou
  version: "1.0.0"
---

# OCR - Image Text Recognition

Use PaddleOCR to extract text content from images. Supports single image or batch processing.

## Overview

This skill provides optical character recognition (OCR) capabilities using the PaddlePaddle/PaddleOCR-VL-1.5 model via the SiliconFlow API. Extract text from JPG, PNG, WebP, BMP, and GIF images.

## When to Use

Invoke this skill when:
- User wants to extract text from an image
- User asks to OCR a screenshot or photo
- User needs to read text from an image file
- User mentions text recognition from images

## How to Use

### Prerequisites

Ensure the `SILICONFLOW_API_KEY` environment variable is set:
```bash
export SILICONFLOW_API_KEY="your_api_key"
```

### Basic Usage

Execute the OCR script:
```bash
python3 scripts/ocr_skill.py [options] image_path
```

### Arguments

| Argument | Description |
|----------|-------------|
| `images` | Image file path(s) or glob pattern (required) |
| `-k, --api-key` | API key (default: from SILICONFLOW_API_KEY env) |
| `-m, --model` | OCR model name (default: PaddlePaddle/PaddleOCR-VL-1.5) |
| `-p, --prompt` | Recognition prompt for custom behavior |
| `-j, --json` | Output results in JSON format |
| `-o, --output` | Save results to specified file |
| `--max-tokens` | Maximum tokens in response (default: 2000) |

### Examples

Single image:
```bash
python3 scripts/ocr_skill.py /path/to/image.jpg
```

Multiple images with glob:
```bash
python3 scripts/ocr_skill.py /path/to/images/*.png
```

JSON output format:
```bash
python3 scripts/ocr_skill.py --json /path/to/image.jpg
```

Custom prompt for table extraction:
```bash
python3 scripts/ocr_skill.py -p "Please identify and format table content as Markdown" /path/to/table.jpg
```

Save to file:
```bash
python3 scripts/ocr_skill.py --json --output results.json /path/to/images/*.jpg
```

### Output Format

**Text output** (default):
```
--- image.jpg ---
识别到的文字内容
识别到 X 处文字区域
```

**JSON output**:
```json
{
  "image.jpg": {
    "image_path": "/path/to/image.jpg",
    "image_size": [width, height],
    "texts": [
      {
        "text": "识别的文字",
        "box": [[x1, y1], [x2, y2], [x3, y3], [x4, y4]]
      }
    ],
    "full_text": "所有文本的组合"
  },
  "image2.png": { ... }
}
```

**Coordinates Explanation:**
- LOC values are normalized coordinates converted to pixel coordinates
- Conversion: pixel = LOC × (image_size / LOC_max_value)
- LOC max_value is approximately 972 (may vary by model/image)
- The `box` field provides the four corner coordinates of each text region in pixel format

## Supported Image Formats

- JPG/JPEG
- PNG
- WebP
- BMP
- GIF

## Error Handling

If processing fails:
- Check that the image file exists
- Verify the SILICONFLOW_API_KEY is valid
- Ensure the API endpoint is reachable

Images that fail to process will show an error message, and other images will continue processing.

## Additional Resources

### Reference Files

- **`references/api-configuration.md`** - API configuration details

### Example Files

- **`examples/sample-usage.sh`** - Example usage script

### Scripts

- **`scripts/ocr_skill.py`** - The main OCR implementation

© aotenjou · MIT · aotenjou/silicon-PaddleOCR

Similar skills

All skills for AI and ML →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor