2025 · productivity · saas · sprint planning
SPF, Sprint Protection Factor
A sprint tool that treats the product manager's mind as the client, not a to-do list
- Status
- live
- Tier
- free
- Demo
- open
- Hard part
- hold two horizons
why
The first thing I do every Monday is open Jira and try to think about next sprint while the current one is still mid-flight. Jira shows me one board. Linear shows me one board. Every sprint tool I’ve used flattens both horizons into a single column, and the column always loses to whichever sprint is shouting louder — the active one, every time. The work that gets dropped is the work that hadn’t shouted yet.
SPF is built around the gap between this sprint and next sprint, which is where the dropped work lives. Jira’s burndown and Linear’s velocity dashboard are very good at telling someone else how the team is doing. This one is built for the product manager’s own week. Live at spf.hosette.net: the demo loads in a populated workspace with no signup.
what I built
- Horizons
- 2
- Modes
- 2
- Demo
- live
- Auth
- none
- Tier
- free
A two-sprint dashboard you can’t collapse into a single view, because the discipline is the layout. The whole tool loads with a live demo workspace that re-seeds nightly. Front door, not a feature.
- Dashboard
- Active sprint left, planning sprint right. The two horizons sit side by side because that's where the work that gets dropped tends to live.
- Focus Mode
- Single-task triage: one card, no list, no peripheral vision. Standalone version runs without auth, free for anyone.
- Quick Catch
- Slash-key shortcut from anywhere on the page, into the right sprint by default. Capture without context-switching.
- Ceremony Gen
- Planning agenda, retro doc, weekly status, all written from the sprint state. The recurring meetings stop being a recurring tax.
- Recurring Tasks
- Standing work that doesn't need re-creation each cycle. Set once, surfaces in the right sprint automatically.
- Weekly Summary
- AI stitches the closed-out work into a 1:1-ready paragraph for your manager.
the two-horizon problem
The two-sprint frame isn’t a UI choice — it’s the visible shape of a real problem: people weight near-term outcomes more heavily than distant ones, which is why current sprint gets foregrounded and next sprint gets quietly deferred even when you know better. A single-board sprint tool flatters that bias. SPF’s two-column layout fights it by giving both horizons the same physical real estate.
The agile literature has a name for this: sprint planning vs. backlog refinement, separate activities meant to do separate cognitive work. Most teams collapse them, and refinement is always the meeting that keeps getting cancelled — which is the next sprint’s loss. You can’t promote yourself to a separate role that forces the split, and you can’t make your team protect a meeting they keep skipping. You can put two sprints side by side and refuse to let the layout collapse them.
decisions I’d defend
Cut the kanban. Most sprint tools default to a status-column board with drag-and-drop. SPF defaults to a list with one focused task and the next sprint visible at a glance. Product managers don’t drag; they decide what’s next, then defend the decision. The board flatters status updates. The list flatters decisions.
Memory before features. Before adding a third or fourth surface, I built a mem:// decision log. Every rejected idea, every guardrail, every “we already discussed this” lives in one file the AI tooling consults on every change — same pattern in Omunikorudo’s style memory and Celine AI’s statute layer. Rejected features stay rejected.
Demo over signup wall. Most SaaS tools ask for an email before showing you anything that proves they work. SPF flips it: the front door is a live, populated workspace that reseeds nightly. Same shape as Omunikorudo loading without a “Start Audio” button and Inventor Strudel saving by URL with no login. Conversion happens after the user feels the product working.
the receipts
The actual mem://decision-log file isn’t published; the portable shape lives at /decisions-starter.md. Three real cuts the template ships with:
YYYY-MM-DD Pomodoro mode as a separate feature. Cut; the single-task focus shape did the work without a timer.
YYYY-MM-DD Per-task estimator. Cut. Estimates are a category error for this product.
YYYY-MM-DD Third sprint column. Cut. Two columns is the discipline; a third would let me defer indefinitely.
The pomodoro line is what eventually became Focus Mode: the cut wasn’t of the idea but of the feature shape. The third-sprint cut is the rule the two-horizon argument is built on. The estimator cut taught me category error is a useful thing to write down about a product.
what I learned
AI collapses spec into prototype, so the bottleneck moves to taste. With Lovable, the gap between “I want a Quick Catch shortcut” and “it works” is minutes. The slow part isn’t building — it’s deciding which of the next ten features should not be built. Most of my time on SPF goes to cuts.
Institutional memory is a tooling problem, not a discipline problem. Senior PMs don’t simply remember more decisions. They write them down somewhere that gets re-read every time, instead of trusting recall.
Solo shipping forces ruthless scope cuts. No team, no committee, no compromise version. If a feature can’t justify itself to a tired PM at 11pm, it doesn’t ship. The third sprint column and the per-task estimator both died there. The pomodoro idea survived — as Focus Mode.
Optimizing for the practitioner inverts almost every default. Sprint tools are written to surface progress upward. Build for the PM’s own week and you get fewer columns, no aggregate metrics, and a focus mode that hides the rest of the team. Feels wrong against Linear. Feels right to the person actually running the sprint.
try it yourself
The portable shape is at /decisions-starter.md: same pattern as the receipts above. Drop it at the root of your repo, rename to decisions.md (or paste into your CLAUDE.md), and add the agent prompt at the bottom to your tool’s system instructions. Sections cover rejected ideas, design rules, naming conventions, scope guardrails. Reversals are noted in place rather than deleted, so the file ages legibly. The file does nothing without the agent prompt that says read this on every change, treat entries as binding — ship them together. The reason it eats style guides is that it’s consulted at the moment of decision, not pulled out at sprint planning.
what’s next
Three integration arcs:
- Google Calendar so ceremonies actually land on the schedule
- An agent inbox for coding tools
- Persona-aware Jira/Linear/Shortcut connectors moving from “recommend” to “import”
A paid tier is on the table once the integration story is real. The demo stays free either way. Then there’s generalizing the two-sprint frame beyond product managers: designers and founders both run on the same horizon problem. Live at spf.hosette.net: no signup, no email gate.
See also
All projects- Golden Cell Same cut, different vault: rules in a file the system has to read on every change. SPF's third sprint column got cut for the same reason Golden Cell's trap analysis stays visible in the vault.
- Celine AI Same audience, different domain. SPF treats the PM's mind as the client; Celine treats the lien-rights specialist as the reader, not the user.
Working on something similar?
I take a small handful of consulting briefs a year and am always up for trading notes with anyone shipping in this space — send a note.
Or: values behind the work · obsessions that shape it · other projects.