|
2 | 2 |
|
3 | 3 | *formerly [quint-code](https://github.com/m0n0x41d/quint-code)* |
4 | 4 |
|
5 | | -**Engineering decisions that know when they're stale.** |
| 5 | +**True harness engineering for AI-assisted software delivery.** |
6 | 6 |
|
7 | | -Frame problems. Compare options fairly. Record decisions as contracts. Know when to revisit. |
| 7 | +Your agents write code fast. Nobody checks if the decisions behind that code are any good — or still valid a month later. Haft does. |
8 | 8 |
|
9 | 9 | --- |
10 | 10 |
|
11 | 11 | ## What is Haft? |
12 | 12 |
|
13 | | -Haft is a local-first engineering governor for software projects. It helps engineers frame problems before solving them, compare options honestly, record decisions as contracts with invariants, track evidence with decay, and know when to revisit. |
| 13 | +Haft is the engineering governor that sits between your intentions and your agents' execution. It enforces the discipline that separates "we shipped fast" from "we shipped right": frame the problem before solving it, compare options under parity, record decisions as falsifiable contracts, and know the moment assumptions go stale. |
14 | 14 |
|
15 | 15 | **Think → Run → Govern.** |
16 | 16 |
|
| 17 | +Not a coding agent. Not a documentation tool. Not a project manager. The handle between the tool and the hand — the part that turns raw capability into directed engineering work. |
| 18 | + |
17 | 19 | ### Two primary surfaces |
18 | 20 |
|
19 | 21 | - **Desktop app** — visual cockpit for reasoning state, agent orchestration, and governance dashboard |
@@ -74,6 +76,30 @@ The binary is the same — only the MCP config and command/prompt installation l |
74 | 76 |
|
75 | 77 | Existing project? Run `/h-onboard` after init — the agent scans your codebase for existing decisions worth capturing. |
76 | 78 |
|
| 79 | +## CI |
| 80 | + |
| 81 | +Use `haft check` anywhere you want a pass/fail signal for governance debt: |
| 82 | + |
| 83 | +```yaml |
| 84 | +# .github/workflows/haft-check.yml |
| 85 | +steps: |
| 86 | + - uses: actions/checkout@v4 |
| 87 | + |
| 88 | + - name: Install haft |
| 89 | + run: | |
| 90 | + curl -fsSL https://raw.githubusercontent.com/m0n0x41d/haft/main/install.sh | bash |
| 91 | + echo "$HOME/.local/bin" >> "$GITHUB_PATH" |
| 92 | +
|
| 93 | + - name: Check governance debt |
| 94 | + run: haft check |
| 95 | +``` |
| 96 | +
|
| 97 | +`haft check` scans stale artifacts, drifted decisions, unassessed decisions, and coverage gaps. |
| 98 | +Exit `0` means the project is clean. Governance findings exit `1`. Command or setup errors also |
| 99 | +fail the job with a non-zero exit code, which keeps CI badges red for both unhealthy and broken states. |
| 100 | + |
| 101 | +Need machine-readable output? Run `haft check --json`. |
| 102 | + |
77 | 103 | --- |
78 | 104 |
|
79 | 105 | ## How It Works |
@@ -147,6 +173,43 @@ Features: dashboard with governance findings, problem board, decision detail wit |
147 | 173 |
|
148 | 174 | --- |
149 | 175 |
|
| 176 | +## Roadmap |
| 177 | + |
| 178 | +### v6.1 — Harden the Contract (shipped) |
| 179 | + |
| 180 | +Decision quality enforcement before automating execution: |
| 181 | +- `haft check` for CI governance verification |
| 182 | +- `/h-verify` surfaces full governance state (problems, invariants, drift — not just decisions) |
| 183 | +- `.haft/workflow.md` — repo-level agent policy, injected into every prompt |
| 184 | +- Problem typing (optimization / diagnosis / search / synthesis) |
| 185 | +- G1/G2/G4 enforcement: one decision per problem, parity warnings, subjective dimension detection |
| 186 | +- CL0+supports rejection, claim-scoped R_eff and evidence supersession |
| 187 | +- Deep `/h-onboard` with module-by-module analysis for legacy projects |
| 188 | + |
| 189 | +### v6.2 — Dashboard + Execution Primitives (next) |
| 190 | + |
| 191 | +The desktop becomes an operator surface, not just a viewer: |
| 192 | +- **Unified Dashboard** — active decisions, governance findings, automations in one view |
| 193 | +- **Implement** — click a decision, agent spawns in worktree with full reasoning context |
| 194 | +- **Adopt** — governance finding (stale/drifted) → agent thread for interactive resolution |
| 195 | +- **Automation triggers** — CI fail, dependency update, scheduled → auto-create ProblemCards |
| 196 | +- **DDR→Task Pipeline** — Implement generates subtasks from decision, runs sequentially with auto-advance |
| 197 | +- **Deep onboard** — `/h-onboard --deep` generates task plan from coverage gaps |
| 198 | + |
| 199 | +### v7 — Desktop Loop MVP |
| 200 | + |
| 201 | +One proved cycle: **Decision → Implement → Verify → Baseline → PR draft**. If verification fails → reopen as ProblemCard, not straight to PR. Local-first PR output. |
| 202 | + |
| 203 | +### v8 — Governor Signals |
| 204 | + |
| 205 | +Background detection loops (stale, drift, dependencies) with dashboard alerts. Autonomous actuation only after trust is earned through detect-only phase. |
| 206 | + |
| 207 | +### Not on the roadmap |
| 208 | + |
| 209 | +Cloud/SaaS. Mobile app. Slack bot. Browser extension. General personal assistant. Competing with Claude Code on code editing. The product is the engineering governor, not another surface. |
| 210 | + |
| 211 | +--- |
| 212 | + |
150 | 213 | ## Requirements |
151 | 214 |
|
152 | 215 | - Go 1.25+ (for building from source) |
|
0 commit comments