Skip to main content

safe-script-execution

Fallback workflow for code execution when automated tools fail, using shell heredoc with verification

معلومات المصدر

المستودع
HKUDS/OpenSpace
آخر نشاط في المصدر
١٧ يوليو ٢٠٢٦ في ٠٣:٤٣
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٧٬٧٧٦
التفرعات
٩٢٦

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
2 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
safe-script-execution
description
Fallback workflow for code execution when automated tools fail, using shell heredoc with verification
# Safe Script Execution Fallback ## When to Use This Skill Use this pattern when `execute_code_sandbox` or `shell_agent` repeatedly fails to produce expected outputs. This manual fallback provides explicit control over script creation and execution with built-in verification. ## Step-by-Step Instructions ### Step 1: Verify Working Directory Before creating any scripts, confirm your current location and permissions: ```bash pwd ls -la ``` Document the absolute path. All subsequent file operations should use explicit paths from this point. ### Step 2: Create Script via Heredoc Use shell heredoc syntax to create scripts. This avoids issues with multi-line string escaping: ```bash cat > /full/path/to/script.py << 'HEREDOC_END' #!/usr/bin/env python3 # Your script content here # Single quotes around delimiter prevent variable expansion print("Hello from script") HEREDOC_END ``` **Key escaping rules:** - Use single quotes around heredoc delimiter (`'EOF'`) to prevent shell variable expansion - If script contains the delimiter string, choose a different unique delimiter - For bash scripts containing special characters, escape `$`, backticks, and `!` ### Step 3: Make Executable and Run with Explicit Path ```bash chmod +x /full/path/to/script.py /full/path/to/script.py ``` Always use the full absolute path, never rely on `.` or relative paths. ### Step 4: Verify Output Confirm files were created and inspect their properties: ```bash # Check file exists with size ls -lh /full/path/to/output.file # For PDFs, inspect metadata pdfinfo /full/path/to/output.pdf 2>/dev/null || file /full/path/to/output.pdf # For Word docs, check file type file /full/path/to/output.docx ``` ### Step 5: Error Handling If execution fails: 1. Check script syntax: `python3 -m py_compile /path/to/script.py` 2. Check permissions: `ls -l /path/to/script.py` 3. Check available disk space: `df -h .` 4. Review stderr output carefully ## Example: PDF Generation Fallback ```bash # Step 1: Verify directory pwd ls -la # Step 2: Create Python script cat > /workspace/generate_pdf.py << 'SCRIPT_END' from reportlab.lib.pagesizes import letter from reportlab.pdfgen import canvas c = canvas.Canvas("/workspace/output.pdf", pagesize=letter) c.drawString(100, 750, "Generated PDF") c.save() SCRIPT_END # Step 3: Execute chmod +x /workspace/generate_pdf.py python3 /workspace/generate_pdf.py # Step 4: Verify ls -lh /workspace/output.pdf pdfinfo /workspace/output.pdf 2>/dev/null || echo "PDF created, pdfinfo unavailable" ``` ## Anti-Patterns to Avoid - ❌ Don't use relative paths like `./script.py` - always use absolute paths - ❌ Don't rely on unquoted heredoc delimiters if script contains variables - ❌ Don't skip verification steps - always confirm output exists and has expected size - ❌ Don't assume working directory - always `pwd` first ## Troubleshooting Checklist - [ ] Working directory confirmed with `pwd` - [ ] Script file exists after heredoc creation (`ls -l`) - [ ] Script has execute permissions (`chmod +x`) - [ ] Output file exists with non-zero size (`ls -lh`) - [ ] File type verified (`file` command or type-specific inspection)
عرض على GitHub