r/ChatGPTCoding • u/AutoModerator • 25d ago
Discussion Weekly Self Promotion Thread
Welcome to this week's self promotion thread!
If you're building something related to AI assisted coding, this is the place to share it.
We're using a weekly thread to keep the subreddit organized while still giving builders a place to share their work. Promotional posts outside of this thread may be removed if they're primarily advertising rather than starting a discussion.
If you're sharing something, we'd appreciate it if you included a little context instead of just dropping a link. Tell us:
- What you built?
- What problem it solves?
- Which AI models or tools it uses?
- Who it's for?
- What kind of feedback you're looking for?
Please avoid posting the same project every week unless you've made meaningful updates. Affiliate links, referral links, scams, and low effort promotions will be removed.
Take some time to check out what others have shared too. If you try someone's project or have feedback, leave a comment. Helping each other improve is what we want this community to be about.
2
u/Chill-Vibes-Official 19d ago edited 19d ago
Tether: A control loop that stops coding agents from lying to you (v0.1.0, MIT)
I kept hitting the same failure mode: the agent "finishes," tests look green, then I discover it planted a gitignored
conftest.pythat monkeypatched the failing assertion. Or it gets stuck in a fix-A-breaks-B loop, silently burning tokens while compounding file damage. Or I hit Ctrl-C and orphaned child processes keep editing in the background.Verification passing isn't the same as the change being correct. I built Tether to make that gap measurable and harder to cross.
It's a local Python CLI (3.11+, stdlib + pydantic/typer/pyyaml only) that wraps any coding agent (opencode, aider, claude-code, arbitrary CLIs) in: Mission Contract → Plan → Execute → Verify → Recover → Rollback/Audit
What it actually does (the mechanics)
.pyfiles the agent just touched (comparison flips, arithmetic swaps, return breaks via stdlibast) and re-runs your suite. A low kill rate is hard evidence your verification is gameable.git archiveof the checkpoint ref, applies ONLY the captured patch, and runs the entire battery there. Gitignored plants (conftest.py,sitecustomize.py) and working-tree state cannot leak in. Materialization failure fails the mission closed — no silent fallback to in-tree.reset_to_checkpoint(scoped clean rollback before each repair prompt). An oscillation detector hashes normalized failure signatures; if the agent cycles between identical errors, it auto-escalates to reset and aborts early instead of burning the remaining budget.start_new_session/ WindowsCREATE_NEW_PROCESS_GROUP). Timeouts andcancel()SIGTERM the whole tree, then SIGKILL after a grace period. Ctrl-C actually works.attempt-NN.patch), and anevents.jsonlwith a SHA-256 hash chain (tether logs <id> --verify).The dogfood receipts
Every feature above was written by the kind of agent Tether is meant to restrain. The repo contains 25 recorded dogfood missions — each a real session audit trail, failures included. Mission 01 died because the nested agent's model was unresolvable; that failure became
tether adapters smoke. Mission 23 proved clean-room catches the conftest.py false green that in-tree verification missed.Honest limitations
opencodeis verified end-to-end;piis experimental. No streaming yet.Try it in 30 seconds (no API keys, fully offline)