← Back to Skills Marketplace
scnet-sugon

Bus Ticket Ocr

by SCNet-sugon · GitHub ↗ · v1.0.3 · MIT-0
cross-platform ✓ Security Clean
106
Downloads
0
Stars
0
Active Installs
3
Versions
Install in OpenClaw
/install bus-ticket-ocr
Description
支持识别汽车票票据。
README (SKILL.md)

\r

Sugon-Scnet 汽车票识别 OCR 技能\r

\r 本技能封装了 Sugon-Scnet 汽车票识别 OCR 服务,通过单一接口即可调用 1 种识别能力,高效提取文字及票据信息。\r \r

功能特性\r

\r

  • 汽车票据:覆盖汽车票识别,自动提取关键字段。\r \r

前置配置\r

\r

⚠️ 重要:使用前需要申请 Scnet API Token\r \r

申请 API Token\r

\r

  1. 访问 Scnet 官网 注册/登录\r
  2. 在控制台申请 API 密钥(格式:sc-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)\r
  3. 复制密钥备用\r \r

配置 Token\r

\r 手动配置(推荐)\r

  1. 在技能目录下创建 config/.env 文件,内容如下:\r
# =====  Sugon-Scnet OCR API 配置 =====\r
# 申请地址:https://www.scnet.cn\r
SCNET_API_KEY=your_scnet_api_key_here\r
\r
# API 基础地址(一般无需修改)\r
SCNET_API_BASE=https://api.scnet.cn/api/llm/v1\r
```\r
2. 添加:`SCNET_API_KEY=你的密钥`\r
3. 设置文件权限为 600(仅所有者可读写)\r
**⚠️ 安全警告**:切勿将 API Key 直接粘贴到聊天对话中,否则可能被记录或泄露。\r
\r
\r
### Token 更新\r
\r
Token 过期后调用会返回 401 或 403 错误。更新方法:重新申请 Token 并替换 config/.env 中的 SCNET_API_KEY。\r
### 依赖安装\r
\r
本技能需要 Python 3.6+ 和 requests 库。请运行以下命令:\r
\r
```bash\r
   pip install requests\r
```\r
\r
---\r
### 使用方法\r
\r
### 参数说明\r
\r
| 参数名 | 类型 | 必填 | 描述 |\r
|--------|------|------|------|\r
| ocrType | string | 是 | 识别类型枚举。必须为以下之一:\x3Cbr>• BUS_TICKET(汽车票) |\r
| filePath | string | 是 | 待识别图片的本地绝对路径。支持 jpg、png、pdf 等常见格式。 |\r
\r
### 命令行调用示例\r
\r
```bash\r
   python .claude/skills/bus_ticket_ocr/scripts/main.py BUS_TICKET /path/to/invoice.jpg\r
