
The Solana harness,
batteries included
A terminal app for building on Solana with the model you already use. References, a local chain and toolchain checks are in the box.
npx @barestate/oms doctor --install
npx @barestate/oms
How it works
Models were trained on older Solana, and the details they get wrong are usually the ones that changed since. Oh My Sol keeps the current references, program error decoding and toolchain checks next to the model while it works, and gives it a local Surfpool chain to run your program against.
Each task runs in its own Git worktree. When the model thinks it is finished, OMS runs your requirements on a fresh chain before the task closes, and if they fail, the model tries again within the budget you set.
Your keys stay out of reach
On macOS, every command OMS runs goes through a Seatbelt sandbox. It blocks reads from your home folder, apart from the toolchains OMS needs, and it always blocks keypair files and folders like ~/.ssh and ~/.config/solana, so a command the model writes can’t read your keys even if it tries.
Benchmarks
Solana Bench scores an agent by how many distinct Solana instructions it gets to execute successfully on a mainnet fork. On the same model, GPT-6.1 Sol, Oh My Sol scored higher than Codex CLI in both the basic and the swap environment.
Solana Bench scores
- OMS, GPT-6.1 Sol
- Codex CLI, GPT-6.1 Sol
- Claude Code, Opus 5.5
Basic environment38% higher
Swap environment30% higher
It also got there on less. In the basic environment OMS used 18.2K total input tokens for every point it scored, against 33.7K for Codex CLI, which is 46% fewer.
Models are trained on older Solana, so we also built eight tasks around changes newer than the models themselves. On those, Oh My Sol passed more runs than each model’s own harness on every model we tried.
Pass rate on fresh Solana tasks
- OMS
- The model’s own harness
GPT-6.1 Sol
GPT-6 Astra
Claude Opus 5.5
Claude Sonnet 5.5
The gap holds up run by run. If you line up each task and run and keep only the pairs where one harness passed and the other failed, it is almost always OMS that passed.
Matched runs that only one harness passed
- Only OMS passed
- Only the other harness passed
GPT-6.1 Solvs Codex CLI
Only OMS passed 21, only Codex CLI passed 2:21–2
GPT-6 Astravs Codex CLI
Only OMS passed 5, only Codex CLI passed 0:5–0
Claude Opus 5.5vs Claude Code
Only OMS passed 3, only Claude Code passed 0:3–0
Claude Sonnet 5.5vs Claude Code
Only OMS passed 6, only Claude Code passed 0:6–0
It also reads less to get there: 42 to 62% fewer input tokens for every task it solves than each model’s own harness.
Input tokens per solved task
- OMS
- The model’s own harness
GPT-6.1 Sol42% fewer
GPT-6 Astra51% fewer
Claude Opus 5.562% fewer
Claude Sonnet 5.559% fewer
Run it on your machine
Oh My Sol 0.1.0 runs on macOS and Linux, and on Windows through WSL 2. You need Node 22.19.0 or newer and Git, and the first command is a one-time setup that downloads Surfpool and checks your toolchain.
npx @barestate/oms doctor --install
npx @barestate/oms