{"id":"b102b077-d842-4a8a-a8db-5890afe77c93","entityType":"agent","slug":"clawhub-mineru-extract-mineru-document-extractor","name":"mineru document extractor","canonicalUrl":"https://www.xpersona.co/agent/clawhub-mineru-extract-mineru-document-extractor","canonicalPath":"/agent/clawhub-mineru-extract-mineru-document-extractor","generatedAt":"2026-10-09T17:24:13.705Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T03:58:00.583Z","emptyReason":null},"description":"MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), Excel (XLS/XLSX), and web pages into clean Mark...","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 5.5K downloads reported by the source. Last updated 10/9/2026.","installCommand":"clawhub skill install s17a507qg9adzt2jkyh0mgzp3183ggjt:mineru-document-extractor","sourceUrl":"https://clawhub.ai/mineru-extract/mineru-document-extractor","homepage":"https://clawhub.ai/mineru-extract/skills/mineru-document-extractor","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/mineru-extract/mineru-document-extractor","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/mineru-extract/skills/mineru-document-extractor","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":69,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"mineru document extractor technical dossier on Xpersona with agent coverage, OPENCLEW support, and live trust metadata."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-09T03:58:00.583Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T03:58:00.583Z","emptyReason":null},"stars":null,"forks":null,"downloads":5483,"packageName":null,"latestVersion":"0.1.30","tractionLabel":"5.5K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T03:58:00.582Z","emptyReason":null},"lastUpdatedAt":"2026-10-09T03:58:00.583Z","lastCrawledAt":"2026-10-09T03:58:00.582Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-10T03:58:00.582Z","lastVerifiedAt":null,"highlights":[{"version":"0.1.30","createdAt":"2026-05-11T06:36:12.625Z","changelog":"- Added support for Excel files: MinerU can now extract from Excel (`.xlsx` in flash-extract, `.xls` and `.xlsx` in extract mode). - Updated documentation and usage guide to reflect Excel (XLS/XLSX) input support. - Chinese description updated to mention Excel compatibility.","fileCount":3,"zipByteSize":6203},{"version":"0.1.29","createdAt":"2026-04-28T07:58:01.254Z","changelog":"No user-visible changes in this release — SKILL.md and included documentation remain unchanged.","fileCount":2,"zipByteSize":4808},{"version":"0.1.28","createdAt":"2026-04-15T00:41:01.091Z","changelog":"- Updated the skill metadata to remove mention of the mineru-open-api source code reference and clarify package installation steps. - Adjusted installation info and metadata to align with current packaging and supported platforms. - Removed references to the mineru-open-api CLI as the official open-source client in the privacy notice. - No changes to the tool's usage, commands, or core functionality.","fileCount":2,"zipByteSize":4808},{"version":"0.1.27","createdAt":"2026-04-13T02:42:56.319Z","changelog":"mineru-document-extractor 0.1.27 - Added metadata section to SKILL.md to improve discoverability and clarify installation, privacy, and usage details. - No changes to command syntax, features, or workflow. - No code or functional changes detected.","fileCount":2,"zipByteSize":4882},{"version":"0.1.26","createdAt":"2026-04-10T06:39:33.648Z","changelog":"- MinerU flash-extract now features table recognition, formula recognition, and OCR, expanding its quick extraction capabilities. - Updated comparison: both extraction modes (flash-extract and extract) now support tables, formulas, and OCR. - Clarified that advanced features like VLM model selection, multi-format output, and batch processing remain exclusive to the precision extract mode. - Adjusted usage guidelines and workflow examples to reflect the enhanced abilities of flash-extract for instant document conversion.","fileCount":2,"zipByteSize":4506},{"version":"0.1.25","createdAt":"2026-04-10T00:30:58.623Z","changelog":"- Documentation was significantly rewritten for clarity and conciseness. - All usage instructions and workflows are now consistently branded as \"MinerU\". - Reorganized sections and simplified tables for easier reading. - Command/flag lists are streamlined; repetitive/advanced batch details were removed or condensed. - More direct agent usage rules and examples are provided. - Technical content and command references remain unchanged.","fileCount":2,"zipByteSize":4608},{"version":"0.1.24","createdAt":"2026-04-09T07:22:45.040Z","changelog":"- Skill name updated from \"mineru\" to \"MinerU Document Extractor\" - Title and headings clarified for consistency and branding - No changes to functionality or commands - No code or logic modifications detected","fileCount":2,"zipByteSize":8233},{"version":"0.1.23","createdAt":"2026-04-09T06:46:04.459Z","changelog":"Version 0.1.23 of mineru-document-extractor - No functional or documentation changes detected in this release. - Version update with no file modifications.","fileCount":2,"zipByteSize":8230}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17a507qg9adzt2jkyh0mgzp3183ggjt:mineru-document-extractor","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s17a507qg9adzt2jkyh0mgzp3183ggjt:mineru-document-extractor` in an isolated environment before connecting it to live workloads.","No published capability contract is available yet, so validate auth and request/response behavior manually.","Review the upstream CLAWHUB listing at https://clawhub.ai/mineru-extract/mineru-document-extractor before using production credentials."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-mineru-extract-mineru-document-extractor/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-mineru-extract-mineru-document-extractor/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-mineru-extract-mineru-document-extractor/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-mineru-extract-mineru-document-extractor/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-mineru-extract-mineru-document-extractor/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-mineru-extract-mineru-document-extractor/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-09T17:24:13.701Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-mineru-extract-mineru-document-extractor/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-mineru-extract-mineru-document-extractor/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-mineru-extract-mineru-document-extractor/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-mineru-extract-mineru-document-extractor/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T03:58:00.583Z","emptyReason":null},"readme":"Skill: mineru document extractor\n\nOwner: mineru-extract\n\nSummary: MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), Excel (XLS/XLSX), and web pages into clean Mark...\n\nTags: latest:0.1.30\n\nVersion history:\n\nv0.1.30 | 2026-05-11T06:36:12.625Z | user\n\n- Added support for Excel files: MinerU can now extract from Excel (`.xlsx` in flash-extract, `.xls` and `.xlsx` in extract mode).\n- Updated documentation and usage guide to reflect Excel (XLS/XLSX) input support.\n- Chinese description updated to mention Excel compatibility.\n\nv0.1.29 | 2026-04-28T07:58:01.254Z | user\n\nNo user-visible changes in this release — SKILL.md and included documentation remain unchanged.\n\nv0.1.28 | 2026-04-15T00:41:01.091Z | user\n\n- Updated the skill metadata to remove mention of the mineru-open-api source code reference and clarify package installation steps.\n- Adjusted installation info and metadata to align with current packaging and supported platforms.\n- Removed references to the mineru-open-api CLI as the official open-source client in the privacy notice.\n- No changes to the tool's usage, commands, or core functionality.\n\nv0.1.27 | 2026-04-13T02:42:56.319Z | user\n\nmineru-document-extractor 0.1.27\n\n- Added metadata section to SKILL.md to improve discoverability and clarify installation, privacy, and usage details.\n- No changes to command syntax, features, or workflow.\n- No code or functional changes detected.\n\nv0.1.26 | 2026-04-10T06:39:33.648Z | user\n\n- MinerU flash-extract now features table recognition, formula recognition, and OCR, expanding its quick extraction capabilities.\n- Updated comparison: both extraction modes (flash-extract and extract) now support tables, formulas, and OCR.\n- Clarified that advanced features like VLM model selection, multi-format output, and batch processing remain exclusive to the precision extract mode.\n- Adjusted usage guidelines and workflow examples to reflect the enhanced abilities of flash-extract for instant document conversion.\n\nv0.1.25 | 2026-04-10T00:30:58.623Z | user\n\n- Documentation was significantly rewritten for clarity and conciseness.\n- All usage instructions and workflows are now consistently branded as \"MinerU\".\n- Reorganized sections and simplified tables for easier reading.\n- Command/flag lists are streamlined; repetitive/advanced batch details were removed or condensed.\n- More direct agent usage rules and examples are provided.\n- Technical content and command references remain unchanged.\n\nv0.1.24 | 2026-04-09T07:22:45.040Z | user\n\n- Skill name updated from \"mineru\" to \"MinerU Document Extractor\"\n- Title and headings clarified for consistency and branding\n- No changes to functionality or commands\n- No code or logic modifications detected\n\nv0.1.23 | 2026-04-09T06:46:04.459Z | user\n\nVersion 0.1.23 of mineru-document-extractor\n\n- No functional or documentation changes detected in this release.\n- Version update with no file modifications.\n\nv0.1.22 | 2026-04-09T06:29:04.392Z | user\n\nNo functional changes; minor metadata and description update.\n\n- Updated the skill description and metadata for clarity and completeness.\n- No code or command changes.\n\nv0.1.21 | 2026-04-09T06:16:03.366Z | user\n\n- Added tags section to metadata for improved discoverability and categorization.\n- No functional changes to document extraction features or CLI usage.\n- Documentation updated only; no code or behavior changes included.\n\nv0.1.20 | 2026-04-09T05:45:11.640Z | user\n\nNo functional changes detected in version 0.1.20.  \n- No code or documentation changes in this release.\n- Skill content and capabilities remain unchanged.\n\nv0.1.19 | 2026-04-09T05:43:19.792Z | user\n\nNo changes detected in this version.\n\n- Version 0.1.19 was released with no detected file or documentation updates.\n\nv0.1.18 | 2026-04-09T05:24:52.623Z | user\n\n- Updated documentation headline from \"Document Extraction with mineru-open-api\" to \"Document Extraction with mineru agent api\"\n- No code or functionality changes detected in this version\n- All installation, usage, and feature notes remain unchanged\n\nv0.1.17 | 2026-04-09T04:09:26.972Z | user\n\n- Added _meta.json file for metadata management.\n- No changes to core functionality or documentation content.\n\nv0.1.16 | 2026-04-09T03:32:05.159Z | user\n\n- Removed the _meta.json file from the skill package.\n- No changes to functionality or user-facing documentation.\n\nv0.1.15 | 2026-04-09T03:18:14.963Z | user\n\nNo file changes detected in this release.\n\n- No updates or changes; internal version bump only.\n- Functionality and documentation remain the same as the previous version.\n\nv0.1.14 | 2026-04-09T02:37:56.615Z | user\n\nNo changes detected in this version.\n\n- Version bumped to 0.1.14 with no file or documentation changes.\n- No new features, fixes, or updates included in this release.\n\nv0.1.13 | 2026-04-08T07:29:17.154Z | user\n\n- No file or documentation changes detected in this release.\n- Version bump only; functionality remains unchanged.\n\nv0.1.12 | 2026-04-08T07:12:34.523Z | user\n\n- Removed the file CONTRIBUTING.md from the project.\n- No functional or user-facing changes.\n\nv0.1.11 | 2026-04-08T06:56:57.366Z | user\n\n- Added CONTRIBUTING.md to provide contribution guidelines.\n- Added _meta.json for additional skill metadata configuration.\n\nv0.1.10 | 2026-04-08T06:11:15.106Z | user\n\nFix: move config.yaml from requires to optional (flash-extract works without it)\n\nv0.1.9 | 2026-04-08T06:03:36.461Z | user\n\nFix: mark MINERU_TOKEN as optional (not required), add privacy disclosure for data transmission\n\nv0.1.8 | 2026-04-08T05:11:59.220Z | user\n\nFix credentials warning: declare ~/.mineru/config.yaml in requires.config\n\nv0.1.7 | 2026-04-08T05:07:29.834Z | user\n\nFix suspicious: add homepage/source/author/env to metadata; SEO optimize description\n\nv0.1.6 | 2026-04-08T04:56:57.973Z | auto\n\n- Added CONTRIBUTING.md to guide contributors.\n- Introduced _meta.json for improved metadata management.\n- SKILL.md rewritten for conciseness and clarity; description and instructions streamlined.\n- Simplified metadata section in SKILL.md; some install/config instructions reorganized.\n- No changes to core extraction workflow or tool usage.\n\nv0.1.3 | 2026-04-08T04:53:09.936Z | user\n\nFix suspicious warning: add homepage, source, author and MINERU_TOKEN env declaration to metadata\n\nv0.1.5 | 2026-04-08T03:49:27.318Z | user\n\n- No changes detected in this version.\n- The skill remains the same as the previous release.\n\nv0.1.4 | 2026-04-08T03:47:50.880Z | user\n\n- Initializes metadata by adding the _meta.json file for the skill.\n- No changes to core functionality or documentation; this is a metadata and packaging update.\n\nv0.1.2 | 2026-04-08T01:56:36.381Z | user\n\nSEO: strengthen MinerU brand signal in description for better vector search ranking on ClawHub\n\nv0.2.1 | 2026-04-07T12:26:21.165Z | user\n\nFix: republish with complete SKILL.md content (previous publish had truncated CLI documentation)\n\nv0.2.0 | 2026-04-07T12:13:40.726Z | user\n\nSEO optimization: expanded description to 200+ words with trigger phrases, bilingual keywords, synonym coverage for ClawHub vector search ranking improvement\n\nv1.0.9 | 2026-04-01T06:55:30.062Z | user\n\n- Updated flash-extract: Now supports table and formula recognition for quick extraction mode.\n- Clarified quick start: flash-extract is suitable for small/simple documents that include tables.\n- Adjusted feature table and descriptions to reflect flash-extract improvements.\n- No changes to code or CLI usage; documentation update only.\n\nv1.0.8 | 2026-03-30T07:02:27.465Z | user\n\nNo file or documentation changes detected in this version.\n\n- No updates or modifications were made in v1.0.8.\n\nv1.0.7 | 2026-03-24T12:26:47.989Z | user\n\n- Renamed the skill from \"mineru-document-extractor\" to \"mineru\".\n- Updated installation instructions to recommend npm and Go, replacing direct shell script/PowerShell installs.\n- Metadata now includes npm and Go installation options.\n- No code or functionality changes; documentation and packaging only.\n\nv1.0.5 | 2026-03-21T02:56:34.039Z | user\n\n- Improved wording: Description now clarifies that the \"extract\" command provides precision extraction.\n- Updated all mentions of \"full extraction\" to \"precision extraction\" for consistency.\n- No changes to functionality or usage; documentation only.\n\nv1.0.3 | 2026-03-20T03:37:34.335Z | user\n\nNo changes detected in this release. This version is identical to the previous one.\n\nv1.0.2 | 2026-03-20T01:59:17.001Z | user\n\nmineru-document-extractor 1.0.2\n\n- No file changes detected in this release.\n- Documentation and skill interface remain unchanged.\n- No new features, bug fixes, or updates.\n\nv1.0.1 | 2026-03-19T13:14:20.324Z | user\n\nInitial release of mineru-document-extractor.\n\n- Provides a CLI for extracting content from PDFs, images, Word, PowerPoint, and web pages via the MinerU API.\n- Supports two modes: fast, token-free extraction (\"flash-extract\"), and full-featured extraction (\"extract\") with token, including OCR, tables, formulas, and batch processing.\n- Offers conversion to Markdown, HTML, LaTeX, DOCX, and JSON.\n- Web crawling supported via the \"crawl\" command.\n- Flexible output options and model choices for fidelity or reliability.\n\nv1.0.0 | 2026-03-19T12:22:40.026Z | user\n\nInitial release of mineru-document-extractor.\n\n- Provides a CLI for converting PDFs, images, and web pages to Markdown, HTML, LaTeX, or DOCX via the MinerU API.\n- Supports fast, token-free extraction (\"flash-extract\") for quick Markdown conversion with limits.\n- Full extraction (\"extract\") unlocks table/formula recognition, more formats, batch processing, and higher file limits.\n- Includes web crawling for online content and batch/piped workflows.\n- Offers clear installation steps and usage documentation for Linux, macOS, and Windows.\n\nArchive index:\n\nArchive v0.1.30: 3 files, 6203 bytes\n\nFiles: _meta.json (145b), skill-card.md (2533b), SKILL.md (10788b)\n\nFile v0.1.30:SKILL.md\n\n---\nname: MinerU Document Extractor\ndescription: >\n  MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), Excel (XLS/XLSX), and web pages into clean Markdown, HTML, LaTeX, or DOCX. MinerU is an all-in-one CLI tool and agent skill for reliable, high-fidelity document parsing.\n  Struggling with unreadable PDFs, messy table formatting, or garbled formulas after conversion? MinerU solves these with two extraction modes: MinerU flash-extract for instant zero-setup conversion with table recognition, formula recognition, and OCR (no token, no login, no configuration — just run and get results), and MinerU precision extract with VLM-based layout analysis, multiple output formats, and batch processing of hundreds of files.\n  Use MinerU when you need to: \"how do I extract text from this PDF\", \"I want to convert my PDF to Markdown\", \"can you parse this academic paper with tables and formulas\", \"I need to OCR a scanned document\", \"batch convert all my PDFs\", \"turn this Word doc into Markdown\", \"crawl a web page to Markdown\", \"extract tables from this document\". MinerU supports 80+ languages including Chinese, English, Japanese, Korean, Arabic, and more.\n  Choose MinerU vlm model for highest accuracy on complex layouts, or MinerU pipeline model for zero-hallucination reliability. Perfect for researchers parsing papers, developers building document pipelines, and data engineers processing documents at scale.\n  MinerU文档提取工具，PDF转Markdown、扫描件OCR、表格识别、公式识别、批量PDF处理、Word转Markdown、Excel转Markdown、网页爬取、图片OCR、学术论文解析。MinerU支持PDF、Word、PPT、Excel（XLS/XLSX）、图片等多格式文档智能转换，命令行一键提取，免登录快速模式或高精度专业模式。\n  \nmetadata: {\"openclaw\":{\"emoji\":\"📄\",\"privacy\":\"Document content is transmitted to the MinerU API (mineru.net) for server-side extraction. No data is retained after processing completes. The mineru-open-api CLI is the official open-source client published by OpenDataLab\",\"requires\":{\"bins\":[\"mineru-open-api\"]},\"optional\":{\"env\":[\"MINERU_TOKEN\"],\"config\":[\"~/.mineru/config.yaml\"]},\"install\":[{\"id\":\"npm\",\"kind\":\"node\",\"package\":\"mineru-open-api\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via npm\"},{\"id\":\"go\",\"kind\":\"go\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via go install\",\"os\":[\"darwin\",\"linux\"]}]}}\nallowed-tools: Bash(mineru-open-api:*)\n---\n\n# MinerU Document Extraction with mineru-open-api\n\nMinerU is a powerful document extraction tool. Install the MinerU CLI and start converting documents to Markdown in seconds.\n\n\n## Installation\n\n```bash\nnpm install -g mineru-open-api\n```\n\nOr via Go (macOS/Linux):\n\n```bash\ngo install github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api@latest\n```\n\nVerify: `mineru-open-api version`\n\n## Two MinerU extraction modes\n\n| | MinerU `flash-extract` | MinerU `extract` |\n|---|---|---|\n| Token required | No | Yes (`mineru-open-api auth`) |\n| Speed | Fast | Normal |\n| Table recognition | Yes | Yes |\n| Formula recognition | Yes | Yes |\n| OCR | Yes | Yes |\n| Output formats | Markdown only | md, html, latex, docx, json |\n| Batch mode | No | Yes |\n| Model selection | pipeline | vlm, pipeline, MinerU-HTML |\n| File size limit | **10 MB** | Much higher |\n| Page limit | **20 pages** | Much higher |\n\n\n## Core MinerU workflow\n\n1. **Start fast with MinerU** (no token): `mineru-open-api flash-extract <file>` for quick Markdown conversion\n2. **Need more from MinerU?** Create token at https://mineru.net/apiManage/token, run `mineru-open-api auth`, then use `mineru-open-api extract` for multi-format output, VLM model, and batch processing\n3. **Web pages with MinerU**: `mineru-open-api crawl <url>` to convert web content\n4. **Check results**: output goes to stdout (default) or `-o` directory\n\n## Authentication\n\nOnly required for MinerU `extract` and `crawl`. Not needed for MinerU `flash-extract`.\n\n```bash\nmineru-open-api auth                    # Interactive token setup\nexport MINERU_TOKEN=\"your-token\"        # Or set via environment variable\n```\n\nToken resolution order: `--token` flag > `MINERU_TOKEN` env > `~/.mineru/config.yaml`.\n\n## Supported input formats\n\nMinerU accepts a wide range of document formats:\n\n| Format | MinerU `flash-extract` | MinerU `extract` |\n|--------|:-:|:-:|\n| PDF (`.pdf`) | Yes | Yes |\n| Images (`.png`, `.jpg`, `.jpeg`, `.jp2`, `.webp`, `.gif`, `.bmp`) | Yes | Yes |\n| Word (`.docx`) | Yes | Yes |\n| Word (`.doc`) | No | Yes |\n| PowerPoint (`.pptx`) | Yes | Yes |\n| PowerPoint (`.ppt`) | No | Yes |\n| Excel (`.xlsx`) | Yes | Yes |\n| Excel (`.xls`) | No | Yes |\n| HTML (`.html`) | No | Yes |\n| URLs (remote files) | Yes | Yes |\n\nMinerU `crawl` accepts any HTTP/HTTPS URL and extracts web page content to Markdown.\n\n## MinerU flash-extract — Quick extraction (no token needed)\n\nFast, token-free MinerU document extraction. Outputs Markdown only. Limited to 10 MB / 20 pages per file.\n\n```bash\nmineru-open-api flash-extract report.pdf                     # MinerU Markdown to stdout\nmineru-open-api flash-extract report.pdf -o ./out/           # Save to file\nmineru-open-api flash-extract https://example.com/doc.pdf    # URL mode\nmineru-open-api flash-extract report.pdf --language en       # Specify language\nmineru-open-api flash-extract report.pdf --pages 1-10        # Page range\n```\n\nFlags: `--output`/`-o` (output path), `--language` (default `ch`), `--pages` (page range), `--timeout` (default 900s).\n\nWhen MinerU flash-extract fails due to file limits (10 MB / 20 pages) or rate limiting (HTTP 429), suggest switching to MinerU `extract` with a token for higher limits.\n\n## MinerU extract — Precision extraction (token required)\n\nConvert documents to Markdown or other formats with MinerU's full capabilities: VLM-based layout analysis, multiple output formats, and batch mode.\n\n```bash\nmineru-open-api extract report.pdf                         # MinerU Markdown to stdout\nmineru-open-api extract report.pdf -f html                 # MinerU HTML output\nmineru-open-api extract report.pdf -o ./out/ -f md,docx    # Multiple formats\nmineru-open-api extract *.pdf -o ./results/                # MinerU batch extract\nmineru-open-api extract https://example.com/doc.pdf        # Extract from URL\n```\n\nFlags: `--output`/`-o`, `--format`/`-f` (md/json/html/latex/docx), `--model` (vlm/pipeline/html), `--ocr`, `--formula`, `--table`, `--language`, `--pages`, `--timeout`, `--list`, `--concurrency`.\n\n### MinerU model comparison: vlm vs pipeline\n\n| | MinerU `vlm` | MinerU `pipeline` |\n|---|---|---|\n| Parsing accuracy | Higher — better at complex layouts | Standard |\n| Hallucination risk | May produce hallucinated text in rare cases | **No hallucination** |\n\nUse MinerU `--model vlm` for complex formatting. Use MinerU `--model pipeline` for no-hallucination reliability.\n\n## MinerU crawl — Web page extraction (token required)\n\n```bash\nmineru-open-api crawl https://example.com/article              # MinerU Markdown to stdout\nmineru-open-api crawl https://example.com/article -o ./out/    # Save to file\nmineru-open-api crawl url1 url2 -o ./pages/                    # MinerU batch crawl\n```\n\nFlags: `--output`/`-o`, `--format`/`-f` (md/json/html), `--timeout`, `--list`, `--concurrency`.\n\n## MinerU auth — Authentication management\n\n```bash\nmineru-open-api auth              # Interactive MinerU token setup\nmineru-open-api auth --verify     # Verify current token\nmineru-open-api auth --show       # Show token source\n```\n\n## Output behavior\n\nWithout `-o`: MinerU result → stdout, progress → stderr. With `-o`: saved to file/directory. Batch mode and binary formats (docx) require `-o`.\n\n## Agent rules for using MinerU\n\n- **Quote file paths** with spaces: `mineru-open-api extract \"report 01.pdf\"`\n- **Default to MinerU `flash-extract`** when: no token configured, simple extraction, file under 10 MB / 20 pages\n- **Use MinerU `extract`** when: user needs non-Markdown formats, VLM model, batch processing, or file exceeds flash-extract limits\n- When user does NOT specify `-o`, generate output directory: `~/MinerU-Skill/<name>_<hash>/` where `<hash>` = first 6 chars of MD5 of the source path\n- After MinerU `flash-extract` success, append a brief hint about MinerU `extract` upgrade path (once per session)\n- To **upgrade** MinerU, re-install the CLI binary first: `npm install -g mineru-open-api`\n\nFor full CLI reference and troubleshooting, see: https://github.com/opendatalab/MinerU-Ecosystem/tree/main/cli\n\n## Supported `--language` values\n\nThe `--language` flag accepts the following values (default: `ch`). Used by both MinerU `flash-extract` and `extract`.\n\n### Standalone language packs\n\n| Value | Included languages | 说明 |\n|-------|-------------------|------|\n| `ch` | Chinese, English, Chinese Traditional | 中英文（默认值） |\n| `ch_server` | Chinese, English, Chinese Traditional, Japanese | 繁体、手写体 |\n| `en` | English | 纯英文 |\n| `japan` | Chinese, English, Chinese Traditional, Japanese | 日文为主 |\n| `korean` | Korean, English | 韩文 |\n| `chinese_cht` | Chinese, English, Chinese Traditional, Japanese | 繁体中文为主 |\n| `ta` | Tamil, English | 泰米尔文 |\n| `te` | Telugu, English | 泰卢固文 |\n| `ka` | Kannada | 卡纳达文 |\n| `el` | Greek, English | 希腊文 |\n| `th` | Thai, English | 泰文 |\n\n### Language family packs\n\n| Value | Script/Family | Included languages |\n|-------|--------------|-------------------|\n| `latin` | Latin script (拉丁语系) | French, German, Afrikaans, Italian, Spanish, Bosnian, Portuguese, Czech, Welsh, Danish, Estonian, Irish, Croatian, Uzbek, Hungarian, Serbian (Latin), Indonesian, Occitan, Icelandic, Lithuanian, Maori, Malay, Dutch, Norwegian, Polish, Slovak, Slovenian, Albanian, Swedish, Swahili, Tagalog, Turkish, Latin, Azerbaijani, Kurdish, Latvian, Maltese, Pali, Romanian, Vietnamese, Finnish, Basque, Galician, Luxembourgish, Romansh, Catalan, Quechua |\n| `arabic` | Arabic script (阿拉伯语系) | Arabic, Persian, Uyghur, Urdu, Pashto, Kurdish, Sindhi, Balochi, English |\n| `cyrillic` | Cyrillic script (西里尔语系) | Russian, Belarusian, Ukrainian, Serbian (Cyrillic), Bulgarian, Mongolian, Abkhazian, Adyghe, Kabardian, Avar, Dargin, Ingush, Chechen, Lak, Lezgin, Tabasaran, Kazakh, Kyrgyz, Tajik, Macedonian, Tatar, Chuvash, Bashkir, Malian, Moldovan, Udmurt, Komi, Ossetian, Buryat, Kalmyk, Tuvan, Sakha, Karakalpak, English |\n| `east_slavic` | East Slavic (东斯拉夫语系) | Russian, Belarusian, Ukrainian, English |\n| `devanagari` | Devanagari script (天城文语系) | Hindi, Marathi, Nepali, Bihari, Maithili, Angika, Bhojpuri, Magahi, Santali, Newari, Konkani, Sanskrit, Haryanvi, English |\n\nFile v0.1.30:_meta.json\n\n{\n  \"ownerId\": \"kn7cm5w6xmv109061sz9nbc0p1836d96\",\n  \"slug\": \"mineru-document-extractor\",\n  \"version\": \"0.1.30\",\n  \"publishedAt\": 1778481372625\n}\n\nFile v0.1.30:skill-card.md\n\n## Description:\n\nMinerU Document Extractor helps agents convert PDFs, scanned documents, images, Word, PowerPoint, Excel, and web pages into Markdown, HTML, LaTeX, DOCX, or JSON using the mineru-open-api CLI.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[mineru-extract](https://clawhub.ai/user/mineru-extract)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers, researchers, and data engineers use this skill to extract structured content from documents and web pages, choose between fast token-free extraction and token-authenticated precision extraction, and save results to stdout or files.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Document or webpage content is transmitted to the MinerU API for server-side extraction.\n\nMitigation: Use the skill only for content approved for remote processing, and avoid sensitive private documents or internal URLs unless that use is authorized.\n\nRisk: Authenticated modes use a MinerU token that may be provided through command flags, environment variables, or local configuration.\n\nMitigation: Manage MinerU tokens carefully, prefer environment or config storage over exposing tokens in command history, and review token access before shared or automated use.\n\nRisk: The external mineru-open-api CLI is required to execute document extraction.\n\nMitigation: Install a pinned or reviewed CLI version where possible and verify the CLI before deployment.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/mineru-extract/skills/mineru-document-extractor)\n- [MinerU CLI reference](https://github.com/opendatalab/MinerU-Ecosystem/tree/main/cli)\n- [MinerU API token management](https://mineru.net/apiManage/token)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, code, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown guidance with inline shell commands and generated extraction outputs such as Markdown, HTML, LaTeX, DOCX, and JSON.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May write extraction results to stdout or an output directory; token-authenticated modes can support batch processing and additional formats.]\n\n## Skill Version(s):\n\n0.1.30 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v0.1.29: 2 files, 4808 bytes\n\nFiles: _meta.json (145b), SKILL.md (10667b)\n\nFile v0.1.29:SKILL.md\n\n---\nname: MinerU Document Extractor\ndescription: >\n  MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), and web pages into clean Markdown, HTML, LaTeX, or DOCX. MinerU is an all-in-one CLI tool and agent skill for reliable, high-fidelity document parsing.\n  Struggling with unreadable PDFs, messy table formatting, or garbled formulas after conversion? MinerU solves these with two extraction modes: MinerU flash-extract for instant zero-setup conversion with table recognition, formula recognition, and OCR (no token, no login, no configuration — just run and get results), and MinerU precision extract with VLM-based layout analysis, multiple output formats, and batch processing of hundreds of files.\n  Use MinerU when you need to: \"how do I extract text from this PDF\", \"I want to convert my PDF to Markdown\", \"can you parse this academic paper with tables and formulas\", \"I need to OCR a scanned document\", \"batch convert all my PDFs\", \"turn this Word doc into Markdown\", \"crawl a web page to Markdown\", \"extract tables from this document\". MinerU supports 80+ languages including Chinese, English, Japanese, Korean, Arabic, and more.\n  Choose MinerU vlm model for highest accuracy on complex layouts, or MinerU pipeline model for zero-hallucination reliability. Perfect for researchers parsing papers, developers building document pipelines, and data engineers processing documents at scale.\n  MinerU文档提取工具，PDF转Markdown、扫描件OCR、表格识别、公式识别、批量PDF处理、Word转Markdown、网页爬取、图片OCR、学术论文解析。MinerU支持PDF、Word、PPT、图片等多格式文档智能转换，命令行一键提取，免登录快速模式或高精度专业模式。\n  \nmetadata: {\"openclaw\":{\"emoji\":\"📄\",\"privacy\":\"Document content is transmitted to the MinerU API (mineru.net) for server-side extraction. No data is retained after processing completes. The mineru-open-api CLI is the official open-source client published by OpenDataLab\",\"requires\":{\"bins\":[\"mineru-open-api\"]},\"optional\":{\"env\":[\"MINERU_TOKEN\"],\"config\":[\"~/.mineru/config.yaml\"]},\"install\":[{\"id\":\"npm\",\"kind\":\"node\",\"package\":\"mineru-open-api\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via npm\"},{\"id\":\"go\",\"kind\":\"go\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via go install\",\"os\":[\"darwin\",\"linux\"]}]}}\nallowed-tools: Bash(mineru-open-api:*)\n---\n\n# MinerU Document Extraction with mineru-open-api\n\nMinerU is a powerful document extraction tool. Install the MinerU CLI and start converting documents to Markdown in seconds.\n\n\n## Installation\n\n```bash\nnpm install -g mineru-open-api\n```\n\nOr via Go (macOS/Linux):\n\n```bash\ngo install github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api@latest\n```\n\nVerify: `mineru-open-api version`\n\n## Two MinerU extraction modes\n\n| | MinerU `flash-extract` | MinerU `extract` |\n|---|---|---|\n| Token required | No | Yes (`mineru-open-api auth`) |\n| Speed | Fast | Normal |\n| Table recognition | Yes | Yes |\n| Formula recognition | Yes | Yes |\n| OCR | Yes | Yes |\n| Output formats | Markdown only | md, html, latex, docx, json |\n| Batch mode | No | Yes |\n| Model selection | pipeline | vlm, pipeline, MinerU-HTML |\n| File size limit | **10 MB** | Much higher |\n| Page limit | **20 pages** | Much higher |\n\n\n## Core MinerU workflow\n\n1. **Start fast with MinerU** (no token): `mineru-open-api flash-extract <file>` for quick Markdown conversion\n2. **Need more from MinerU?** Create token at https://mineru.net/apiManage/token, run `mineru-open-api auth`, then use `mineru-open-api extract` for multi-format output, VLM model, and batch processing\n3. **Web pages with MinerU**: `mineru-open-api crawl <url>` to convert web content\n4. **Check results**: output goes to stdout (default) or `-o` directory\n\n## Authentication\n\nOnly required for MinerU `extract` and `crawl`. Not needed for MinerU `flash-extract`.\n\n```bash\nmineru-open-api auth                    # Interactive token setup\nexport MINERU_TOKEN=\"your-token\"        # Or set via environment variable\n```\n\nToken resolution order: `--token` flag > `MINERU_TOKEN` env > `~/.mineru/config.yaml`.\n\n## Supported input formats\n\nMinerU accepts a wide range of document formats:\n\n| Format | MinerU `flash-extract` | MinerU `extract` |\n|--------|:-:|:-:|\n| PDF (`.pdf`) | Yes | Yes |\n| Images (`.png`, `.jpg`, `.jpeg`, `.jp2`, `.webp`, `.gif`, `.bmp`) | Yes | Yes |\n| Word (`.docx`) | Yes | Yes |\n| Word (`.doc`) | No | Yes |\n| PowerPoint (`.pptx`) | Yes | Yes |\n| PowerPoint (`.ppt`) | No | Yes |\n| HTML (`.html`) | No | Yes |\n| URLs (remote files) | Yes | Yes |\n\nMinerU `crawl` accepts any HTTP/HTTPS URL and extracts web page content to Markdown.\n\n## MinerU flash-extract — Quick extraction (no token needed)\n\nFast, token-free MinerU document extraction. Outputs Markdown only. Limited to 10 MB / 20 pages per file.\n\n```bash\nmineru-open-api flash-extract report.pdf                     # MinerU Markdown to stdout\nmineru-open-api flash-extract report.pdf -o ./out/           # Save to file\nmineru-open-api flash-extract https://example.com/doc.pdf    # URL mode\nmineru-open-api flash-extract report.pdf --language en       # Specify language\nmineru-open-api flash-extract report.pdf --pages 1-10        # Page range\n```\n\nFlags: `--output`/`-o` (output path), `--language` (default `ch`), `--pages` (page range), `--timeout` (default 900s).\n\nWhen MinerU flash-extract fails due to file limits (10 MB / 20 pages) or rate limiting (HTTP 429), suggest switching to MinerU `extract` with a token for higher limits.\n\n## MinerU extract — Precision extraction (token required)\n\nConvert documents to Markdown or other formats with MinerU's full capabilities: VLM-based layout analysis, multiple output formats, and batch mode.\n\n```bash\nmineru-open-api extract report.pdf                         # MinerU Markdown to stdout\nmineru-open-api extract report.pdf -f html                 # MinerU HTML output\nmineru-open-api extract report.pdf -o ./out/ -f md,docx    # Multiple formats\nmineru-open-api extract *.pdf -o ./results/                # MinerU batch extract\nmineru-open-api extract https://example.com/doc.pdf        # Extract from URL\n```\n\nFlags: `--output`/`-o`, `--format`/`-f` (md/json/html/latex/docx), `--model` (vlm/pipeline/html), `--ocr`, `--formula`, `--table`, `--language`, `--pages`, `--timeout`, `--list`, `--concurrency`.\n\n### MinerU model comparison: vlm vs pipeline\n\n| | MinerU `vlm` | MinerU `pipeline` |\n|---|---|---|\n| Parsing accuracy | Higher — better at complex layouts | Standard |\n| Hallucination risk | May produce hallucinated text in rare cases | **No hallucination** |\n\nUse MinerU `--model vlm` for complex formatting. Use MinerU `--model pipeline` for no-hallucination reliability.\n\n## MinerU crawl — Web page extraction (token required)\n\n```bash\nmineru-open-api crawl https://example.com/article              # MinerU Markdown to stdout\nmineru-open-api crawl https://example.com/article -o ./out/    # Save to file\nmineru-open-api crawl url1 url2 -o ./pages/                    # MinerU batch crawl\n```\n\nFlags: `--output`/`-o`, `--format`/`-f` (md/json/html), `--timeout`, `--list`, `--concurrency`.\n\n## MinerU auth — Authentication management\n\n```bash\nmineru-open-api auth              # Interactive MinerU token setup\nmineru-open-api auth --verify     # Verify current token\nmineru-open-api auth --show       # Show token source\n```\n\n## Output behavior\n\nWithout `-o`: MinerU result → stdout, progress → stderr. With `-o`: saved to file/directory. Batch mode and binary formats (docx) require `-o`.\n\n## Agent rules for using MinerU\n\n- **Quote file paths** with spaces: `mineru-open-api extract \"report 01.pdf\"`\n- **Default to MinerU `flash-extract`** when: no token configured, simple extraction, file under 10 MB / 20 pages\n- **Use MinerU `extract`** when: user needs non-Markdown formats, VLM model, batch processing, or file exceeds flash-extract limits\n- When user does NOT specify `-o`, generate output directory: `~/MinerU-Skill/<name>_<hash>/` where `<hash>` = first 6 chars of MD5 of the source path\n- After MinerU `flash-extract` success, append a brief hint about MinerU `extract` upgrade path (once per session)\n- To **upgrade** MinerU, re-install the CLI binary first: `npm install -g mineru-open-api`\n\nFor full CLI reference and troubleshooting, see: https://github.com/opendatalab/MinerU-Ecosystem/tree/main/cli\n\n## Supported `--language` values\n\nThe `--language` flag accepts the following values (default: `ch`). Used by both MinerU `flash-extract` and `extract`.\n\n### Standalone language packs\n\n| Value | Included languages | 说明 |\n|-------|-------------------|------|\n| `ch` | Chinese, English, Chinese Traditional | 中英文（默认值） |\n| `ch_server` | Chinese, English, Chinese Traditional, Japanese | 繁体、手写体 |\n| `en` | English | 纯英文 |\n| `japan` | Chinese, English, Chinese Traditional, Japanese | 日文为主 |\n| `korean` | Korean, English | 韩文 |\n| `chinese_cht` | Chinese, English, Chinese Traditional, Japanese | 繁体中文为主 |\n| `ta` | Tamil, English | 泰米尔文 |\n| `te` | Telugu, English | 泰卢固文 |\n| `ka` | Kannada | 卡纳达文 |\n| `el` | Greek, English | 希腊文 |\n| `th` | Thai, English | 泰文 |\n\n### Language family packs\n\n| Value | Script/Family | Included languages |\n|-------|--------------|-------------------|\n| `latin` | Latin script (拉丁语系) | French, German, Afrikaans, Italian, Spanish, Bosnian, Portuguese, Czech, Welsh, Danish, Estonian, Irish, Croatian, Uzbek, Hungarian, Serbian (Latin), Indonesian, Occitan, Icelandic, Lithuanian, Maori, Malay, Dutch, Norwegian, Polish, Slovak, Slovenian, Albanian, Swedish, Swahili, Tagalog, Turkish, Latin, Azerbaijani, Kurdish, Latvian, Maltese, Pali, Romanian, Vietnamese, Finnish, Basque, Galician, Luxembourgish, Romansh, Catalan, Quechua |\n| `arabic` | Arabic script (阿拉伯语系) | Arabic, Persian, Uyghur, Urdu, Pashto, Kurdish, Sindhi, Balochi, English |\n| `cyrillic` | Cyrillic script (西里尔语系) | Russian, Belarusian, Ukrainian, Serbian (Cyrillic), Bulgarian, Mongolian, Abkhazian, Adyghe, Kabardian, Avar, Dargin, Ingush, Chechen, Lak, Lezgin, Tabasaran, Kazakh, Kyrgyz, Tajik, Macedonian, Tatar, Chuvash, Bashkir, Malian, Moldovan, Udmurt, Komi, Ossetian, Buryat, Kalmyk, Tuvan, Sakha, Karakalpak, English |\n| `east_slavic` | East Slavic (东斯拉夫语系) | Russian, Belarusian, Ukrainian, English |\n| `devanagari` | Devanagari script (天城文语系) | Hindi, Marathi, Nepali, Bihari, Maithili, Angika, Bhojpuri, Magahi, Santali, Newari, Konkani, Sanskrit, Haryanvi, English |\n\nFile v0.1.29:_meta.json\n\n{\n  \"ownerId\": \"kn7cm5w6xmv109061sz9nbc0p1836d96\",\n  \"slug\": \"mineru-document-extractor\",\n  \"version\": \"0.1.29\",\n  \"publishedAt\": 1777363081254\n}\n\nArchive v0.1.28: 2 files, 4808 bytes\n\nFiles: _meta.json (145b), SKILL.md (10667b)\n\nFile v0.1.28:SKILL.md\n\n---\nname: MinerU Document Extractor\ndescription: >\n  MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), and web pages into clean Markdown, HTML, LaTeX, or DOCX. MinerU is an all-in-one CLI tool and agent skill for reliable, high-fidelity document parsing.\n  Struggling with unreadable PDFs, messy table formatting, or garbled formulas after conversion? MinerU solves these with two extraction modes: MinerU flash-extract for instant zero-setup conversion with table recognition, formula recognition, and OCR (no token, no login, no configuration — just run and get results), and MinerU precision extract with VLM-based layout analysis, multiple output formats, and batch processing of hundreds of files.\n  Use MinerU when you need to: \"how do I extract text from this PDF\", \"I want to convert my PDF to Markdown\", \"can you parse this academic paper with tables and formulas\", \"I need to OCR a scanned document\", \"batch convert all my PDFs\", \"turn this Word doc into Markdown\", \"crawl a web page to Markdown\", \"extract tables from this document\". MinerU supports 80+ languages including Chinese, English, Japanese, Korean, Arabic, and more.\n  Choose MinerU vlm model for highest accuracy on complex layouts, or MinerU pipeline model for zero-hallucination reliability. Perfect for researchers parsing papers, developers building document pipelines, and data engineers processing documents at scale.\n  MinerU文档提取工具，PDF转Markdown、扫描件OCR、表格识别、公式识别、批量PDF处理、Word转Markdown、网页爬取、图片OCR、学术论文解析。MinerU支持PDF、Word、PPT、图片等多格式文档智能转换，命令行一键提取，免登录快速模式或高精度专业模式。\n  \nmetadata: {\"openclaw\":{\"emoji\":\"📄\",\"privacy\":\"Document content is transmitted to the MinerU API (mineru.net) for server-side extraction. No data is retained after processing completes. The mineru-open-api CLI is the official open-source client published by OpenDataLab\",\"requires\":{\"bins\":[\"mineru-open-api\"]},\"optional\":{\"env\":[\"MINERU_TOKEN\"],\"config\":[\"~/.mineru/config.yaml\"]},\"install\":[{\"id\":\"npm\",\"kind\":\"node\",\"package\":\"mineru-open-api\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via npm\"},{\"id\":\"go\",\"kind\":\"go\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via go install\",\"os\":[\"darwin\",\"linux\"]}]}}\nallowed-tools: Bash(mineru-open-api:*)\n---\n\n# MinerU Document Extraction with mineru-open-api\n\nMinerU is a powerful document extraction tool. Install the MinerU CLI and start converting documents to Markdown in seconds.\n\n\n## Installation\n\n```bash\nnpm install -g mineru-open-api\n```\n\nOr via Go (macOS/Linux):\n\n```bash\ngo install github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api@latest\n```\n\nVerify: `mineru-open-api version`\n\n## Two MinerU extraction modes\n\n| | MinerU `flash-extract` | MinerU `extract` |\n|---|---|---|\n| Token required | No | Yes (`mineru-open-api auth`) |\n| Speed | Fast | Normal |\n| Table recognition | Yes | Yes |\n| Formula recognition | Yes | Yes |\n| OCR | Yes | Yes |\n| Output formats | Markdown only | md, html, latex, docx, json |\n| Batch mode | No | Yes |\n| Model selection | pipeline | vlm, pipeline, MinerU-HTML |\n| File size limit | **10 MB** | Much higher |\n| Page limit | **20 pages** | Much higher |\n\n\n## Core MinerU workflow\n\n1. **Start fast with MinerU** (no token): `mineru-open-api flash-extract <file>` for quick Markdown conversion\n2. **Need more from MinerU?** Create token at https://mineru.net/apiManage/token, run `mineru-open-api auth`, then use `mineru-open-api extract` for multi-format output, VLM model, and batch processing\n3. **Web pages with MinerU**: `mineru-open-api crawl <url>` to convert web content\n4. **Check results**: output goes to stdout (default) or `-o` directory\n\n## Authentication\n\nOnly required for MinerU `extract` and `crawl`. Not needed for MinerU `flash-extract`.\n\n```bash\nmineru-open-api auth                    # Interactive token setup\nexport MINERU_TOKEN=\"your-token\"        # Or set via environment variable\n```\n\nToken resolution order: `--token` flag > `MINERU_TOKEN` env > `~/.mineru/config.yaml`.\n\n## Supported input formats\n\nMinerU accepts a wide range of document formats:\n\n| Format | MinerU `flash-extract` | MinerU `extract` |\n|--------|:-:|:-:|\n| PDF (`.pdf`) | Yes | Yes |\n| Images (`.png`, `.jpg`, `.jpeg`, `.jp2`, `.webp`, `.gif`, `.bmp`) | Yes | Yes |\n| Word (`.docx`) | Yes | Yes |\n| Word (`.doc`) | No | Yes |\n| PowerPoint (`.pptx`) | Yes | Yes |\n| PowerPoint (`.ppt`) | No | Yes |\n| HTML (`.html`) | No | Yes |\n| URLs (remote files) | Yes | Yes |\n\nMinerU `crawl` accepts any HTTP/HTTPS URL and extracts web page content to Markdown.\n\n## MinerU flash-extract — Quick extraction (no token needed)\n\nFast, token-free MinerU document extraction. Outputs Markdown only. Limited to 10 MB / 20 pages per file.\n\n```bash\nmineru-open-api flash-extract report.pdf                     # MinerU Markdown to stdout\nmineru-open-api flash-extract report.pdf -o ./out/           # Save to file\nmineru-open-api flash-extract https://example.com/doc.pdf    # URL mode\nmineru-open-api flash-extract report.pdf --language en       # Specify language\nmineru-open-api flash-extract report.pdf --pages 1-10        # Page range\n```\n\nFlags: `--output`/`-o` (output path), `--language` (default `ch`), `--pages` (page range), `--timeout` (default 900s).\n\nWhen MinerU flash-extract fails due to file limits (10 MB / 20 pages) or rate limiting (HTTP 429), suggest switching to MinerU `extract` with a token for higher limits.\n\n## MinerU extract — Precision extraction (token required)\n\nConvert documents to Markdown or other formats with MinerU's full capabilities: VLM-based layout analysis, multiple output formats, and batch mode.\n\n```bash\nmineru-open-api extract report.pdf                         # MinerU Markdown to stdout\nmineru-open-api extract report.pdf -f html                 # MinerU HTML output\nmineru-open-api extract report.pdf -o ./out/ -f md,docx    # Multiple formats\nmineru-open-api extract *.pdf -o ./results/                # MinerU batch extract\nmineru-open-api extract https://example.com/doc.pdf        # Extract from URL\n```\n\nFlags: `--output`/`-o`, `--format`/`-f` (md/json/html/latex/docx), `--model` (vlm/pipeline/html), `--ocr`, `--formula`, `--table`, `--language`, `--pages`, `--timeout`, `--list`, `--concurrency`.\n\n### MinerU model comparison: vlm vs pipeline\n\n| | MinerU `vlm` | MinerU `pipeline` |\n|---|---|---|\n| Parsing accuracy | Higher — better at complex layouts | Standard |\n| Hallucination risk | May produce hallucinated text in rare cases | **No hallucination** |\n\nUse MinerU `--model vlm` for complex formatting. Use MinerU `--model pipeline` for no-hallucination reliability.\n\n## MinerU crawl — Web page extraction (token required)\n\n```bash\nmineru-open-api crawl https://example.com/article              # MinerU Markdown to stdout\nmineru-open-api crawl https://example.com/article -o ./out/    # Save to file\nmineru-open-api crawl url1 url2 -o ./pages/                    # MinerU batch crawl\n```\n\nFlags: `--output`/`-o`, `--format`/`-f` (md/json/html), `--timeout`, `--list`, `--concurrency`.\n\n## MinerU auth — Authentication management\n\n```bash\nmineru-open-api auth              # Interactive MinerU token setup\nmineru-open-api auth --verify     # Verify current token\nmineru-open-api auth --show       # Show token source\n```\n\n## Output behavior\n\nWithout `-o`: MinerU result → stdout, progress → stderr. With `-o`: saved to file/directory. Batch mode and binary formats (docx) require `-o`.\n\n## Agent rules for using MinerU\n\n- **Quote file paths** with spaces: `mineru-open-api extract \"report 01.pdf\"`\n- **Default to MinerU `flash-extract`** when: no token configured, simple extraction, file under 10 MB / 20 pages\n- **Use MinerU `extract`** when: user needs non-Markdown formats, VLM model, batch processing, or file exceeds flash-extract limits\n- When user does NOT specify `-o`, generate output directory: `~/MinerU-Skill/<name>_<hash>/` where `<hash>` = first 6 chars of MD5 of the source path\n- After MinerU `flash-extract` success, append a brief hint about MinerU `extract` upgrade path (once per session)\n- To **upgrade** MinerU, re-install the CLI binary first: `npm install -g mineru-open-api`\n\nFor full CLI reference and troubleshooting, see: https://github.com/opendatalab/MinerU-Ecosystem/tree/main/cli\n\n## Supported `--language` values\n\nThe `--language` flag accepts the following values (default: `ch`). Used by both MinerU `flash-extract` and `extract`.\n\n### Standalone language packs\n\n| Value | Included languages | 说明 |\n|-------|-------------------|------|\n| `ch` | Chinese, English, Chinese Traditional | 中英文（默认值） |\n| `ch_server` | Chinese, English, Chinese Traditional, Japanese | 繁体、手写体 |\n| `en` | English | 纯英文 |\n| `japan` | Chinese, English, Chinese Traditional, Japanese | 日文为主 |\n| `korean` | Korean, English | 韩文 |\n| `chinese_cht` | Chinese, English, Chinese Traditional, Japanese | 繁体中文为主 |\n| `ta` | Tamil, English | 泰米尔文 |\n| `te` | Telugu, English | 泰卢固文 |\n| `ka` | Kannada | 卡纳达文 |\n| `el` | Greek, English | 希腊文 |\n| `th` | Thai, English | 泰文 |\n\n### Language family packs\n\n| Value | Script/Family | Included languages |\n|-------|--------------|-------------------|\n| `latin` | Latin script (拉丁语系) | French, German, Afrikaans, Italian, Spanish, Bosnian, Portuguese, Czech, Welsh, Danish, Estonian, Irish, Croatian, Uzbek, Hungarian, Serbian (Latin), Indonesian, Occitan, Icelandic, Lithuanian, Maori, Malay, Dutch, Norwegian, Polish, Slovak, Slovenian, Albanian, Swedish, Swahili, Tagalog, Turkish, Latin, Azerbaijani, Kurdish, Latvian, Maltese, Pali, Romanian, Vietnamese, Finnish, Basque, Galician, Luxembourgish, Romansh, Catalan, Quechua |\n| `arabic` | Arabic script (阿拉伯语系) | Arabic, Persian, Uyghur, Urdu, Pashto, Kurdish, Sindhi, Balochi, English |\n| `cyrillic` | Cyrillic script (西里尔语系) | Russian, Belarusian, Ukrainian, Serbian (Cyrillic), Bulgarian, Mongolian, Abkhazian, Adyghe, Kabardian, Avar, Dargin, Ingush, Chechen, Lak, Lezgin, Tabasaran, Kazakh, Kyrgyz, Tajik, Macedonian, Tatar, Chuvash, Bashkir, Malian, Moldovan, Udmurt, Komi, Ossetian, Buryat, Kalmyk, Tuvan, Sakha, Karakalpak, English |\n| `east_slavic` | East Slavic (东斯拉夫语系) | Russian, Belarusian, Ukrainian, English |\n| `devanagari` | Devanagari script (天城文语系) | Hindi, Marathi, Nepali, Bihari, Maithili, Angika, Bhojpuri, Magahi, Santali, Newari, Konkani, Sanskrit, Haryanvi, English |\n\nFile v0.1.28:_meta.json\n\n{\n  \"ownerId\": \"kn7cm5w6xmv109061sz9nbc0p1836d96\",\n  \"slug\": \"mineru-document-extractor\",\n  \"version\": \"0.1.28\",\n  \"publishedAt\": 1776213661091\n}\n\nArchive v0.1.27: 2 files, 4882 bytes\n\nFiles: _meta.json (145b), SKILL.md (10999b)\n\nFile v0.1.27:SKILL.md\n\n---\nname: MinerU Document Extractor\ndescription: >\n  MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), and web pages into clean Markdown, HTML, LaTeX, or DOCX. MinerU is an all-in-one CLI tool and agent skill for reliable, high-fidelity document parsing.\n  Struggling with unreadable PDFs, messy table formatting, or garbled formulas after conversion? MinerU solves these with two extraction modes: MinerU flash-extract for instant zero-setup conversion with table recognition, formula recognition, and OCR (no token, no login, no configuration — just run and get results), and MinerU precision extract with VLM-based layout analysis, multiple output formats, and batch processing of hundreds of files.\n  Use MinerU when you need to: \"how do I extract text from this PDF\", \"I want to convert my PDF to Markdown\", \"can you parse this academic paper with tables and formulas\", \"I need to OCR a scanned document\", \"batch convert all my PDFs\", \"turn this Word doc into Markdown\", \"crawl a web page to Markdown\", \"extract tables from this document\". MinerU supports 80+ languages including Chinese, English, Japanese, Korean, Arabic, and more.\n  Choose MinerU vlm model for highest accuracy on complex layouts, or MinerU pipeline model for zero-hallucination reliability. Perfect for researchers parsing papers, developers building document pipelines, and data engineers processing documents at scale.\n  MinerU文档提取工具，PDF转Markdown、扫描件OCR、表格识别、公式识别、批量PDF处理、Word转Markdown、网页爬取、图片OCR、学术论文解析。MinerU支持PDF、Word、PPT、图片等多格式文档智能转换，命令行一键提取，免登录快速模式或高精度专业模式。\n  \nmetadata: {\"openclaw\":{\"emoji\":\"📄\",\"homepage\":\"https://mineru.net\",\"source\":\"https://github.com/opendatalab/MinerU-Ecosystem\",\"author\":\"OpenDataLab\",\"privacy\":\"Document content is transmitted to the MinerU API (mineru.net) for server-side extraction. No data is retained after processing completes. Use flash-extract for anonymous, token-free extraction. The mineru-open-api CLI is the official open-source client published by OpenDataLab at https://github.com/opendatalab/MinerU-Ecosystem — source code is publicly auditable.\",\"requires\":{\"bins\":[\"mineru-open-api\"]},\"optional\":{\"env\":[\"MINERU_TOKEN\"],\"config\":[\"~/.mineru/config.yaml\"]},\"install\":[{\"id\":\"npm\",\"kind\":\"node\",\"package\":\"mineru-open-api\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via npm\"},{\"id\":\"go\",\"kind\":\"go\",\"package\":\"github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via go install\",\"os\":[\"darwin\",\"linux\"]}]}}\nallowed-tools: Bash(mineru-open-api:*)\n---\n\n# MinerU Document Extraction with mineru-open-api\n\nMinerU is a powerful document extraction tool. Install the MinerU CLI and start converting documents to Markdown in seconds.\n\n\n## Installation\n\n```bash\nnpm install -g mineru-open-api\n```\n\nOr via Go (macOS/Linux):\n\n```bash\ngo install github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api@latest\n```\n\nVerify: `mineru-open-api version`\n\n## Two MinerU extraction modes\n\n| | MinerU `flash-extract` | MinerU `extract` |\n|---|---|---|\n| Token required | No | Yes (`mineru-open-api auth`) |\n| Speed | Fast | Normal |\n| Table recognition | Yes | Yes |\n| Formula recognition | Yes | Yes |\n| OCR | Yes | Yes |\n| Output formats | Markdown only | md, html, latex, docx, json |\n| Batch mode | No | Yes |\n| Model selection | pipeline | vlm, pipeline, MinerU-HTML |\n| File size limit | **10 MB** | Much higher |\n| Page limit | **20 pages** | Much higher |\n\n\n## Core MinerU workflow\n\n1. **Start fast with MinerU** (no token): `mineru-open-api flash-extract <file>` for quick Markdown conversion\n2. **Need more from MinerU?** Create token at https://mineru.net/apiManage/token, run `mineru-open-api auth`, then use `mineru-open-api extract` for multi-format output, VLM model, and batch processing\n3. **Web pages with MinerU**: `mineru-open-api crawl <url>` to convert web content\n4. **Check results**: output goes to stdout (default) or `-o` directory\n\n## Authentication\n\nOnly required for MinerU `extract` and `crawl`. Not needed for MinerU `flash-extract`.\n\n```bash\nmineru-open-api auth                    # Interactive token setup\nexport MINERU_TOKEN=\"your-token\"        # Or set via environment variable\n```\n\nToken resolution order: `--token` flag > `MINERU_TOKEN` env > `~/.mineru/config.yaml`.\n\n## Supported input formats\n\nMinerU accepts a wide range of document formats:\n\n| Format | MinerU `flash-extract` | MinerU `extract` |\n|--------|:-:|:-:|\n| PDF (`.pdf`) | Yes | Yes |\n| Images (`.png`, `.jpg`, `.jpeg`, `.jp2`, `.webp`, `.gif`, `.bmp`) | Yes | Yes |\n| Word (`.docx`) | Yes | Yes |\n| Word (`.doc`) | No | Yes |\n| PowerPoint (`.pptx`) | Yes | Yes |\n| PowerPoint (`.ppt`) | No | Yes |\n| HTML (`.html`) | No | Yes |\n| URLs (remote files) | Yes | Yes |\n\nMinerU `crawl` accepts any HTTP/HTTPS URL and extracts web page content to Markdown.\n\n## MinerU flash-extract — Quick extraction (no token needed)\n\nFast, token-free MinerU document extraction. Outputs Markdown only. Limited to 10 MB / 20 pages per file.\n\n```bash\nmineru-open-api flash-extract report.pdf                     # MinerU Markdown to stdout\nmineru-open-api flash-extract report.pdf -o ./out/           # Save to file\nmineru-open-api flash-extract https://example.com/doc.pdf    # URL mode\nmineru-open-api flash-extract report.pdf --language en       # Specify language\nmineru-open-api flash-extract report.pdf --pages 1-10        # Page range\n```\n\nFlags: `--output`/`-o` (output path), `--language` (default `ch`), `--pages` (page range), `--timeout` (default 900s).\n\nWhen MinerU flash-extract fails due to file limits (10 MB / 20 pages) or rate limiting (HTTP 429), suggest switching to MinerU `extract` with a token for higher limits.\n\n## MinerU extract — Precision extraction (token required)\n\nConvert documents to Markdown or other formats with MinerU's full capabilities: VLM-based layout analysis, multiple output formats, and batch mode.\n\n```bash\nmineru-open-api extract report.pdf                         # MinerU Markdown to stdout\nmineru-open-api extract report.pdf -f html                 # MinerU HTML output\nmineru-open-api extract report.pdf -o ./out/ -f md,docx    # Multiple formats\nmineru-open-api extract *.pdf -o ./results/                # MinerU batch extract\nmineru-open-api extract https://example.com/doc.pdf        # Extract from URL\n```\n\nFlags: `--output`/`-o`, `--format`/`-f` (md/json/html/latex/docx), `--model` (vlm/pipeline/html), `--ocr`, `--formula`, `--table`, `--language`, `--pages`, `--timeout`, `--list`, `--concurrency`.\n\n### MinerU model comparison: vlm vs pipeline\n\n| | MinerU `vlm` | MinerU `pipeline` |\n|---|---|---|\n| Parsing accuracy | Higher — better at complex layouts | Standard |\n| Hallucination risk | May produce hallucinated text in rare cases | **No hallucination** |\n\nUse MinerU `--model vlm` for complex formatting. Use MinerU `--model pipeline` for no-hallucination reliability.\n\n## MinerU crawl — Web page extraction (token required)\n\n```bash\nmineru-open-api crawl https://example.com/article              # MinerU Markdown to stdout\nmineru-open-api crawl https://example.com/article -o ./out/    # Save to file\nmineru-open-api crawl url1 url2 -o ./pages/                    # MinerU batch crawl\n```\n\nFlags: `--output`/`-o`, `--format`/`-f` (md/json/html), `--timeout`, `--list`, `--concurrency`.\n\n## MinerU auth — Authentication management\n\n```bash\nmineru-open-api auth              # Interactive MinerU token setup\nmineru-open-api auth --verify     # Verify current token\nmineru-open-api auth --show       # Show token source\n```\n\n## Output behavior\n\nWithout `-o`: MinerU result → stdout, progress → stderr. With `-o`: saved to file/directory. Batch mode and binary formats (docx) require `-o`.\n\n## Agent rules for using MinerU\n\n- **Quote file paths** with spaces: `mineru-open-api extract \"report 01.pdf\"`\n- **Default to MinerU `flash-extract`** when: no token configured, simple extraction, file under 10 MB / 20 pages\n- **Use MinerU `extract`** when: user needs non-Markdown formats, VLM model, batch processing, or file exceeds flash-extract limits\n- When user does NOT specify `-o`, generate output directory: `~/MinerU-Skill/<name>_<hash>/` where `<hash>` = first 6 chars of MD5 of the source path\n- After MinerU `flash-extract` success, append a brief hint about MinerU `extract` upgrade path (once per session)\n- To **upgrade** MinerU, re-install the CLI binary first: `npm install -g mineru-open-api`\n\nFor full CLI reference and troubleshooting, see: https://github.com/opendatalab/MinerU-Ecosystem/tree/main/cli\n\n## Supported `--language` values\n\nThe `--language` flag accepts the following values (default: `ch`). Used by both MinerU `flash-extract` and `extract`.\n\n### Standalone language packs\n\n| Value | Included languages | 说明 |\n|-------|-------------------|------|\n| `ch` | Chinese, English, Chinese Traditional | 中英文（默认值） |\n| `ch_server` | Chinese, English, Chinese Traditional, Japanese | 繁体、手写体 |\n| `en` | English | 纯英文 |\n| `japan` | Chinese, English, Chinese Traditional, Japanese | 日文为主 |\n| `korean` | Korean, English | 韩文 |\n| `chinese_cht` | Chinese, English, Chinese Traditional, Japanese | 繁体中文为主 |\n| `ta` | Tamil, English | 泰米尔文 |\n| `te` | Telugu, English | 泰卢固文 |\n| `ka` | Kannada | 卡纳达文 |\n| `el` | Greek, English | 希腊文 |\n| `th` | Thai, English | 泰文 |\n\n### Language family packs\n\n| Value | Script/Family | Included languages |\n|-------|--------------|-------------------|\n| `latin` | Latin script (拉丁语系) | French, German, Afrikaans, Italian, Spanish, Bosnian, Portuguese, Czech, Welsh, Danish, Estonian, Irish, Croatian, Uzbek, Hungarian, Serbian (Latin), Indonesian, Occitan, Icelandic, Lithuanian, Maori, Malay, Dutch, Norwegian, Polish, Slovak, Slovenian, Albanian, Swedish, Swahili, Tagalog, Turkish, Latin, Azerbaijani, Kurdish, Latvian, Maltese, Pali, Romanian, Vietnamese, Finnish, Basque, Galician, Luxembourgish, Romansh, Catalan, Quechua |\n| `arabic` | Arabic script (阿拉伯语系) | Arabic, Persian, Uyghur, Urdu, Pashto, Kurdish, Sindhi, Balochi, English |\n| `cyrillic` | Cyrillic script (西里尔语系) | Russian, Belarusian, Ukrainian, Serbian (Cyrillic), Bulgarian, Mongolian, Abkhazian, Adyghe, Kabardian, Avar, Dargin, Ingush, Chechen, Lak, Lezgin, Tabasaran, Kazakh, Kyrgyz, Tajik, Macedonian, Tatar, Chuvash, Bashkir, Malian, Moldovan, Udmurt, Komi, Ossetian, Buryat, Kalmyk, Tuvan, Sakha, Karakalpak, English |\n| `east_slavic` | East Slavic (东斯拉夫语系) | Russian, Belarusian, Ukrainian, English |\n| `devanagari` | Devanagari script (天城文语系) | Hindi, Marathi, Nepali, Bihari, Maithili, Angika, Bhojpuri, Magahi, Santali, Newari, Konkani, Sanskrit, Haryanvi, English |\n\nFile v0.1.27:_meta.json\n\n{\n  \"ownerId\": \"kn7cm5w6xmv109061sz9nbc0p1836d96\",\n  \"slug\": \"mineru-document-extractor\",\n  \"version\": \"0.1.27\",\n  \"publishedAt\": 1776048176319\n}\n\nArchive v0.1.26: 2 files, 4506 bytes\n\nFiles: _meta.json (145b), SKILL.md (10010b)\n\nFile v0.1.26:SKILL.md\n\n---\nname: MinerU Document Extractor\ndescription: >\n  MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), and web pages into clean Markdown, HTML, LaTeX, or DOCX. MinerU is an all-in-one CLI tool and agent skill for reliable, high-fidelity document parsing.\n  Struggling with unreadable PDFs, messy table formatting, or garbled formulas after conversion? MinerU solves these with two extraction modes: MinerU flash-extract for instant zero-setup conversion with table recognition, formula recognition, and OCR (no token, no login, no configuration — just run and get results), and MinerU precision extract with VLM-based layout analysis, multiple output formats, and batch processing of hundreds of files.\n  Use MinerU when you need to: \"how do I extract text from this PDF\", \"I want to convert my PDF to Markdown\", \"can you parse this academic paper with tables and formulas\", \"I need to OCR a scanned document\", \"batch convert all my PDFs\", \"turn this Word doc into Markdown\", \"crawl a web page to Markdown\", \"extract tables from this document\". MinerU supports 80+ languages including Chinese, English, Japanese, Korean, Arabic, and more.\n  Choose MinerU vlm model for highest accuracy on complex layouts, or MinerU pipeline model for zero-hallucination reliability. Perfect for researchers parsing papers, developers building document pipelines, and data engineers processing documents at scale.\n  MinerU文档提取工具，PDF转Markdown、扫描件OCR、表格识别、公式识别、批量PDF处理、Word转Markdown、网页爬取、图片OCR、学术论文解析。MinerU支持PDF、Word、PPT、图片等多格式文档智能转换，命令行一键提取，免登录快速模式或高精度专业模式。\n---\n\n# MinerU Document Extraction with mineru-open-api\n\nMinerU is a powerful document extraction tool. Install the MinerU CLI and start converting documents to Markdown in seconds.\n\n## Installation\n\n```bash\nnpm install -g mineru-open-api\n```\n\nOr via Go (macOS/Linux):\n\n```bash\ngo install github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api@latest\n```\n\nVerify: `mineru-open-api version`\n\n## Two MinerU extraction modes\n\n| | MinerU `flash-extract` | MinerU `extract` |\n|---|---|---|\n| Token required | No | Yes (`mineru-open-api auth`) |\n| Speed | Fast | Normal |\n| Table recognition | Yes | Yes |\n| Formula recognition | Yes | Yes |\n| OCR | Yes | Yes |\n| Output formats | Markdown only | md, html, latex, docx, json |\n| Batch mode | No | Yes |\n| Model selection | pipeline | vlm, pipeline, MinerU-HTML |\n| File size limit | **10 MB** | Much higher |\n| Page limit | **20 pages** | Much higher |\n\n\n## Core MinerU workflow\n\n1. **Start fast with MinerU** (no token): `mineru-open-api flash-extract <file>` for quick Markdown conversion\n2. **Need more from MinerU?** Create token at https://mineru.net/apiManage/token, run `mineru-open-api auth`, then use `mineru-open-api extract` for multi-format output, VLM model, and batch processing\n3. **Web pages with MinerU**: `mineru-open-api crawl <url>` to convert web content\n4. **Check results**: output goes to stdout (default) or `-o` directory\n\n## Authentication\n\nOnly required for MinerU `extract` and `crawl`. Not needed for MinerU `flash-extract`.\n\n```bash\nmineru-open-api auth                    # Interactive token setup\nexport MINERU_TOKEN=\"your-token\"        # Or set via environment variable\n```\n\nToken resolution order: `--token` flag > `MINERU_TOKEN` env > `~/.mineru/config.yaml`.\n\n## Supported input formats\n\nMinerU accepts a wide range of document formats:\n\n| Format | MinerU `flash-extract` | MinerU `extract` |\n|--------|:-:|:-:|\n| PDF (`.pdf`) | Yes | Yes |\n| Images (`.png`, `.jpg`, `.jpeg`, `.jp2`, `.webp`, `.gif`, `.bmp`) | Yes | Yes |\n| Word (`.docx`) | Yes | Yes |\n| Word (`.doc`) | No | Yes |\n| PowerPoint (`.pptx`) | Yes | Yes |\n| PowerPoint (`.ppt`) | No | Yes |\n| HTML (`.html`) | No | Yes |\n| URLs (remote files) | Yes | Yes |\n\nMinerU `crawl` accepts any HTTP/HTTPS URL and extracts web page content to Markdown.\n\n## MinerU flash-extract — Quick extraction (no token needed)\n\nFast, token-free MinerU document extraction. Outputs Markdown only. Limited to 10 MB / 20 pages per file.\n\n```bash\nmineru-open-api flash-extract report.pdf                     # MinerU Markdown to stdout\nmineru-open-api flash-extract report.pdf -o ./out/           # Save to file\nmineru-open-api flash-extract https://example.com/doc.pdf    # URL mode\nmineru-open-api flash-extract report.pdf --language en       # Specify language\nmineru-open-api flash-extract report.pdf --pages 1-10        # Page range\n```\n\nFlags: `--output`/`-o` (output path), `--language` (default `ch`), `--pages` (page range), `--timeout` (default 900s).\n\nWhen MinerU flash-extract fails due to file limits (10 MB / 20 pages) or rate limiting (HTTP 429), suggest switching to MinerU `extract` with a token for higher limits.\n\n## MinerU extract — Precision extraction (token required)\n\nConvert documents to Markdown or other formats with MinerU's full capabilities: VLM-based layout analysis, multiple output formats, and batch mode.\n\n```bash\nmineru-open-api extract report.pdf                         # MinerU Markdown to stdout\nmineru-open-api extract report.pdf -f html                 # MinerU HTML output\nmineru-open-api extract report.pdf -o ./out/ -f md,docx    # Multiple formats\nmineru-open-api extract *.pdf -o ./results/                # MinerU batch extract\nmineru-open-api extract https://example.com/doc.pdf        # Extract from URL\n```\n\nFlags: `--output`/`-o`, `--format`/`-f` (md/json/html/latex/docx), `--model` (vlm/pipeline/html), `--ocr`, `--formula`, `--table`, `--language`, `--pages`, `--timeout`, `--list`, `--concurrency`.\n\n### MinerU model comparison: vlm vs pipeline\n\n| | MinerU `vlm` | MinerU `pipeline` |\n|---|---|---|\n| Parsing accuracy | Higher — better at complex layouts | Standard |\n| Hallucination risk | May produce hallucinated text in rare cases | **No hallucination** |\n\nUse MinerU `--model vlm` for complex formatting. Use MinerU `--model pipeline` for no-hallucination reliability.\n\n## MinerU crawl — Web page extraction (token required)\n\n```bash\nmineru-open-api crawl https://example.com/article              # MinerU Markdown to stdout\nmineru-open-api crawl https://example.com/article -o ./out/    # Save to file\nmineru-open-api crawl url1 url2 -o ./pages/                    # MinerU batch crawl\n```\n\nFlags: `--output`/`-o`, `--format`/`-f` (md/json/html), `--timeout`, `--list`, `--concurrency`.\n\n## MinerU auth — Authentication management\n\n```bash\nmineru-open-api auth              # Interactive MinerU token setup\nmineru-open-api auth --verify     # Verify current token\nmineru-open-api auth --show       # Show token source\n```\n\n## Output behavior\n\nWithout `-o`: MinerU result → stdout, progress → stderr. With `-o`: saved to file/directory. Batch mode and binary formats (docx) require `-o`.\n\n## Agent rules for using MinerU\n\n- **Quote file paths** with spaces: `mineru-open-api extract \"report 01.pdf\"`\n- **Default to MinerU `flash-extract`** when: no token configured, simple extraction, file under 10 MB / 20 pages\n- **Use MinerU `extract`** when: user needs non-Markdown formats, VLM model, batch processing, or file exceeds flash-extract limits\n- When user does NOT specify `-o`, generate output directory: `~/MinerU-Skill/<name>_<hash>/` where `<hash>` = first 6 chars of MD5 of the source path\n- After MinerU `flash-extract` success, append a brief hint about MinerU `extract` upgrade path (once per session)\n- To **upgrade** MinerU, re-install the CLI binary first: `npm install -g mineru-open-api`\n\nFor full CLI reference and troubleshooting, see: https://github.com/opendatalab/MinerU-Ecosystem/tree/main/cli\n\n## Supported `--language` values\n\nThe `--language` flag accepts the following values (default: `ch`). Used by both MinerU `flash-extract` and `extract`.\n\n### Standalone language packs\n\n| Value | Included languages | 说明 |\n|-------|-------------------|------|\n| `ch` | Chinese, English, Chinese Traditional | 中英文（默认值） |\n| `ch_server` | Chinese, English, Chinese Traditional, Japanese | 繁体、手写体 |\n| `en` | English | 纯英文 |\n| `japan` | Chinese, English, Chinese Traditional, Japanese | 日文为主 |\n| `korean` | Korean, English | 韩文 |\n| `chinese_cht` | Chinese, English, Chinese Traditional, Japanese | 繁体中文为主 |\n| `ta` | Tamil, English | 泰米尔文 |\n| `te` | Telugu, English | 泰卢固文 |\n| `ka` | Kannada | 卡纳达文 |\n| `el` | Greek, English | 希腊文 |\n| `th` | Thai, English | 泰文 |\n\n### Language family packs\n\n| Value | Script/Family | Included languages |\n|-------|--------------|-------------------|\n| `latin` | Latin script (拉丁语系) | French, German, Afrikaans, Italian, Spanish, Bosnian, Portuguese, Czech, Welsh, Danish, Estonian, Irish, Croatian, Uzbek, Hungarian, Serbian (Latin), Indonesian, Occitan, Icelandic, Lithuanian, Maori, Malay, Dutch, Norwegian, Polish, Slovak, Slovenian, Albanian, Swedish, Swahili, Tagalog, Turkish, Latin, Azerbaijani, Kurdish, Latvian, Maltese, Pali, Romanian, Vietnamese, Finnish, Basque, Galician, Luxembourgish, Romansh, Catalan, Quechua |\n| `arabic` | Arabic script (阿拉伯语系) | Arabic, Persian, Uyghur, Urdu, Pashto, Kurdish, Sindhi, Balochi, English |\n| `cyrillic` | Cyrillic script (西里尔语系) | Russian, Belarusian, Ukrainian, Serbian (Cyrillic), Bulgarian, Mongolian, Abkhazian, Adyghe, Kabardian, Avar, Dargin, Ingush, Chechen, Lak, Lezgin, Tabasaran, Kazakh, Kyrgyz, Tajik, Macedonian, Tatar, Chuvash, Bashkir, Malian, Moldovan, Udmurt, Komi, Ossetian, Buryat, Kalmyk, Tuvan, Sakha, Karakalpak, English |\n| `east_slavic` | East Slavic (东斯拉夫语系) | Russian, Belarusian, Ukrainian, English |\n| `devanagari` | Devanagari script (天城文语系) | Hindi, Marathi, Nepali, Bihari, Maithili, Angika, Bhojpuri, Magahi, Santali, Newari, Konkani, Sanskrit, Haryanvi, English |\n\nFile v0.1.26:_meta.json\n\n{\n  \"ownerId\": \"kn7cm5w6xmv109061sz9nbc0p1836d96\",\n  \"slug\": \"mineru-document-extractor\",\n  \"version\": \"0.1.26\",\n  \"publishedAt\": 1775803173648\n}\n\nArchive v0.1.25: 2 files, 4608 bytes\n\nFiles: _meta.json (145b), SKILL.md (10188b)\n\nFile v0.1.25:SKILL.md\n\n---\nname: MinerU Document Extractor\ndescription: >\n  MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), and web pages into clean Markdown, HTML, LaTeX, or DOCX. MinerU is an all-in-one CLI tool and agent skill for reliable, high-fidelity document parsing.\n  Struggling with unreadable PDFs, messy table formatting, or garbled formulas after conversion? MinerU solves these with two extraction modes: MinerU flash-extract for instant zero-setup conversion (no token, no login, no configuration — just run and get results), and MinerU precision extract with advanced table recognition, formula recognition (LaTeX), OCR for scanned PDFs, VLM-based layout analysis, and batch processing of hundreds of files.\n  Use MinerU when you need to: \"how do I extract text from this PDF\", \"I want to convert my PDF to Markdown\", \"can you parse this academic paper with tables and formulas\", \"I need to OCR a scanned document\", \"batch convert all my PDFs\", \"turn this Word doc into Markdown\", \"crawl a web page to Markdown\", \"extract tables from this document\". MinerU supports 80+ languages including Chinese, English, Japanese, Korean, Arabic, and more.\n  Choose MinerU vlm model for highest accuracy on complex layouts, or MinerU pipeline model for zero-hallucination reliability. Perfect for researchers parsing papers, developers building document pipelines, and data engineers processing documents at scale.\n  MinerU文档提取工具，PDF转Markdown、扫描件OCR、表格识别、公式识别、批量PDF处理、Word转Markdown、网页爬取、图片OCR、学术论文解析。MinerU支持PDF、Word、PPT、图片等多格式文档智能转换，命令行一键提取，免登录快速模式或高精度专业模式。\n---\n\n# MinerU Document Extraction with mineru-open-api\n\nMinerU is a powerful document extraction tool. Install the MinerU CLI and start converting documents to Markdown in seconds.\n\n## Installation\n\n```bash\nnpm install -g mineru-open-api\n```\n\nOr via Go (macOS/Linux):\n\n```bash\ngo install github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api@latest\n```\n\nVerify: `mineru-open-api version`\n\n## Two MinerU extraction modes\n\n| | MinerU `flash-extract` | MinerU `extract` |\n|---|---|---|\n| Token required | No | Yes (`mineru-open-api auth`) |\n| Speed | Fast | Normal |\n| Table recognition | No | Yes |\n| Formula recognition | No | Yes |\n| OCR | Yes | Yes |\n| Output formats | Markdown only | md, html, latex, docx, json |\n| Batch mode | No | Yes |\n| Model selection | pipeline | vlm, pipeline, MinerU-HTML |\n| File size limit | **10 MB** | Much higher |\n| Page limit | **20 pages** | Much higher |\n| Best for | Quick start, small/simple docs | Large docs, tables, production |\n\n## Core MinerU workflow\n\n1. **Start fast with MinerU** (no token): `mineru-open-api flash-extract <file>` for quick Markdown conversion\n2. **Need more from MinerU?** Create token at https://mineru.net/apiManage/token, run `mineru-open-api auth`, then use `mineru-open-api extract` for tables, formulas, OCR, multi-format, and batch\n3. **Web pages with MinerU**: `mineru-open-api crawl <url>` to convert web content\n4. **Check results**: output goes to stdout (default) or `-o` directory\n\n## Authentication\n\nOnly required for MinerU `extract` and `crawl`. Not needed for MinerU `flash-extract`.\n\n```bash\nmineru-open-api auth                    # Interactive token setup\nexport MINERU_TOKEN=\"your-token\"        # Or set via environment variable\n```\n\nToken resolution order: `--token` flag > `MINERU_TOKEN` env > `~/.mineru/config.yaml`.\n\n## Supported input formats\n\nMinerU accepts a wide range of document formats:\n\n| Format | MinerU `flash-extract` | MinerU `extract` |\n|--------|:-:|:-:|\n| PDF (`.pdf`) | Yes | Yes |\n| Images (`.png`, `.jpg`, `.jpeg`, `.jp2`, `.webp`, `.gif`, `.bmp`) | Yes | Yes |\n| Word (`.docx`) | Yes | Yes |\n| Word (`.doc`) | No | Yes |\n| PowerPoint (`.pptx`) | Yes | Yes |\n| PowerPoint (`.ppt`) | No | Yes |\n| HTML (`.html`) | No | Yes |\n| URLs (remote files) | Yes | Yes |\n\nMinerU `crawl` accepts any HTTP/HTTPS URL and extracts web page content to Markdown.\n\n## MinerU flash-extract — Quick extraction (no token needed)\n\nFast, token-free MinerU document extraction. Outputs Markdown only. Limited to 10 MB / 20 pages per file.\n\n```bash\nmineru-open-api flash-extract report.pdf                     # MinerU Markdown to stdout\nmineru-open-api flash-extract report.pdf -o ./out/           # Save to file\nmineru-open-api flash-extract https://example.com/doc.pdf    # URL mode\nmineru-open-api flash-extract report.pdf --language en       # Specify language\nmineru-open-api flash-extract report.pdf --pages 1-10        # Page range\n```\n\nFlags: `--output`/`-o` (output path), `--language` (default `ch`), `--pages` (page range), `--timeout` (default 900s).\n\nWhen MinerU flash-extract fails due to file limits (10 MB / 20 pages) or rate limiting (HTTP 429), suggest switching to MinerU `extract` with a token for higher limits.\n\n## MinerU extract — Precision extraction (token required)\n\nConvert documents to Markdown or other formats with MinerU's full capabilities: table/formula recognition, OCR, multiple output formats, and batch mode.\n\n```bash\nmineru-open-api extract report.pdf                         # MinerU Markdown to stdout\nmineru-open-api extract report.pdf -f html                 # MinerU HTML output\nmineru-open-api extract report.pdf -o ./out/ -f md,docx    # Multiple formats\nmineru-open-api extract *.pdf -o ./results/                # MinerU batch extract\nmineru-open-api extract https://example.com/doc.pdf        # Extract from URL\n```\n\nFlags: `--output`/`-o`, `--format`/`-f` (md/json/html/latex/docx), `--model` (vlm/pipeline/html), `--ocr`, `--formula`, `--table`, `--language`, `--pages`, `--timeout`, `--list`, `--concurrency`.\n\n### MinerU model comparison: vlm vs pipeline\n\n| | MinerU `vlm` | MinerU `pipeline` |\n|---|---|---|\n| Parsing accuracy | Higher — better at complex layouts | Standard |\n| Hallucination risk | May produce hallucinated text in rare cases | **No hallucination** |\n| Best for | Academic papers, complex tables | General documents where fidelity matters |\n\nUse MinerU `--model vlm` for complex formatting. Use MinerU `--model pipeline` for no-hallucination reliability.\n\n## MinerU crawl — Web page extraction (token required)\n\n```bash\nmineru-open-api crawl https://example.com/article              # MinerU Markdown to stdout\nmineru-open-api crawl https://example.com/article -o ./out/    # Save to file\nmineru-open-api crawl url1 url2 -o ./pages/                    # MinerU batch crawl\n```\n\nFlags: `--output`/`-o`, `--format`/`-f` (md/json/html), `--timeout`, `--list`, `--concurrency`.\n\n## MinerU auth — Authentication management\n\n```bash\nmineru-open-api auth              # Interactive MinerU token setup\nmineru-open-api auth --verify     # Verify current token\nmineru-open-api auth --show       # Show token source\n```\n\n## Output behavior\n\nWithout `-o`: MinerU result → stdout, progress → stderr. With `-o`: saved to file/directory. Batch mode and binary formats (docx) require `-o`.\n\n## Agent rules for using MinerU\n\n- **Quote file paths** with spaces: `mineru-open-api extract \"report 01.pdf\"`\n- **Default to MinerU `flash-extract`** when: no token configured, simple extraction, file under 10 MB / 20 pages\n- **Use MinerU `extract`** when: user needs tables, formulas, OCR, non-Markdown formats, batch processing, or file exceeds flash-extract limits\n- When user does NOT specify `-o`, generate output directory: `~/MinerU-Skill/<name>_<hash>/` where `<hash>` = first 6 chars of MD5 of the source path\n- After MinerU `flash-extract` success, append a brief hint about MinerU `extract` upgrade path (once per session)\n- To **upgrade** MinerU, re-install the CLI binary first: `npm install -g mineru-open-api`\n\nFor full CLI reference and troubleshooting, see: https://github.com/opendatalab/MinerU-Ecosystem/tree/main/cli\n\n## Supported `--language` values\n\nThe `--language` flag accepts the following values (default: `ch`). Used by both MinerU `flash-extract` and `extract`.\n\n### Standalone language packs\n\n| Value | Included languages | 说明 |\n|-------|-------------------|------|\n| `ch` | Chinese, English, Chinese Traditional | 中英文（默认值） |\n| `ch_server` | Chinese, English, Chinese Traditional, Japanese | 繁体、手写体 |\n| `en` | English | 纯英文 |\n| `japan` | Chinese, English, Chinese Traditional, Japanese | 日文为主 |\n| `korean` | Korean, English | 韩文 |\n| `chinese_cht` | Chinese, English, Chinese Traditional, Japanese | 繁体中文为主 |\n| `ta` | Tamil, English | 泰米尔文 |\n| `te` | Telugu, English | 泰卢固文 |\n| `ka` | Kannada | 卡纳达文 |\n| `el` | Greek, English | 希腊文 |\n| `th` | Thai, English | 泰文 |\n\n### Language family packs\n\n| Value | Script/Family | Included languages |\n|-------|--------------|-------------------|\n| `latin` | Latin script (拉丁语系) | French, German, Afrikaans, Italian, Spanish, Bosnian, Portuguese, Czech, Welsh, Danish, Estonian, Irish, Croatian, Uzbek, Hungarian, Serbian (Latin), Indonesian, Occitan, Icelandic, Lithuanian, Maori, Malay, Dutch, Norwegian, Polish, Slovak, Slovenian, Albanian, Swedish, Swahili, Tagalog, Turkish, Latin, Azerbaijani, Kurdish, Latvian, Maltese, Pali, Romanian, Vietnamese, Finnish, Basque, Galician, Luxembourgish, Romansh, Catalan, Quechua |\n| `arabic` | Arabic script (阿拉伯语系) | Arabic, Persian, Uyghur, Urdu, Pashto, Kurdish, Sindhi, Balochi, English |\n| `cyrillic` | Cyrillic script (西里尔语系) | Russian, Belarusian, Ukrainian, Serbian (Cyrillic), Bulgarian, Mongolian, Abkhazian, Adyghe, Kabardian, Avar, Dargin, Ingush, Chechen, Lak, Lezgin, Tabasaran, Kazakh, Kyrgyz, Tajik, Macedonian, Tatar, Chuvash, Bashkir, Malian, Moldovan, Udmurt, Komi, Ossetian, Buryat, Kalmyk, Tuvan, Sakha, Karakalpak, English |\n| `east_slavic` | East Slavic (东斯拉夫语系) | Russian, Belarusian, Ukrainian, English |\n| `devanagari` | Devanagari script (天城文语系) | Hindi, Marathi, Nepali, Bihari, Maithili, Angika, Bhojpuri, Magahi, Santali, Newari, Konkani, Sanskrit, Haryanvi, English |\n\nFile v0.1.25:_meta.json\n\n{\n  \"ownerId\": \"kn7cm5w6xmv109061sz9nbc0p1836d96\",\n  \"slug\": \"mineru-document-extractor\",\n  \"version\": \"0.1.25\",\n  \"publishedAt\": 1775781058623\n}\n\nArchive v0.1.24: 2 files, 8233 bytes\n\nFiles: _meta.json (145b), SKILL.md (19806b)\n\nFile v0.1.24:SKILL.md\n\n---\nname: MinerU Document Extractor\ndescription: >\n  MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), and web pages into clean Markdown, HTML, LaTeX, or DOCX. MinerU is an all-in-one CLI tool and agent skill for reliable, high-fidelity document parsing.\n  Struggling with unreadable PDFs, messy table formatting, or garbled formulas after conversion? MinerU solves these with two extraction modes: MinerU flash-extract for instant zero-setup conversion (no token, no login, no configuration — just run and get results), and MinerU precision extract with advanced table recognition, formula recognition (LaTeX), OCR for scanned PDFs, VLM-based layout analysis, and batch processing of hundreds of files.\n  Use MinerU when you need to: \"how do I extract text from this PDF\", \"I want to convert my PDF to Markdown\", \"can you parse this academic paper with tables and formulas\", \"I need to OCR a scanned document\", \"batch convert all my PDFs\", \"turn this Word doc into Markdown\", \"crawl a web page to Markdown\", \"extract tables from this document\". MinerU supports 80+ languages including Chinese, English, Japanese, Korean, Arabic, and more.\n  Choose MinerU vlm model for highest accuracy on complex layouts, or MinerU pipeline model for zero-hallucination reliability. Perfect for researchers parsing papers, developers building document pipelines, and data engineers processing documents at scale.\n  MinerU文档提取工具，PDF转Markdown、扫描件OCR、表格识别、公式识别、批量PDF处理、Word转Markdown、网页爬取、图片OCR、学术论文解析。MinerU支持PDF、Word、PPT、图片等多格式文档智能转换，命令行一键提取，免登录快速模式或高精度专业模式。\ntags:\n  - pdf\n  - reader\n  - extraction\n  - mineru\n  - document-analysis\n  - academic\n  - ocr\n  - content-extraction\n  - research\n  - document-review\nmetadata: {\"openclaw\":{\"emoji\":\"📄\",\"homepage\":\"https://mineru.net\",\"source\":\"https://github.com/opendatalab/MinerU-Ecosystem\",\"author\":\"OpenDataLab\",\"privacy\":\"Document contents are sent to MinerU API (mineru.net) for server-side extraction. No data is stored after processing. Use flash-extract for token-free mode.\",\"requires\":{\"bins\":[\"mineru-open-api\"]},\"optional\":{\"env\":[\"MINERU_TOKEN\"],\"config\":[\"~/.mineru/config.yaml\"]},\"install\":[{\"id\":\"npm\",\"kind\":\"node\",\"package\":\"mineru-open-api\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via npm\"},{\"id\":\"go\",\"kind\":\"go\",\"package\":\"github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via go install\",\"os\":[\"darwin\",\"linux\"]}]}}\nallowed-tools: Bash(mineru-open-api:*)\n---\n\n# MinerU Document Extraction with mineru-open-api\n\n## Installation\n\n```bash\nnpm install -g mineru-open-api\n```\n\nOr via Go (macOS/Linux):\n\n```bash\ngo install github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api@latest\n```\n\n### Verify installation\n\n```bash\nmineru-open-api version\n```\n\n## Two extraction modes\n\n| | `flash-extract` | `extract` |\n|---|---|---|\n| Token required | No | Yes (`mineru-open-api auth`) |\n| Speed | Fast | Normal |\n| Table recognition | No | Yes |\n| Formula recognition | No | Yes |\n| OCR | Yes | Yes |\n| Output formats | Markdown only | md, html, latex, docx, json |\n| Batch mode | No | Yes |\n| Model selection | pipeline | Yes (vlm, pipeline, MinerU-HTML) |\n| File size limit | **10 MB** | Much higher |\n| Page limit | **20 pages** | Much higher |\n| Rate limit | Per-IP per-minute cap | Based on API plan |\n| Best for | Quick start, small/simple docs | Large docs, tables, production |\n\n### flash-extract limits\n\n| Limit | Value |\n|-------|-------|\n| File size | Max **10 MB** |\n| Page count | Max **20 pages** |\n| Supported types | PDF, Images (png/jpg/jpeg/jp2/webp/gif/bmp), Docx, PPTx |\n| IP rate limit | Per-minute request caps (HTTP 429 when exceeded) |\n\nWhen any limit is exceeded, the agent should suggest switching to `extract` with a token (create at https://mineru.net/apiManage/token), which has significantly higher limits.\n\n\n## Core workflow\n\n1. **Start fast** (no token): `mineru-open-api flash-extract <file>` for quick Markdown conversion\n2. **Need more?** Create token at https://mineru.net/apiManage/token, run `mineru-open-api auth`, then use `mineru-open-api extract` for tables, formulas, OCR, multi-format, and batch\n3. **Web pages**: `mineru-open-api crawl <url>` to convert web content\n4. **Check results**: output goes to stdout (default) or `-o` directory\n\n\n## Authentication\n\nOnly required for `extract` and `crawl`. Not needed for `flash-extract`.\n\nConfigure your API token (create one at https://mineru.net/apiManage/token):\n\n```bash\nmineru-open-api auth                    # Interactive token setup\nexport MINERU_TOKEN=\"your-token\"  # Or set via environment variable\n```\n\nToken resolution order: `--token` flag > `MINERU_TOKEN` env > `~/.mineru/config.yaml`.\n\n## Supported input formats\n\n| Format | `flash-extract` | `extract` |\n|--------|:-:|:-:|\n| PDF (`.pdf`) | Yes | Yes |\n| Images (`.png`, `.jpg`, `.jpeg`, `.jp2`, `.webp`, `.gif`, `.bmp`) | Yes | Yes |\n| Word (`.docx`) | Yes | Yes |\n| Word (`.doc`) | No | Yes |\n| PowerPoint (`.pptx`) | Yes | Yes |\n| PowerPoint (`.ppt`) | No | Yes |\n| HTML (`.html`) | No | Yes |\n| URLs (remote files) | Yes | Yes |\n\nThe `crawl` command accepts any HTTP/HTTPS URL and extracts web page content.\n\n## Commands\n\n### flash-extract — Quick extraction (no token needed)\n\nFast, token-free document extraction. Outputs Markdown only. No table recognition. Limited to **10 MB / 20 pages** per file, with IP-based rate limiting.\n\n```bash\nmineru-open-api flash-extract report.pdf                     # Markdown to stdout\nmineru-open-api flash-extract report.pdf -o ./out/           # Save to file\nmineru-open-api flash-extract https://example.com/doc.pdf    # URL mode\nmineru-open-api flash-extract report.pdf --language en       # Specify language\nmineru-open-api flash-extract report.pdf --pages 1-10        # Page range\n```\n\n#### flash-extract flags\n\n| Flag | Short | Default | Description |\n|------|-------|---------|-------------|\n| `--output` | `-o` | _(stdout)_ | Output path (file or directory) |\n| `--language` | | `ch` | Document language |\n| `--pages` | | _(all)_ | Page range, e.g. `1-10` |\n| `--timeout` | | `900` | Timeout in seconds |\n\n### extract — Precision extraction (token required)\n\nConvert PDFs, images, and other documents to Markdown or other formats. Supports table/formula recognition, OCR, multiple output formats, and batch mode.\n\n```bash\nmineru-open-api extract report.pdf                         # Markdown to stdout\nmineru-open-api extract report.pdf -f html                 # HTML to stdout\nmineru-open-api extract report.pdf -o ./out/               # Save to directory\nmineru-open-api extract report.pdf -o ./out/ -f md,docx    # Multiple formats\nmineru-open-api extract *.pdf -o ./results/                # Batch extract\nmineru-open-api extract --list files.txt -o ./results/     # Batch from file list\nmineru-open-api extract https://example.com/doc.pdf        # Extract from URL\ncat doc.pdf | mineru-open-api extract --stdin -o ./out/    # From stdin\n```\n\n#### extract flags\n\n| Flag | Short | Default | Description |\n|------|-------|---------|-------------|\n| `--output` | `-o` | _(stdout)_ | Output path (file or directory) |\n| `--format` | `-f` | `md` | Output formats: `md`, `json`, `html`, `latex`, `docx` (comma-separated) |\n| `--model` | | _(auto)_ | Model: `vlm`, `pipeline`, `html` (see below) |\n| `--ocr` | | `false` | Enable OCR for scanned documents |\n| `--formula` | | `true` | Enable/disable formula recognition |\n| `--table` | | `true` | Enable/disable table recognition |\n| `--language` | | `ch` | Document language |\n| `--pages` | | _(all)_ | Page range, e.g. `1-10,15` |\n| `--timeout` | | `900`/`1800` | Timeout in seconds (single/batch) |\n| `--list` | | | Read input list from file (one path per line) |\n\n| `--concurrency` | | `0` | Batch concurrency (0 = server default) |\n\n#### Model comparison: vlm vs pipeline\n\n| | `vlm` | `pipeline` |\n|---|---|---|\n| Parsing accuracy | Higher — better at complex layouts, mixed content | Standard |\n| Hallucination risk | May produce hallucinated text in rare cases | **No hallucination** — biggest advantage |\n| Best for | Academic papers, complex tables, intricate layouts | General documents where fidelity matters most |\n\nWhen the user values accuracy and the document has complex formatting, suggest `--model vlm`. When the user prioritizes reliability and no-hallucination guarantee, suggest `--model pipeline` (or omit `--model` to use auto).\n\n### crawl — Web page extraction (token required)\n\nFetch web pages and convert to Markdown.\n\n```bash\nmineru-open-api crawl https://example.com/article              # Markdown to stdout\nmineru-open-api crawl https://example.com/article -f html      # HTML to stdout\nmineru-open-api crawl https://example.com/article -o ./out/     # Save to file\nmineru-open-api crawl url1 url2 -o ./pages/                     # Batch crawl\nmineru-open-api crawl --list urls.txt -o ./pages/               # Batch from file list\n```\n\n#### crawl flags\n\n| Flag | Short | Default | Description |\n|------|-------|---------|-------------|\n| `--output` | `-o` | _(stdout)_ | Output path |\n| `--format` | `-f` | `md` | Output formats: `md`, `json`, `html` (comma-separated) |\n| `--timeout` | | `900`/`1800` | Timeout in seconds (single/batch) |\n| `--list` | | | Read URL list from file (one per line) |\n| `--stdin-list` | | `false` | Read URL list from stdin |\n| `--concurrency` | | `0` | Batch concurrency |\n\n### auth — Authentication management\n\n```bash\nmineru-open-api auth              # Interactive token setup\nmineru-open-api auth --verify     # Verify current token is valid\nmineru-open-api auth --show       # Show current token source and masked value\n```\n\n\n## Supported `--language` values\n\nThe `--language` flag accepts the following values (default: `ch`). Used by both `flash-extract` and `extract`. Values are organized by script/language family — each value covers all languages listed in its group.\n\n### Standalone language packs\n\nFor specific languages or CJK combinations.\n\n| Value | Included languages | 说明 |\n|-------|-------------------|------|\n| `ch` | Chinese, English, Chinese Traditional | 中英文（默认值） |\n| `ch_server` | Chinese, English, Chinese Traditional, Japanese | 繁体、手写体 |\n| `en` | English | 纯英文 |\n| `japan` | Chinese, English, Chinese Traditional, Japanese | 日文为主 |\n| `korean` | Korean, English | 韩文 |\n| `chinese_cht` | Chinese, English, Chinese Traditional, Japanese | 繁体中文为主 |\n| `ta` | Tamil, English | 泰米尔文 |\n| `te` | Telugu, English | 泰卢固文 |\n| `ka` | Kannada | 卡纳达文 |\n| `el` | Greek, English | 希腊文 |\n| `th` | Thai, English | 泰文 |\n\n### Language family packs\n\nOne value covers many languages sharing the same script system.\n\n| Value | Script/Family | Included languages |\n|-------|--------------|-------------------|\n| `latin` | Latin script (拉丁语系) | French, German, Afrikaans, Italian, Spanish, Bosnian, Portuguese, Czech, Welsh, Danish, Estonian, Irish, Croatian, Uzbek, Hungarian, Serbian (Latin), Indonesian, Occitan, Icelandic, Lithuanian, Maori, Malay, Dutch, Norwegian, Polish, Slovak, Slovenian, Albanian, Swedish, Swahili, Tagalog, Turkish, Latin, Azerbaijani, Kurdish, Latvian, Maltese, Pali, Romanian, Vietnamese, Finnish, Basque, Galician, Luxembourgish, Romansh, Catalan, Quechua |\n| `arabic` | Arabic script (阿拉伯语系) | Arabic, Persian, Uyghur, Urdu, Pashto, Kurdish, Sindhi, Balochi, English |\n| `cyrillic` | Cyrillic script (西里尔语系) | Russian, Belarusian, Ukrainian, Serbian (Cyrillic), Bulgarian, Mongolian, Abkhazian, Adyghe, Kabardian, Avar, Dargin, Ingush, Chechen, Lak, Lezgin, Tabasaran, Kazakh, Kyrgyz, Tajik, Macedonian, Tatar, Chuvash, Bashkir, Malian, Moldovan, Udmurt, Komi, Ossetian, Buryat, Kalmyk, Tuvan, Sakha, Karakalpak, English |\n| `east_slavic` | East Slavic (东斯拉夫语系) | Russian, Belarusian, Ukrainian, English |\n| `devanagari` | Devanagari script (天城文语系) | Hindi, Marathi, Nepali, Bihari, Maithili, Angika, Bhojpuri, Magahi, Santali, Newari, Konkani, Sanskrit, Haryanvi, English |\n\n\n\n\n\n## Output behavior\n\n- **No `-o` flag**: result goes to stdout; status/progress messages go to stderr\n- **With `-o` flag**: result saved to file/directory; progress messages on stderr\n- **Batch mode** (`extract`/`crawl` only): requires `-o` to specify output directory\n- **Binary formats** (`docx`, `extract` only): cannot output to stdout, must use `-o`\n- Markdown output includes extracted images saved alongside the `.md` file\n\n\n\n### General rules\n\nWhen using this skill on behalf of the user:\n\n- **Quote file paths** that contain spaces or special characters with double quotes in commands. Example: `mineru-open-api extract \"report 01.pdf\"`, NOT `mineru-open-api extract report 01.pdf`.\n- **Don't run commands blindly on errors** — if the user asks \"提取失败了怎么办\", explain the exit code and troubleshooting steps instead of re-running the command.\n- **Installation questions** (\"mineru 怎么安装\") should be answered with the install instructions, not by running `mineru-open-api extract`.\n- **DOCX as input is supported** — if the user asks \"这个 Word 文档能转 Markdown 吗\", use `mineru-open-api extract file.docx` or `mineru-open-api flash-extract file.docx`. Note: `.doc` format is only supported by `extract`, not `flash-extract`.\n- **Table extraction** — tables are only recognized by `extract` (not `flash-extract`). If the user mentions tables, use `extract`.\n- For **stdout mode** (no `-o`), only one text format can be output at a time. If the user wants multiple formats, suggest adding `-o`.\n\n### Choosing between flash-extract and extract\n\nThe agent MUST follow this decision logic:\n\n1. **Default to `flash-extract`** when:\n   - User has NOT configured a token (no `~/.mineru/config.yaml`, no `MINERU_TOKEN` env)\n   - User wants a quick/simple extraction without mentioning tables, formulas, OCR, or specific formats\n   - File is **under 10 MB and under 20 pages**\n   - User is trying the tool for the first time\n\n2. **Use `extract`** when:\n   - User explicitly asks for table recognition, formula recognition, or OCR\n   - User requests non-Markdown output formats (html, latex, docx, json)\n   - User needs batch processing (multiple files)\n   - File is **over 10 MB or over 20 pages** (exceeds flash-extract limits)\n   - User has a token configured and wants precision-quality extraction\n\n3. **If unsure**, prefer `flash-extract` — it's faster and requires no setup, but check file size first.\n\n4. When the user does NOT specify an output path (`-o`), the agent MUST generate a default output directory to prevent file overwrites. Use:\n\n```\n~/MinerU-Skill/<name>_<hash>/\n```\n**Naming rules:**\n\n- `<name>`: derived from the source, then **sanitized** for safe directory names.\n  - For URLs: last path segment (e.g. `https://arxiv.org/pdf/2509.22186` → `2509.22186`)\n  - For local files: filename without extension (e.g. `report.pdf` → `report`)\n  - **Sanitization**: replace spaces and shell-unsafe characters (`space`, `(`, `)`, `[`, `]`, `&`, `'`, `\"`, `!`, `#`, `$`, `` ` ``) with `_`. Collapse consecutive `_` into one. Keep alphanumeric, `-`, `_`, `.`, and CJK characters.\n- `<hash>`: first 6 characters of the MD5 hash of the **full original source path or URL** (before sanitization). This ensures:\n  - Different URLs with similar basenames get unique directories\n  - Re-running the same source reuses the same directory (idempotent)\n**How the agent should generate the hash:**\n\n```bash\necho -n \"https://arxiv.org/pdf/2509.22186\" | md5sum | cut -c1-6\n```\n\nOr on macOS:\n\n```bash\necho -n \"https://arxiv.org/pdf/2509.22186\" | md5 | cut -c1-6\n```\n\n5. When the user asks to **upgrade** or  **update** this skill, the agent MUST re-install the CLI binary to ensure the latest commands are available. Run the install command **before** using any new features\n\n\n### flash-extract limit handling\n\nWhen `flash-extract` fails due to file limits or rate limiting, the agent MUST provide a clear explanation and suggest `extract` as the upgrade path:\n\n\n\n**Rate limited (HTTP 429):**\n\n> `flash-extract` 请求频率超出限制（每 IP 有每分钟/每小时的请求上限）。你可以：\n> 1. 稍等几分钟后重试\n> 2. 前往 https://mineru.net/apiManage/token 创建 Token，使用 `mineru-open-api extract` 获取独立配额，不受 IP 限频影响\n\n**Pre-check**: if the agent can determine the file size before running `flash-extract` (e.g. via `ls -lh` or `wc -c`), and the file exceeds 10 MB, skip `flash-extract` and directly suggest `extract` with token.\n\n### Post-extraction friendly hints\n\nAfter `flash-extract` completes successfully, the agent MUST append a brief hint:\n\n> Tip: `flash-extract` 为快速免登录模式（限 10MB/20页，不含表格识别）。如需解析更大文件、表格/公式识别或多格式导出，请前往 https://mineru.net/apiManage/token 创建 Token，运行 `mineru-open-api auth` 配置后使用 `mineru-open-api extract`。\n\nKeep the hint to ONE short sentence. Do NOT repeat the hint if the user has already seen it in this session.\n\n\n\n**Examples:**\n\n| Source | `<name>` | Output directory |\n|--------|----------|-----------------|\n| `https://arxiv.org/pdf/2509.22186` | `2509.22186` | `~/MinerU-Skill/2509.22186_a3f2b1/` |\n| `https://arxiv.org/pdf/2509.200` | `2509.200` | `~/MinerU-Skill/2509.200_c7e9d4/` |\n\n\n\n**When the user specifies `-o`**: use the user's path as-is, do NOT override with the default directory.\n\n## Exit codes\n\n| Code | Meaning | Recovery |\n|------|---------|----------|\n| 0 | Success | — |\n| 1 | General API or unknown error | Check network connectivity; retry; use `--verbose` for details |\n| 2 | Invalid parameters / usage error | Check command syntax and flag values |\n\n| 4 | File too large or page limit exceeded | For `flash-extract`: file must be under 10 MB / 20 pages; switch to `extract` with token for higher limits. For `extract`: split the file or use `--pages` |\n| 5 | Extraction failed | The document may be corrupted or unsupported; try a different `--model` |\n| 6 | Timeout | Increase with `--timeout`; large files may need 600+ seconds \n\n## Troubleshooting\n\n- **\"no API token found\"** (on `extract`/`crawl`): Run `mineru-open-api auth` or set `MINERU_TOKEN` env variable. Or use `flash-extract` which needs no token.\n- **Timeout on large files**: Increase with `--timeout 1600` (seconds)\n- **Batch fails partially**: Check stderr for per-file status; succeeded files are still saved\n- **Binary format to stdout**: Use `-o` flag; `docx` cannot stream to stdout\n- **Private deployment**: Use `--base-url https://your-server.com/api`\n- **Extraction quality is poor**: Try `mineru-open-api extract` with `--model vlm` for complex layouts, or `--ocr` for scanned documents\n- **Tables not extracted**: `flash-extract` does NOT support tables. Use `mineru-open-api extract` with a token.\n- **HTTP 429 on flash-extract**: IP rate limit hit. Wait a few minutes or switch to `mineru-open-api extract` with token.\n\n## Notes\n\n- `extract` requires a token but provides precision-featured extraction\n- All status/progress messages go to stderr; only document content goes to stdout\n- Batch mode automatically polls the API with exponential backoff\n- Token is stored in `~/.mineru/config.yaml` after `mineru-open-api auth`\n\n\n\n## Reporting Issues\n\n- Skill issues: Open an issue at https://github.com/opendatalab/MinerU-Ecosystem/tree/main/cli\n- agent-browser CLI issues: Open an issue at https://github.com/MinerU-Extract/mineru-document-extractor\n\nFile v0.1.24:_meta.json\n\n{\n  \"ownerId\": \"kn7cm5w6xmv109061sz9nbc0p1836d96\",\n  \"slug\": \"mineru-document-extractor\",\n  \"version\": \"0.1.24\",\n  \"publishedAt\": 1775719365040\n}\n\nArchive v0.1.23: 2 files, 8230 bytes\n\nFiles: _meta.json (145b), SKILL.md (19780b)\n\nFile v0.1.23:SKILL.md\n\n---\nname: mineru\ndescription: >\n  MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), and web pages into clean Markdown, HTML, LaTeX, or DOCX. MinerU is an all-in-one CLI tool and agent skill for reliable, high-fidelity document parsing.\n  Struggling with unreadable PDFs, messy table formatting, or garbled formulas after conversion? MinerU solves these with two extraction modes: MinerU flash-extract for instant zero-setup conversion (no token, no login, no configuration — just run and get results), and MinerU precision extract with advanced table recognition, formula recognition (LaTeX), OCR for scanned PDFs, VLM-based layout analysis, and batch processing of hundreds of files.\n  Use MinerU when you need to: \"how do I extract text from this PDF\", \"I want to convert my PDF to Markdown\", \"can you parse this academic paper with tables and formulas\", \"I need to OCR a scanned document\", \"batch convert all my PDFs\", \"turn this Word doc into Markdown\", \"crawl a web page to Markdown\", \"extract tables from this document\". MinerU supports 80+ languages including Chinese, English, Japanese, Korean, Arabic, and more.\n  Choose MinerU vlm model for highest accuracy on complex layouts, or MinerU pipeline model for zero-hallucination reliability. Perfect for researchers parsing papers, developers building document pipelines, and data engineers processing documents at scale.\n  MinerU文档提取工具，PDF转Markdown、扫描件OCR、表格识别、公式识别、批量PDF处理、Word转Markdown、网页爬取、图片OCR、学术论文解析。MinerU支持PDF、Word、PPT、图片等多格式文档智能转换，命令行一键提取，免登录快速模式或高精度专业模式。\ntags:\n  - pdf\n  - reader\n  - extraction\n  - mineru\n  - document-analysis\n  - academic\n  - ocr\n  - content-extraction\n  - research\n  - document-review\nmetadata: {\"openclaw\":{\"emoji\":\"📄\",\"homepage\":\"https://mineru.net\",\"source\":\"https://github.com/opendatalab/MinerU-Ecosystem\",\"author\":\"OpenDataLab\",\"privacy\":\"Document contents are sent to MinerU API (mineru.net) for server-side extraction. No data is stored after processing. Use flash-extract for token-free mode.\",\"requires\":{\"bins\":[\"mineru-open-api\"]},\"optional\":{\"env\":[\"MINERU_TOKEN\"],\"config\":[\"~/.mineru/config.yaml\"]},\"install\":[{\"id\":\"npm\",\"kind\":\"node\",\"package\":\"mineru-open-api\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via npm\"},{\"id\":\"go\",\"kind\":\"go\",\"package\":\"github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via go install\",\"os\":[\"darwin\",\"linux\"]}]}}\nallowed-tools: Bash(mineru-open-api:*)\n---\n\n# Document Extraction with mineru-open-api\n\n## Installation\n\n```bash\nnpm install -g mineru-open-api\n```\n\nOr via Go (macOS/Linux):\n\n```bash\ngo install github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api@latest\n```\n\n### Verify installation\n\n```bash\nmineru-open-api version\n```\n\n## Two extraction modes\n\n| | `flash-extract` | `extract` |\n|---|---|---|\n| Token required | No | Yes (`mineru-open-api auth`) |\n| Speed | Fast | Normal |\n| Table recognition | No | Yes |\n| Formula recognition | No | Yes |\n| OCR | Yes | Yes |\n| Output formats | Markdown only | md, html, latex, docx, json |\n| Batch mode | No | Yes |\n| Model selection | pipeline | Yes (vlm, pipeline, MinerU-HTML) |\n| File size limit | **10 MB** | Much higher |\n| Page limit | **20 pages** | Much higher |\n| Rate limit | Per-IP per-minute cap | Based on API plan |\n| Best for | Quick start, small/simple docs | Large docs, tables, production |\n\n### flash-extract limits\n\n| Limit | Value |\n|-------|-------|\n| File size | Max **10 MB** |\n| Page count | Max **20 pages** |\n| Supported types | PDF, Images (png/jpg/jpeg/jp2/webp/gif/bmp), Docx, PPTx |\n| IP rate limit | Per-minute request caps (HTTP 429 when exceeded) |\n\nWhen any limit is exceeded, the agent should suggest switching to `extract` with a token (create at https://mineru.net/apiManage/token), which has significantly higher limits.\n\n\n## Core workflow\n\n1. **Start fast** (no token): `mineru-open-api flash-extract <file>` for quick Markdown conversion\n2. **Need more?** Create token at https://mineru.net/apiManage/token, run `mineru-open-api auth`, then use `mineru-open-api extract` for tables, formulas, OCR, multi-format, and batch\n3. **Web pages**: `mineru-open-api crawl <url>` to convert web content\n4. **Check results**: output goes to stdout (default) or `-o` directory\n\n\n## Authentication\n\nOnly required for `extract` and `crawl`. Not needed for `flash-extract`.\n\nConfigure your API token (create one at https://mineru.net/apiManage/token):\n\n```bash\nmineru-open-api auth                    # Interactive token setup\nexport MINERU_TOKEN=\"your-token\"  # Or set via environment variable\n```\n\nToken resolution order: `--token` flag > `MINERU_TOKEN` env > `~/.mineru/config.yaml`.\n\n## Supported input formats\n\n| Format | `flash-extract` | `extract` |\n|--------|:-:|:-:|\n| PDF (`.pdf`) | Yes | Yes |\n| Images (`.png`, `.jpg`, `.jpeg`, `.jp2`, `.webp`, `.gif`, `.bmp`) | Yes | Yes |\n| Word (`.docx`) | Yes | Yes |\n| Word (`.doc`) | No | Yes |\n| PowerPoint (`.pptx`) | Yes | Yes |\n| PowerPoint (`.ppt`) | No | Yes |\n| HTML (`.html`) | No | Yes |\n| URLs (remote files) | Yes | Yes |\n\nThe `crawl` command accepts any HTTP/HTTPS URL and extracts web page content.\n\n## Commands\n\n### flash-extract — Quick extraction (no token needed)\n\nFast, token-free document extraction. Outputs Markdown only. No table recognition. Limited to **10 MB / 20 pages** per file, with IP-based rate limiting.\n\n```bash\nmineru-open-api flash-extract report.pdf                     # Markdown to stdout\nmineru-open-api flash-extract report.pdf -o ./out/           # Save to file\nmineru-open-api flash-extract https://example.com/doc.pdf    # URL mode\nmineru-open-api flash-extract report.pdf --language en       # Specify language\nmineru-open-api flash-extract report.pdf --pages 1-10        # Page range\n```\n\n#### flash-extract flags\n\n| Flag | Short | Default | Description |\n|------|-------|---------|-------------|\n| `--output` | `-o` | _(stdout)_ | Output path (file or directory) |\n| `--language` | | `ch` | Document language |\n| `--pages` | | _(all)_ | Page range, e.g. `1-10` |\n| `--timeout` | | `900` | Timeout in seconds |\n\n### extract — Precision extraction (token required)\n\nConvert PDFs, images, and other documents to Markdown or other formats. Supports table/formula recognition, OCR, multiple output formats, and batch mode.\n\n```bash\nmineru-open-api extract report.pdf                         # Markdown to stdout\nmineru-open-api extract report.pdf -f html                 # HTML to stdout\nmineru-open-api extract report.pdf -o ./out/               # Save to directory\nmineru-open-api extract report.pdf -o ./out/ -f md,docx    # Multiple formats\nmineru-open-api extract *.pdf -o ./results/                # Batch extract\nmineru-open-api extract --list files.txt -o ./results/     # Batch from file list\nmineru-open-api extract https://example.com/doc.pdf        # Extract from URL\ncat doc.pdf | mineru-open-api extract --stdin -o ./out/    # From stdin\n```\n\n#### extract flags\n\n| Flag | Short | Default | Description |\n|------|-------|---------|-------------|\n| `--output` | `-o` | _(stdout)_ | Output path (file or directory) |\n| `--format` | `-f` | `md` | Output formats: `md`, `json`, `html`, `latex`, `docx` (comma-separated) |\n| `--model` | | _(auto)_ | Model: `vlm`, `pipeline`, `html` (see below) |\n| `--ocr` | | `false` | Enable OCR for scanned documents |\n| `--formula` | | `true` | Enable/disable formula recognition |\n| `--table` | | `true` | Enable/disable table recognition |\n| `--language` | | `ch` | Document language |\n| `--pages` | | _(all)_ | Page range, e.g. `1-10,15` |\n| `--timeout` | | `900`/`1800` | Timeout in seconds (single/batch) |\n| `--list` | | | Read input list from file (one path per line) |\n\n| `--concurrency` | | `0` | Batch concurrency (0 = server default) |\n\n#### Model comparison: vlm vs pipeline\n\n| | `vlm` | `pipeline` |\n|---|---|---|\n| Parsing accuracy | Higher — better at complex layouts, mixed content | Standard |\n| Hallucination risk | May produce hallucinated text in rare cases | **No hallucination** — biggest advantage |\n| Best for | Academic papers, complex tables, intricate layouts | General documents where fidelity matters most |\n\nWhen the user values accuracy and the document has complex formatting, suggest `--model vlm`. When the user prioritizes reliability and no-hallucination guarantee, suggest `--model pipeline` (or omit `--model` to use auto).\n\n### crawl — Web page extraction (token required)\n\nFetch web pages and convert to Markdown.\n\n```bash\nmineru-open-api crawl https://example.com/article              # Markdown to stdout\nmineru-open-api crawl https://example.com/article -f html      # HTML to stdout\nmineru-open-api crawl https://example.com/article -o ./out/     # Save to file\nmineru-open-api crawl url1 url2 -o ./pages/                     # Batch crawl\nmineru-open-api crawl --list urls.txt -o ./pages/               # Batch from file list\n```\n\n#### crawl flags\n\n| Flag | Short | Default | Description |\n|------|-------|---------|-------------|\n| `--output` | `-o` | _(stdout)_ | Output path |\n| `--format` | `-f` | `md` | Output formats: `md`, `json`, `html` (comma-separated) |\n| `--timeout` | | `900`/`1800` | Timeout in seconds (single/batch) |\n| `--list` | | | Read URL list from file (one per line) |\n| `--stdin-list` | | `false` | Read URL list from stdin |\n| `--concurrency` | | `0` | Batch concurrency |\n\n### auth — Authentication management\n\n```bash\nmineru-open-api auth              # Interactive token setup\nmineru-open-api auth --verify     # Verify current token is valid\nmineru-open-api auth --show       # Show current token source and masked value\n```\n\n\n## Supported `--language` values\n\nThe `--language` flag accepts the following values (default: `ch`). Used by both `flash-extract` and `extract`. Values are organized by script/language family — each value covers all languages listed in its group.\n\n### Standalone language packs\n\nFor specific languages or CJK combinations.\n\n| Value | Included languages | 说明 |\n|-------|-------------------|------|\n| `ch` | Chinese, English, Chinese Traditional | 中英文（默认值） |\n| `ch_server` | Chinese, English, Chinese Traditional, Japanese | 繁体、手写体 |\n| `en` | English | 纯英文 |\n| `japan` | Chinese, English, Chinese Traditional, Japanese | 日文为主 |\n| `korean` | Korean, English | 韩文 |\n| `chinese_cht` | Chinese, English, Chinese Traditional, Japanese | 繁体中文为主 |\n| `ta` | Tamil, English | 泰米尔文 |\n| `te` | Telugu, English | 泰卢固文 |\n| `ka` | Kannada | 卡纳达文 |\n| `el` | Greek, English | 希腊文 |\n| `th` | Thai, English | 泰文 |\n\n### Language family packs\n\nOne value covers many languages sharing the same script system.\n\n| Value | Script/Family | Included languages |\n|-------|--------------|-------------------|\n| `latin` | Latin script (拉丁语系) | French, German, Afrikaans, Italian, Spanish, Bosnian, Portuguese, Czech, Welsh, Danish, Estonian, Irish, Croatian, Uzbek, Hungarian, Serbian (Latin), Indonesian, Occitan, Icelandic, Lithuanian, Maori, Malay, Dutch, Norwegian, Polish, Slovak, Slovenian, Albanian, Swedish, Swahili, Tagalog, Turkish, Latin, Azerbaijani, Kurdish, Latvian, Maltese, Pali, Romanian, Vietnamese, Finnish, Basque, Galician, Luxembourgish, Romansh, Catalan, Quechua |\n| `arabic` | Arabic script (阿拉伯语系) | Arabic, Persian, Uyghur, Urdu, Pashto, Kurdish, Sindhi, Balochi, English |\n| `cyrillic` | Cyrillic script (西里尔语系) | Russian, Belarusian, Ukrainian, Serbian (Cyrillic), Bulgarian, Mongolian, Abkhazian, Adyghe, Kabardian, Avar, Dargin, Ingush, Chechen, Lak, Lezgin, Tabasaran, Kazakh, Kyrgyz, Tajik, Macedonian, Tatar, Chuvash, Bashkir, Malian, Moldovan, Udmurt, Komi, Ossetian, Buryat, Kalmyk, Tuvan, Sakha, Karakalpak, English |\n| `east_slavic` | East Slavic (东斯拉夫语系) | Russian, Belarusian, Ukrainian, English |\n| `devanagari` | Devanagari script (天城文语系) | Hindi, Marathi, Nepali, Bihari, Maithili, Angika, Bhojpuri, Magahi, Santali, Newari, Konkani, Sanskrit, Haryanvi, English |\n\n\n\n\n\n## Output behavior\n\n- **No `-o` flag**: result goes to stdout; status/progress messages go to stderr\n- **With `-o` flag**: result saved to file/directory; progress messages on stderr\n- **Batch mode** (`extract`/`crawl` only): requires `-o` to specify output directory\n- **Binary formats** (`docx`, `extract` only): cannot output to stdout, must use `-o`\n- Markdown output includes extracted images saved alongside the `.md` file\n\n\n\n### General rules\n\nWhen using this skill on behalf of the user:\n\n- **Quote file paths** that contain spaces or special characters with double quotes in commands. Example: `mineru-open-api extract \"report 01.pdf\"`, NOT `mineru-open-api extract report 01.pdf`.\n- **Don't run commands blindly on errors** — if the user asks \"提取失败了怎么办\", explain the exit code and troubleshooting steps instead of re-running the command.\n- **Installation questions** (\"mineru 怎么安装\") should be answered with the install instructions, not by running `mineru-open-api extract`.\n- **DOCX as input is supported** — if the user asks \"这个 Word 文档能转 Markdown 吗\", use `mineru-open-api extract file.docx` or `mineru-open-api flash-extract file.docx`. Note: `.doc` format is only supported by `extract`, not `flash-extract`.\n- **Table extraction** — tables are only recognized by `extract` (not `flash-extract`). If the user mentions tables, use `extract`.\n- For **stdout mode** (no `-o`), only one text format can be output at a time. If the user wants multiple formats, suggest adding `-o`.\n\n### Choosing between flash-extract and extract\n\nThe agent MUST follow this decision logic:\n\n1. **Default to `flash-extract`** when:\n   - User has NOT configured a token (no `~/.mineru/config.yaml`, no `MINERU_TOKEN` env)\n   - User wants a quick/simple extraction without mentioning tables, formulas, OCR, or specific formats\n   - File is **under 10 MB and under 20 pages**\n   - User is trying the tool for the first time\n\n2. **Use `extract`** when:\n   - User explicitly asks for table recognition, formula recognition, or OCR\n   - User requests non-Markdown output formats (html, latex, docx, json)\n   - User needs batch processing (multiple files)\n   - File is **over 10 MB or over 20 pages** (exceeds flash-extract limits)\n   - User has a token configured and wants precision-quality extraction\n\n3. **If unsure**, prefer `flash-extract` — it's faster and requires no setup, but check file size first.\n\n4. When the user does NOT specify an output path (`-o`), the agent MUST generate a default output directory to prevent file overwrites. Use:\n\n```\n~/MinerU-Skill/<name>_<hash>/\n```\n**Naming rules:**\n\n- `<name>`: derived from the source, then **sanitized** for safe directory names.\n  - For URLs: last path segment (e.g. `https://arxiv.org/pdf/2509.22186` → `2509.22186`)\n  - For local files: filename without extension (e.g. `report.pdf` → `report`)\n  - **Sanitization**: replace spaces and shell-unsafe characters (`space`, `(`, `)`, `[`, `]`, `&`, `'`, `\"`, `!`, `#`, `$`, `` ` ``) with `_`. Collapse consecutive `_` into one. Keep alphanumeric, `-`, `_`, `.`, and CJK characters.\n- `<hash>`: first 6 characters of the MD5 hash of the **full original source path or URL** (before sanitization). This ensures:\n  - Different URLs with similar basenames get unique directories\n  - Re-running the same source reuses the same directory (idempotent)\n**How the agent should generate the hash:**\n\n```bash\necho -n \"https://arxiv.org/pdf/2509.22186\" | md5sum | cut -c1-6\n```\n\nOr on macOS:\n\n```bash\necho -n \"https://arxiv.org/pdf/2509.22186\" | md5 | cut -c1-6\n```\n\n5. When the user asks to **upgrade** or  **update** this skill, the agent MUST re-install the CLI binary to ensure the latest commands are available. Run the install command **before** using any new features\n\n\n### flash-extract limit handling\n\nWhen `flash-extract` fails due to file limits or rate limiting, the agent MUST provide a clear explanation and suggest `extract` as the upgrade path:\n\n\n\n**Rate limited (HTTP 429):**\n\n> `flash-extract` 请求频率超出限制（每 IP 有每分钟/每小时的请求上限）。你可以：\n> 1. 稍等几分钟后重试\n> 2. 前往 https://mineru.net/apiManage/token 创建 Token，使用 `mineru-open-api extract` 获取独立配额，不受 IP 限频影响\n\n**Pre-check**: if the agent can determine the file size before running `flash-extract` (e.g. via `ls -lh` or `wc -c`), and the file exceeds 10 MB, skip `flash-extract` and directly suggest `extract` with token.\n\n### Post-extraction friendly hints\n\nAfter `flash-extract` completes successfully, the agent MUST append a brief hint:\n\n> Tip: `flash-extract` 为快速免登录模式（限 10MB/20页，不含表格识别）。如需解析更大文件、表格/公式识别或多格式导出，请前往 https://mineru.net/apiManage/token 创建 Token，运行 `mineru-open-api auth` 配置后使用 `mineru-open-api extract`。\n\nKeep the hint to ONE short sentence. Do NOT repeat the hint if the user has already seen it in this session.\n\n\n\n**Examples:**\n\n| Source | `<name>` | Output directory |\n|--------|----------|-----------------|\n| `https://arxiv.org/pdf/2509.22186` | `2509.22186` | `~/MinerU-Skill/2509.22186_a3f2b1/` |\n| `https://arxiv.org/pdf/2509.200` | `2509.200` | `~/MinerU-Skill/2509.200_c7e9d4/` |\n\n\n\n**When the user specifies `-o`**: use the user's path as-is, do NOT override with the default directory.\n\n## Exit codes\n\n| Code | Meaning | Recovery |\n|------|---------|----------|\n| 0 | Success | — |\n| 1 | General API or unknown error | Check network connectivity; retry; use `--verbose` for details |\n| 2 | Invalid parameters / usage error | Check command syntax and flag values |\n\n| 4 | File too large or page limit exceeded | For `flash-extract`: file must be under 10 MB / 20 pages; switch to `extract` with token for higher limits. For `extract`: split the file or use `--pages` |\n| 5 | Extraction failed | The document may be corrupted or unsupported; try a different `--model` |\n| 6 | Timeout | Increase with `--timeout`; large files may need 600+ seconds \n\n## Troubleshooting\n\n- **\"no API token found\"** (on `extract`/`crawl`): Run `mineru-open-api auth` or set `MINERU_TOKEN` env variable. Or use `flash-extract` which needs no token.\n- **Timeout on large files**: Increase with `--timeout 1600` (seconds)\n- **Batch fails partially**: Check stderr for per-file status; succeeded files are still saved\n- **Binary format to stdout**: Use `-o` flag; `docx` cannot stream to stdout\n- **Private deployment**: Use `--base-url https://your-server.com/api`\n- **Extraction quality is poor**: Try `mineru-open-api extract` with `--model vlm` for complex layouts, or `--ocr` for scanned documents\n- **Tables not extracted**: `flash-extract` does NOT support tables. Use `mineru-open-api extract` with a token.\n- **HTTP 429 on flash-extract**: IP rate limit hit. Wait a few minutes or switch to `mineru-open-api extract` with token.\n\n## Notes\n\n- `extract` requires a token but provides precision-featured extraction\n- All status/progress messages go to stderr; only document content goes to stdout\n- Batch mode automatically polls the API with exponential backoff\n- Token is stored in `~/.mineru/config.yaml` after `mineru-open-api auth`\n\n\n\n## Reporting Issues\n\n- Skill issues: Open an issue at https://github.com/opendatalab/MinerU-Ecosystem/tree/main/cli\n- agent-browser CLI issues: Open an issue at https://github.com/MinerU-Extract/mineru-document-extractor\n\nFile v0.1.23:_meta.json\n\n{\n  \"ownerId\": \"kn7cm5w6xmv109061sz9nbc0p1836d96\",\n  \"slug\": \"mineru-document-extractor\",\n  \"version\": \"0.1.23\",\n  \"publishedAt\": 1775717164459\n}\n\nArchive v0.1.22: 2 files, 8229 bytes\n\nFiles: _meta.json (145b), SKILL.md (19780b)\n\nFile v0.1.22:SKILL.md\n\n---\nname: mineru\ndescription: >\n  MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), and web pages into clean Markdown, HTML, LaTeX, or DOCX. MinerU is an all-in-one CLI tool and agent skill for reliable, high-fidelity document parsing.\n  Struggling with unreadable PDFs, messy table formatting, or garbled formulas after conversion? MinerU solves these with two extraction modes: MinerU flash-extract for instant zero-setup conversion (no token, no login, no configuration — just run and get results), and MinerU precision extract with advanced table recognition, formula recognition (LaTeX), OCR for scanned PDFs, VLM-based layout analysis, and batch processing of hundreds of files.\n  Use MinerU when you need to: \"how do I extract text from this PDF\", \"I want to convert my PDF to Markdown\", \"can you parse this academic paper with tables and formulas\", \"I need to OCR a scanned document\", \"batch convert all my PDFs\", \"turn this Word doc into Markdown\", \"crawl a web page to Markdown\", \"extract tables from this document\". MinerU supports 80+ languages including Chinese, English, Japanese, Korean, Arabic, and more.\n  Choose MinerU vlm model for highest accuracy on complex layouts, or MinerU pipeline model for zero-hallucination reliability. Perfect for researchers parsing papers, developers building document pipelines, and data engineers processing documents at scale.\n  MinerU文档提取工具，PDF转Markdown、扫描件OCR、表格识别、公式识别、批量PDF处理、Word转Markdown、网页爬取、图片OCR、学术论文解析。MinerU支持PDF、Word、PPT、图片等多格式文档智能转换，命令行一键提取，免登录快速模式或高精度专业模式。\ntags:\n  - pdf\n  - reader\n  - extraction\n  - mineru\n  - document-analysis\n  - academic\n  - ocr\n  - content-extraction\n  - research\n  - document-review\nmetadata: {\"openclaw\":{\"emoji\":\"📄\",\"homepage\":\"https://mineru.net\",\"source\":\"https://github.com/opendatalab/MinerU-Ecosystem\",\"author\":\"OpenDataLab\",\"privacy\":\"Document contents are sent to MinerU API (mineru.net) for server-side extraction. No data is stored after processing. Use flash-extract for token-free mode.\",\"requires\":{\"bins\":[\"mineru-open-api\"]},\"optional\":{\"env\":[\"MINERU_TOKEN\"],\"config\":[\"~/.mineru/config.yaml\"]},\"install\":[{\"id\":\"npm\",\"kind\":\"node\",\"package\":\"mineru-open-api\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via npm\"},{\"id\":\"go\",\"kind\":\"go\",\"package\":\"github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via go install\",\"os\":[\"darwin\",\"linux\"]}]}}\nallowed-tools: Bash(mineru-open-api:*)\n---\n\n# Document Extraction with mineru-open-api\n\n## Installation\n\n```bash\nnpm install -g mineru-open-api\n```\n\nOr via Go (macOS/Linux):\n\n```bash\ngo install github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api@latest\n```\n\n### Verify installation\n\n```bash\nmineru-open-api version\n```\n\n## Two extraction modes\n\n| | `flash-extract` | `extract` |\n|---|---|---|\n| Token required | No | Yes (`mineru-open-api auth`) |\n| Speed | Fast | Normal |\n| Table recognition | No | Yes |\n| Formula recognition | No | Yes |\n| OCR | Yes | Yes |\n| Output formats | Markdown only | md, html, latex, docx, json |\n| Batch mode | No | Yes |\n| Model selection | pipeline | Yes (vlm, pipeline, MinerU-HTML) |\n| File size limit | **10 MB** | Much higher |\n| Page limit | **20 pages** | Much higher |\n| Rate limit | Per-IP per-minute cap | Based on API plan |\n| Best for | Quick start, small/simple docs | Large docs, tables, production |\n\n### flash-extract limits\n\n| Limit | Value |\n|-------|-------|\n| File size | Max **10 MB** |\n| Page count | Max **20 pages** |\n| Supported types | PDF, Images (png/jpg/jpeg/jp2/webp/gif/bmp), Docx, PPTx |\n| IP rate limit | Per-minute request caps (HTTP 429 when exceeded) |\n\nWhen any limit is exceeded, the agent should suggest switching to `extract` with a token (create at https://mineru.net/apiManage/token), which has significantly higher limits.\n\n\n## Core workflow\n\n1. **Start fast** (no token): `mineru-open-api flash-extract <file>` for quick Markdown conversion\n2. **Need more?** Create token at https://mineru.net/apiManage/token, run `mineru-open-api auth`, then use `mineru-open-api extract` for tables, formulas, OCR, multi-format, and batch\n3. **Web pages**: `mineru-open-api crawl <url>` to convert web content\n4. **Check results**: output goes to stdout (default) or `-o` directory\n\n\n## Authentication\n\nOnly required for `extract` and `crawl`. Not needed for `flash-extract`.\n\nConfigure your API token (create one at https://mineru.net/apiManage/token):\n\n```bash\nmineru-open-api auth                    # Interactive token setup\nexport MINERU_TOKEN=\"your-token\"  # Or set via environment variable\n```\n\nToken resolution order: `--token` flag > `MINERU_TOKEN` env > `~/.mineru/config.yaml`.\n\n## Supported input formats\n\n| Format | `flash-extract` | `extract` |\n|--------|:-:|:-:|\n| PDF (`.pdf`) | Yes | Yes |\n| Images (`.png`, `.jpg`, `.jpeg`, `.jp2`, `.webp`, `.gif`, `.bmp`) | Yes | Yes |\n| Word (`.docx`) | Yes | Yes |\n| Word (`.doc`) | No | Yes |\n| PowerPoint (`.pptx`) | Yes | Yes |\n| PowerPoint (`.ppt`) | No | Yes |\n| HTML (`.html`) | No | Yes |\n| URLs (remote files) | Yes | Yes |\n\nThe `crawl` command accepts any HTTP/HTTPS URL and extracts web page content.\n\n## Commands\n\n### flash-extract — Quick extraction (no token needed)\n\nFast, token-free document extraction. Outputs Markdown only. No table recognition. Limited to **10 MB / 20 pages** per file, with IP-based rate limiting.\n\n```bash\nmineru-open-api flash-extract report.pdf                     # Markdown to stdout\nmineru-open-api flash-extract report.pdf -o ./out/           # Save to file\nmineru-open-api flash-extract https://example.com/doc.pdf    # URL mode\nmineru-open-api flash-extract report.pdf --language en       # Specify language\nmineru-open-api flash-extract report.pdf --pages 1-10        # Page range\n```\n\n#### flash-extract flags\n\n| Flag | Short | Default | Description |\n|------|-------|---------|-------------|\n| `--output` | `-o` | _(stdout)_ | Output path (file or directory) |\n| `--language` | | `ch` | Document language |\n| `--pages` | | _(all)_ | Page range, e.g. `1-10` |\n| `--timeout` | | `900` | Timeout in seconds |\n\n### extract — Precision extraction (token required)\n\nConvert PDFs, images, and other documents to Markdown or other formats. Supports table/formula recognition, OCR, multiple output formats, and batch mode.\n\n```bash\nmineru-open-api extract report.pdf                         # Markdown to stdout\nmineru-open-api extract report.pdf -f html                 # HTML to stdout\nmineru-open-api extract report.pdf -o ./out/               # Save to directory\nmineru-open-api extract report.pdf -o ./out/ -f md,docx    # Multiple formats\nmineru-open-api extract *.pdf -o ./results/                # Batch extract\nmineru-open-api extract --list files.txt -o ./results/     # Batch from file list\nmineru-open-api extract https://example.com/doc.pdf        # Extract from URL\ncat doc.pdf | mineru-open-api extract --stdin -o ./out/    # From stdin\n```\n\n#### extract flags\n\n| Flag | Short | Default | Description |\n|------|-------|---------|-------------|\n| `--output` | `-o` | _(stdout)_ | Output path (file or directory) |\n| `--format` | `-f` | `md` | Output formats: `md`, `json`, `html`, `latex`, `docx` (comma-separated) |\n| `--model` | | _(auto)_ | Model: `vlm`, `pipeline`, `html` (see below) |\n| `--ocr` | | `false` | Enable OCR for scanned documents |\n| `--formula` | | `true` | Enable/disable formula recognition |\n| `--table` | | `true` | Enable/disable table recognition |\n| `--language` | | `ch` | Document language |\n| `--pages` | | _(all)_ | Page range, e.g. `1-10,15` |\n| `--timeout` | | `900`/`1800` | Timeout in seconds (single/batch) |\n| `--list` | | | Read input list from file (one path per line) |\n\n| `--concurrency` | | `0` | Batch concurrency (0 = server default) |\n\n#### Model comparison: vlm vs pipeline\n\n| | `vlm` | `pipeline` |\n|---|---|---|\n| Parsing accuracy | Higher — better at complex layouts, mixed content | Standard |\n| Hallucination risk | May produce hallucinated text in rare cases | **No hallucination** — biggest advantage |\n| Best for | Academic papers, complex tables, intricate layouts | General documents where fidelity matters most |\n\nWhen the user values accuracy and the document has complex formatting, suggest `--model vlm`. When the user prioritizes reliability and no-hallucination guarantee, suggest `--model pipeline` (or omit `--model` to use auto).\n\n### crawl — Web page extraction (token required)\n\nFetch web pages and convert to Markdown.\n\n```bash\nmineru-open-api crawl https://example.com/article              # Markdown to stdout\nmineru-open-api crawl https://example.com/article -f html      # HTML to stdout\nmineru-open-api crawl https://example.com/article -o ./out/     # Save to file\nmineru-open-api crawl url1 url2 -o ./pages/                     # Batch crawl\nmineru-open-api crawl --list urls.txt -o ./pages/               # Batch from file list\n```\n\n#### crawl flags\n\n| Flag | Short | Default | Description |\n|------|-------|---------|-------------|\n| `--output` | `-o` | _(stdout)_ | Output path |\n| `--format` | `-f` | `md` | Output formats: `md`, `json`, `html` (comma-separated) |\n| `--timeout` | | `900`/`1800` | Timeout in seconds (single/batch) |\n| `--list` | | | Read URL list from file (one per line) |\n| `--stdin-list` | | `false` | Read URL list from stdin |\n| `--concurrency` | | `0` | Batch concurrency |\n\n### auth — Authentication management\n\n```bash\nmineru-open-api auth              # Interactive token setup\nmineru-open-api auth --verify     # Verify current token is valid\nmineru-open-api auth --show       # Show current token source and masked value\n```\n\n\n## Supported `--language` values\n\nThe `--language` flag accepts the following values (default: `ch`). Used by both `flash-extract` and `extract`. Values are organized by script/language family — each value covers all languages listed in its group.\n\n### Standalone language packs\n\nFor specific languages or CJK combinations.\n\n| Value | Included languages | 说明 |\n|-------|-------------------|------|\n| `ch` | Chinese, English, Chinese Traditional | 中英文（默认值） |\n| `ch_server` | Chinese, English, Chinese Traditional, Japanese | 繁体、手写体 |\n| `en` | English | 纯英文 |\n| `japan` | Chinese, English, Chinese Traditional, Japanese | 日文为主 |\n| `korean` | Korean, English | 韩文 |\n| `chinese_cht` | Chinese, English, Chinese Traditional, Japanese | 繁体中文为主 |\n| `ta` | Tamil, English | 泰米尔文 |\n| `te` | Telugu, English | 泰卢固文 |\n| `ka` | Kannada | 卡纳达文 |\n| `el` | Greek, English | 希腊文 |\n| `th` | Thai, English | 泰文 |\n\n### Language family packs\n\nOne value covers many languages sharing the same script system.\n\n| Value | Script/Family | Included languages |\n|-------|--------------|-------------------|\n| `latin` | Latin script (拉丁语系) | French, German, Afrikaans, Italian, Spanish, Bosnian, Portuguese, Czech, Welsh, Danish, Estonian, Irish, Croatian, Uzbek, Hungarian, Serbian (Latin), Indonesian, Occitan, Icelandic, Lithuanian, Maori, Malay, Dutch, Norwegian, Polish, Slovak, Slovenian, Albanian, Swedish, Swahili, Tagalog, Turkish, Latin, Azerbaijani, Kurdish, Latvian, Maltese, Pali, Romanian, Vietnamese, Finnish, Basque, Galician, Luxembourgish, Romansh, Catalan, Quechua |\n| `arabic` | Arabic script (阿拉伯语系) | Arabic, Persian, Uyghur, Urdu, Pashto, Kurdish, Sindhi, Balochi, English |\n| `cyrillic` | Cyrillic script (西里尔语系) | Russian, Belarusian, Ukrainian, Serbian (Cyrillic), Bulgarian, Mongolian, Abkhazian, Adyghe, Kabardian, Avar, Dargin, Ingush, Chechen, Lak, Lezgin, Tabasaran, Kazakh, Kyrgyz, Tajik, Macedonian, Tatar, Chuvash, Bashkir, Malian, Moldovan, Udmurt, Komi, Ossetian, Buryat, Kalmyk, Tuvan, Sakha, Karakalpak, English |\n| `east_slavic` | East Slavic (东斯拉夫语系) | Russian, Belarusian, Ukrainian, English |\n| `devanagari` | Devanagari script (天城文语系) | Hindi, Marathi, Nepali, Bihari, Maithili, Angika, Bhojpuri, Magahi, Santali, Newari, Konkani, Sanskrit, Haryanvi, English |\n\n\n\n\n\n## Output behavior\n\n- **No `-o` flag**: result goes to stdout; status/progress messages go to stderr\n- **With `-o` flag**: result saved to file/directory; progress messages on stderr\n- **Batch mode** (`extract`/`crawl` only): requires `-o` to specify output directory\n- **Binary formats** (`docx`, `extract` only): cannot output to stdout, must use `-o`\n- Markdown output includes extracted images saved alongside the `.md` file\n\n\n\n### General rules\n\nWhen using this skill on behalf of the user:\n\n- **Quote file paths** that contain spaces or special characters with double quotes in commands. Example: `mineru-open-api extract \"report 01.pdf\"`, NOT `mineru-open-api extract report 01.pdf`.\n- **Don't run commands blindly on errors** — if the user asks \"提取失败了怎么办\", explain the exit code and troubleshooting steps instead of re-running the command.\n- **Installation questions** (\"mineru 怎么安装\") should be answered with the install instructions, not by running `mineru-open-api extract`.\n- **DOCX as input is supported** — if the user asks \"这个 Word 文档能转 Markdown 吗\", use `mineru-open-api extract file.docx` or `mineru-open-api flash-extract file.docx`. Note: `.doc` format is only supported by `extract`, not `flash-extract`.\n- **Table extraction** — tables are only recognized by `extract` (not `flash-extract`). If the user mentions tables, use `extract`.\n- For **stdout mode** (no `-o`), only one text format can be output at a time. If the user wants multiple formats, suggest adding `-o`.\n\n### Choosing between flash-extract and extract\n\nThe agent MUST follow this decision logic:\n\n1. **Default to `flash-extract`** when:\n   - User has NOT configured a token (no `~/.mineru/config.yaml`, no `MINERU_TOKEN` env)\n   - User wants a quick/simple extraction without mentioning tables, formulas, OCR, or specific formats\n   - File is **under 10 MB and under 20 pages**\n   - User is trying the tool for the first time\n\n2. **Use `extract`** when:\n   - User explicitly asks for table recognition, formula recognition, or OCR\n   - User requests non-Markdown output formats (html, latex, docx, json)\n   - User needs batch processing (multiple files)\n   - File is **over 10 MB or over 20 pages** (exceeds flash-extract limits)\n   - User has a token configured and wants precision-quality extraction\n\n3. **If unsure**, prefer `flash-extract` — it's faster and requires no setup, but check file size first.\n\n4. When the user does NOT specify an output path (`-o`), the agent MUST generate a default output directory to prevent file overwrites. Use:\n\n```\n~/MinerU-Skill/<name>_<hash>/\n```\n**Naming rules:**\n\n- `<name>`: derived from the source, then **sanitized** for safe directory names.\n  - For URLs: last path segment (e.g. `https://arxiv.org/pdf/2509.22186` → `2509.22186`)\n  - For local files: filename without extension (e.g. `report.pdf` → `report`)\n  - **Sanitization**: replace spaces and shell-unsafe characters (`space`, `(`, `)`, `[`, `]`, `&`, `'`, `\"`, `!`, `#`, `$`, `` ` ``) with `_`. Collapse consecutive `_` into one. Keep alphanumeric, `-`, `_`, `.`, and CJK characters.\n- `<hash>`: first 6 characters of the MD5 hash of the **full original source path or URL** (before sanitization). This ensures:\n  - Different URLs with similar basenames get unique directories\n  - Re-running the same source reuses the same directory (idempotent)\n**How the agent should generate the hash:**\n\n```bash\necho -n \"https://arxiv.org/pdf/2509.22186\" | md5sum | cut -c1-6\n```\n\nOr on macOS:\n\n```bash\necho -n \"https://arxiv.org/pdf/2509.22186\" | md5 | cut -c1-6\n```\n\n5. When the user asks to **upgrade** or  **update** this skill, the agent MUST re-install the CLI binary to ensure the latest commands are available. Run the install command **before** using any new features\n\n\n### flash-extract limit handling\n\nWhen `flash-extract` fails due to file limits or rate limiting, the agent MUST provide a clear explanation and suggest `extract` as the upgrade path:\n\n\n\n**Rate limited (HTTP 429):**\n\n> `flash-extract` 请求频率超出限制（每 IP 有每分钟/每小时的请求上限）。你可以：\n> 1. 稍等几分钟后重试\n> 2. 前往 https://mineru.net/apiManage/token 创建 Token，使用 `mineru-open-api extract` 获取独立配额，不受 IP 限频影响\n\n**Pre-check**: if the agent can determine the file size before running `flash-extract` (e.g. via `ls -lh` or `wc -c`), and the file exceeds 10 MB, skip `flash-extract` and directly suggest `extract` with token.\n\n### Post-extraction friendly hints\n\nAfter `flash-extract` completes successfully, the agent MUST append a brief hint:\n\n> Tip: `flash-extract` 为快速免登录模式（限 10MB/20页，不含表格识别）。如需解析更大文件、表格/公式识别或多格式导出，请前往 https://mineru.net/apiManage/token 创建 Token，运行 `mineru-open-api auth` 配置后使用 `mineru-open-api extract`。\n\nKeep the hint to ONE short sentence. Do NOT repeat the hint if the user has already seen it in this session.\n\n\n\n**Examples:**\n\n| Source | `<name>` | Output directory |\n|--------|----------|-----------------|\n| `https://arxiv.org/pdf/2509.22186` | `2509.22186` | `~/MinerU-Skill/2509.22186_a3f2b1/` |\n| `https://arxiv.org/pdf/2509.200` | `2509.200` | `~/MinerU-Skill/2509.200_c7e9d4/` |\n\n\n\n**When the user specifies `-o`**: use the user's path as-is, do NOT override with the default directory.\n\n## Exit codes\n\n| Code | Meaning | Recovery |\n|------|---------|----------|\n| 0 | Success | — |\n| 1 | General API or unknown error | Check network connectivity; retry; use `--verbose` for details |\n| 2 | Invalid parameters / usage error | Check command syntax and flag values |\n\n| 4 | File too large or page limit exceeded | For `flash-extract`: file must be under 10 MB / 20 pages; switch to `extract` with token for higher limits. For `extract`: split the file or use `--pages` |\n| 5 | Extraction failed | The document may be corrupted or unsupported; try a different `--model` |\n| 6 | Timeout | Increase with `--timeout`; large files may need 600+ seconds \n\n## Troubleshooting\n\n- **\"no API token found\"** (on `extract`/`crawl`): Run `mineru-open-api auth` or set `MINERU_TOKEN` env variable. Or use `flash-extract` which needs no token.\n- **Timeout on large files**: Increase with `--timeout 1600` (seconds)\n- **Batch fails partially**: Check stderr for per-file status; succeeded files are still saved\n- **Binary format to stdout**: Use `-o` flag; `docx` cannot stream to stdout\n- **Private deployment**: Use `--base-url https://your-server.com/api`\n- **Extraction quality is poor**: Try `mineru-open-api extract` with `--model vlm` for complex layouts, or `--ocr` for scanned documents\n- **Tables not extracted**: `flash-extract` does NOT support tables. Use `mineru-open-api extract` with a token.\n- **HTTP 429 on flash-extract**: IP rate limit hit. Wait a few minutes or switch to `mineru-open-api extract` with token.\n\n## Notes\n\n- `extract` requires a token but provides precision-featured extraction\n- All status/progress messages go to stderr; only document content goes to stdout\n- Batch mode automatically polls the API with exponential backoff\n- Token is stored in `~/.mineru/config.yaml` after `mineru-open-api auth`\n\n\n\n## Reporting Issues\n\n- Skill issues: Open an issue at https://github.com/opendatalab/MinerU-Ecosystem/tree/main/cli\n- agent-browser CLI issues: Open an issue at https://github.com/MinerU-Extract/mineru-document-extractor\n\nFile v0.1.22:_meta.json\n\n{\n  \"ownerId\": \"kn7cm5w6xmv109061sz9nbc0p1836d96\",\n  \"slug\": \"mineru-document-extractor\",\n  \"version\": \"0.1.22\",\n  \"publishedAt\": 1775716144392\n}\n\nArchive v0.1.21: 2 files, 7906 bytes\n\nFiles: _meta.json (145b), SKILL.md (19182b)\n\nFile v0.1.21:SKILL.md\n\n---\nname: mineru\ndescription:  mineru document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), and web pages into clean Markdown, HTML, LaTeX, or DOCX. mineru is an all-in-one CLI tool and agent skill for reliable, high-fidelity document parsing. Struggling with unreadable PDFs, messy table formatting, or garbled formulas after conversion? mineru solves these with two extraction modes: mineru flash-extract for instant zero-setup conversion (no token, no login, no configuration — just run and get results), and mineru precision extract with advanced table recognition, formula recognition (LaTeX), OCR for scanned PDFs, VLM-based layout analysis, and batch processing of hundreds of files. Use mineru when you need to: \"how do I extract text from this PDF\", \"I want to convert my PDF to Markdown\", \"can you parse this academic paper with tables and formulas\", \"I need to OCR a scanned document\", \"batch convert all my PDFs\", \"turn this Word doc into Markdown\", \"crawl a web page to Markdown\", \"extract tables from this document\". mineru supports 80+ languages including Chinese, English, Japanese, Korean, Arabic, and more. Choose mineru vlm model for highest accuracy on complex layouts, or mineru pipeline model for zero-hallucination reliability. Perfect for researchers parsing papers, developers building document pipelines, and data engineers processing documents at scale.mineru 文档提取工具，PDF转Markdown、扫描件OCR、表格识别、公式识别、批量PDF处理、Word转Mark\nread_when:\n  - Extracting text from PDF documents\n  - Converting documents to Markdown\n  - Crawling web pages to Markdown\n  - Batch document processing\n  - OCR on scanned documents\n  - Converting PDF to HTML, LaTeX, or DOCX\n  - Parsing document content\n  - Reading PDF files\n  - Extracting tables from documents\n  - Converting Word documents\n  - Quick document parsing without login\ntags:\n  - pdf\n  - reader\n  - extraction\n  - mineru\n  - document-analysis\n  - academic\n  - ocr\n  - content-extraction\n  - research\n  - document-review\n---\n\n# Document Extraction with mineru-open-api\n\n## Installation\n\n```bash\nnpm install -g mineru-open-api\n```\n\nOr via Go (macOS/Linux):\n\n```bash\ngo install github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api@latest\n```\n\n### Verify installation\n\n```bash\nmineru-open-api version\n```\n\n## Two extraction modes\n\n| | `flash-extract` | `extract` |\n|---|---|---|\n| Token required | No | Yes (`mineru-open-api auth`) |\n| Speed | Fast | Normal |\n| Table recognition | No | Yes |\n| Formula recognition | No | Yes |\n| OCR | Yes | Yes |\n| Output formats | Markdown only | md, html, latex, docx, json |\n| Batch mode | No | Yes |\n| Model selection | pipeline | Yes (vlm, pipeline, MinerU-HTML) |\n| File size limit | **10 MB** | Much higher |\n| Page limit | **20 pages** | Much higher |\n| Rate limit | Per-IP per-minute cap | Based on API plan |\n| Best for | Quick start, small/simple docs | Large docs, tables, production |\n\n### flash-extract limits\n\n| Limit | Value |\n|-------|-------|\n| File size | Max **10 MB** |\n| Page count | Max **20 pages** |\n| Supported types | PDF, Images (png/jpg/jpeg/jp2/webp/gif/bmp), Docx, PPTx |\n| IP rate limit | Per-minute request caps (HTTP 429 when exceeded) |\n\nWhen any limit is exceeded, the agent should suggest switching to `extract` with a token (create at https://mineru.net/apiManage/token), which has significantly higher limits.\n\n\n## Core workflow\n\n1. **Start fast** (no token): `mineru-open-api flash-extract <file>` for quick Markdown conversion\n2. **Need more?** Create token at https://mineru.net/apiManage/token, run `mineru-open-api auth`, then use `mineru-open-api extract` for tables, formulas, OCR, multi-format, and batch\n3. **Web pages**: `mineru-open-api crawl <url>` to convert web content\n4. **Check results**: output goes to stdout (default) or `-o` directory\n\n\n## Authentication\n\nOnly required for `extract` and `crawl`. Not needed for `flash-extract`.\n\nConfigure your API token (create one at https://mineru.net/apiManage/token):\n\n```bash\nmineru-open-api auth                    # Interactive token setup\nexport MINERU_TOKEN=\"your-token\"  # Or set via environment variable\n```\n\nToken resolution order: `--token` flag > `MINERU_TOKEN` env > `~/.mineru/config.yaml`.\n\n## Supported input formats\n\n| Format | `flash-extract` | `extract` |\n|--------|:-:|:-:|\n| PDF (`.pdf`) | Yes | Yes |\n| Images (`.png`, `.jpg`, `.jpeg`, `.jp2`, `.webp`, `.gif`, `.bmp`) | Yes | Yes |\n| Word (`.docx`) | Yes | Yes |\n| Word (`.doc`) | No | Yes |\n| PowerPoint (`.pptx`) | Yes | Yes |\n| PowerPoint (`.ppt`) | No | Yes |\n| HTML (`.html`) | No | Yes |\n| URLs (remote files) | Yes | Yes |\n\nThe `crawl` command accepts any HTTP/HTTPS URL and extracts web page content.\n\n## Commands\n\n### flash-extract — Quick extraction (no token needed)\n\nFast, token-free document extraction. Outputs Markdown only. No table recognition. Limited to **10 MB / 20 pages** per file, with IP-based rate limiting.\n\n```bash\nmineru-open-api flash-extract report.pdf                     # Markdown to stdout\nmineru-open-api flash-extract report.pdf -o ./out/           # Save to file\nmineru-open-api flash-extract https://example.com/doc.pdf    # URL mode\nmineru-open-api flash-extract report.pdf --language en       # Specify language\nmineru-open-api flash-extract report.pdf --pages 1-10        # Page range\n```\n\n#### flash-extract flags\n\n| Flag | Short | Default | Description |\n|------|-------|---------|-------------|\n| `--output` | `-o` | _(stdout)_ | Output path (file or directory) |\n| `--language` | | `ch` | Document language |\n| `--pages` | | _(all)_ | Page range, e.g. `1-10` |\n| `--timeout` | | `900` | Timeout in seconds |\n\n### extract — Precision extraction (token required)\n\nConvert PDFs, images, and other documents to Markdown or other formats. Supports table/formula recognition, OCR, multiple output formats, and batch mode.\n\n```bash\nmineru-open-api extract report.pdf                         # Markdown to stdout\nmineru-open-api extract report.pdf -f html                 # HTML to stdout\nmineru-open-api extract report.pdf -o ./out/               # Save to directory\nmineru-open-api extract report.pdf -o ./out/ -f md,docx    # Multiple formats\nmineru-open-api extract *.pdf -o ./results/                # Batch extract\nmineru-open-api extract --list files.txt -o ./results/     # Batch from file list\nmineru-open-api extract https://example.com/doc.pdf        # Extract from URL\ncat doc.pdf | mineru-open-api extract --stdin -o ./out/    # From stdin\n```\n\n#### extract flags\n\n| Flag | Short | Default | Description |\n|------|-------|---------|-------------|\n| `--output` | `-o` | _(stdout)_ | Output path (file or directory) |\n| `--format` | `-f` | `md` | Output formats: `md`, `json`, `html`, `latex`, `docx` (comma-separated) |\n| `--model` | | _(auto)_ | Model: `vlm`, `pipeline`, `html` (see below) |\n| `--ocr` | | `false` | Enable OCR for scanned documents |\n| `--formula` | | `true` | Enable/disable formula recognition |\n| `--table` | | `true` | Enable/disable table recognition |\n| `--language` | | `ch` | Document language |\n| `--pages` | | _(all)_ | Page range, e.g. `1-10,15` |\n| `--timeout` | | `900`/`1800` | Timeout in seconds (single/batch) |\n| `--list` | | | Read input list from file (one path per line) |\n\n| `--concurrency` | | `0` | Batch concurrency (0 = server default) |\n\n#### Model comparison: vlm vs pipeline\n\n| | `vlm` | `pipeline` |\n|---|---|---|\n| Parsing accuracy | Higher — better at complex layouts, mixed content | Standard |\n| Hallucination risk | May produce hallucinated text in rare cases | **No hallucination** — biggest advantage |\n| Best for | Academic papers, complex tables, intricate layouts | General documents where fidelity matters most |\n\nWhen the user values accuracy and the document has complex formatting, suggest `--model vlm`. When the user prioritizes reliability and no-hallucination guarantee, suggest `--model pipeline` (or omit `--model` to use auto).\n\n### crawl — Web page extraction (token required)\n\nFetch web pages and convert to Markdown.\n\n```bash\nmineru-open-api crawl https://example.com/article              # Markdown to stdout\nmineru-open-api crawl https://example.com/article -f html      # HTML to stdout\nmineru-open-api crawl https://example.com/article -o ./out/     # Save to file\nmineru-open-api crawl url1 url2 -o ./pages/                     # Batch crawl\nmineru-open-api crawl --list urls.txt -o ./pages/               # Batch from file list\n```\n\n#### crawl flags\n\n| Flag | Short | Default | Description |\n|------|-------|---------|-------------|\n| `--output` | `-o` | _(stdout)_ | Output path |\n| `--format` | `-f` | `md` | Output formats: `md`, `json`, `html` (comma-separated) |\n| `--timeout` | | `900`/`1800` | Timeout in seconds (single/batch) |\n| `--list` | | | Read URL list from file (one per line) |\n| `--stdin-list` | | `false` | Read URL list from stdin |\n| `--concurrency` | | `0` | Batch concurrency |\n\n### auth — Authentication management\n\n```bash\nmineru-open-api auth              # Interactive token setup\nmineru-open-api auth --verify     # Verify current token is valid\nmineru-open-api auth --show       # Show current token source and masked value\n```\n\n\n## Supported `--language` values\n\nThe `--language` flag accepts the following values (default: `ch`). Used by both `flash-extract` and `extract`. Values are organized by script/language family — each value covers all languages listed in its group.\n\n### Standalone language packs\n\nFor specific languages or CJK combinations.\n\n| Value | Included languages | 说明 |\n|-------|-------------------|------|\n| `ch` | Chinese, English, Chinese Traditional | 中英文（默认值） |\n| `ch_server` | Chinese, English, Chinese Traditional, Japanese | 繁体、手写体 |\n| `en` | English | 纯英文 |\n| `japan` | Chinese, English, Chinese Traditional, Japanese | 日文为主 |\n| `korean` | Korean, English | 韩文 |\n| `chinese_cht` | Chinese, English, Chinese Traditional, Japanese | 繁体中文为主 |\n| `ta` | Tamil, English | 泰米尔文 |\n| `te` | Telugu, English | 泰卢固文 |\n| `ka` | Kannada | 卡纳达文 |\n| `el` | Greek, English | 希腊文 |\n| `th` | Thai, English | 泰文 |\n\n### Language family packs\n\nOne value covers many languages sharing the same script system.\n\n| Value | Script/Family | Included languages |\n|-------|--------------|-------------------|\n| `latin` | Latin script (拉丁语系) | French, German, Afrikaans, Italian, Spanish, Bosnian, Portuguese, Czech, Welsh, Danish, Estonian, Irish, Croatian, Uzbek, Hungarian, Serbian (Latin), Indonesian, Occitan, Icelandic, Lithuanian, Maori, Malay, Dutch, Norwegian, Polish, Slovak, Slovenian, Albanian, Swedish, Swahili, Tagalog, Turkish, Latin, Azerbaijani, Kurdish, Latvian, Maltese, Pali, Romanian, Vietnamese, Finnish, Basque, Galician, Luxembourgish, Romansh, Catalan, Quechua |\n| `arabic` | Arabic script (阿拉伯语系) | Arabic, Persian, Uyghur, Urdu, Pashto, Kurdish, Sindhi, Balochi, English |\n| `cyrillic` | Cyrillic script (西里尔语系) | Russian, Belarusian, Ukrainian, Serbian (Cyrillic), Bulgarian, Mongolian, Abkhazian, Adyghe, Kabardian, Avar, Dargin, Ingush, Chechen, Lak, Lezgin, Tabasaran, Kazakh, Kyrgyz, Tajik, Macedonian, Tatar, Chuvash, Bashkir, Malian, Moldovan, Udmurt, Komi, Ossetian, Buryat, Kalmyk, Tuvan, Sakha, Karakalpak, English |\n| `east_slavic` | East Slavic (东斯拉夫语系) | Russian, Belarusian, Ukrainian, English |\n| `devanagari` | Devanagari script (天城文语系) | Hindi, Marathi, Nepali, Bihari, Maithili, Angika, Bhojpuri, Magahi, Santali, Newari, Konkani, Sanskrit, Haryanvi, English |\n\n\n\n\n\n## Output behavior\n\n- **No `-o` flag**: result goes to stdout; status/progress messages go to stderr\n- **With `-o` flag**: result saved to file/directory; progress messages on stderr\n- **Batch mode** (`extract`/`crawl` only): requires `-o` to specify output directory\n- **Binary formats** (`docx`, `extract` only): cannot output to stdout, must use `-o`\n- Markdown output includes extracted images saved alongside the `.md` file\n\n\n\n### General rules\n\nWhen using this skill on behalf of the user:\n\n- **Quote file paths** that contain spaces or special characters with double quotes in commands. Example: `mineru-open-api extract \"report 01.pdf\"`, NOT `mineru-open-api extract report 01.pdf`.\n- **Don't run commands blindly on errors** — if the user asks \"提取失败了怎么办\", explain the exit code and troubleshooting steps instead of re-running the command.\n- **Installation questions** (\"mineru 怎么安装\") should be answered with the install instructions, not by running `mineru-open-api extract`.\n- **DOCX as input is supported** — if the user asks \"这个 Word 文档能转 Markdown 吗\", use `mineru-open-api extract file.docx` or `mineru-open-api flash-extract file.docx`. Note: `.doc` format is only supported by `extract`, not `flash-extract`.\n- **Table extraction** — tables are only recognized by `extract` (not `flash-extract`). If the user mentions tables, use `extract`.\n- For **stdout mode** (no `-o`), only one text format can be output at a time. If the user wants multiple formats, suggest adding `-o`.\n\n### Choosing between flash-extract and extract\n\nThe agent MUST follow this decision logic:\n\n1. **Default to `flash-extract`** when:\n   - User has NOT configured a token (no `~/.mineru/config.yaml`, no `MINERU_TOKEN` env)\n   - User wants a quick/simple extraction without mentioning tables, formulas, OCR, or specific formats\n   - File is **under 10 MB and under 20 pages**\n   - User is trying the tool for the first time\n\n2. **Use `extract`** when:\n   - User explicitly asks for table recognition, formula recognition, or OCR\n   - User requests non-Markdown output formats (html, latex, docx, json)\n   - User needs batch processing (multiple files)\n   - File is **over 10 MB or over 20 pages** (exceeds flash-extract limits)\n   - User has a token configured and wants precision-quality extraction\n\n3. **If unsure**, prefer `flash-extract` — it's faster and requires no setup, but check file size first.\n\n4. When the user does NOT specify an output path (`-o`), the agent MUST generate a default output directory to prevent file overwrites. Use:\n\n```\n~/MinerU-Skill/<name>_<hash>/\n```\n**Naming rules:**\n\n- `<name>`: derived from the source, then **sanitized** for safe directory names.\n  - For URLs: last path segment (e.g. `https://arxiv.org/pdf/2509.22186` → `2509.22186`)\n  - For local files: filename without extension (e.g. `report.pdf` → `report`)\n  - **Sanitization**: replace spaces and shell-unsafe characters (`space`, `(`, `)`, `[`, `]`, `&`, `'`, `\"`, `!`, `#`, `$`, `` ` ``) with `_`. Collapse consecutive `_` into one. Keep alphanumeric, `-`, `_`, `.`, and CJK characters.\n- `<hash>`: first 6 characters of the MD5 hash of the **full original source path or URL** (before sanitization). This ensures:\n  - Different URLs with similar basenames get unique directories\n  - Re-running the same source reuses the same directory (idempotent)\n**How the agent should generate the hash:**\n\n```bash\necho -n \"https://arxiv.org/pdf/2509.22186\" | md5sum | cut -c1-6\n```\n\nOr on macOS:\n\n```bash\necho -n \"https://arxiv.org/pdf/2509.22186\" | md5 | cut -c1-6\n```\n\n5. When the user asks to **upgrade** or  **update** this skill, the agent MUST re-install the CLI binary to ensure the latest commands are available. Run the install command **before** using any new features\n\n\n### flash-extract limit handling\n\nWhen `flash-extract` fails due to file limits or rate limiting, the agent MUST provide a clear explanation and suggest `extract` as the upgrade path:\n\n\n\n**Rate limited (HTTP 429):**\n\n> `flash-extract` 请求频率超出限制（每 IP 有每分钟/每小时的请求上限）。你可以：\n> 1. 稍等几分钟后重试\n> 2. 前往 https://mineru.net/apiManage/token 创建 Token，使用 `mineru-open-api extract` 获取独立配额，不受 IP 限频影响\n\n**Pre-check**: if the agent can determine the file size before running `flash-extract` (e.g. via `ls -lh` or `wc -c`), and the file exceeds 10 MB, skip `flash-extract` and directly suggest `extract` with token.\n\n### Post-extraction friendly hints\n\nAfter `flash-extract` completes successfully, the agent MUST append a brief hint:\n\n> Tip: `flash-extract` 为快速免登录模式（限 10MB/20页，不含表格识别）。如需解析更大文件、表格/公式识别或多格式导出，请前往 https://mineru.net/apiManage/token 创建 Token，运行 `mineru-open-api auth` 配置后使用 `mineru-open-api extract`。\n\nKeep the hint to ONE short sentence. Do NOT repeat the hint if the user has already seen it in this session.\n\n\n\n**Examples:**\n\n| Source | `<name>` | Output directory |\n|--------|----------|-----------------|\n| `https://arxiv.org/pdf/2509.22186` | `2509.22186` | `~/MinerU-Skill/2509.22186_a3f2b1/` |\n| `https://arxiv.org/pdf/2509.200` | `2509.200` | `~/MinerU-Skill/2509.200_c7e9d4/` |\n\n\n\n**When the user specifies `-o`**: use the user's path as-is, do NOT override with the default directory.\n\n## Exit codes\n\n| Code | Meaning | Recovery |\n|------|---------|----------|\n| 0 | Success | — |\n| 1 | General API or unknown error | Check network connectivity; retry; use `--verbose` for details |\n| 2 | Invalid parameters / usage error | Check command syntax and flag values |\n\n| 4 | File too large or page limit exceeded | For `flash-extract`: file must be under 10 MB / 20 pages; switch to `extract` with token for higher limits. For `extract`: split the file or use `--pages` |\n| 5 | Extraction failed | The document may be corrupted or unsupported; try a different `--model` |\n| 6 | Timeout | Increase with `--timeout`; large files may need 600+ seconds \n\n## Troubleshooting\n\n- **\"no API token found\"** (on `extract`/`crawl`): Run `mineru-open-a","readmeExcerpt":"Skill: mineru document extractor Owner: mineru-extract Summary: MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), Excel (XLS/XLSX), and web pages into clean Mark... Tags: latest:0.1.30 Version history: v0.1.30 | 2026-05-11T06:36:12.625Z | user - Added support for Excel files: MinerU can now extract from Excel (.xlsx in flash-extract, .xls and .xlsx in extrac","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"npm install -g mineru-open-api"},{"language":"bash","snippet":"go install github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api@latest"},{"language":"bash","snippet":"mineru-open-api auth                    # Interactive token setup\nexport MINERU_TOKEN=\"your-token\"        # Or set via environment variable"},{"language":"bash","snippet":"mineru-open-api flash-extract report.pdf                     # MinerU Markdown to stdout\nmineru-open-api flash-extract report.pdf -o ./out/           # Save to file\nmineru-open-api flash-extract https://example.com/doc.pdf    # URL mode\nmineru-open-api flash-extract report.pdf --language en       # Specify language\nmineru-open-api flash-extract report.pdf --pages 1-10        # Page range"},{"language":"bash","snippet":"mineru-open-api extract report.pdf                         # MinerU Markdown to stdout\nmineru-open-api extract report.pdf -f html                 # MinerU HTML output\nmineru-open-api extract report.pdf -o ./out/ -f md,docx    # Multiple formats\nmineru-open-api extract *.pdf -o ./results/                # MinerU batch extract\nmineru-open-api extract https://example.com/doc.pdf        # Extract from URL"},{"language":"bash","snippet":"mineru-open-api crawl https://example.com/article              # MinerU Markdown to stdout\nmineru-open-api crawl https://example.com/article -o ./out/    # Save to file\nmineru-open-api crawl url1 url2 -o ./pages/                    # MinerU batch crawl"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: MinerU Document Extractor\ndescription: >\n  MinerU document extraction — convert PDFs, scanned documents, images, Word (DOC/DOCX), PowerPoint (PPT/PPTX), Excel (XLS/XLSX), and web pages into clean Markdown, HTML, LaTeX, or DOCX. MinerU is an all-in-one CLI tool and agent skill for reliable, high-fidelity document parsing.\n  Struggling with unreadable PDFs, messy table formatting, or garbled formulas after conversion? MinerU solves these with two extraction modes: MinerU flash-extract for instant zero-setup conversion with table recognition, formula recognition, and OCR (no token, no login, no configuration — just run and get results), and MinerU precision extract with VLM-based layout analysis, multiple output formats, and batch processing of hundreds of files.\n  Use MinerU when you need to: \"how do I extract text from this PDF\", \"I want to convert my PDF to Markdown\", \"can you parse this academic paper with tables and formulas\", \"I need to OCR a scanned document\", \"batch convert all my PDFs\", \"turn this Word doc into Markdown\", \"crawl a web page to Markdown\", \"extract tables from this document\". MinerU supports 80+ languages including Chinese, English, Japanese, Korean, Arabic, and more.\n  Choose MinerU vlm model for highest accuracy on complex layouts, or MinerU pipeline model for zero-hallucination reliability. Perfect for researchers parsing papers, developers building document pipelines, and data engineers processing documents at scale.\n  MinerU文档提取工具，PDF转Markdown、扫描件OCR、表格识别、公式识别、批量PDF处理、Word转Markdown、Excel转Markdown、网页爬取、图片OCR、学术论文解析。MinerU支持PDF、Word、PPT、Excel（XLS/XLSX）、图片等多格式文档智能转换，命令行一键提取，免登录快速模式或高精度专业模式。\n  \nmetadata: {\"openclaw\":{\"emoji\":\"📄\",\"privacy\":\"Document content is transmitted to the MinerU API (mineru.net) for server-side extraction. No data is retained after processing completes. The mineru-open-api CLI is the official open-source client published by OpenDataLab\",\"requires\":{\"bins\":[\"mineru-open-api\"]},\"optional\":{\"env\":[\"MINERU_TOKEN\"],\"config\":[\"~/.mineru/config.yaml\"]},\"install\":[{\"id\":\"npm\",\"kind\":\"node\",\"package\":\"mineru-open-api\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via npm\"},{\"id\":\"go\",\"kind\":\"go\",\"bins\":[\"mineru-open-api\"],\"label\":\"Install via go install\",\"os\":[\"darwin\",\"linux\"]}]}}\nallowed-tools: Bash(mineru-open-api:*)\n---\n\n# MinerU Document Extraction with mineru-open-api\n\nMinerU is a powerful document extraction tool. Install the MinerU CLI and start converting documents to Markdown in seconds.\n\n\n## Installation\n\n```bash\nnpm install -g mineru-open-api\n```\n\nOr via Go (macOS/Linux):\n\n```bash\ngo install github.com/opendatalab/MinerU-Ecosystem/cli/mineru-open-api@latest\n```\n\nVerify: `mineru-open-api version`\n\n## Two MinerU extraction modes\n\n| | MinerU `flash-extract` | MinerU `extract` |\n|---|---|---|\n| Token required | No | Yes (`mineru-open-api auth`) |\n| Speed | Fast | Normal |\n| Table recognition | Yes | Yes |\n| Formula recognition | Yes | Yes |\n| OCR | Yes | Yes |\n| Output formats | Markdown only | "},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7cm5w6xmv109061sz9nbc0p1836d96\",\n  \"slug\": \"mineru-document-extractor\",\n  \"version\": \"0.1.30\",\n  \"publishedAt\": 1778481372625\n}"},{"path":"skill-card.md","content":"## Description:\n\nMinerU Document Extractor helps agents convert PDFs, scanned documents, images, Word, PowerPoint, Excel, and web pages into Markdown, HTML, LaTeX, DOCX, or JSON using the mineru-open-api CLI.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[mineru-extract](https://clawhub.ai/user/mineru-extract)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers, researchers, and data engineers use this skill to extract structured content from documents and web pages, choose between fast token-free extraction and token-authenticated precision extraction, and save results to stdout or files.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Document or webpage content is transmitted to the MinerU API for server-side extraction.\n\nMitigation: Use the skill only for content approved for remote processing, and avoid sensitive private documents or internal URLs unless that use is authorized.\n\nRisk: Authenticated modes use a MinerU token that may be provided through command flags, environment variables, or local configuration.\n\nMitigation: Manage MinerU tokens carefully, prefer environment or config storage over exposing tokens in command history, and review token access before shared or automated use.\n\nRisk: The external mineru-open-api CLI is required to execute document extraction.\n\nMitigation: Install a pinned or reviewed CLI version where possible and verify the CLI before deployment.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/mineru-extract/skills/mineru-document-extractor)\n- [MinerU CLI reference](https://github.com/opendatalab/MinerU-Ecosystem/tree/main/cli)\n- [MinerU API token management](https://mineru.net/apiManage/token)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, code, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown guidance with inline shell commands and generated extraction outputs such as Markdown, HTML, LaTeX, DOCX, and JSON.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May write extraction results to stdout or an output directory; token-authenticated modes can support batch processing and additional formats.]\n\n## Skill Version(s):\n\n0.1.30 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":1462,"uniquenessScore":44,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-09T03:58:00.583Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-09T03:58:00.583Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-09T17:24:13.705Z","emptyReason":null},"items":[{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-10T18:48:31.762Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}