← All posts

Rhyolite — notes on turning scripts into tools

An idea I researched for making old scripts easier to rerun.

I have a scripts graveyard. Bash snippets, Python utilities, random Rust binaries. Stuff that matters, but you only run it once in a while, then forget how it works.

Rhyolite is the shape of a fix I started researching. The rough idea is a local desktop app that wraps existing scripts in typed, documented, rerunnable tools, and lets you chain them together. No rewriting scripts, no framework, no cloud.

The core idea

The contract is intentionally tiny. Rhyolite passes params in as env vars. Your script writes output to a JSON result file. Exit code 0 means success. That's it.

In return, the app could give you a generated parameter form, run history with the exact inputs, and stdout/stderr logs that are easy to read later.

Chains

The part I care most about is chaining. Most "workflows" are really just 2-3 scripts run in order where output from one feeds the next. Usually that logic only exists in your head or in some old comment like # run extract.py first.

Rhyolite would make that wiring explicit. You would map output fields to downstream input params. If one task fails, the chain stops. Nothing clever for the sake of it; I mostly want fewer "what did I run last time?" moments.

What it isn't

It wouldn't be a scheduler. It wouldn't be a cloud orchestrator. It wouldn't replace your scripts. Your scripts would stay as real files on disk; Rhyolite would just give them a usable interface.

Status

On hold for now. I've done some research and sketched the shape of it, but I'm not actively building it yet. If I come back to it, the first version would probably be tasks, systems, basic chains, and a graph view so you can see what touches what.

The goal is boring in a good way: make the script you already trust feel like a small tool you can safely rerun.