The real problem isn't AI execution. It's human unknown unknowns.
Users can't specify what they don't know they don't know. So AI agents receive incomplete requirements and execute them faithfully – producing exactly what was asked, not what was needed.
Ouroboros solves this with Socratic questioning + ontology modeling before any code runs.
The Big Bang phase:
1. Socratic interview – surfaces your unknown unknowns
2. Extracts explicit ontology:
- Entities (what exists?)
- Relations (how connected?)
- Constraints (what rules?)
- Invariants (what never changes?)
3. Double Diamond: Diverge (explore) → Converge (crystallize)
4. Outputs immutable "seed" – the agent's north star
Example:
- User: "Build me a movie tracker"
- Agent: "Track watched movies, wishlist, or both? Web or mobile? TMDB API or manual? Core value – stats, social, or logging?"
→ User realizes they hadn't thought about half of this
→ Ontology generated, seed locked, autonomous execution begins
Result: No more "that's not what I meant" loops.
pip install ouroboros-ai github.com/Q00/ouroboros
Is "clarity-first" worth the upfront friction? Curious what HN thinks.