Code Runner

👤 formulahendry 📦 v0.1.0 ⭐ 4.1 ⬇️ 3.4K 下載
💻 開發程式設計 免費

📖 技能介紹

Code 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 node .js
TypeScript ts-node .ts
Python python .py
Java java (compile & run) .java
C gcc (compile & run) .c
C++ g++ (compile & run) .cpp
Go go run .go
Rust rustc (compile & run) .rs
Ruby ruby .rb
PHP php .php
Perl perl .pl
Lua lua .lua
R Rscript .r
Swift swift .swift
Kotlin kotlin .kts
Scala scala .scala
Groovy groovy .groovy
Dart dart .dart
Julia julia .jl
Haskell runhaskell .hs
Clojure clojure .clj
F# dotnet fsi .fsx
C# dotnet script .csx
PowerShell pwsh .ps1
Bash bash .sh
Batch cmd /c .bat
CoffeeScript coffee .coffee
Crystal crystal .cr
Elixir elixir .exs
Nim nim compile --run .nim
OCaml ocaml .ml
Racket racket .rkt
Scheme scheme .scm
Lisp sbcl --script .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 cmd /c for batch scripts
  • PowerShell scripts require pwsh or powershell
  • Path separators use backslash \

macOS / Linux

  • Bash scripts work natively
  • Swift available on macOS
  • Use #!/usr/bin/env shebang for portable scripts

Error Handling

Common issues and solutions:

  1. Command not found: The language interpreter is not installed or not in PATH

    • Suggest installing the required runtime
    • Provide installation instructions
  2. Syntax errors: Code has syntax issues

    • Show the error message
    • Point to the line number if available
  3. Runtime errors: Code runs but fails during execution

    • Display the stack trace
    • Explain the error type
  4. Timeout: Code takes too long (default: 30 seconds)

    • Warn about infinite loops
    • Suggest optimizations

Security Considerations

⚠️ Important: Running arbitrary code can be dangerous. Always:

  1. Review the code before execution
  2. Be cautious with code that:
    • Accesses the file system
    • Makes network requests

      小蔥技能有更好的技能skills外掛。

    • Executes system commands
    • Modifies environment variables
  3. 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!

🤖 AI 評測

整體質量一般。文件框架和功能介紹較為完善,提供了詳細的安全提示和效率對比資料。但存在嚴重缺陷:缺少實際可用的程式碼實現,文件中出現了明顯的格式錯誤(如亂碼和孤立內容塊),很多功能描述不完整。實際使用時可能無法正常執行,文件的可信度和可用性受到較大影響,建議謹慎使用或等待完善版本。

📊 多維度評分

適應性4.1
規範性4.3
有效性3.9
可靠性3.6
可信度4.8

📁 包含檔案 (4 個)

📄 SKILL.md 5.5 KB
📄 _meta.json 130 B
📄 references/LANGUAGES.md 7.2 KB
📄 scripts/run-code.cjs 11.6 KB