Shape Up for the developer who does everything alone. Fixed cycles, variable scope, honest hill charts — and a Senior who actually pushes back.
No credit card · Free for one project, forever · Shape Up for solo developers
Finishing the Stripe portal swap today. Pairing with Maya on auth at 3.
Mind-map your raw ideas. Markdown notes, [[wikilinks]], #tags, image attachments. Promote a cluster to a Pitch when it's ready.
Name the pain, sketch a solution, surface the risks. The Senior challenges your no-gos.
Pick what you're actually shipping. A budget bar, click-to-commit, then hands off the stove.
Break into scopes. Move dots on the hill chart. Log the unplanned — honestly.
Rest. The coach drafts lessons from what actually happened. You save the ones that stick.
Your scopes live on a curve, not a percentage. Idle dots flag themselves.
An AI that pushes back on your pitches. Proposes no-gos. Drafts retro lessons.
Your users submit pitches to /u/you. You turn them into real ones, one click.
OAuth 2.1 + MCP at /mcp. Plug Claude, Cursor, or any MCP client into your pitches, scopes, and notes.
A senior developer that reviews your pitches, surfaces holes you missed, and proposes concrete rewrites you can apply in one click. It asks pointed questions — never decides for you.
That names the feature, not the pain. What breaks today?
Good point — rethinking…
Problem: paste blocks the editor when the clipboard is large.
Apply rewriteA facilitator that walks the finished cycle with you — reads what shipped, what interrupted, and where scopes stalled, then asks the questions that turn a cycle into a lesson. When one lands, it proposes the wording; you save it in a click.
Onboarding tour stalled at 28% for two weeks. What kept you from cutting it?
Kept thinking it was almost there.
A nice-to-have that hasn't moved in a week is a cut, not a carry.
Save lessonYour workflow already produces signals. Heliostat reads them — no status meetings, no ticket grooming.
Every scope gets a short tag — any word you want (auth, billing, pickles). Each incoming commit is checked three ways, in order — the first hit wins:
/<tag>, it links. auth matches
auth-fix,
feat/auth-login,
bug/auth. Longest tag wins.
feat(auth):,
fix(auth) …,
chore:auth …,
feat/auth … — all link.
Not just feat. Tag match is exact or suffix (feat/auth hits a scope tagged auth).
Merge pull request #N from user/feat-auth
or Merge branch 'feat/auth', the source ref is pulled from the message and run through step 1 — so a PR landing on main still finds its scope.
No match? The commit drops into unplanned work automatically — you still see it at cycle end.
fix(auth): redirect loop
bug/auth-hotfix
bug/auth-hotfix contains /auth — User Auth wins.Once linked to a scope, the message prefix classifies the work as figuring‑it‑out or executing. The hill chart uses it as a second opinion when you check in.
Also accepted:
FEAT: (case-insensitive),
feat!: / feat(auth)!: (breaking),
feat(test) msg (no colon),
feat:auth msg (colon shorthand),
feat/auth msg (slash shorthand),
and feat msg (bare).
Anything else — Merge pull request, Update README — is recorded but not classified.
Unmatched commits become unplanned work automatically — half an hour by default, titled from the commit message. Tap ⚡ to log one manually.
At cycle end you see interruption %. Above 15% signals a shorter next cycle.
Prefix a scope name with ~
to mark it nice‑to‑have — first to cut when time runs short. No ceremony.
Turn on a public link and share it anywhere — GitHub profile, Twitter bio, your README. Every submission is filtered for abuse, moderated, and drops into your pitch queue alongside your own ideas.
heliostat.dev/u/yourname. One toggle in Submissions turns it on.
Accept a submission and it becomes a real pitch, ready to shape and commit to a cycle.
heliostat.dev/u/yourname
Live
Start free. Upgrade to Solo when you're ready for unlimited projects and AI personas.
Cookies
Heliostat uses a few essential and functional cookies (sign-in, timezone, this notice) and no analytics or ad trackers. Details in our Privacy Policy.