sandbox-fallback-execution-5eda7b
Fallback pattern for executing Python code when sandbox execution fails by writing scripts to disk and running via shell
- License 许可
- MIT
- 所属仓库
- AG064/OpenSpace
- 最近更新
- 2026-10-08
- Stars
- ★ 0
- Forks
- 0
01 前言 Front Matter
- name
- sandbox-fallback-execution-5eda7b
- description
- Fallback pattern for executing Python code when sandbox execution fails by writing scripts to disk and running via shell
02 资源文件 1
- 其他.skill_id47 B
03 SKILL.md 正文
Sandbox Fallback Execution
Overview
When execute_code_sandbox fails due to e2b initialization errors or sandbox unavailability, use this fallback pattern to execute Python code by writing it to disk and running it via run_shell. This approach is particularly useful for PDF generation, data processing, and other Python-intensive tasks.
When to Use
Use this skill when you encounter errors like:
e2b initialization errorsandbox not availableexecute_code_sandboxtimeout or connection failures- Any sandbox execution that consistently fails
Step-by-Step Instructions
Step 1: Attempt Sandbox Execution First
Always try execute_code_sandbox first, as it provides isolation and artifact handling:
execute_code_sandbox(code="your_python_code_here")
Step 2: Detect Failure and Switch to Fallback
When sandbox execution fails with initialization errors, switch to the fallback pattern:
-
Write the Python script to disk using
write_file:- Choose a descriptive filename (e.g.,
generate_pdf.py,process_data.py) - Include the complete Python code with all necessary imports
- Choose a descriptive filename (e.g.,
-
Execute via shell using
run_shell:- Run the script with
pythonorpython3 - Capture stdout/stderr for verification
- Run the script with
Step 3: Example Implementation
# Write the script to disk
write_file(
path="generate_pdf.py",
content="""
from reportlab.lib.pagesizes import letter
from reportlab.pdfgen import canvas
def create_pdf(filename, content):
c = canvas.Canvas(filename, pagesize=letter)
c.drawString(100, 750, content)
c.save()
create_pdf('output.pdf', 'Hello World')
"""
)
# Execute the script via shell
run_shell(command="python generate_pdf.py")
Step 4: Handle Dependencies
If the script requires external packages:
# Install dependencies first
run_shell(command="pip install reportlab pillow")
# Then execute the script
run_shell(command="python generate_pdf.py")
Step 5: Verify Output
After execution, verify the output was created:
# Check if file was created
run_shell(command="ls -la output.pdf")
# Optionally read the file to confirm
read_file(file_path="output.pdf", filetype="pdf")
Best Practices
- Keep scripts self-contained: Include all imports and logic in the written file
- Use descriptive filenames: Make it clear what each script does
- Clean up when done: Remove temporary scripts if not needed for debugging
- Capture errors: Always check stdout/stderr from
run_shellfor debugging - Handle paths carefully: Use relative paths or absolute paths consistently
Complete Example Pattern
# Primary: Try sandbox execution
try:
result = execute_code_sandbox(code=python_code)
except Exception as e:
if "e2b" in str(e).lower() or "sandbox" in str(e).lower():
# Fallback: Write to disk and execute via shell
script_path = "task_script.py"
write_file(
path=script_path,
content=python_code
)
# Install any required dependencies
run_shell(command="pip install -q reportlab")
# Execute the script
result = run_shell(command=f"python {script_path}")
# Verify output
run_shell(command="ls -la")
Applicable Use Cases
- PDF generation (reportlab, fpdf, etc.)
- Image processing (PIL, OpenCV)
- Data analysis (pandas, numpy)
- File manipulation tasks
- Any Python script that doesn't require special sandbox features
04 同仓库更多 Skills
write-special-chars-ts-check
Workaround for write_file failures caused by special characters (apostrophes, backticks, template literals) using a Python heredoc script, plus a reliable TypeScript type-checking step that filters output to only the newly-written files to avoid being misled by pre-existing errors.
write-special-chars-readback
Workaround for write_file failures caused by special characters (apostrophes, backticks, template literals) using a Python heredoc script, with mandatory post-write verification via read_file and cleanup of /tmp helper scripts.
write-special-chars-heredoc
Workaround for write_file failures caused by special characters (apostrophes, backticks, template literals) by using a Python heredoc script executed via shell.
worldmonitor-reference
Curated architecture index of the WorldMonitor open-source dashboard. Reference for extracting patterns — vanilla TypeScript, Panel class hierarchy, service layer, CSS grid, API edge functions, refresh scheduler, and 60+ data source integrations.
virtual-list
Implement efficient virtual scrolling for rendering large lists with DOM recycling, chunk-based rendering, and performance optimizations
verify-directory-structure
Diagnose and resolve file access issues by first verifying the directory structure.