OpenSpace sandbox-execution-fallback-238489
Fallback pattern for when execute_code_sandbox fails - write script to file and execute directly with run_shell
install
source · Clone the upstream repo
git clone https://github.com/HKUDS/OpenSpace
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/HKUDS/OpenSpace "$T" && mkdir -p ~/.claude/skills && cp -r "$T/gdpval_bench/skills/sandbox-execution-fallback-238489" ~/.claude/skills/hkuds-openspace-sandbox-execution-fallback-238489 && rm -rf "$T"
manifest:
gdpval_bench/skills/sandbox-execution-fallback-238489/SKILL.mdsource content
Sandbox Execution Fallback
This skill provides a reliable fallback pattern when
execute_code_sandbox fails for code execution tasks (especially PDF generation, complex file operations, or library-dependent tasks).
When to Use
Use this fallback pattern when:
returns errors or fails to produce expected outputexecute_code_sandbox- The task requires specific Python libraries not available in the sandbox
- File I/O operations (especially PDF, docx, xlsx) fail in the sandbox environment
- You need more control over the execution environment
Step-by-Step Instructions
Step 1: Write the Python Script to a File
Instead of executing code directly in the sandbox, use
write_file to create a standalone Python script:
Use write_file to create a script (e.g., script.py) with your complete Python code.
Step 2: Execute the Script Directly
Run the script using
run_shell with Python:
Use run_shell with command: python3 script.py
Step 3: Verify Output
Check that the script executed successfully and produced the expected files or output.
Example Pattern
Instead of this (sandbox execution):
execute_code_sandbox with code using libraries like reportlab, fpdf, etc.
Do this (fallback pattern):
# Step 1: Create the script write_file: path: generate_pdf.py content: | from reportlab.lib.pagesizes import letter from reportlab.pdfgen import canvas def create_pdf(filename): c = canvas.Canvas(filename, pagesize=letter) c.drawString(100, 750, "Hello World") c.save() create_pdf("output.pdf") # Step 2: Execute directly run_shell: command: python3 generate_pdf.py
Best Practices
- Include all dependencies in the script - Make the script self-contained
- Add error handling - Include try/except blocks to catch and report errors
- Use absolute or clear relative paths - Ensure file paths work in the execution context
- Verify prerequisites - Check that required Python packages are available
- Clean up temporary files - Remove intermediate scripts after successful execution if needed
Troubleshooting
If
run_shell also fails:
- Check if Python 3 is available:
run_shell command: python3 --version - Install missing packages:
run_shell command: pip3 install package_name - Check file permissions and paths
- Review error output from the shell execution for specific issues
Why This Works
This pattern bypasses sandbox limitations by:
- Running code in the actual execution environment with full library access
- Avoiding sandbox timeout or resource constraints
- Enabling direct file system access for I/O operations
- Providing better error messages from the native Python interpreter
Self-Assessment
This skill captures a genuinely reusable pattern that:
- Is generalizable beyond just PDF generation to any execute_code_sandbox failure
- Provides clear, actionable steps
- Includes example code and troubleshooting guidance
- Would benefit future executions facing similar sandbox limitations