Built for people who want project management that lives in their repository — not a SaaS dashboard.
All metadata is stored in an orphaned git commit alongside your code. No network required — jjj works the same on a plane as in the office.
jjj tracks solutions by Jujutsu change IDs, not commit hashes. Rebase, squash, amend — your metadata links never break.
Critiques block acceptance. Every concern must be explicitly addressed, validated, or dismissed — no silently ignoring feedback.
Push jjj metadata the same way you push code: `jj git push`. Sync with teammates without any extra infrastructure.
jjj implements Popperian epistemology: knowledge grows through bold conjectures and rigorous criticism.
Phase 1
Identify & articulate
Phase 2
Propose conjecture
Phase 3
Eliminate errors
↑ Refine or refute ↑
Multiple people propose competing solutions for the same problem. Critiques happen asynchronously — only the most robust conjecture is approved.
A withdrawn solution isn't wasted work — it's documented knowledge. The critique that caused it is preserved, preventing the same mistake twice.
“"The method of science is the method of bold conjectures and ingenious and severe attempts to refute them."— Karl Popper, Objective Knowledge
Requires Rust and Jujutsu. Installs in seconds:
cargo install --git https://github.com/doug/jjjjjj vs hosted project management tools
| Feature | jjj | GitHub Issues | Linear | Jira |
|---|---|---|---|---|
| Works offline | ✓ | ✗ | ✗ | ✗ |
| No server or account needed | ✓ | ✗ | ✗ | ✗ |
| Data versioned with your code | ✓ | ✗ | ✗ | ✗ |
| Survives rebases & history rewrites | ✓ | ✗ | ✗ | ✗ |
| Blocking critiques (enforced review) | ✓ | ✗ | ✗ | ✗ |
| Explicit refutation workflow | ✓ | ✗ | ✗ | ✗ |
| Team collaboration | ✓ | ✓ | ✓ | ✓ |
| Hosted / SaaS option | ✗ | ✓ | ✓ | ✓ |
| Mobile app | ✗ | ✓ | ✓ | ✓ |
| Non-Jujutsu repo support | ✗ | ✓ | ✓ | ✓ |