[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6KFTWFPKBF8GSST099ASBNQ":3,"skill-same:01M6KFTWFPKBF8GSST099ASBNQ":71},{"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":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":43,"commitSha":44,"skillDirectory":45,"forksCount":14,"repositoryHtmlUrl":46,"repositoryHomepageUrl":6,"ownerHtmlUrl":47,"ownerBlogUrl":48,"ownerDescription":49,"updatedAt":50,"install":51,"resources":64},"01M6KFTWFPKBF8GSST099ASBNQ","pptx-file-validation",null,"Validate PowerPoint files using python-pptx when standard file readers fail","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\u002Fpptx-file-validation\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000003","演示文稿","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000034","行政与办公人员","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37],"pptx","validation","file","pptx file validation","python","validate","powerpoint","files","python-pptx","2026-11-10 10:12:30",false,"---\nname: pptx-file-validation\ndescription: Validate PowerPoint files using python-pptx when standard file readers fail\n---\n\n# PPTX File Validation Workflow\n\nThis skill provides a reliable method to validate PowerPoint (.pptx) files when the built-in `read_file` function fails or returns insufficient information.\n\n## When to Use\n\n- `read_file` fails to read a .pptx file\n- You need to verify presentation contents (slide count, titles, structure)\n- Standard file readers return incomplete or unreadable data\n\n## Step-by-Step Instructions\n\n### Step 1: Detect read_file Failure\n\nAttempt to read the PowerPoint file using `read_file`. If it fails, returns garbled content, or doesn't provide the structural information you need, proceed to Step 2.\n\n### Step 2: Use run_shell with python-pptx\n\nExecute a Python script using `run_shell` with the `python-pptx` library to inspect the presentation:\n\n```bash\npython3 -c \"\nfrom pptx import Presentation\nprs = Presentation('path\u002Fto\u002Ffile.pptx')\nprint(f'Total slides: {len(prs.slides)}')\nfor i, slide in enumerate(prs.slides, 1):\n    print(f'Slide {i}: {slide.shapes.title.text if slide.shapes.title else \\\"[No Title]\\\"}')\n\"\n```\n\n### Step 3: Parse and Validate Output\n\nAnalyze the output to verify:\n- **Slide count** matches expected number\n- **Slide titles** align with required topics\n- **Structure** is complete and properly formatted\n\n### Step 4: Report Validation Results\n\nDocument the validation findings, including:\n- Total number of slides\n- List of slide titles\n- Any missing or problematic content\n\n## Example Usage\n\n```python\n# In your agent workflow\nrun_shell(command=\"python3 -c \\\"from pptx import Presentation; prs = Presentation('output.pptx'); print(f'Slides: {len(prs.slides)}'); [print(f'{i}: {s.shapes.title.text}') for i, s in enumerate(prs.slides, 1) if s.shapes.title]\\\"\")\n```\n\n## Prerequisites\n\nEnsure `python-pptx` is available in the environment:\n\n```bash\npip install python-pptx\n```\n\n## Benefits\n\n- **Reliable**: Works when built-in readers fail\n- **Detailed**: Provides slide-by-slide breakdown\n- **Programmatic**: Easy to parse and validate against requirements\n- **Lightweight**: No need for PowerPoint software installation","# PPTX File Validation Workflow\n\nThis skill provides a reliable method to validate PowerPoint (.pptx) files when the built-in `read_file` function fails or returns insufficient information.\n\n## When to Use\n\n- `read_file` fails to read a .pptx file\n- You need to verify presentation contents (slide count, titles, structure)\n- Standard file readers return incomplete or unreadable data\n\n## Step-by-Step Instructions\n\n### Step 1: Detect read_file Failure\n\nAttempt to read the PowerPoint file using `read_file`. If it fails, returns garbled content, or doesn't provide the structural information you need, proceed to Step 2.\n\n### Step 2: Use run_shell with python-pptx\n\nExecute a Python script using `run_shell` with the `python-pptx` library to inspect the presentation:\n\n```bash\npython3 -c \"\nfrom pptx import Presentation\nprs = Presentation('path\u002Fto\u002Ffile.pptx')\nprint(f'Total slides: {len(prs.slides)}')\nfor i, slide in enumerate(prs.slides, 1):\n    print(f'Slide {i}: {slide.shapes.title.text if slide.shapes.title else \\\"[No Title]\\\"}')\n\"\n```\n\n### Step 3: Parse and Validate Output\n\nAnalyze the output to verify:\n- **Slide count** matches expected number\n- **Slide titles** align with required topics\n- **Structure** is complete and properly formatted\n\n### Step 4: Report Validation Results\n\nDocument the validation findings, including:\n- Total number of slides\n- List of slide titles\n- Any missing or problematic content\n\n## Example Usage\n\n```python\n# In your agent workflow\nrun_shell(command=\"python3 -c \\\"from pptx import Presentation; prs = Presentation('output.pptx'); print(f'Slides: {len(prs.slides)}'); [print(f'{i}: {s.shapes.title.text}') for i, s in enumerate(prs.slides, 1) if s.shapes.title]\\\"\")\n```\n\n## Prerequisites\n\nEnsure `python-pptx` is available in the environment:\n\n```bash\npip install python-pptx\n```\n\n## Benefits\n\n- **Reliable**: Works when built-in readers fail\n- **Detailed**: Provides slide-by-slide breakdown\n- **Programmatic**: Easy to parse and validate against requirements\n- **Lightweight**: No need for PowerPoint software installation",{"name":5,"description":7},"main","af1b40a42167d09c30b3a63000aa14ace4c1e229","gdpval_bench\u002Fskills\u002Fpptx-file-validation","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":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add xyliu-cs\u002FOpenSpace-GDPval --skill pptx-file-validation",{"tool":57,"command":58},"bunx","bunx skills add xyliu-cs\u002FOpenSpace-GDPval --skill pptx-file-validation",{"tool":60,"command":61},"pnpm","pnpm dlx skills add xyliu-cs\u002FOpenSpace-GDPval --skill pptx-file-validation","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fxyliu-cs\u002FOpenSpace-GDPval\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fpptx-file-validation\u002FSKILL.md",true,[65],{"path":66,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":69,"sourceHtmlUrl":70},".skill_id","OTHER","其他",34,"https:\u002F\u002Fgithub.com\u002Fxyliu-cs\u002FOpenSpace-GDPval\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fpptx-file-validation\u002F.skill_id",[72,85,93,109,130,150],{"skillNo":73,"name":74,"nameZh":6,"description":75,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":76,"categories":77,"keywords":78,"publishedAt":38},"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",[],[79,80,81,82,83,84],"zip export deliverable","zip","export","deliverables","codebase","as",{"skillNo":86,"name":87,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":89,"categories":90,"keywords":91,"publishedAt":38},"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",[],[92,80,82,83,84],"zip deliverable finalization",{"skillNo":94,"name":95,"nameZh":6,"description":96,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":99,"publishedAt":38},"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",[],[100,101,102,103,104,105,106,107,84,108],"failure analysis","ZeRO","analysis","iteration","zero iteration failure analysis","with","issues","execution","system",{"skillNo":110,"name":111,"nameZh":6,"description":112,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":113,"categories":114,"keywords":116,"publishedAt":38},"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",[115],{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[117,118,31,119,120,121,122,123,124,125,126,127,128,129],"fallback","write","report","write file fallback report","domain","professional","sources","retrieval","generate","embedded","documents","data","knowledge",{"skillNo":131,"name":132,"nameZh":6,"description":133,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":134,"categories":135,"keywords":139,"publishedAt":38},"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",[136],{"categoryNo":137,"categoryName":138,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[140,105,117,141,142,143,127,125,31,144,145,146,118,147,122,148,149],"fallback doc with delegation","doc","delegation","shell","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":38},"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},[117,119,158,159,125,31,160,161,118,162,163,124,105,164,127],"context","context anchored fallback report","Guardrails","Tools","task","drift","context drift"]