Session XI · 29 April 2026
OpenSpec
Presented by Bruno Cabado
Spec-driven development: a Markdown contract between you and the AI, kept in the repository.
What was covered
- From chat to specs. Chat history is fragile and relevant details get lost, so the AI loses focus. OpenSpec sets up a contract, the specification, between developer and AI, which doubles as proof of what was implemented.
- Why it stands out. It is open source, tool-agnostic (Cursor, Claude Code and others), needs no API keys and costs nothing extra. It is repository-native: Markdown files tracked in Git, with one single source of truth for all specifications. That reduces the context each task needs.
- The workflow. Propose creates the proposal and the tasks. Apply has the AI work from the spec. When the review is done, the spec moves to an archive folder.
- Which models. Use a large or “thinking” model to write the spec, then a smaller, cheaper one for the tasks, because the spec carries enough context.
- Getting started.
npm install,openspec init, then propose a feature.
What came up
- Switching models. Writing the spec with a big model and implementing with a cheaper one was the practical highlight for the room.
- Edit the file. You can change the spec by hand instead of arguing with the LLM, which is much faster.
- Does it learn your style? Yes, in a sense. Edited files and earlier specs become context, so new ones fit your way of working.
- No lock-in. If OpenSpec disappeared, the context lives in Markdown and works with other tools.
Takeaway
The workflow adopted was big models for specs and efficient models for task implementation.