Roadmap
Haft is actively developed. Here's what's shipped and what's coming — not promises, but directions we're building toward.
Recently shipped (6.0)
- Haft rename — quint-code is now haft.
.quint/becomes.haft/,/q-*becomes/h-* - 5-mode model — Understand, Explore, Choose, Execute, Verify (+ Note fast path)
- Claim-aware decisions — structured predictions with
verify_afterdates, observable, threshold./h-verify scansurfaces unverified claims - Team sync —
haft syncimports.haft/*.mdfrom git into local database. Decisions flow through PRs - Desktop app — pre-alpha native app for browsing decisions, problems, and coverage outside the terminal
- Standalone agent runtime —
haft agent [goal]runs reasoning with TUI, independent of external AI tools - Knowledge graph —
FindDecisionsForFile,FindInvariantsForFile,ComputeImpactSetqueries across the file-module-decision graph - Invariant injection — when implementing a decision, agents receive invariants from all decisions governing affected files
- Invariant verification — structural invariants ("no dependency from X to Y", "no circular dependencies") verified against the live dependency graph
- Constraint-aware Pareto — variants violating constraint-role indicators are eliminated before dominance comparison
- Deterministic projections —
/h-viewrenders artifacts for engineer, manager, audit, compare, delegated-agent, and change-rationale audiences - Expanded integrations —
haft initsupports--claude,--cursor,--gemini,--codex,--air,--all
Server mode (next priority)
haft server — a new subcommand in the same binary. A thin
HTTP server that manages the decision database. For solo advanced use, it runs on localhost and
enables features that require a long-running process. For teams, it runs on a shared server.
Solo: Agent → MCP → haft serve → local SQLite
Team: Agent → MCP → haft serve → haft server (remote) → PostgreSQL
When server mode exists, haft board switches to the remote database automatically.
CI should still use haft sync && haft check as the governance gate. Server mode
can later enrich shared state and search, but it does not replace the check command.
This enables real-time collaboration and a shared search index across the team.
Formal specification (research)
Decision records from the full cycle contain invariants, post-conditions, and acceptance criteria — enough structure for any agent to generate property-based tests today. This works without any haft changes.
The research direction: can we go further? Translating decision invariants into Quint specifications (TLA+ with TypeScript syntax) for model checking — verifying that invariants hold across all reachable states, not just random inputs. This is in research phase.
Cognitive review loops
Instead of dumb valid_until timers, use
FSRS
(Free Spaced Repetition Scheduler) to schedule decision reviews based on evidence confidence
and historical review quality. Requires the server mode (long-running process).
Autonomy budgets
From FPF E.16: treat agent autonomy as a managed resource (like money or risk), not as "magic of a smart model." Typed budgets with guards, separation of duties, override protocols. This is the team governance layer.
What's not on the roadmap
- AI model lock-in — haft works with any MCP-compatible AI tool. We don't pick your model.
- Prescriptive methodology — haft provides structure, not opinions. Use as much or as little of the FPF cycle as fits your workflow.
Want to contribute?
Check the issues
on GitHub. The contributing guide
explains the workflow: issue first, then PR to dev.