Skip to content

[Feature] Land the new PawWork desktop UI in phased PRs #26

@Astro-Han

Description

@Astro-Han

What task are you trying to do?

I want to land the next PawWork desktop UI in the real app.

The target UI for this issue is still:

  • A desktop shell with three clear areas: left navigation, center session view, right utility panel.
  • A new-session screen with one large input box and three starter cards.
  • A left sidebar that makes sessions easy to scan.
  • An active session view with a simple header, a centered message timeline, and a composer fixed at the bottom.
  • A fuller settings experience instead of hiding it inside a compact dialog.

This is a phased redesign of the existing Solid + Electron app. It is not a prototype import.

What do you do today?

As of April 19, 2026, Phase 1 items 1 to 3 have already landed on dev through #35:

  • theme and shell polish
  • new-session home and composer
  • right utility panel

The remaining gap is now mostly Phase 2 UI work:

  • The left side is still organized around projects and worktrees first. Sessions are still harder to scan than they should be.
  • Session discovery and organization are not yet close to the target browsing model.
  • Settings still lives in a dialog rather than a fuller page-style surface.

So the current app is much closer to the target than before, but the navigation and settings experience still do not present PawWork in the shape we want people to use.

What would a good result look like?

A good result is a sequence of small PRs that completes the remaining UI work without rewriting the shell.

The next slices under this issue should focus on:

  1. Sidebar redesign on top of the current data model
    • keep the existing project/worktree model in code
    • make the visible sidebar much closer to the target layout
  2. Session organization
    • pinned sessions
    • recent sessions
    • better session discovery from the command palette
  3. Settings redesign
    • move from the current compact dialog shape toward a fuller desktop settings page

Which audience does this matter to most?

Both

Extra context

Current UI design reference for this issue lives at docs/design/ in the main checkout. It is intentionally local-only and is not tracked in git. Do not assume worktrees, CI, or fresh clones can see it.

For implementation PRs, use docs/design/ as the local visual and interaction reference when it is available, but keep this issue's scope boundaries as the source of truth for what belongs in #26. If a PR depends on details from docs/design/, copy the needed constraints into the PR body or an issue comment so reviewers can see them without local-only files.

Relevant design files:

Remaining slice Source files HANDOFF section
Sidebar redesign docs/design/src/sidebar.jsx §3 Sidebar
Session organization docs/design/src/sidebar.jsx, docs/design/src/search_palette.jsx §3 Sidebar, SearchPalette, §4 交互与快捷键
Settings redesign docs/design/src/settings.jsx use the prototype source directly plus any matching HANDOFF notes

Plugins and automations are out of scope for #26 for now. They should move in separate enhancement issues. This issue should stay focused on core UI polish and UI structure. Do not use prototype-only plugins or automations surfaces to expand this issue.

This work should preserve the current app architecture:

  • Solid frontend
  • Electron desktop shell
  • existing theme system
  • existing command palette
  • existing session/files/review/terminal logic

This work should not do the following:

  • rewrite the shell from scratch
  • replace the current project/worktree model with a pure chat-first model
  • copy prototype code directly into production
  • build plugin management UI in this issue
  • build automations UI or backend work in this issue

If this lands well, a user opening PawWork should immediately understand how to use it:

  • start from one strong input
  • find sessions faster
  • keep the main work in the center
  • open supporting tools on the right
  • manage settings in a place that feels like part of the app, not a hidden utility

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1High priorityappApplication behavior and product flowsenhancementNew feature or requestplatformElectron shell, OS integration, packaging, updater, signing, paths, and permissionsuiDesign system and user interface

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions