# Project workspace

Give each project a conversation with an agent team, and show which projects need the person.

For: People who run several pieces of agent work at once.

Web page: https://candor.themethodic.com/screens/project-workspace

## Layouts

### Projects rail and conversation

Pick it when: The default: projects are conversations, grouped by what needs the person.

Layout: A rail of projects grouped by what needs you, the selected project's thread in the middle, the team on the right.

Items:

- **Project workspace** (`project-workspace`, Premium; https://candor.themethodic.com/docs/project-workspace.md): A workspace where each project is a conversation with an agent team, grouped by what needs the person.
- **Agent activity** (`agent-activity`, Pro; https://candor.themethodic.com/docs/agent-activity.md): Who is working right now, in words.
- **Run tree** (`run-tree`, Pro; https://candor.themethodic.com/docs/run-tree.md): Who handed work to whom.
- **Task tray** (`task-tray`, Pro; https://candor.themethodic.com/docs/task-tray.md): Background work as one pill.
- **Presence** (`presence`, Pro; https://candor.themethodic.com/docs/presence.md): Who else has the project open now, people and agents, and what each is doing.

```bash
npx candor-ui add project-workspace agent-activity run-tree task-tray presence
```

### Board of projects

Pick it when: Many projects at different stages; the person triages.

Layout: Columns by state with a card per project.

Items:

- **Project workspace** (`project-workspace`, Premium; https://candor.themethodic.com/docs/project-workspace.md): The grouping, as columns.
- **Inbox** (`inbox`, Pro; https://candor.themethodic.com/docs/inbox.md): Everything with something for the person.

```bash
npx candor-ui add project-workspace inbox
```

## Rules that matter most here

- **The agent is always named, by the app** (https://candor.themethodic.com/principles#agents-are-named): Each message and each step names which agent in the team did it.
- **Unknown stays unknown** (https://candor.themethodic.com/principles#unknown-stays-unknown): A project whose agents have gone quiet shows when it was last heard from.
- **A control that can't be used says why** (https://candor.themethodic.com/principles#locked-says-why): A project the person can see but not change says why.

A full-stack block builds this with an agent route and a store: `project-workspace` (https://candor.themethodic.com/docs/project-workspace.md). Each block has a `-claude` twin for the Claude Agent SDK.

## Brief for a coding agent

Paste this to the agent that builds the screen.

```text
Build a project workspace with Candor UI. Start from the project-workspace template (project-workspace-claude for the Claude Agent SDK): each project is a conversation with an agent team.
The rail groups projects by what needs the person: waiting on you, running, done.
Show who is working with AgentActivity and who handed work to whom with RunTree; use TaskTray for background work.
Name the agent on each message and step from your records.
A project whose agents have gone quiet shows when it was last heard from.
A project the person can see but not change keeps its controls and says why (Locked).

Start from the "Projects rail and conversation" layout: A rail of projects grouped by what needs you, the selected project's thread in the middle, the team on the right.
Candor items: project-workspace (https://candor.themethodic.com/docs/project-workspace.md), agent-activity (https://candor.themethodic.com/docs/agent-activity.md), run-tree (https://candor.themethodic.com/docs/run-tree.md), task-tray (https://candor.themethodic.com/docs/task-tray.md), presence (https://candor.themethodic.com/docs/presence.md).
Install: npx candor-ui add project-workspace agent-activity run-tree task-tray presence
Read each item's docs before using it and take its props from there; don't guess them. Pro and Premium items need the person's licence key, which they add with `npx candor-ui key <key>`; don't ask for it.
```
