opensymphony 2.3.2

A Rust implementation of the OpenAI Symphony orchestration design
Documentation
---
type: topic-doc
area: desktop
visibility: public
last_memory_sync: 2026-06-21T19:06:47.514408+00:00
---

# Desktop

<!-- BEGIN OPENSYMPHONY MANAGED MEMORY SYNC -->

## Current model

- COE-491 contributed: PR #160: Wire desktop run detail actions (merge `beab528`)

## Important invariants

- Preserve the behavior described in the recent captured changes unless current code and tests show it has changed.
- Use capsule source refs to inspect the original PR or Linear issue when context is ambiguous.

## Operational flow

- No generated diagram requested for this sync.

## Known gotchas

- No area-specific gotchas were inferred from the selected memory.

## Recent changes

- COE-491: Desktop Run Detail Action Wiring And Cleanup

## Source refs

- COE-491

<!-- END OPENSYMPHONY MANAGED MEMORY SYNC -->
## Local Build And Run

The desktop app currently requires a repo checkout. The planned
`opensymphony app` / `opensymphony desktop` lazy installer is tracked by
COE-488 / OSYM-811 and is not implemented yet.

From a clone, rebuild the desktop frontend when `apps/desktop` or shared
frontend packages change:

```bash
npm install
npm run build --workspace=@opensymphony/desktop
```

Then launch the Tauri shell:

```bash
cd apps/desktop/src-tauri
cargo run
```

The workspace build command is the same as running `npm run build` from
`apps/desktop`. If you are already in `apps/desktop/src-tauri`, use
`npm --prefix .. run build`.

For frontend hot reload, run `npm run dev --workspace=@opensymphony/desktop`
in one terminal and `cargo run` from `apps/desktop/src-tauri` in another.
Plain `cargo run` uses the current `apps/desktop/dist` bundle and does not
start Vite.

## Task Graph Project Groups

When the gateway task graph includes Linear project metadata, the desktop task
graph groups visible issue rows under compact project headings. Operators can
collapse a project group for the current session; collapsed state is local to
the client and does not clear the currently selected run detail. Cross-project
dependency detail remains in the selected run detail pane; the compact grouped
list keeps dependency lines local to each project group.