Union Street /Duck

Duck

A pre-commit guard so your repo can push back on what agents write.

Once an agent can write code, your version control history is not entirely human anymore. The common failure mode is the small one: a placeholder slipping through, a mocked response committed as real, a half-finished migration left dangling — caught later, in production, by a person.

Duck checks the staged diff against plain-language rules in a duck.yaml and blocks commits on high-confidence failures. It picks up whichever provider you already have authenticated — Claude, Codex, or anything OpenAI-compatible — so it works on a laptop and in CI without rewiring secrets.

It exists so the agents in a Union Street stack — or any other repo where automation does some of the typing — have something to answer to before the diff becomes history.

Install / Use

bun add -d @unionstreet/duck
bunx @unionstreet/duck check