Skip to content

Commit e2efa27

Browse files
committed
feat(ui): redesign workspace views and filters for v0.2.0
1 parent 3ec00ac commit e2efa27

16 files changed

Lines changed: 818 additions & 692 deletions

‎.gitignore‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,5 @@ bin/
22
dist/
33
.DS_Store
44
/agentyard
5+
# CocoIndex Code (ccc)
6+
/.cocoindex_code/

‎CHANGELOG.md‎

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,30 @@ All notable changes are documented here. The format follows
66

77
## [Unreleased]
88

9+
## [0.2.0] - 2026-10-07
10+
11+
### Added
12+
13+
- Interactive storage treemap with proportional worktree and repository views, verdict colors,
14+
and details that link to the corresponding worktree.
15+
- Shared multi-select filters with searchable options, contextual counts, removable selections,
16+
and browser-session persistence across Worktrees, Pull requests, and Sessions.
17+
- Sorting by recent or oldest activity and name, plus largest-first sorting for worktrees and sessions.
18+
- Claude and Codex agent marks, icon-only agent quick views, and colored session-source labels.
19+
20+
### Changed
21+
22+
- More compact navigation, page headers, summaries, and tables in both light and dark themes.
23+
- Pull request status quick views and combined organization/repository filters.
24+
- Mobile filter panels with scrollable options and compact pull request cards.
25+
- Updated README, design documentation, and nine desktop/mobile screenshots using synthetic data.
26+
27+
### Fixed
28+
29+
- Charts, totals, cleanup commands, and rows now follow the same filter selection.
30+
- Mobile filter panels stay within the viewport; sticky table borders render continuously.
31+
- Improved light-theme label contrast and wrapping of pull request diff counts.
32+
933
## [0.1.0] - 2026-10-07
1034

1135
First public release.
@@ -31,5 +55,6 @@ First public release.
3155
- Single zero-dependency Go binary (around 20 MB RAM); Homebrew cask, release archives for macOS and
3256
Linux, and `scripts/install.sh`.
3357

34-
[Unreleased]: https://github.com/MilosMosovsky/agentyard/compare/v0.1.0...HEAD
58+
[Unreleased]: https://github.com/MilosMosovsky/agentyard/compare/v0.2.0...HEAD
59+
[0.2.0]: https://github.com/MilosMosovsky/agentyard/releases/tag/v0.2.0
3560
[0.1.0]: https://github.com/MilosMosovsky/agentyard/releases/tag/v0.1.0

‎README.md‎

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ One Go binary. No dependencies. Runs quietly in the background on your Mac.
3131

3232
<picture>
3333
<source media="(prefers-color-scheme: dark)" srcset="docs/screenshots/worktrees-dark.png">
34-
<img alt="The agentyard Worktrees page: totals for worktrees, disk use and safe-to-delete size, then each repository's worktrees with a verdict such as Keep, Open PR, Safe to delete or Prunable." src="docs/screenshots/worktrees-light.png" width="100%">
34+
<img alt="The agentyard Worktrees page with totals, a colored storage treemap, repository breakdown, and cleanup filters." src="docs/screenshots/worktrees-light.png" width="100%">
3535
</picture>
3636

3737
<sub>Every screenshot here is <code>agentyard demo</code>: synthetic data, nothing from a real machine.</sub>
@@ -68,6 +68,8 @@ fetches it, looks up each branch's pull request, and gives every worktree one ve
6868
| **Open PR** | The branch has a PR in review. |
6969
| **Keep** | Uncommitted changes, or commits that exist only on this machine. |
7070

71+
An interactive treemap shows measured disk usage by worktree or repository. Select a tile for its verdict and path, or jump to its row. Search, verdict, and repository filters update the chart, totals, and list together. Choose several values in the Filter menu; remove any selection individually.
72+
7173
Totals are grouped by repository and by folder, with ready-to-copy `git worktree remove` commands for
7274
the safe-to-delete rows. Rows and repositories are sorted by last activity: the newest of the last
7375
commit, the worktree's index and any uncommitted file. Sizes are `du` logical sizes, refreshed every
@@ -80,7 +82,7 @@ commit, the worktree's index and any uncommitted file. Sizes are `du` logical si
8082

8183
<picture>
8284
<source media="(prefers-color-scheme: dark)" srcset="docs/screenshots/prs-dark.png">
83-
<img alt="The Pull requests page: counts of open, ready, needs-action, waiting and draft PRs, org filter chips, and a table where each PR shows the one thing blocking it." src="docs/screenshots/prs-light.png" width="100%">
85+
<img alt="The Pull requests page: colored status quick views, searchable multi-select filters, and a table where each PR shows the one thing blocking it." src="docs/screenshots/prs-light.png" width="100%">
8486
</picture>
8587

