[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71JDAEQ12MGC4Q2610PV6SS":3,"skill-same:01M71JDAEQ12MGC4Q2610PV6SS":104},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":30,"publishedAt":51,"linkOnly":52,"markdownContent":53,"markdownBody":54,"frontMatter":55,"refName":67,"commitSha":68,"skillDirectory":69,"forksCount":70,"repositoryHtmlUrl":71,"repositoryHomepageUrl":6,"ownerHtmlUrl":72,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":73,"install":74,"resources":87},"01M71JDAEQ12MGC4Q2610PV6SS","ocr-and-documents",null,"Extract text from PDFs and scanned documents. Use web_extract for remote URLs, pymupdf for local text-based PDFs, marker-pdf for OCR\u002Fscanned docs. For DOCX use python-docx, for PPTX see the powerpoint skill.","xuanxuan1983\u002Fhermes-skills-backup","xuanxuan1983","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F151701653?v=4","01M71HCZNB5H19QJ6YBF98W2WH","01M71HCZP14T0921BD0TC9EPD3",1,"MIT","https:\u002F\u002Fgithub.com\u002Fxuanxuan1983\u002Fhermes-skills-backup\u002Fblob\u002Fmain\u002Fskills\u002Fproductivity\u002Focr-and-documents\u002FSKILL.md",[17,22,25],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000002","文档处理","SCENARIO","使用场景",{"categoryNo":23,"categoryName":24,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000003","演示文稿",{"categoryNo":26,"categoryName":27,"taxonomyType":28,"taxonomyTypeDesc":29},"01JBSEEDCAT000000000000034","行政与办公人员","PROFESSION","适用职业",[31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50],"documents","ocr and documents","ocr","powerpoint","arxiv","web","research","text","text-extraction","use","remote","pdfs","local","python","pymupdf","for","pptx","PDF","docx","python-docx","2026-11-10 10:12:30",false,"---\nname: ocr-and-documents\ndescription: Extract text from PDFs and scanned documents. Use web_extract for remote URLs, pymupdf for local text-based PDFs, marker-pdf for OCR\u002Fscanned docs. For DOCX use python-docx, for PPTX see the powerpoint skill.\nversion: 2.3.0\nauthor: Hermes Agent\nlicense: MIT\nmetadata:\n  hermes:\n    tags: [PDF, Documents, Research, Arxiv, Text-Extraction, OCR]\n    related_skills: [powerpoint]\n---\n\n# PDF & Document Extraction\n\nFor DOCX: use `python-docx` (parses actual document structure, far better than OCR).\nFor PPTX: see the `powerpoint` skill (uses `python-pptx` with full slide\u002Fnotes support).\nThis skill covers **PDFs and scanned documents**.\n\n## Step 1: Remote URL Available?\n\nIf the document has a URL, **always try `web_extract` first**:\n\n```\nweb_extract(urls=[\"https:\u002F\u002Farxiv.org\u002Fpdf\u002F2402.03300\"])\nweb_extract(urls=[\"https:\u002F\u002Fexample.com\u002Freport.pdf\"])\n```\n\nThis handles PDF-to-markdown conversion via Firecrawl with no local dependencies.\n\nOnly use local extraction when: the file is local, web_extract fails, or you need batch processing.\n\n## Step 2: Choose Local Extractor\n\n| Feature | pymupdf (~25MB) | marker-pdf (~3-5GB) |\n|---------|-----------------|---------------------|\n| **Text-based PDF** | ✅ | ✅ |\n| **Scanned PDF (OCR)** | ❌ | ✅ (90+ languages) |\n| **Tables** | ✅ (basic) | ✅ (high accuracy) |\n| **Equations \u002F LaTeX** | ❌ | ✅ |\n| **Code blocks** | ❌ | ✅ |\n| **Forms** | ❌ | ✅ |\n| **Headers\u002Ffooters removal** | ❌ | ✅ |\n| **Reading order detection** | ❌ | ✅ |\n| **Images extraction** | ✅ (embedded) | ✅ (with context) |\n| **Images → text (OCR)** | ❌ | ✅ |\n| **EPUB** | ✅ | ✅ |\n| **Markdown output** | ✅ (via pymupdf4llm) | ✅ (native, higher quality) |\n| **Install size** | ~25MB | ~3-5GB (PyTorch + models) |\n| **Speed** | Instant | ~1-14s\u002Fpage (CPU), ~0.2s\u002Fpage (GPU) |\n\n**Decision**: Use pymupdf unless you need OCR, equations, forms, or complex layout analysis.\n\nIf the user needs marker capabilities but the system lacks ~5GB free disk:\n> \"This document needs OCR\u002Fadvanced extraction (marker-pdf), which requires ~5GB for PyTorch and models. Your system has [X]GB free. Options: free up space, provide a URL so I can use web_extract, or I can try pymupdf which works for text-based PDFs but not scanned documents or equations.\"\n\n---\n\n## pymupdf (lightweight)\n\n```bash\npip install pymupdf pymupdf4llm\n```\n\n**Via helper script**:\n```bash\npython scripts\u002Fextract_pymupdf.py document.pdf              # Plain text\npython scripts\u002Fextract_pymupdf.py document.pdf --markdown    # Markdown\npython scripts\u002Fextract_pymupdf.py document.pdf --tables      # Tables\npython scripts\u002Fextract_pymupdf.py document.pdf --images out\u002F # Extract images\npython scripts\u002Fextract_pymupdf.py document.pdf --metadata    # Title, author, pages\npython scripts\u002Fextract_pymupdf.py document.pdf --pages 0-4   # Specific pages\n```\n\n**Inline**:\n```bash\npython3 -c \"\nimport pymupdf\ndoc = pymupdf.open('document.pdf')\nfor page in doc:\n    print(page.get_text())\n\"\n```\n\n---\n\n## marker-pdf (high-quality OCR)\n\n```bash\n# Check disk space first\npython scripts\u002Fextract_marker.py --check\n\npip install marker-pdf\n```\n\n**Via helper script**:\n```bash\npython scripts\u002Fextract_marker.py document.pdf                # Markdown\npython scripts\u002Fextract_marker.py document.pdf --json         # JSON with metadata\npython scripts\u002Fextract_marker.py document.pdf --output_dir out\u002F  # Save images\npython scripts\u002Fextract_marker.py scanned.pdf                 # Scanned PDF (OCR)\npython scripts\u002Fextract_marker.py document.pdf --use_llm      # LLM-boosted accuracy\n```\n\n**CLI** (installed with marker-pdf):\n```bash\nmarker_single document.pdf --output_dir .\u002Foutput\nmarker \u002Fpath\u002Fto\u002Ffolder --workers 4    # Batch\n```\n\n---\n\n## Arxiv Papers\n\n```\n# Abstract only (fast)\nweb_extract(urls=[\"https:\u002F\u002Farxiv.org\u002Fabs\u002F2402.03300\"])\n\n# Full paper\nweb_extract(urls=[\"https:\u002F\u002Farxiv.org\u002Fpdf\u002F2402.03300\"])\n\n# Search\nweb_search(query=\"arxiv GRPO reinforcement learning 2026\")\n```\n\n## Split, Merge & Search\n\npymupdf handles these natively — use `execute_code` or inline Python:\n\n```python\n# Split: extract pages 1-5 to a new PDF\nimport pymupdf\ndoc = pymupdf.open(\"report.pdf\")\nnew = pymupdf.open()\nfor i in range(5):\n    new.insert_pdf(doc, from_page=i, to_page=i)\nnew.save(\"pages_1-5.pdf\")\n```\n\n```python\n# Merge multiple PDFs\nimport pymupdf\nresult = pymupdf.open()\nfor path in [\"a.pdf\", \"b.pdf\", \"c.pdf\"]:\n    result.insert_pdf(pymupdf.open(path))\nresult.save(\"merged.pdf\")\n```\n\n```python\n# Search for text across all pages\nimport pymupdf\ndoc = pymupdf.open(\"report.pdf\")\nfor i, page in enumerate(doc):\n    results = page.search_for(\"revenue\")\n    if results:\n        print(f\"Page {i+1}: {len(results)} match(es)\")\n        print(page.get_text(\"text\"))\n```\n\nNo extra dependencies needed — pymupdf covers split, merge, search, and text extraction in one package.\n\n---\n\n## Notes\n\n- `web_extract` is always first choice for URLs\n- pymupdf is the safe default — instant, no models, works everywhere\n- marker-pdf is for OCR, scanned docs, equations, complex layouts — install only when needed\n- Both helper scripts accept `--help` for full usage\n- marker-pdf downloads ~2.5GB of models to `~\u002F.cache\u002Fhuggingface\u002F` on first use\n- For Word docs: `pip install python-docx` (better than OCR — parses actual structure)\n- For PowerPoint: see the `powerpoint` skill (uses python-pptx)\n","# PDF & Document Extraction\n\nFor DOCX: use `python-docx` (parses actual document structure, far better than OCR).\nFor PPTX: see the `powerpoint` skill (uses `python-pptx` with full slide\u002Fnotes support).\nThis skill covers **PDFs and scanned documents**.\n\n## Step 1: Remote URL Available?\n\nIf the document has a URL, **always try `web_extract` first**:\n\n```\nweb_extract(urls=[\"https:\u002F\u002Farxiv.org\u002Fpdf\u002F2402.03300\"])\nweb_extract(urls=[\"https:\u002F\u002Fexample.com\u002Freport.pdf\"])\n```\n\nThis handles PDF-to-markdown conversion via Firecrawl with no local dependencies.\n\nOnly use local extraction when: the file is local, web_extract fails, or you need batch processing.\n\n## Step 2: Choose Local Extractor\n\n| Feature | pymupdf (~25MB) | marker-pdf (~3-5GB) |\n|---------|-----------------|---------------------|\n| **Text-based PDF** | ✅ | ✅ |\n| **Scanned PDF (OCR)** | ❌ | ✅ (90+ languages) |\n| **Tables** | ✅ (basic) | ✅ (high accuracy) |\n| **Equations \u002F LaTeX** | ❌ | ✅ |\n| **Code blocks** | ❌ | ✅ |\n| **Forms** | ❌ | ✅ |\n| **Headers\u002Ffooters removal** | ❌ | ✅ |\n| **Reading order detection** | ❌ | ✅ |\n| **Images extraction** | ✅ (embedded) | ✅ (with context) |\n| **Images → text (OCR)** | ❌ | ✅ |\n| **EPUB** | ✅ | ✅ |\n| **Markdown output** | ✅ (via pymupdf4llm) | ✅ (native, higher quality) |\n| **Install size** | ~25MB | ~3-5GB (PyTorch + models) |\n| **Speed** | Instant | ~1-14s\u002Fpage (CPU), ~0.2s\u002Fpage (GPU) |\n\n**Decision**: Use pymupdf unless you need OCR, equations, forms, or complex layout analysis.\n\nIf the user needs marker capabilities but the system lacks ~5GB free disk:\n> \"This document needs OCR\u002Fadvanced extraction (marker-pdf), which requires ~5GB for PyTorch and models. Your system has [X]GB free. Options: free up space, provide a URL so I can use web_extract, or I can try pymupdf which works for text-based PDFs but not scanned documents or equations.\"\n\n---\n\n## pymupdf (lightweight)\n\n```bash\npip install pymupdf pymupdf4llm\n```\n\n**Via helper script**:\n```bash\npython scripts\u002Fextract_pymupdf.py document.pdf              # Plain text\npython scripts\u002Fextract_pymupdf.py document.pdf --markdown    # Markdown\npython scripts\u002Fextract_pymupdf.py document.pdf --tables      # Tables\npython scripts\u002Fextract_pymupdf.py document.pdf --images out\u002F # Extract images\npython scripts\u002Fextract_pymupdf.py document.pdf --metadata    # Title, author, pages\npython scripts\u002Fextract_pymupdf.py document.pdf --pages 0-4   # Specific pages\n```\n\n**Inline**:\n```bash\npython3 -c \"\nimport pymupdf\ndoc = pymupdf.open('document.pdf')\nfor page in doc:\n    print(page.get_text())\n\"\n```\n\n---\n\n## marker-pdf (high-quality OCR)\n\n```bash\n# Check disk space first\npython scripts\u002Fextract_marker.py --check\n\npip install marker-pdf\n```\n\n**Via helper script**:\n```bash\npython scripts\u002Fextract_marker.py document.pdf                # Markdown\npython scripts\u002Fextract_marker.py document.pdf --json         # JSON with metadata\npython scripts\u002Fextract_marker.py document.pdf --output_dir out\u002F  # Save images\npython scripts\u002Fextract_marker.py scanned.pdf                 # Scanned PDF (OCR)\npython scripts\u002Fextract_marker.py document.pdf --use_llm      # LLM-boosted accuracy\n```\n\n**CLI** (installed with marker-pdf):\n```bash\nmarker_single document.pdf --output_dir .\u002Foutput\nmarker \u002Fpath\u002Fto\u002Ffolder --workers 4    # Batch\n```\n\n---\n\n## Arxiv Papers\n\n```\n# Abstract only (fast)\nweb_extract(urls=[\"https:\u002F\u002Farxiv.org\u002Fabs\u002F2402.03300\"])\n\n# Full paper\nweb_extract(urls=[\"https:\u002F\u002Farxiv.org\u002Fpdf\u002F2402.03300\"])\n\n# Search\nweb_search(query=\"arxiv GRPO reinforcement learning 2026\")\n```\n\n## Split, Merge & Search\n\npymupdf handles these natively — use `execute_code` or inline Python:\n\n```python\n# Split: extract pages 1-5 to a new PDF\nimport pymupdf\ndoc = pymupdf.open(\"report.pdf\")\nnew = pymupdf.open()\nfor i in range(5):\n    new.insert_pdf(doc, from_page=i, to_page=i)\nnew.save(\"pages_1-5.pdf\")\n```\n\n```python\n# Merge multiple PDFs\nimport pymupdf\nresult = pymupdf.open()\nfor path in [\"a.pdf\", \"b.pdf\", \"c.pdf\"]:\n    result.insert_pdf(pymupdf.open(path))\nresult.save(\"merged.pdf\")\n```\n\n```python\n# Search for text across all pages\nimport pymupdf\ndoc = pymupdf.open(\"report.pdf\")\nfor i, page in enumerate(doc):\n    results = page.search_for(\"revenue\")\n    if results:\n        print(f\"Page {i+1}: {len(results)} match(es)\")\n        print(page.get_text(\"text\"))\n```\n\nNo extra dependencies needed — pymupdf covers split, merge, search, and text extraction in one package.\n\n---\n\n## Notes\n\n- `web_extract` is always first choice for URLs\n- pymupdf is the safe default — instant, no models, works everywhere\n- marker-pdf is for OCR, scanned docs, equations, complex layouts — install only when needed\n- Both helper scripts accept `--help` for full usage\n- marker-pdf downloads ~2.5GB of models to `~\u002F.cache\u002Fhuggingface\u002F` on first use\n- For Word docs: `pip install python-docx` (better than OCR — parses actual structure)\n- For PowerPoint: see the `powerpoint` skill (uses python-pptx)\n",{"name":5,"author":56,"license":14,"version":57,"metadata":58,"description":7},"Hermes Agent","2.3.0",{"hermes":59},{"tags":60,"related_skills":66},[48,61,62,63,64,65],"Documents","Research","Arxiv","Text-Extraction","OCR",[34],"main","17ee50c38aefa9426a89d7e8ee167fdc4c184fb7","skills\u002Fproductivity\u002Focr-and-documents",0,"https:\u002F\u002Fgithub.com\u002Fxuanxuan1983\u002Fhermes-skills-backup","https:\u002F\u002Fgithub.com\u002Fxuanxuan1983","2026-05-24 00:14:48",{"source":8,"skillName":5,"commands":75,"prompt":85,"zipAvailable":86},[76,79,82],{"tool":77,"command":78},"npx","npx skills add xuanxuan1983\u002Fhermes-skills-backup --skill ocr-and-documents",{"tool":80,"command":81},"bunx","bunx skills add xuanxuan1983\u002Fhermes-skills-backup --skill ocr-and-documents",{"tool":83,"command":84},"pnpm","pnpm dlx skills add xuanxuan1983\u002Fhermes-skills-backup --skill ocr-and-documents","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fxuanxuan1983\u002Fhermes-skills-backup\u002Fblob\u002Fmain\u002Fskills\u002Fproductivity\u002Focr-and-documents\u002FSKILL.md",true,[88,94,100],{"path":89,"resourceType":90,"resourceTypeDesc":91,"sizeBytes":92,"sourceHtmlUrl":93},"DESCRIPTION.md","REFERENCE","参考文档",147,"https:\u002F\u002Fgithub.com\u002Fxuanxuan1983\u002Fhermes-skills-backup\u002Fblob\u002Fmain\u002Fskills\u002Fproductivity\u002Focr-and-documents\u002FDESCRIPTION.md",{"path":95,"resourceType":96,"resourceTypeDesc":97,"sizeBytes":98,"sourceHtmlUrl":99},"scripts\u002Fextract_marker.py","SCRIPT","脚本",3034,"https:\u002F\u002Fgithub.com\u002Fxuanxuan1983\u002Fhermes-skills-backup\u002Fblob\u002Fmain\u002Fskills\u002Fproductivity\u002Focr-and-documents\u002Fscripts\u002Fextract_marker.py",{"path":101,"resourceType":96,"resourceTypeDesc":97,"sizeBytes":102,"sourceHtmlUrl":103},"scripts\u002Fextract_pymupdf.py",3132,"https:\u002F\u002Fgithub.com\u002Fxuanxuan1983\u002Fhermes-skills-backup\u002Fblob\u002Fmain\u002Fskills\u002Fproductivity\u002Focr-and-documents\u002Fscripts\u002Fextract_pymupdf.py",[105,143,171,186,208,229],{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":123,"publishedAt":51},"01M71JFHVW1W4XE013TY9ZYN9P","writing-plans","Use when you have a spec or requirements for a multi-step task. Creates comprehensive implementation plans with bite-sized tasks, exact file paths, and complete code examples.","https:\u002F\u002Fgithub.com\u002Fxuanxuan1983\u002Fhermes-skills-backup\u002Fblob\u002Fmain\u002Fskills\u002Fsoftware-development\u002Fwriting-plans\u002FSKILL.md",[111,114,117,120],{"categoryNo":112,"categoryName":113,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":115,"categoryName":116,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":118,"categoryName":119,"taxonomyType":28,"taxonomyTypeDesc":29},"01JBSEEDCAT000000000000030","开发工程师",{"categoryNo":121,"categoryName":122,"taxonomyType":28,"taxonomyTypeDesc":29},"01JBSEEDCAT000000000000036","内容创作者",[124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,46],"writing","writing plans","plans","test-driven","test-driven-development","superpowers","design","when","workflow","you","code","tasks","subagent","code-review","review","documentation","paths","planning","development",{"skillNo":144,"name":128,"nameZh":6,"description":145,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":146,"categories":147,"keywords":156,"publishedAt":51},"01M71JFF859RV0XGWS206X1TMB","Use when implementing any feature or bugfix, before writing implementation code. Enforces RED-GREEN-REFACTOR cycle with test-first approach.","https:\u002F\u002Fgithub.com\u002Fxuanxuan1983\u002Fhermes-skills-backup\u002Fblob\u002Fmain\u002Fskills\u002Fsoftware-development\u002Ftest-driven-development\u002FSKILL.md",[148,151,154,155],{"categoryNo":149,"categoryName":150,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000007","代码审查",{"categoryNo":152,"categoryName":153,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":115,"categoryName":116,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":121,"categoryName":122,"taxonomyType":28,"taxonomyTypeDesc":29},[157,142,158,159,160,161,162,163,164,165,129,124,166,131,134,136,167,168,169,170],"test driven development","test","driven","test-first","green","cycle","red-green-refactor","testing","implementing","debugging","systematic","bugfix","refactor","systematic-debugging",{"skillNo":172,"name":170,"nameZh":6,"description":173,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":174,"categories":175,"keywords":177,"publishedAt":51},"01M71JFCA5S48PZ5M7DG31R8K5","Use when encountering any bug, test failure, or unexpected behavior. 4-phase root cause investigation — NO fixes without understanding the problem first.","https:\u002F\u002Fgithub.com\u002Fxuanxuan1983\u002Fhermes-skills-backup\u002Fblob\u002Fmain\u002Fskills\u002Fsoftware-development\u002Fsystematic-debugging\u002FSKILL.md",[176],{"categoryNo":152,"categoryName":153,"taxonomyType":20,"taxonomyTypeDesc":21},[178,166,167,127,179,180,128,129,124,131,136,181,182,142,183,184,126,40,185,158],"systematic debugging","problem","problem-solving","phase","bug","fixes","root cause","root-cause",{"skillNo":187,"name":188,"nameZh":6,"description":189,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":190,"categories":191,"keywords":201,"publishedAt":51},"01M71JF9RQ092KM5ZXCBBT6FS1","subagent-driven-development","Use when executing implementation plans with independent tasks. Dispatches fresh delegate_task per task with two-stage review (spec compliance then code quality).","https:\u002F\u002Fgithub.com\u002Fxuanxuan1983\u002Fhermes-skills-backup\u002Fblob\u002Fmain\u002Fskills\u002Fsoftware-development\u002Fsubagent-driven-development\u002FSKILL.md",[192,193,196,197,198],{"categoryNo":115,"categoryName":116,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":194,"categoryName":195,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":118,"categoryName":119,"taxonomyType":28,"taxonomyTypeDesc":29},{"categoryNo":121,"categoryName":122,"taxonomyType":28,"taxonomyTypeDesc":29},{"categoryNo":199,"categoryName":200,"taxonomyType":28,"taxonomyTypeDesc":29},"01JBSEEDCAT000000000000037","律师与法务",[202,136,142,159,127,128,203,204,129,124,131,132,134,135,137,138,205,206,207,126],"subagent driven development","delegate","delegation","fresh","parallel","code quality",{"skillNo":209,"name":210,"nameZh":6,"description":211,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":212,"categories":213,"keywords":216,"publishedAt":51},"01M71JF76DA8ARZ4JRYR4VBRWM","requesting-code-review","Pre-commit verification pipeline — static security scan, baseline-aware quality gates, independent reviewer subagent, and auto-fix loop. Use after code changes and before committing, pushing, or opening a PR.","https:\u002F\u002Fgithub.com\u002Fxuanxuan1983\u002Fhermes-skills-backup\u002Fblob\u002Fmain\u002Fskills\u002Fsoftware-development\u002Frequesting-code-review\u002FSKILL.md",[214,215],{"categoryNo":149,"categoryName":150,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":118,"categoryName":119,"taxonomyType":28,"taxonomyTypeDesc":29},[217,218,134,138,127,219,220,128,221,222,129,223,124,224,225,226,136,137,227,228],"code review","requesting code review","pipeline","static","fix","auto-fix","auto","loop","security scan","commit","reviewer","verification",{"skillNo":230,"name":231,"nameZh":6,"description":232,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":233,"categories":234,"keywords":235,"publishedAt":51},"01M71JF52HZT5VQXFVF9K2H76K","plan","Plan mode for Hermes — inspect context, write a markdown plan into the active workspace's `.hermes\u002Fplans\u002F` directory, and do not execute the work.","https:\u002F\u002Fgithub.com\u002Fxuanxuan1983\u002Fhermes-skills-backup\u002Fblob\u002Fmain\u002Fskills\u002Fsoftware-development\u002Fplan\u002FSKILL.md",[],[231,236,237,141,142,46,238,239,126,124,132,136,240,241,242,243,244,245,246,247],"plan-mode","do","inspect","mode","work","markdown","active","directory","workspace","plan mode","write","implementation"]