mcpField
P
python-executor

python-executor

github.com/bankai-skillsDevelopment052.1k installsUpdated 12w ago
Repository

About python-executor

python-executor is an inference.sh app for running Python code in a sandboxed, CPU-only environment with pre-installed libraries. It is suited to tasks such as data processing, scraping, and media or document generation, with files saved under outputs/ returned automatically.

Key features

  1. 01Sandboxed Python execution
  2. 02100+ pre-installed libraries
  3. 03Configurable timeout and memory variant
  4. 04Automatic return of output files

Use cases

  1. 01Scrape websites and call APIs
  2. 02Analyze and visualize datasets
  3. 03Process image, video, or 3D files
  4. 04Generate PDFs and other documents

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/bankai-skills/superpowers --skill python-executor

After installing, type/python-executorin Claude Code to confirm it loaded.

Details

From the project README

Install the belt CLI skill: npx skills add belt-sh/cli

Python Code Executor

Execute Python code in a safe, sandboxed environment with 100+ pre-installed libraries.

Python Code Executor

Quick Start

Requires inference.sh CLI (belt). Install instructions

belt login

# Run Python code
belt app run infsh/python-executor --input '{
  "code": "import pandas as pd\nprint(pd.__version__)"
}'

App Details

PropertyValue
App IDinfsh/python-executor
EnvironmentPython 3.10, CPU-only
RAM8GB (default) / 16GB (high_memory)
Timeout1-300 seconds (default: 30)

Input Schema

{
  "code": "print('Hello World!')",
  "timeout": 30,
  "capture_output": true,
  "working_dir": null
}

Pre-installed Libraries

Web Scraping & HTTP
  • requests, httpx, aiohttp - HTTP clients
  • beautifulsoup4, lxml - HTML/XML parsing
  • selenium, playwright - Browser automation
  • scrapy - Web scraping framework
Data Processing
  • numpy, pandas, scipy - Numerical computing
  • matplotlib, seaborn, plotly - Visualization
Image Processing
  • pillow, opencv-python-headless - Image manipulation
  • scikit-image, imageio - Image algorithms
Video & Audio
  • moviepy - Video editing
  • av (PyAV), ffmpeg-python - Video processing
  • pydub - Audio manipulation
3D Processing
  • trimesh, open3d - 3D mesh processing
  • numpy-stl, meshio, pyvista - 3D file formats
Documents & Graphics
  • svgwrite, cairosvg - SVG creation
  • reportlab, pypdf2 - PDF generation

Examples

Web Scraping
belt app run infsh/python-executor --input '{
  "code": "import requests\nfrom bs4 import BeautifulSoup\n\nresponse = requests.get(\"https://example.com\")\nsoup = BeautifulSoup(response.content, \"html.parser\")\nprint(soup.find(\"title\").text)"
}'
Data Analysis with Visualization
belt app run infsh/python-executor --input '{
  "code": "import pandas as pd\nimport matplotlib.pyplot as plt\n\ndata = {\"name\": [\"Alice\", \"Bob\"], \"sales\": [100, 150]}\ndf = pd.DataFrame(data)\n\nplt.bar(df[\"name\"], df[\"sales\"])\nplt.savefig(\"outputs/chart.png\")\nprint(\"Chart saved!\")"
}'
Image Processing
belt app run infsh/python-executor --input '{
  "code": "from PIL import Image\nimport numpy as np\n\n# Create gradient image\narr = np.linspace(0, 255, 256*256, dtype=np.uint8).reshape(256, 256)\nimg = Image.fromarray(arr, mode=\"L\")\nimg.save(\"outputs/gradient.png\")\nprint(\"Image created!\")"
}'
Video Creation
belt app run infsh/python-executor --input '{
  "code": "from moviepy.editor import ColorClip, TextClip, CompositeVideoClip\n\nclip = ColorClip(size=(640, 480), color=(0, 100, 200), duration=3)\ntxt = TextClip(\"Hello!\", fontsize=70, color=\"white\").set_position(\"center\").set_duration(3)\nvideo = CompositeVideoClip([clip, txt])\nvideo.write_videofile(\"outputs/hello.mp4\", fps=24)\nprint(\"Video created!\")",
  "timeout": 120
}'
3D Model Processing
belt app run infsh/python-executor --input '{
  "code": "import trimesh\n\nsphere = trimesh.creation.icosphere(subdivisions=3, radius=1.0)\nsphere.export(\"outputs/sphere.stl\")\nprint(f\"Created sphere with {len(sphere.vertices)} vertices\")"
}'
API Calls
belt app run infsh/python-executor --input '{
  "code": "import requests\nimport json\n\nresponse = requests.get(\"https://api.github.com/users/octocat\")\ndata = response.json()\nprint(json.dumps(data, indent=2))"
}'

File Output

Files saved to outputs/ are automatically returned:

# These files will be in the response
plt.savefig('outputs/chart.png')
df.to_csv('outputs/data.csv')
video.write_videofile('outputs/video.mp4')
mesh.export('outputs/model.stl')

Variants

# Default (8GB RAM)
belt app run infsh/python-executor --input input.json

# High memory (16GB RAM) for large datasets
belt app run infsh/python-executor@high_memory --input input.json

Use Cases

  • Web scraping - Extract data from websites
  • Data analysis - Process and visualize datasets
  • Image manipulation - Resize, crop, composite images
  • Video creation - Generate videos with text overlays
  • 3D processing - Load, transform, export 3D models
  • API integration - Call external APIs
  • PDF generation - Create reports and documents
  • Automation - Run any Python script

Important Notes

  • CPU-only - No GPU/ML libraries (use dedicated AI apps for that)
  • Safe execution - Runs in isolated subprocess
  • Non-interactive - Use plt.savefig() not plt.show()
  • File detection - Output files are auto-detected and returned

Related Skills

# AI image generation (for ML-based images)
npx skills add inference-sh/skills@ai-image-generation

# AI video generation (for ML-based videos)
npx skills add inference-sh/skills@ai-video-generation

# LLM models (for text generation)
npx skills add inference-sh/skills@llm-models

Documentation

Comments

Markdown supported