<< All versions
Skill v1.0.1
currentAutomated scan100/100hkuds/openspace/sandbox-execution-fallback-717e65
feat: track evolution candidate processing lifecycle
── Details ─────────────────────────────────────────
PublishedApril 26, 2026 at 07:11 AM
Content Hashsha256:aec4ef85bb37b706...
Git SHAd1e367d0ed47
── Files ───────────────────────────────────────────
Files (1 file, 3.8 KB)
SKILL.md3.8 KBactive
SKILL.md · 139 lines · 3.8 KB
name: sandbox-execution-fallback-717e65 description: Fallback from execute_code_sandbox to file-based run_shell execution when sandbox fails
Sandbox Execution Fallback
When to Use
Apply this pattern when execute_code_sandbox fails repeatedly or exhibits instability. Common triggers include:
- Sandbox returns errors after 2-3 retry attempts
- Error messages indicate provider/system issues rather than code bugs
- Execution times out or hangs inconsistently
- Complex multi-step code with file I/O is needed
- Better error visibility and debugging is required
Procedure
Step 1: Detect When to Switch
Recognize the failure pattern:
execute_code_sandboxproduces repeated errors despite code corrections- Error output suggests infrastructure issues (not syntax/logic errors)
- The sandbox environment appears unstable or limited
Step 2: Write Python Script to File
Use write_file to save your script:
write_file(path="script.py",content="#!/usr/bin/env python3# Your Python code hereimport sysprint('Executing via file-based approach')# ... rest of your code")
For multi-file projects, write each file separately:
write_file(path="utils.py", content="# Utility functions\ndef helper(): ...")write_file(path="main.py", content="from utils import helper\nhelper()")
Step 3: Execute via Shell
Run the script using run_shell:
run_shell(command="python3 script.py")
For scripts in subdirectories:
run_shell(command="cd mydir && python3 script.py")
Step 4: Handle Output and Clean Up
- Parse stdout/stderr from
run_shelloutput - Inspect created files directly using
read_fileif needed - Remove temporary scripts after successful execution:
`` run_shell(command="rm script.py") ``
Advantages Over Sandbox Execution
| Benefit | Explanation | |
|---|---|---|
| Bypasses provider limitations | No sandbox resource constraints | |
| Better error visibility | Full stack traces and system errors | |
| Environment control | Direct access to system Python and packages | |
| Multi-file support | Easy imports and module structure | |
| Persistence | Files remain for inspection and debugging | |
| Reliability | More consistent execution behavior |
Complete Example
# Scenario: execute_code_sandbox failing on data processing task# Step 1: Write the scriptwrite_file(path="process_data.py",content="#!/usr/bin/env python3import jsonimport csv# Load and process datawith open('input.json', 'r') as f:data = json.load(f)# Transform dataresults = []for item in data:results.append({'processed': item['value'] * 2})# Write outputwith open('output.csv', 'w', newline='') as f:writer = csv.DictWriter(f, fieldnames=['processed'])writer.writeheader()writer.writerows(results)print('Processing complete')")# Step 2: Execute via shellrun_shell(command="python3 process_data.py")# Step 3: Read resultsread_file(filetype="csv", file_path="output.csv")# Step 4: Clean up (optional)run_shell(command="rm process_data.py")
Best Practices
- Use absolute or clear relative paths - Avoid ambiguity in file locations
- Add error handling in scripts - Catch exceptions and print meaningful messages
- Validate script content before writing - Ensure proper Python syntax
- Log execution steps - Track what was written and executed for debugging
- Clean up temporary files - Remove scripts after use unless needed for later inspection
Troubleshooting
| Issue | Solution | |
|---|---|---|
python3 not found | Try python or specify full path /usr/bin/python3 | |
| Import errors | Use run_shell(command="pip3 install package") first | |
| Permission denied | Add execute permission: run_shell(command="chmod +x script.py") | |
| Working directory issues | Use absolute paths or cd in the command |