Show HN: Pu.sh – a full coding-agent harness in 400 lines of shell

I originally was just messing with pi-autoresearch. Gave it a sample task to build the most portable coding agent.

First cut was 6 KB of shell. Great for one-shots, unusable interactively. I was shocked it actually worked.

Started building up -- adding features — but with a self-imposed rule: no new dependencies, and sub 500 LOC. This thing had to be truly portable. Just sh, curl, awk. System primitives only.

Which means I did some genuinely disgusting things in awk, including JSON parsing and the OpenAI Responses tool loop with reasoning items carried across turns.

It's now ~400 lines. In the box: Anthropic + OpenAI, 7 tools (bash, read, write, edit, grep, find, ls), REPL, auto-compaction, checkpoint/resume, pipe mode, 90 no-API tests. Not in the box: TUI, streaming, images, OAuth, Windows, dignity.

Two honest things:

1. I stole/modified the system prompt and the architecture. Pi/Claude/Codex wrote the awk. I cannot read most of this code. This wasn't possible for me a year ago.

2. Heavily inspired by Pi (pi.dev) — same 7-tool surface, same exact-text edit model. Credit where it's due. Pi is awesome -- you should probably use them.

The agent loop itself is tiny. Almost everything else in a "real" agent CLI is DX and hardening. You can probably build your own harness exactly how you like it. Mario Zechner's AI Engineer talk on taking back control of your tools nudged me here.

The name is because it's a .sh file. The other thing it sounds like is, regrettably, also accurate.

Comments URL: https://news.ycombinator.com/item?id=47968112

Points: 20

# Comments: 5