| name | python-to-go-converter |
|---|---|
| description | Automatically converts Python code to optimized Go code for performance-critical applications. |
This skill automatically converts Python source code to idiomatic, compilable Go code. It handles type mappings, import translations, and produces clean Go output suitable for performance-critical applications.
- Convert Python source files to Go with preserved functionality
- Intelligent Python-to-Go type mapping (int, str, list, dict, classes, etc.)
- Translate common Python standard library imports to Go equivalents
- Generate properly formatted Go code with comments
- Provide detailed error diagnostics for unsupported Python features
- CLI interface for batch conversion and agent integration
- Support for functions, classes, control flow, and basic data structures
The skill is installed as part of an OpenClaw skill package. Ensure dependencies are met (Python 3.8+, go compiler in PATH).
python3 scripts/converter.py convert <input.py> [--output <output.go>] [--verbose] [--check]The skill exposes a single-turn execution model. Provide Python code as input, receive Go code as output.
# Convert a single file
python3 scripts/converter.py convert input.py --output output.go
# Convert with diagnostics
python3 scripts/converter.py convert myscript.py --verboseThe converter produces non-zero exit codes on failure and writes diagnostics to stderr. Common errors include:
- Unsupported Python syntax (decorators, metaclasses, async generators)
- Library dependencies without Go equivalents
- Type inference failures
See error_codes.json for the full error catalog.
scripts/converter.py— Main CLI and conversion orchestrationscripts/ast_parser.py— Python AST parsing and analysisscripts/go_generator.py— Go code emission and formattingscripts/type_mapper.py— Type system translation rulesscripts/import_handler.py— Import resolution and library mappingreferences/python_to_go_mappings.json— Feature mapping tablereferences/stdlib_equivalents.json— Standard library translationsreferences/error_codes.json— Error code definitionsassets/— Example Python and Go conversion pairstests/— Unit tests and validation suite
- Does not convert GUI frameworks (Tkinter, PyQt)
- No support for dynamic metaprogramming (eval, exec, setattr magic)
- Machine learning libraries (NumPy, TensorFlow) require manual rewrite
- Perfect 1:1 runtime behavior is not guaranteed; testing required
Typical conversion times: small scripts (<100 LOC) < 1s; medium (500 LOC) ~2-3s; large codebases scale linearly. Conversion is CPU-bound on Python parsing and AST traversal.
For issues, feature requests, or contributions, refer to the skill repository.