The Mac client
Last updated
The Weald Mac app is the full client: it holds the workspace keys, draws the board over ticket files in your repository, runs embedded terminals for coding agents, and keeps the chat and plans that surround that work. It needs macOS 14 or later, is Developer ID signed and notarized, and is the same build against a hosted relay or one you run.
Most of what it shows is computed from a repository and from decrypted workspace state on the machine. Nothing on this page is a server-side feature, because there is no server that could compute it.
The shell
Three columns. A narrow workspace rail, a channel sidebar, and the content. Switching workspace is switching project, because one project binds to one workspace in both directions and the app refuses to reconcile a violation of that.
Across every project
- Overview is the project grid: status, live agents, last commit, blockers.
- Inbox is one ranked queue of everything waiting on you, merging agent questions, tickets in review or blocked, and review requests and assignments read from GitHub through the
ghtool. - Today is the cross-project daily plan.
- Timeline merges commits, agent events and status changes.
- Agents is a grid with one cell per bot, showing which are working and what they are doing.
Inside a project
| Group | Panels |
|---|---|
| Work | Activity, Board, Chat, QuickChat, Plan, Prompts, Terminal |
| Insight | Timeline, History, Team, Docs, project instructions, Map, Skills |
| Analysis | QA, Coverage, Competitor |
Board. Kanban columns over .wealdticket files in the repository, with statuses from backlog through to done and blocked. It has grouping, multi-select, ordering, a search that opens with a keyboard shortcut and indexes only what the current group is showing, and a second shape: a vertical backlog list with a reading pane.
Chat. Per-project channels with threads one level deep, mentions and reactions, stored as signed files under .weald/chat and synced as encrypted envelopes. Bots can answer in it.
Terminal. A first-party terminal emulator with its own parser, screen model and renderer, split panes, tab groups, session restore and search. Coding agents run inside it, which puts a session's output next to the ticket that caused it.
Map. A field of the project's context, mined from local session transcripts into a per-project co-occurrence graph with no model calls at all. The same query drives the autocomplete that inserts a file mention or a past prompt into a terminal.
Team. Who is working on what, computed from git history and branch state, with optional enrichment from GitHub for pull requests.
Plan. A time-boxed day in twenty-minute slots, stored in the project rather than in an account somewhere.
Around the edges
- Overwatch turns the tray into a full-screen overlay of every live session, each one running and typeable.
- Menu bar carries a quick composer, the project picker and agent status, and can be turned off entirely.
- Target mode watches for a modifier-drag anywhere on screen, captures that region and opens a one-field composer beside it. It is off by default.
- Minimal mode collapses the app to one project's terminals. Popout is a thin always-on-top strip. Window dock snaps another application's real window flush to Weald's edge.
- A command palette opens from anywhere, including a focused terminal.
Spend and usage
Four counters, kept apart on purpose. Tokens Weald spent on its own initiative are separated from tokens you drove in a terminal; the signed-in Claude account's rate-limit percentage is read from the CLI's own cache rather than from an API; a per-ticket receipt is written when a session finishes; and a priced ledger carries dollar figures labelled as list-rate estimates, not invoices.
Budget caps can be drawn around a project, a ticket, a bot or everything. They warn rather than block by default, and blocking is opt-in per cap.
Notifications
Local, and evaluated on this machine after decryption, because a relay cannot evaluate a rule about content it cannot read. There is no push provider, no device token registry and no third party that learns a workspace is active.
Two classes cannot be muted: a roster change you did not perform, and any split-view or transparency warning. Both are things you need to look at.
Updates and licensing
The app checks a public version manifest on launch, tells you what changed and links to the release. It never updates itself without asking, and there is no auto-installer.
The app is licensed separately from a hosted relay subscription, and neither gates the other. A 30-day local trial needs no email, no signup and no key.
What it is not
Not an editor and not an IDE: there is a terminal and a file inspector. Not a coding agent: it drives whichever CLI you configure. Not sandboxed and not on the Mac App Store, because it watches directories you choose and spawns processes, which sandboxing does not allow.
There is no real-time collaborative editing, no shared cursors and no character-by-character presence. Convergence is document-based, and a semantic conflict is shown to a person rather than resolved quietly.