Skip to content

Home screen: land somewhere that helps you get back into it #36

Description

@amanfromsolan

Exploratory. This is a direction, not a spec. The shape is genuinely undecided — the point of the issue is to argue with it.

Idea

Right now you land in a terminal. A prompt, a blinking cursor, and the full burden of remembering what you were doing.

Instead: a home screen. When you open Enso — or open a space, or a fresh tab — you land somewhere that catches you up and gets you moving. Terminal-native in feel, but a genuinely designed surface rather than a shell prompt.

Things it might hold:

  • Claude stats — usage, what you've been burning, how much is left
  • Recent tabs — what you were last working on, one click back into it
  • A fast way to start — new terminal here, jump to a project, run a thing you always run
  • A reminder of what you were coding — the actual goal. Reduce the cost of returning to a project you left three days ago.

Space-aware

The home screen could belong to the space, not the app. Each space gets its own — because each space is a different context, and the thing that helps you re-enter "work" is not the thing that helps you re-enter "side project."

Following that thread: a space could also carry its own configuration — a default working directory, its own agent command (a different Claude invocation, different flags, a different CLI entirely). The home screen becomes the visible face of a space's config, rather than config being a settings panel nobody opens.

That may be the more valuable half of this idea, and it's worth noticing that it stands on its own: per-space defaults are useful even with no home screen at all.

The thing to be careful about

A terminal that opens to a dashboard instead of a prompt is a real imposition. The people who want this app are the people who type fast and don't want to be greeted. If the home screen sits between you and a shell, it's a tax on every launch, forever.

So the honest questions are:

  • Is it a landing surface, or a tab type? A home screen you go to (a palette command, a persistent first tab) is additive. A home screen you land on is a tax. Resolution: make it a setting — "on launch, open: home screen / a terminal" — so nobody is forced into a greeting they don't want. One caveat: the default value still decides what a new user meets first, and that's a real choice rather than a punt. If the home screen is opt-in-by-default-off, almost nobody will ever see it.
  • Per-space override? If home screens belong to spaces, the setting probably wants to be per-space too — land on home in "work", land on a shell in "scratch". That's more honest to the idea, and more switches to design.
  • Does it survive its own success? The first week it's delightful. Week three, you've stopped reading it and you're pressing ⌘N immediately. What's still true at week three?
  • Claude stats — from where? There's no obvious API for "my usage." This may be scraping, or reading local session files, or not possible at all. Worth checking early, since it's doing a lot of the emotional work in the pitch and might simply not be available.
  • Recent tabs vs. the sidebar. The sidebar already shows your tabs. What does a home screen say about them that the sidebar doesn't? If the answer is "nothing, but bigger," that's a warning.
  • Relates to New tab opens a chooser: terminal, browser, or split #9 (new tab opens a chooser: terminal, browser, or split) — a home screen is arguably a fourth tab type, and New tab opens a chooser: terminal, browser, or split #9's chooser is arguably a tiny home screen. Same question, different sizes.

Split candidate

Per-space configuration (default directory, custom agent command) is concrete, obviously useful, and needs no design. It might be worth pulling out as its own issue and shipping while the home screen is still being argued about.

Metadata

Metadata

Assignees

No one assigned

    Labels

    explorationHalf-formed idea — shape it before building it

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions