babo
Run plain-language `.babo` scripts compiled by Claude Code
TLDR
SYNOPSIS
babo [run] file.babo [args...]babo check|build|info|clean file.babo
DESCRIPTION
babo is a Python CLI that turns `.babo` files — short natural-language program descriptions — into runnable Python programs. On first run it sends the description to Claude Code (`claude -p`), which generates an entry point, optional `requirements.txt`, and an isolated virtual environment under `.baboc/<name>.baboc/` next to the source file (similar in spirit to Python's `_pycache_`).Subsequent runs skip the build when the `.babo` file is older than its cache directory. Arguments after the script path are forwarded to the generated program. A shebang `#!/usr/bin/env babo` lets `.babo` files execute directly once babo is on PATH.Babo scripts can call other `.babo` modules via a generated `runtime.call_babo()` helper, each module keeping its own venv so dependencies do not collide.
PARAMETERS
run
Explicit run (default when the first argument is a `.babo` file).build
Force regeneration from the `.babo` source, ignoring a fresh cache.check
Print whether the cache is FRESH or STALE.info
Show build metadata (paths, timestamps, package list).clean
Delete every `.baboc/` cache directory under the current tree.
CONFIGURATION
No global config file. Each `.babo` file owns a `.baboc/<stem>.baboc/` cache with `venv/`, `requirements.txt`, `metadata.json`, and the generated `babo` executable entry point.
CAVEATS
Requires Python 3.10+, the claude CLI installed and authenticated, and network access during builds. Builds are not offline. The tool is experimental and depends on Claude Code API availability.
