Claude-skill-registry code-runner
Run code snippets in 30+ programming languages including JavaScript, Python, TypeScript, Java, C, C++, Go, Rust, Ruby, PHP, and more. Use when the user wants to execute code, test algorithms, verify output, run scripts, or check code behavior. Supports both interpreted and compiled languages.
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/code-runner" ~/.claude/skills/majiayu000-claude-skill-registry-code-runner && rm -rf "$T"
skills/data/code-runner/SKILL.mdCode Runner Skill
This skill enables you to run code snippets in multiple programming languages directly from the command line.
When to Use This Skill
Use this skill when:
- The user wants to run or execute a code snippet
- Testing algorithm implementations or logic
- Verifying expected output of code
- Running quick scripts or one-liners
- Checking syntax or runtime behavior
- Demonstrating code functionality
Supported Languages
The following languages are supported (requires the interpreter/compiler to be installed):
| Language | Command | File Extension |
|---|---|---|
| JavaScript | | |
| TypeScript | | |
| Python | | |
| Java | (compile & run) | |
| C | (compile & run) | |
| C++ | (compile & run) | |
| Go | | |
| Rust | (compile & run) | |
| Ruby | | |
| PHP | | |
| Perl | | |
| Lua | | |
| R | | |
| Swift | | |
| Kotlin | | |
| Scala | | |
| Groovy | | |
| Dart | | |
| Julia | | |
| Haskell | | |
| Clojure | | |
| F# | | |
| C# | | |
| PowerShell | | |
| Bash | | |
| Batch | | |
| CoffeeScript | | |
| Crystal | | |
| Elixir | | |
| Nim | | |
| OCaml | | |
| Racket | | |
| Scheme | | |
| Lisp | | |
See references/LANGUAGES.md for detailed language configuration.
How to Run Code
Step 1: Identify the Language
Determine the programming language from:
- User's explicit request (e.g., "run this Python code")
- File extension if provided
- Code syntax patterns
Step 2: Execute Using the Runner Script
⚠️ Important for AI Agents: Use stdin to avoid escaping issues with quotes, backslashes, and special characters.
Recommended Method (stdin):
echo "<code>" | node scripts/run-code.cjs <languageId>
Alternative Method (CLI argument - for simple code only):
node scripts/run-code.cjs <languageId> "<code>"
Example - JavaScript:
echo "console.log('Hello, World!')" | node scripts/run-code.cjs javascript
Example - Python:
echo "print('Hello, World!')" | node scripts/run-code.cjs python
Example - Java (multi-line):
echo "public class Test { public static void main(String[] args) { System.out.println(\"Hello from Java!\"); } }" | node scripts/run-code.cjs java
Example - Multi-line code from variable:
# In bash CODE='import math print("Pi:", math.pi) print("Result:", math.factorial(5))' echo "$CODE" | node scripts/run-code.cjs python # In PowerShell (inline here-string) @" import math print("Pi:", math.pi) print("Result:", math.factorial(5)) "@ | node scripts/run-code.cjs python
Step 3: Return Results
- Show the output (stdout) to the user
- If there are errors (stderr), explain what went wrong
- Suggest fixes for common errors
Platform Notes
Windows
- Use
for batch scriptscmd /c - PowerShell scripts require
orpwshpowershell - Path separators use backslash
\
macOS / Linux
- Bash scripts work natively
- Swift available on macOS
- Use
shebang for portable scripts#!/usr/bin/env
Error Handling
Common issues and solutions:
-
Command not found: The language interpreter is not installed or not in PATH
- Suggest installing the required runtime
- Provide installation instructions
-
Syntax errors: Code has syntax issues
- Show the error message
- Point to the line number if available
-
Runtime errors: Code runs but fails during execution
- Display the stack trace
- Explain the error type
-
Timeout: Code takes too long (default: 30 seconds)
- Warn about infinite loops
- Suggest optimizations
Security Considerations
⚠️ Important: Running arbitrary code can be dangerous. Always:
- Review the code before execution
- Be cautious with code that:
- Accesses the file system
- Makes network requests
- Executes system commands
- Modifies environment variables
- Consider running in a sandboxed environment for untrusted code
Examples
Example 1: Run a JavaScript calculation
echo "console.log(Array.from({length: 10}, (_, i) => i * i))" | node scripts/run-code.cjs javascript
Output:
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
Example 2: Run Python with imports
echo "import math; print(math.factorial(10))" | node scripts/run-code.cjs python
Output:
3628800
Example 3: Test a Go function
echo 'package main; import "fmt"; func main() { fmt.Println("Hello from Go!") }' | node scripts/run-code.cjs go
Output:
Hello from Go!