[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6KFE16N086ZGDSGPMAD5THD":3,"skill-same:01M6KFE16N086ZGDSGPMAD5THD":75},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":28,"publishedAt":42,"linkOnly":43,"markdownContent":44,"markdownBody":45,"frontMatter":46,"refName":47,"commitSha":48,"skillDirectory":49,"forksCount":14,"repositoryHtmlUrl":50,"repositoryHomepageUrl":6,"ownerHtmlUrl":51,"ownerBlogUrl":52,"ownerDescription":53,"updatedAt":54,"install":55,"resources":68},"01M6KFE16N086ZGDSGPMAD5THD","docx-read-fallback",null,"Use run_shell with python-docx as reliable fallback when read_file fails on .docx files","xyliu-cs\u002FOpenSpace-GDPval","xyliu-cs","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F89236536?v=4","01M6KF8Z1V4TXS86CKSH48BY8T","xy","01M6KF8Z67443W0SHXM85JEF0B",0,"MIT","https:\u002F\u002Fgithub.com\u002Fxyliu-cs\u002FOpenSpace-GDPval\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fdocx-read-fallback\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000002","文档处理","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000034","行政与办公人员","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38,39,40,41],"docx","read","fallback","docx read fallback","python","run","file","shell","use","files","as","with","python-docx","2026-11-10 10:12:30",false,"---\nname: docx-read-fallback\ndescription: Use run_shell with python-docx as reliable fallback when read_file fails on .docx files\n---\n\n# DOCX Read Fallback\n\nWhen `read_file` or `execute_code_sandbox` fails to read `.docx` files, use `run_shell` with python-docx as a reliable workaround.\n\n## When to Use\n\n- `read_file` fails, times out, or returns errors on `.docx` files\n- `execute_code_sandbox` attempts to read the docx fail\n- You need to extract text content from a Word document\n- Multiple standard approaches have been exhausted\n\n## How to Use\n\n### Basic Text Extraction\n\n```bash\npython -c \"import docx; doc = docx.Document('path\u002Fto\u002Ffile.docx'); print('\\n'.join([p.text for p in doc.paragraphs]))\"\n```\n\n### Using run_shell Tool\n\n```\nrun_shell command=\"python -c \\\"import docx; doc = docx.Document('path\u002Fto\u002Ffile.docx'); print('\\n'.join([p.text for p in doc.paragraphs]))\\\"\" timeout=60\n```\n\n### Extract Paragraphs with Indices\n\n```bash\npython -c \"import docx; doc = docx.Document('file.docx'); [print(f'P{i}: {p.text}') for i, p in enumerate(doc.paragraphs) if p.text.strip()]\"\n```\n\n### Extract Tables\n\n```bash\npython -c \"import docx; doc = docx.Document('file.docx'); [[print([[cell.text for cell in row.cells] for row in table.rows]) for table in doc.tables]]\"\n```\n\n### Extract Headings (by style)\n\n```bash\npython -c \"import docx; doc = docx.Document('file.docx'); [print(p.text) for p in doc.paragraphs if p.style.name.startswith('Heading')]\"\n```\n\n## Prerequisites\n\nEnsure python-docx is available:\n\n```bash\npython -c \"import docx; print('docx available')\"\n```\n\nIf not installed:\n\n```bash\npip install python-docx\n```\n\n## Tips\n\n- Use absolute paths to avoid working directory issues\n- Set appropriate `timeout` (30-60 seconds for large documents)\n- Escape quotes properly when embedding in shell commands\n- For large documents, extract content in chunks or filter by paragraph index\n- This approach bypasses file type detection issues in read_file\n\n## Example Workflow\n\n1. Try `read_file` on the .docx file\n2. If it fails, verify python-docx availability\n3. Use `run_shell` with the python-docx extraction command\n4. Parse the stdout to get document content\n5. Proceed with your analysis using the extracted text","# DOCX Read Fallback\n\nWhen `read_file` or `execute_code_sandbox` fails to read `.docx` files, use `run_shell` with python-docx as a reliable workaround.\n\n## When to Use\n\n- `read_file` fails, times out, or returns errors on `.docx` files\n- `execute_code_sandbox` attempts to read the docx fail\n- You need to extract text content from a Word document\n- Multiple standard approaches have been exhausted\n\n## How to Use\n\n### Basic Text Extraction\n\n```bash\npython -c \"import docx; doc = docx.Document('path\u002Fto\u002Ffile.docx'); print('\\n'.join([p.text for p in doc.paragraphs]))\"\n```\n\n### Using run_shell Tool\n\n```\nrun_shell command=\"python -c \\\"import docx; doc = docx.Document('path\u002Fto\u002Ffile.docx'); print('\\n'.join([p.text for p in doc.paragraphs]))\\\"\" timeout=60\n```\n\n### Extract Paragraphs with Indices\n\n```bash\npython -c \"import docx; doc = docx.Document('file.docx'); [print(f'P{i}: {p.text}') for i, p in enumerate(doc.paragraphs) if p.text.strip()]\"\n```\n\n### Extract Tables\n\n```bash\npython -c \"import docx; doc = docx.Document('file.docx'); [[print([[cell.text for cell in row.cells] for row in table.rows]) for table in doc.tables]]\"\n```\n\n### Extract Headings (by style)\n\n```bash\npython -c \"import docx; doc = docx.Document('file.docx'); [print(p.text) for p in doc.paragraphs if p.style.name.startswith('Heading')]\"\n```\n\n## Prerequisites\n\nEnsure python-docx is available:\n\n```bash\npython -c \"import docx; print('docx available')\"\n```\n\nIf not installed:\n\n```bash\npip install python-docx\n```\n\n## Tips\n\n- Use absolute paths to avoid working directory issues\n- Set appropriate `timeout` (30-60 seconds for large documents)\n- Escape quotes properly when embedding in shell commands\n- For large documents, extract content in chunks or filter by paragraph index\n- This approach bypasses file type detection issues in read_file\n\n## Example Workflow\n\n1. Try `read_file` on the .docx file\n2. If it fails, verify python-docx availability\n3. Use `run_shell` with the python-docx extraction command\n4. Parse the stdout to get document content\n5. Proceed with your analysis using the extracted text",{"name":5,"description":7},"main","af1b40a42167d09c30b3a63000aa14ace4c1e229","gdpval_bench\u002Fskills\u002Fdocx-read-fallback","https:\u002F\u002Fgithub.com\u002Fxyliu-cs\u002FOpenSpace-GDPval","https:\u002F\u002Fgithub.com\u002Fxyliu-cs","https:\u002F\u002Fxyliu-cs.github.io","PhD Student in CS, CUHK-Shenzhen.","2026-04-06 20:32:15",{"source":8,"skillName":5,"commands":56,"prompt":66,"zipAvailable":67},[57,60,63],{"tool":58,"command":59},"npx","npx skills add xyliu-cs\u002FOpenSpace-GDPval --skill docx-read-fallback",{"tool":61,"command":62},"bunx","bunx skills add xyliu-cs\u002FOpenSpace-GDPval --skill docx-read-fallback",{"tool":64,"command":65},"pnpm","pnpm dlx skills add xyliu-cs\u002FOpenSpace-GDPval --skill docx-read-fallback","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fxyliu-cs\u002FOpenSpace-GDPval\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fdocx-read-fallback\u002FSKILL.md",true,[69],{"path":70,"resourceType":71,"resourceTypeDesc":72,"sizeBytes":73,"sourceHtmlUrl":74},".skill_id","OTHER","其他",32,"https:\u002F\u002Fgithub.com\u002Fxyliu-cs\u002FOpenSpace-GDPval\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fdocx-read-fallback\u002F.skill_id",[76,88,96,111,131,150],{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":42},"01M6KG8MF1S664SWBDENYRSCK8","zip-export-deliverable","Ensures codebase deliverables are properly exported as ZIP archives through a dedicated finalization step","https:\u002F\u002Fgithub.com\u002Fxyliu-cs\u002FOpenSpace-GDPval\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fzip-export-deliverable\u002FSKILL.md",[],[83,84,85,86,87,39],"zip export deliverable","zip","export","deliverables","codebase",{"skillNo":89,"name":90,"nameZh":6,"description":91,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":94,"publishedAt":42},"01M6KG8GAZWHHEK7VNJDW0ME21","zip-deliverable-finalization","Ensure codebase deliverables are properly packaged as ZIP exports in a dedicated final step","https:\u002F\u002Fgithub.com\u002Fxyliu-cs\u002FOpenSpace-GDPval\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fzip-deliverable-finalization\u002FSKILL.md",[],[95,84,86,87,39],"zip deliverable finalization",{"skillNo":97,"name":98,"nameZh":6,"description":99,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":100,"categories":101,"keywords":102,"publishedAt":42},"01M6KG8CMQQ1PYMNTSRZ9VS1MD","zero-iteration-failure-analysis","Identify and handle agent failures with 0 iterations as pre-execution system issues","https:\u002F\u002Fgithub.com\u002Fxyliu-cs\u002FOpenSpace-GDPval\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fzero-iteration-failure-analysis\u002FSKILL.md",[],[103,104,105,106,107,40,108,109,39,110],"failure analysis","ZeRO","analysis","iteration","zero iteration failure analysis","issues","execution","system",{"skillNo":112,"name":113,"nameZh":6,"description":114,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":115,"categories":116,"keywords":118,"publishedAt":42},"01M6KG86W3PA07FT9W58YHHERM","write-file-fallback-report","Generate professional documents using write_file when primary data sources fail, leveraging embedded domain knowledge instead of external retrieval","https:\u002F\u002Fgithub.com\u002Fxyliu-cs\u002FOpenSpace-GDPval\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fwrite-file-fallback-report\u002FSKILL.md",[117],{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[31,119,35,120,121,122,123,124,125,126,127,128,129,130],"write","report","write file fallback report","domain","professional","sources","retrieval","generate","embedded","documents","data","knowledge",{"skillNo":132,"name":133,"nameZh":6,"description":134,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":140,"publishedAt":42},"01M6KG82GAEY3GG77CMGCK1C2T","fallback-doc-with-delegation","Generate professional documents after tool failures using shell_agent for complex formats or write_file for simple text\u002Fmarkdown","https:\u002F\u002Fgithub.com\u002Fxyliu-cs\u002FOpenSpace-GDPval\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fwrite-file-fallback-report-enhanced\u002FSKILL.md",[137],{"categoryNo":138,"categoryName":139,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[141,40,31,142,143,36,128,126,35,144,145,146,119,147,123,148,149],"fallback doc with delegation","doc","delegation","markdown","tool","text","simple","formats","for",{"skillNo":151,"name":152,"nameZh":6,"description":153,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":154,"categories":155,"keywords":157,"publishedAt":42},"01M6KG7WT7GX5NYCGEFHW22NV7","context-anchored-fallback-report","Generate documents with write_file when retrieval tools fail, with explicit guardrails against task context drift","https:\u002F\u002Fgithub.com\u002Fxyliu-cs\u002FOpenSpace-GDPval\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fwrite-file-fallback-report-enhanced-4bc5c2\u002FSKILL.md",[156],{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[31,120,158,159,126,35,160,161,119,162,163,125,40,164,128],"context","context anchored fallback report","Guardrails","Tools","task","drift","context drift"]