<< All versions
Skill v1.0.3
currentAutomated scan100/100hkuds/openspace/pptx-shell-verify
no file changes
──Details
PublishedApril 26, 2026 at 07:18 PM
Content Hashsha256:38bda23a5c4cc569...
Git SHAd1e367d0ed47
Bump Typepatch
──Files
Files (1 file, 3.6 KB)
SKILL.md3.6 KBactive
SKILL.md · 149 lines · 3.6 KB
version: "1.0.3" name: pptx-shell-verify description: Verify PowerPoint presentation contents using python-pptx via shell when standard file readers fail
PowerPoint Shell Verification
When to Use This Skill
Use this skill when:
read_fileor other built-in tools fail to read PowerPoint (.pptx) files- You need to verify presentation structure (slide count, titles, content)
- Standard file inspection methods return errors or incomplete data
Prerequisites
- Python 3.x installed in the execution environment
python-pptxlibrary available (install if needed)
Step-by-Step Instructions
Step 1: Attempt Standard File Read
First, try to read the file using standard methods:
read_file: path/to/presentation.pptx
If this fails or returns unusable data, proceed to Step 2.
Step 2: Verify python-pptx Availability
Check if the library is installed:
run_shell: python -c "import pptx; print('pptx available')"
If not available, install it:
run_shell: pip install python-pptx
Step 3: Create Verification Script
Create a Python script to extract presentation metadata:
python
# verify_pptx.pyfrom pptx import Presentationimport sysimport jsondef verify_presentation(filepath):try:prs = Presentation(filepath)data = {"slide_count": len(prs.slides),"slides": []}for i, slide in enumerate(prs.slides):slide_data = {"slide_number": i + 1,"title": None,"shapes_count": len(slide.shapes)}# Extract title if presentif slide.shapes.title:slide_data["title"] = slide.shapes.title.textdata["slides"].append(slide_data)print(json.dumps(data, indent=2))return Trueexcept Exception as e:print(f"ERROR: {str(e)}", file=sys.stderr)return Falseif __name__ == "__main__":if len(sys.argv) < 2:print("Usage: python verify_pptx.py <file.pptx>", file=sys.stderr)sys.exit(1)success = verify_presentation(sys.argv[1])sys.exit(0 if success else 1)
Step 4: Execute Verification
Run the verification script:
run_shell: python verify_pptx.py path/to/presentation.pptx
Step 5: Interpret Results
Expected output format:
json
{"slide_count": 10,"slides": [{"slide_number": 1,"title": "Introduction","shapes_count": 3},...]}
Use this data to:
- Confirm expected slide count matches
- Verify slide titles are present
- Validate presentation structure before delivery
Example Validation Checks
python
# Check slide count matches requirementassert data["slide_count"] >= expected_min_slides# Check all slides have titlesfor slide in data["slides"]:assert slide["title"] is not None, f"Slide {slide['slide_number']} missing title"
Troubleshooting
| Issue | Solution | |
|---|---|---|
| Corrupted file | Verify file was created successfully, check file size | |
| Permission denied | Ensure file path is accessible, check read permissions | |
| Library not found | Install with pip install python-pptx | |
| Empty presentation | File may be 0 bytes or incomplete write |
Best Practices
- Always verify after creation: Run verification immediately after generating a PowerPoint file
- Keep verification script reusable: Store the script for future presentations
- Validate before delivery: Never deliver a presentation without confirming structure
- Log verification results: Keep verification output for audit trails