```\r
\r
### 在 AI 对话中使用\r
\r
用户可以说:\r
\r
- “帮我识别这张汽车票,图片在 /Users/name/Downloads/id.jpg”\r
\r
AI 会根据 description 中的关键词自动触发本技能。\r
\r
### AI 调用建议\r
为避免触发 API 速率限制(10 QPS),请串行调用本技能,即等待前一个识别完成后再发起下一个请求。\r
如果使用 OpenClaw 的 exec 工具,建议设置 timeout 或 yieldMs 参数,让命令同步执行,避免多个命令同时运行导致并发。\r
\r
### 配置选项\r
\r
编辑 `config/.env` 文件:\r
\r
| 变量名 | 默认值 | 说明 |\r
|--------|--------|------|\r
| SCNET_API_KEY | 必需 | Scnet API 密钥 |\r
| SCNET_API_BASE | https://api.scnet.cn/api/llm/v1 | API 基础地址(一般无需修改) |\r
\r
### 输出\r
\r
- 标准输出:识别结果的 JSON 数据,结构与 API 文档一致,位于 `data` 字段内。\r
- 识别结果位于 data[0].result[0].elements 中,具体字段取决于 ocrType。\r
- 错误信息:如果发生错误,会输出以 `错误:` 开头的友好提示。\r
\r
### 注意事项\r
\r
- 本技能调用的 OCR API 有 10 QPS 的速率限制。\r
- 如果遇到 429 错误,请等待 2-3 秒后重试,不要连续发起请求。\r
- 建议在调用前确保图片已准备就绪,避免因网络问题导致重复调用。\r
\r
### 故障排除\r
\r
| 问题 | 解决方案 |\r
|------|----------|\r
| 配置文件不存在 | 创建 config/.env 并填入 Token(参考前置配置) |\r
| API Key 无效/过期 | 重新申请 Token 并更新 `.env` 文件 |\r
| 文件不存在 | 检查提供的文件路径是否正确 |\r
| 网络连接失败 | 检查网络连接或防火墙设置 |\r
| 不支持的文件类型 | 确保文件扩展名为允许的类型(参考 API 文档) |\r
| 401/403/Unauthorized | Token 无效或过期,重新申请并配置 |\r
| 429 Too Many Requests | 请求过于频繁,技能会自动等待并重试(最多 3 次)。若持续失败,请降低调用频率或联系服务方提高限额。 |\r
\r
Usage Guidance
This skill will send any image file path you provide to Scnet's OCR API and requires an SCNET_API_KEY. Before installing, verify you trust the Scnet service and are comfortable sending those images off-host (do not send sensitive personal data unless you accept that). Correct the metadata mismatch: the registry should declare SCNET_API_KEY as required so the platform can surface the credential prompt. Store the API key securely (use environment variable or config/.env with permissions 600 as recommended) and never paste it into chat. If you need to keep images local, do not use this skill; consider an offline OCR alternative. Finally, note the skill's homepage entry in skill.yaml appears to be a placeholder — if provenance matters, ask the publisher for an authoritative source repository or documentation.
Capability Analysis
Type: OpenClaw Skill Name: bus-ticket-ocr Version: 1.0.3 The bus-ticket-ocr skill is a legitimate implementation for performing OCR on bus tickets using the Sugon-Scnet API. The Python script (scripts/main.py) follows standard practices for configuration loading, error handling, and API interaction, including a retry mechanism for rate limiting. No evidence of data exfiltration, malicious execution, or harmful prompt injection was found; notably, the documentation in SKILL.md includes proactive security warnings advising users not to share their API keys in chat sessions.
Capability Tags
cryptocan-make-purchasesrequires-sensitive-credentials
Capability Assessment
Purpose & Capability
The skill's name/description (bus ticket OCR) align with the included code and SKILL.md which call Scnet's OCR API. One inconsistency: the registry metadata at the top of the submission reported "Required env vars: none", but both SKILL.md, skill.yaml, and scripts/main.py require SCNET_API_KEY (and optionally SCNET_API_BASE). This discrepancy is likely a packaging/metadata error and should be corrected.
Instruction Scope
SKILL.md and the script limit actions to reading a local image file path supplied by the user, loading SCNET_API_KEY from env or config/.env, and POSTing the file to https://api.scnet.cn/api/llm/v1/ocr/recognize. The instructions and code do not attempt to read other system files or unrelated environment variables. Note: the skill will transmit the user-supplied image to an external API (Scnet) — this is expected for an OCR service but is a privacy consideration for sensitive images.
Install Mechanism
No install spec — the skill is instruction-only with an included Python script. Dependencies are minimal (python3, requests) and there is no remote download or archive extraction. This is low-risk from an install perspective.
Credentials
The only required credential is SCNET_API_KEY (plus optional SCNET_API_BASE). That is proportionate to the stated functionality. Again, the registry metadata incorrectly listed no required env vars while the skill actually requires SCNET_API_KEY; ensure the platform prompts for this credential before use.
Persistence & Privilege
The skill does not request permanent/always-on presence and does not modify other skills or system configuration. It runs as a normal invocable skill and only reads/writes within its own skill directory (reads config/.env if present).
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install bus-ticket-ocr
  3. After installation, invoke the skill by name or use /bus-ticket-ocr
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.3
bus-ticket-ocr v1.0.3 - Added skill.yaml metadata file. - SKILL.md now specifies required/optional environment variables, dependencies, and safer configuration steps. - Improved documentation: clarified API key handling, installation requirements, and updated sample usage. - Enhanced security guidance for API key management in configuration.
v1.0.1
bus-ticket-ocr 1.0.1 - No changes detected from the previous version. - Version number updated only; functionality and documentation remain the same.
v0.1.0
Initial release with OCR support for bus tickets: - Added OCR capability for extracting structured information from bus ticket images. - Supports input parameters: ocrType and filePath. - Outputs structured JSON with recognition results and confidence scores. - Requires configuration of Scnet API Token via .env file. - Handles common errors such as invalid API key, file not found, network issues, and rate limiting (10 QPS). - Includes CLI and AI dialogue usage instructions.
Metadata
Slug bus-ticket-ocr
Version 1.0.3
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 3
Frequently Asked Questions

What is Bus Ticket Ocr?

支持识别汽车票票据。 It is an AI Agent Skill for Claude Code / OpenClaw, with 106 downloads so far.

How do I install Bus Ticket Ocr?

Run "/install bus-ticket-ocr" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Bus Ticket Ocr free?

Yes, Bus Ticket Ocr is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Bus Ticket Ocr support?

Bus Ticket Ocr is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Bus Ticket Ocr?

It is built and maintained by SCNet-sugon (@scnet-sugon); the current version is v1.0.3.

💬 Comments