Mine happened while working on Yoetz, migrating from the older closed-source agent version to the current one.
I gave the agent (Codex) access to the old repo and had it do the build. It kept telling me "I migrated everything and made the changes." Then I'd open the PR and end up writing a laundry list of everything that still needed fixing.
That's actually what pushed us to refocus Yoetz from general research to coding specifically. Research for university is where it had the most real impact for me, but this migration was the moment I most wanted to curse at AI.
A little behind-the-scenes story for the Astra Challenge, featuring my cofounder Daniel discovering what he’d agreed to review. 😂
Before we started Yoetz 0.3, we talked through what we wanted to build and knew it would be a huge step for the project. We split the work: I’d build with an agent, and Daniel, who has a lot of experience reviewing code, would handle the review.
It started with the free day and turned into three days of building with Astra in Ultra Mode. We used two banked usage resets on the $200 plan to keep going.
But Daniel didn’t realize that was what had been happening. He thought I’d forgotten about the task for most of those three days, then quickly put something together an hour before telling him, “The PR is ready, go have a look.”
So when I said, “By the way, it’s big,” he asked how big.
“About 70,000 lines of code. I actually have been working on this for three days. Astra’s been running and building it.”
His face was basically: “Are you serious?” 😂
Apparently, we had very different ideas of how much code he’d volunteered to review.
But the exciting part of 0.3 isn’t the line count. It’s taking Yoetz beyond an individual agent’s work, with better sub-agent support and cross-agent support.
An agent delegates a task. A sub-agent says it’s done. Another agent picks up where it left off. Eventually, you get a confident “everything is finished.” But did the requirements survive those handoffs? What was actually checked? What’s still unresolved?
That’s where we’re taking Yoetz: verification that follows the work across agents, rather than stopping at one agent’s claims. “My sub-agent handled it” shouldn’t be a substitute for evidence. More agents should mean more useful work, not more places for unfinished work to hide.
Being able to tackle that as a two-person team has been pretty surreal. Astra helped make it possible, and Daniel’s review is still very much part of the process. Building a tool for verifying agents’ work doesn’t mean we get to skip checking ours.
0.3 isn’t released yet. We’re aiming for next week, and it’s such a significant update that we’ll probably give it its own Product Hunt launch.
Really excited to get this one into people’s hands. Hopefully Daniel will still agree to review 0.4. 😅
Hello Product Hunt! 👋 I am Daniel and with my cofounder Shay we are building Yoetz.
I was using coding agents to tackle challenges such as problem sets, proofs and edge cases. In these tasks missing a condition can quietly destroy the whole solution. The agents could handle much of the algebra and the scaffolding. I still kept finding small errors: a case that was left unhandled a constraint that never appeared in the final write‑up or a declaration of "done" that still did not match the problem I had posed.
I wanted to focus on the mathematics itself not spend time checking whether the agent had really followed every step.
Shay was facing the issue while compiling a large Nasdaq‑related database for his university research. Both of us saw how powerful these tools can be. We wanted to help them follow through without having to keep nudging the agents ourselves.
That is why we built Yoetz. Building Yoetz felt a lot like sitting beside a proof that the agent had already declared complete.
We used coding agents such as Codex, Claude Code and Cursor to write the product. These are the tools that we were trying to keep honest. On paper that sounds neat but in practice it meant sitting to a collaborator that can move a thousand files and spending the day teaching it not to congratulate itself.
We did not start with a demo. We began by writing down what the product was never allowed to say. We created hundreds of specification files then built in waves. Once the code existed we retired the specifications so we would not have two sources of truth. A coding agent will happily finish a sentence you did not mean to start. In a proof that is the step that looks right and is not. Someone has to remain the author of the shape.
The good days were when a check returned a finding. The agent says "tests pass,". The recorded run happened before its latest change.. It says the solution covers every case and the record shows the boundary you asked for was never checked. Yoetz flags that stale or missing evidence so the agent has to go. That is the feeling we were chasing: not "the agent is wrong " but "this claim is not yet supported."
Yoetz is not another coding agent. It works alongside your agent using tools and supported hooks to record evidence of work and to check what supports the agent’s claims. It combines checks with optional model‑powered review then returns findings that the agent can address.
Yoetz does not guarantee a proof or correct code. It shows what was checked what was not checked and what still needs attention. Everything stays on your machine unless you say otherwise.
We even had to write that rule down for ourselves. Sometimes we ran Yoetz on the work of building Yoetz got a ledger and an honest receipt and the agent still had not changed the work. An honest receipt is not the same as "Yoetz helped." If you are going to build a product about not overclaiming you cannot overclaim about building it.
Yoetz is source and local‑first with integrations, for Codex, Claude Code and Cursor. It is still early.
We would love for you to try Yoetz on a task. A proof, a problem set or a programming assignment. And tell us what it catches, what it misses or where it gets in your way.
What do you still find yourself checking after your coding agent says the solution is finished?
@danielmkuptzov Daniel, now you've joined me here, truly spilling all our development secrets! (not really all open source) . But good showing of how we go behind the scenes
I tried the product - looks cool. Does the job.
@michael_messel Thank you! and if any feedback please let me know ! We are early but eager to get things to work!
AskDeck
"Your agent says done" is the sentence I hear in my head every time I ship agent output to a customer. The receipt idea — what was verified, at what coverage, what's still open — is the right shape; most eval tooling gives you a score, not an open-items list. Question: how do you handle work that isn't code? Our agent at AskDeck produces a deck and a narrated video, and "done" there means things like every slide has speaker notes, the numbers match the source doc, the video matches the final revision. Could Yoetz take a custom checklist like that, or is it built around repo-level evidence?
@thicreator Great question. Yoetz isn't fundamentally limited to repos or programming. In fact, earlier versions before our pivot were focused on more general research.
The core idea is broader: define what needs to be true, collect evidence for those requirements, and surface what was verified versus what's still open.
Today, our integrations and built-in checks are mostly coding-focused, so for something like AskDeck, checks such as "every slide has speaker notes," "numbers match the source," or "the video matches the final revision" would need custom checks or adapters.
Since Yoetz is open source, those can absolutely be added. And if you'd like to try integrating Yoetz with AskDeck, we'd be very happy to help you with the integration directly, or merge a PR if the checks generalize well.
Your AskDeck example is actually a really interesting example of where we want this verification model to go beyond code.
AskDeck
@shay_ben_shabtay appreciate that. "define what needs to be true, collect evidence, surface what's open" is exactly the shape I'd want, and the speaker notes check is the obvious first adapter since it's just structural. Let me read the repo before I promise anything, but I'd like to try it. Good luck with the launch.
@thicreator If you have any questions, do not hesitate to ask and to give any and all feedback