8688
Every open PR you authored (`is:pr is:open author:@me archived:false`, as whoever `gh` is logged in
@@ -101,13 +103,13 @@ this order:
101103
| **Ready to merge** | none of the above | who approved it |
102104

103105
Next to the state: check counts, review state, last commit, diff size, and the local worktree that has
104-
the branch checked out. Org chips filter the list, and your selection is remembered per browser.
106+
the branch checked out. Status quick views give one-click access to needs-action, ready, waiting, draft, and queued PRs. The Filter menu combines multiple statuses, organizations, and repositories with search. Active selections can be removed individually; filters and sort order are remembered for the browser session.
105107

106108
### Sessions
107109

108110
<picture>
109111
<source media="(prefers-color-scheme: dark)" srcset="docs/screenshots/sessions-dark.png">
110-
<img alt="The Sessions page with a session open in a side drawer: its resume command with a Copy resume button, folder, branch, linked PR, and the latest messages." src="docs/screenshots/sessions-light.png" width="100%">
112+
<img alt="The Sessions page with Claude and Codex icons, agent and session-type filters, prompt previews, branches, and Copy resume actions." src="docs/screenshots/sessions-light.png" width="100%">
111113
</picture>
112114

113115
Every Claude Code (`~/.claude/projects`) and Codex (`~/.codex/sessions`) session on disk, newest
@@ -118,7 +120,7 @@ session under, which is the only place `--resume` finds it. A session whose fold
118120
removed worktree) is flagged.
119121

120122
Sub-agents are left out (Codex reviewer and sub-agent rollouts, Claude agent-team workers).
121-
Scheduled-task runs have their own chip.
123+
Agent icons identify Claude Code and Codex. Use the agent icons for quick filtering, then narrow by source or folder in the Filter menu. Sort by activity, name, or size.
122124

123125
> [!IMPORTANT]
124126
> Only the Mac running agentyard can open the Sessions tab. Transcripts include tool output, which can
@@ -133,7 +135,7 @@ every target is thumb-sized.
133135
<p align="center">
134136
<img alt="The Worktrees page on a phone: totals as a two-by-two grid and repositories as cards." src="docs/screenshots/phone-worktrees.png" width="260">
135137
&nbsp;&nbsp;
136-
<img alt="The Pull requests page on a phone: org chips and one card per PR with its blocker, checks and review." src="docs/screenshots/phone-prs.png" width="260">
138+
<img alt="The Pull requests page on a phone: status quick views, a mobile filter panel, and one card per PR with its blocker, checks and review." src="docs/screenshots/phone-prs.png" width="260">
137139
</p>
138140

139141
**Sync now** (top right) re-runs the worktree scan, the PR poll and the session index right away and

‎docs/design/assets.md‎

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Brand assets
22

3-
All files live in `assets/`. Geometry comes from the canonical three-track mark in `brief.md` section 1. Text is converted to outlines (Helvetica Neue Bold, no embedded fonts), so every file renders identically everywhere. Demo labels only (`yard-demo`, `agent/parser`, PR #42); no real data.
3+
All files live in `assets/`. Geometry comes from the canonical three-track mark in `assets/logo-mark.svg`. Text is converted to outlines (Helvetica Neue Bold, no embedded fonts), so every file renders identically everywhere. Demo labels only (`yard-demo`, `agent/parser`, PR #42); no real data.
44

55
| File | Use |
66
| --- | --- |
@@ -22,3 +22,11 @@ README snippet:
2222
```
2323

2424
Regenerating: the files are produced by a deterministic script (fontTools outlines, rsvg-convert), following the brief's rule that generated art is draft-only and exact paths and type are composited afterward. Codex image generation was not used, to keep the mark exact.
25+
26+
## Session agent marks
27+
28+
The inline `page.html` SVG sprite includes the Claude and OpenAI marks from
29+
[Simple Icons 13.21.0](https://github.com/simple-icons/simple-icons/tree/13.21.0/icons),
30+
licensed under [CC0-1.0](https://github.com/simple-icons/simple-icons/blob/13.21.0/LICENSE.md).
31+
Claude uses `claude.svg`; Codex uses `openai.svg`. The shared `tool-icon` template owns
32+
all instances. Brand marks remain the property of their respective owners.

0 commit comments

Comments
 (0)