+Loom is a local-first macOS app for keeping track of local AI coding agent sessions. Check which sessions are working, waiting, idle, or need attention, and open diagnostics when discovery needs a closer look. Loom observes local processes and provider data; it does not control agents or edit your projects.
----
+**Loom 2.0.0** supports Apple Silicon (`arm64`) and macOS 14 or later. See the [2.0 release notes](docs/RELEASE_NOTES_v2.0.0.md) for details.
-## Why Loom?
-
-When you run multiple local AI coding agents across background terminals, editor extensions, and language servers, answering a simple question becomes surprisingly tedious: *"What are all my local AI coding agents doing on my Mac right now?"*
+## Installation
-Loom gives you one clean, local-first menu-bar application to see which project each agent is working on and which session needs attention—without switching between terminals, browser dashboards, and apps. For quota-capable providers, Loom shows observed remaining quota and can warn at 15% and 5%; Claude Code quota is unsupported by its upstream local interface, so Loom does not invent a value.
+### Homebrew
-**Loom 2.0 — Liquid Glass & Smarter Monitoring** brings clearer session states, local quota warnings, and native desktop widgets. See the [2.0 release notes](docs/RELEASE_NOTES_v2.0.0.md); downloads always open the latest published release.
+```bash
+brew install --cask chaiwithcode/tap/chaiwithcode-loom
+```
-The published 2.0.0 app supports Apple Silicon (`arm64`) on macOS 14 or later.
+### Download
-Built with Swift and SwiftUI for macOS 14+. Featuring a native **Liquid Glass popover redesign**, **actionable desktop notifications**, **session productivity quick actions**, and **instant search & filtering**. Strictly local-first: no Loom account, no hosted backend, no analytics SDKs, and no third-party dependencies except official Sparkle 2 for signed, secure local updates.
+Download the latest **Loom** disk image from [GitHub Releases](https://github.com/chaiwithcode/Loom/releases/latest), open it, and drag **Loom.app** into Applications.
----
+Loom includes signed updates through Sparkle. Check for updates from the Loom menu or in **Settings → General**.
-## Local Agent Sessions & Productivity
+## Sessions
-The **Sessions** tab answers *"what is happening right now?"* with attention-first prioritization and rich productivity tools:
+The Sessions view brings agent activity into one place. Waiting and failed sessions are surfaced first, followed by working and idle sessions; recent sessions can be collapsed.
-
-
-
+
-- **Liquid Glass Redesign**: Native macOS 26+ popover styling adopting Apple's Liquid Glass (`.glassEffect`) with high-craft material fallbacks (`.ultraThinMaterial`) on macOS 14/15.
-- **Attention-First Prioritization**: Sessions requiring human input (`waiting`) or encountering errors (`failed`) are surfaced prominently at the top with high-contrast amber/red badges, ensuring pending decisions are never missed.
-- **Collapsible Recent Sessions**: Completed tasks tuck cleanly into a collapsible disclosure section, keeping active work front and center.
-- **Search & Filter Bar**: Filter sessions instantly using search queries (repository name, Git branch, or host app) or quick category chips (`All`, `Needs Attention`, `Working`, `Recent`).
-- **Productivity Quick Actions**:
- - **Focus Terminal / IDE**: Brings the active host editor or terminal window (VS Code, Cursor, Terminal, iTerm2) directly to the front.
- - **Copy PID**: Copies the root worker process identifier to the pasteboard.
- - **Copy Repository Path**: Copies the project path (sanitized when privacy mode is active).
- - **Copy Session ID**: Copies the upstream provider session token for correlation with external logs.
- - **Reveal in Finder**: Direct disk navigation via macOS Finder.
-- **Strict Read-Only Safety**: Loom provides zero destructive controls (`kill`, `SIGTERM`, or prompt injection).
+Search by repository, branch, or host app, then filter by attention, working, or recent activity. Available actions include focusing the host app, copying process or session details, and revealing a workspace in Finder.
----
+Loom supports session discovery for **OpenAI Codex**, **Google Antigravity**, and **Anthropic Claude Code**. Discovery and workspace details depend on the evidence each provider exposes locally; Loom reports diagnostics rather than guaranteeing a session for every repository or process.
-## Native macOS Notifications
+*Loom is an independent open-source project and is not affiliated with or endorsed by OpenAI, Anthropic, or Google.*
-Stay informed on background agent execution and quota exhaustion without polling or keeping the popover open:
+## Quotas and notifications
-- **Quota Threshold Alerts**: Early warnings below **15%** and critical alerts below **5%** for observed Codex and Antigravity quota windows (5-hour and weekly, respectively). Claude Code quota is not exposed by its upstream local interface and is not included.
-- **Verified Replenishment Alerts**: Desktop notification when a fresh observation confirms quota has recovered to ~100% in a newly started window (never inferred purely from countdown timers).
-- **Session Lifecycle Transitions**: Actionable alerts when an agent transitions into **Waiting for Input**, **Finished**, or **Failed**.
-- **Hygiene & Persistent Deduplication**: Cross-restart deduplication keys prevent repeated alert spam across polling cycles. Silently seeds baseline state on launch to prevent notification storms.
-- **Privacy & Deep Linking**: File system paths in alerts are automatically masked when **Hide project paths** is active. Clicking a notification routes directly to the relevant provider and session in Loom.
+For Codex and Antigravity, Loom can show quota data available through their local interfaces and send threshold or reset notifications. Quota alerts support **15%** and **5%** thresholds. Claude Code does not expose quota through its upstream local interface. Quota readings are observations and may be unavailable when a provider cannot be reached.
----
+
-## Usage, Quotas & Local Storage
+Notifications can cover observed quota thresholds and session state changes. Finished alerts can be set to require a minimum observed working duration; Loom measures that duration while it is monitoring. Notification preferences and macOS permission choices are respected. Test-notification controls are available only in Debug builds.
-Keep track of rate limits, pacing velocity, and on-disk footprint in one place:
+
Notification examples use illustrative data.
-
-
-
-
-
+## Local storage
-- **Truthful Quotas & Pacing (Usage)**: View remaining quota percentages, consumption velocity, and exact reset dates/times. Missing or unsupported telemetry is never masked as healthy: Claude Code is truthfully marked as *Quota not supported* by upstream local interfaces, while Codex and Antigravity report verified live metrics.
-- **Local Disk Footprint (Storage)**: Measure on-disk agent caches, conversation transcripts, language server indices, and log files on demand across all providers with bounded, read-only scans. Displays clean comparative proportions and direct Finder navigation.
+Inspect local agent data with on-demand, read-only storage scans and per-folder breakdowns.
----
+
-## Native macOS Widgets
+## Widgets
-Glance at agent sessions and quotas directly on your desktop or Notification Center with three native widgets:
+Loom includes Sessions, Quotas, and Overview widgets for the desktop and Notification Center.
-
- Native widget previews with privacy-safe demo data.
+
+ Widget previews use illustrative, privacy-safe demo data.
-- **Loom Quotas** (Small, Medium, Large): Displays prominent remaining percentages and reset countdowns. Configurable via *Edit Widget* to monitor all enabled providers together or focus on a specific provider.
-- **Loom Sessions** (Small, Medium): Real-time view of active sessions, waiting-for-input alerts, and per-provider counters.
-- **Loom Usage Overview** (Medium, Large): Multi-column comparison (Medium) or detailed vertical breakdowns with granular model limits (Large).
+The session, usage, storage, widget, and notification screenshots on this page show the current 2.0 interface; session, quota, and storage values shown are illustrative demo data.
-See [widget setup and verification guide](docs/WIDGETS.md) and [interface and storage details](docs/INTERFACE_AND_STORAGE.md).
+See [widget setup and verification](docs/WIDGETS.md) and [interface and storage details](docs/INTERFACE_AND_STORAGE.md).
----
+## Privacy and local operation
-## Supported Providers
+Loom has no account or hosted backend. It reads local process and provider information to discover sessions and quota data. It is read-only with respect to agent sessions and project files: it does not send prompts, approve commands, or modify projects.
-| Provider | Session Discovery | Quota / Usage | Local Storage | Status |
-| :--- | :--- | :--- | :--- | :--- |
-| **OpenAI Codex** | Running processes, process tree, and Git metadata | Local app-server interface (`stdio`) | Caches, sessions & logs | Production |
-| **Google Antigravity** | Local session metadata and language-server processes | Local loopback HTTPS interface with ephemeral token | Store, artifacts & logs | Production |
-| **Anthropic Claude Code** | Running processes, process tree, CLI detection, transcripts | Not exposed by upstream CLI | State, config & transcripts | Production |
+Enable **Hide project paths** in Settings to mask paths in the interface and notification content. Antigravity quota access uses a local loopback connection and an ephemeral in-memory token. See [security guidance](SECURITY.md) and the [architecture overview](docs/ARCHITECTURE.md).
-Normal launch registers **Codex, Claude Code, and Antigravity**. Process trees correlate child workers and helpers into exactly one logical session per repository task. Expandable discovery diagnostics report processes detected, logical sessions, workspace resolution ratio, metadata health, and discovery latency in milliseconds.
+## Settings
-*Loom is an independent open-source project and is not affiliated with or endorsed by OpenAI, Anthropic, or Google.*
-
----
-
-## Installation
+Open Settings with **⌘,** or the gear button. Configure providers, menu bar status, refresh behavior, notification preferences, session retention, path privacy, and local storage scans. Provider-specific availability and notification behavior are described in the [2.0 release notes](docs/RELEASE_NOTES_v2.0.0.md).
-### Homebrew (Recommended)
+## Build and development
-Install Loom via the official [ChaiWithCode Homebrew Tap](https://github.com/chaiwithcode/homebrew-tap):
-
-```bash
-brew install --cask chaiwithcode/tap/chaiwithcode-loom
-```
-
-### Direct Download
-
-1. Download **`Loom-1.0.dmg`** from [GitHub Releases](https://github.com/chaiwithcode/Loom/releases).
-2. Open the disk image.
-3. Drag **Loom.app** into your `/Applications` folder.
-4. Launch **Loom** from Applications or Spotlight.
-
-### Software Updates
-
-Loom integrates native software updates powered by **Sparkle 2**. Updates are delivered over HTTPS from the official [GitHub Pages appcast feed](https://chaiwithcode.github.io/Loom/appcast.xml), cryptographically signed with EdDSA (Ed25519), and notarized by Apple.
-
-You can check for updates anytime:
-- Via **Check for Updates…** in the Loom menu or Dock menu
-- In **Settings** (`⌘,`) under the **General** tab
-
----
-
-## Privacy & Local-First
-
-Loom is built from the ground up for developer privacy and security:
-
-- **No Loom Account**: There are no accounts, cloud logins, or external servers.
-- **Local Process Inspection**: Loom inspects local processes and metadata on your Mac. It is strictly read-only: it does not inject prompts, approve commands, edit projects, or modify agent sessions.
-- **Zero Telemetry**: No tracking, analytics, or behavioral telemetry SDKs.
-- **Ephemeral Credentials**: Codex usage communicates via local stdio. Antigravity usage communicates with a discovered local loopback endpoint using an ephemeral memory token. Tokens are never persisted to disk.
-- **Path Concealment & Quick Action**: Enable the **Hide project paths** privacy toggle in Settings (`⌘,`) or directly via the popover header quick-toggle to mask filesystem paths across the UI, tooltips, and notification banners.
-
-See [security guidance](SECURITY.md) and [architecture](docs/ARCHITECTURE.md).
-
----
-
-## Settings and Configuration
-
-Press `⌘,` or click the header gear icon to open Loom Settings:
-
-- **General**: Choose your Menu Bar Status Mode (`Icon Only`, `Active Sessions count`, `Lowest Quota percentage`), toggle Dock visibility, and configure background refresh intervals.
-- **Providers**: Enable or disable monitoring individually for Codex, Claude Code, and Antigravity. Disabling a provider immediately halts process discovery and polling tasks.
-- **Notifications**: Configure system alert triggers (15% and 5% quota warnings, reset alerts, session state transitions), send test notifications, and inspect the bounded local notification audit log.
-- **Sessions & Retention**: Filter to active sessions only or retain completed sessions for a configurable period (Never, 1 hour, 24 hours, 7 days).
-- **Storage**: Run on-demand storage scans and inspect per-folder breakdowns with direct Finder navigation.
-- **Privacy**: Manage filesystem path masking across all views and alerts.
-
----
-
-## Build and Run
-
-Requires **macOS 14+** and **Swift 5.9+ / Xcode 15+**. Install the coding tools you want to monitor separately. From the repository root:
+Loom requires **macOS 14+** and **Swift 5.9+ / Xcode 15+**. Install the coding tools you want to monitor separately. From the repository root, build and open the local app bundle:
```bash
bash scripts/build-app.sh
open .build/Loom.app
```
-This builds a Release executable and packages a local development app with the Loom icon. It is an ad-hoc signed build for local development, not a Developer ID-signed or notarized distribution download. See [Release Documentation](docs/RELEASING.md) for public distribution prerequisites, Developer ID signing, and Apple notarization.
-
-For Xcode, open `Loom.xcodeproj`, select the **Loom** scheme and **My Mac**, then press **⌘R**. Launch the bundled app when checking icon identity and native UI behavior.
+This creates an ad-hoc signed development app, not a Developer ID-signed or notarized distribution download. See [release documentation](docs/RELEASING.md) for distribution. In Xcode, open `Loom.xcodeproj`, select the **Loom** scheme and **My Mac**, then press **⌘R**.
-### Preview without live agents
+
+Preview with opt-in demo data
-Build the bundle first using the command above. Demo data is explicitly opt-in and visibly labeled:
+After building, launch one demo mode at a time. These options do not run during a normal launch:
```bash
open -n .build/Loom.app --args --demo-mock
@@ -189,7 +100,7 @@ open -n .build/Loom.app --args --demo-empty
open -n .build/Loom.app --args --demo-failure
```
-The mock fixture includes all three provider identities and normalized states for testing and visual previews. To preview notification banners, add one of the six demo scenarios below; the alert appears after three seconds. Demo alerts require the mock fixture and notification permission, and never run during a normal launch:
+To preview illustrative quota notification scenarios, use one command at a time; each alert appears after three seconds and requires macOS notification authorization:
```bash
open -n .build/Loom.app --args --demo-mock --demo-alert codex-warning
@@ -200,63 +111,14 @@ open -n .build/Loom.app --args --demo-mock --demo-alert antigravity-critical
open -n .build/Loom.app --args --demo-mock --demo-alert antigravity-reset
```
-See [demo media details and attribution](docs/DEMO_MEDIA.md).
-
----
-
-## Development and Verification
-
-```bash
-swift build
-
-# Portable suite: unit, integration, and cancellation regression tests.
-swift test
-
-# Native menu sizing and interaction probe.
-bash scripts/verify-menu-sizing.sh
-```
-
-The macOS [CI workflow](.github/workflows/ci.yml) builds/packages the app and runs the portable suite. The native probe checks content sizing, tab/disclosure behavior and constrained layouts; it does not replace checking the actual menu bar on a Mac.
-
-`swift test` runs the full test suite across Codex, Claude Code, Antigravity, settings, and UI components. In local verification, the full suite passes, including SIGTERM-resistant cancellation regression checks. CI executes the portable suite while excluding only the live Antigravity discovery smoke test (`testRealAntigravityDiscoverySmokeTest`), which requires a local Antigravity database installation. SQLite WAL lock contention and code 14 (`SQLITE_CANTOPEN`) are handled gracefully via `?immutable=1&mode=ro` and temporary snapshot fallbacks. Some live usage checks additionally require `ENABLE_LIVE_SMOKE_TESTS=1`.
-
-### Dedicated Regression Tests (`LoomRegressionTests`)
-
-A dedicated test target, `LoomRegressionTests`, isolates core regression tests across process trees, session disambiguation, lifecycle transitions, widget state consistency, and headless SwiftUI smoke rendering:
-
-```bash
-# Run regression tests via SwiftPM
-swift test --filter 'LoomRegressionTests.*'
-
-# Run regression tests via Xcode CLI
-xcodebuild test -project Loom.xcodeproj -scheme LoomRegressionTests -destination 'platform=macOS'
-```
-
-- **In Xcode**: Select the **LoomRegressionTests** scheme and press **⌘U**, or open the **Test Navigator (⌘6)** and run `LoomRegressionTests` directly. The primary **Loom** scheme's Test action also includes `LoomRegressionTests`.
-- **Adding new regression tests**: Place new tests in `Tests/LoomRegressionTests/` (such as in `LoomRegressionTestSuite.swift`), preserving the canonical MIT license header (`AGENTS.md`) and importing `@testable import LoomCore`.
-
-Xcode builds are also supported:
-
-```bash
-xcodebuild build -project Loom.xcodeproj -scheme Loom -destination 'platform=macOS'
-```
-
-See [CONTRIBUTING](CONTRIBUTING.md) for fixtures, review expectations and provider work.
-
-See [widget verification and troubleshooting](docs/WIDGETS.md) for local widget builds, installation, shared storage, and Notification Center checks.
-
----
-
-## What Comes Next
-
-Reliable local discovery comes first: improve state accuracy, cover upstream format changes, and expand diagnostics and accessibility. Remote control, cloud sync and orchestration are outside the current scope.
+
-The visual identity stays simple: three independent strands woven into one Loom. The full-color app icon and simplified monochrome menu bar glyph share that silhouette. See [icon design notes](docs/ICON_DESIGN.md) and [product direction](docs/PRODUCT.md).
+For development checks, run `swift test` for the portable suite, or `swift test --filter 'LoomRegressionTests.*'` for regression tests. See [CONTRIBUTING](CONTRIBUTING.md), [widget verification](docs/WIDGETS.md), and [demo media notes](docs/DEMO_MEDIA.md) for more details.
----
+## Project direction
-## License and Author
+Loom prioritizes reliable local agent discovery, session correlation, workspace resolution, truthful lifecycle state, diagnostics, and graceful degradation. Remote control, cloud sync, and orchestration are outside the current scope. Read more in [product direction](docs/PRODUCT.md).
-Created by **[Deepak Sharma](https://github.com/chaiwithcode)**.
+## License and author
-Loom's code, documentation and included assets are licensed under the [MIT License](LICENSE). You can use, modify and distribute them under its terms. [Branding guidance](BRANDING.md) explains how to distinguish your fork from the official project without changing that license.
+Created by [Deepak Sharma](https://github.com/chaiwithcode). Loom's source code and documentation are licensed under the [MIT License](LICENSE). Promotional media includes third-party material; see [media attribution and licenses](docs/DEMO_MEDIA.md). See [branding guidance](BRANDING.md) for information about naming and presenting forks.
diff --git a/docs/DEMO_MEDIA.md b/docs/DEMO_MEDIA.md
index 1bfca7a..1e961bc 100644
--- a/docs/DEMO_MEDIA.md
+++ b/docs/DEMO_MEDIA.md
@@ -30,3 +30,7 @@ Each demo alert is delayed by three seconds and requires macOS notification auth
MacBook Pro photo mockup: [Plinth, Front / Silver](https://plinthmockups.com/?scene=macbook-11-silver). Commercial exports are permitted without credit; see [Plinth mockup terms](https://plinthmockups.com/macbook-mockup). The blank scene is not redistributed. The computer frame is for presentation only.
Notification banners are genuine user-provided macOS captures from 24 October 2026, cropped without changing their content. The trailer's session and quota data are illustrative demo content.
+
+## Website and README captures
+
+The current Sessions, Usage, Storage and widget images are the same audited native 2.0 captures used in the trailer. The [notification examples](loom-2.0-notifications.png) are genuine macOS banners captured from the explicit demo scenarios; their values are illustrative. The website includes an optional [English caption track](loom-2.0-captions.vtt). The film already contains visible subtitles, so this extra track is off by default to avoid duplicate text.
diff --git a/docs/loom-2.0-captions.vtt b/docs/loom-2.0-captions.vtt
new file mode 100644
index 0000000..aac0ea7
--- /dev/null
+++ b/docs/loom-2.0-captions.vtt
@@ -0,0 +1,52 @@
+WEBVTT
+
+00:00:00.000 --> 00:00:01.899
+Codex is running tests.
+
+00:00:02.199 --> 00:00:03.884
+Claude is writing code.
+
+00:00:04.184 --> 00:00:07.299
+Antigravity is working on another project.
+
+00:00:08.099 --> 00:00:11.832
+But one's been waiting for you. And you don't even know which one.
+
+00:00:12.132 --> 00:00:13.305
+Meet Loom.
+
+00:00:13.605 --> 00:00:18.384
+One place to see what your AI coding agents are doing on your Mac.
+
+00:00:18.796 --> 00:00:21.228
+Every project. Every session.
+
+00:00:21.528 --> 00:00:25.560
+Working. Waiting. Idle. Finished.
+
+00:00:25.972 --> 00:00:27.444
+See what's happening.
+
+00:00:27.744 --> 00:00:29.643
+Know what needs your attention.
+
+00:00:29.943 --> 00:00:32.055
+And get right back to what matters.
+
+00:00:32.355 --> 00:00:35.150
+Get alerted before your quota runs out.
+
+00:00:36.407 --> 00:00:38.284
+See where your storage goes.
+
+00:00:38.584 --> 00:00:41.848
+Keep everything in view with native Mac widgets.
+
+00:00:42.760 --> 00:00:45.341
+No cloud account. Just your Mac.
+
+00:00:45.641 --> 00:00:50.441
+Codex. Claude Code. Antigravity. Three agents. One clear view.
+
+00:00:50.803 --> 00:00:53.000
+Loom. Your agents, at a glance.
diff --git a/docs/loom-2.0-notifications.png b/docs/loom-2.0-notifications.png
new file mode 100644
index 0000000..7b07523
Binary files /dev/null and b/docs/loom-2.0-notifications.png differ
diff --git a/pages/index.html b/pages/index.html
index 0bec15b..9e13fc1 100644
--- a/pages/index.html
+++ b/pages/index.html
@@ -1,598 +1,88 @@
-
+
-
-
- Loom — Monitor Local AI Coding Agents from macOS Menu Bar
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+Loom for macOS — Local AI Coding Agent Monitor
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- Skip to main content
-
-
-
-
What are all my local AI coding agents doing on my Mac right now?
-
When you juggle multiple autonomous agents across terminals, editor extensions, and language servers, visibility evaporates.
-
-
-
-
-
-
-
-
Terminal & Process Sprawl
-
Codex in VS Code, Claude Code in Terminal tabs, and Antigravity running background helpers. Loom discovers all active agent processes and groups them into clean, logical project sessions.
-
-
-
-
-
-
-
Invisible Rolling Quotas
-
Quota exhaustion can interrupt a refactor. Loom surfaces observed quota percentages and reset windows for Codex and Antigravity, with warnings below 15%, critical alerts below 5%, and notifications when fresh telemetry confirms replenishment.
-
-
-
-
-
-
-
100% Local & Ephemeral
-
No Loom account, no cloud relay, and zero telemetry SDKs. Loom is strictly read-only, communicates over local stdio and loopback HTTPS, and never persists sensitive provider tokens.
-
-
-
-
-
-
-
-
-
-
-
- Live Monitoring
-
Local Agent Sessions
-
Know immediately which repository each agent is editing, what phase it is executing, and when it needs your input.
-
-
-
-
-
-
-
- Glanceable Provider Selector
- Switch between OpenAI Codex, Anthropic Claude Code, and Google Antigravity with live session counters.
-
-
-
-
-
-
-
-
- Normalized Lifecycle States
- Truthful status indicators for working, idle, waiting for input, starting, finished, and failed.
-
-
-
-
-
-
-
-
- Process Tree & Directory Inspector
- Expand any session to inspect helper PIDs, host apps, Git branches, working paths, and a one-click Reveal in Finder action.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Telemetry & Diagnostics
-
Usage Quotas & Local Storage
-
Track rate limits and inspect agent disk consumption without touching terminal commands or third-party web portals.
-
-
-
-
-
-
-
- Truthful Live Quotas
- View observed remaining percentages and reset windows for Codex and Antigravity. Loom can warn below 15%, send critical alerts below 5%, and notify when fresh telemetry confirms replenishment. Claude Code quota is not exposed by its upstream local interface, so Loom labels it unsupported instead of showing a made-up value.
-
-
-
-
-
-
-
-
- On-Demand Local Storage Audit
- Measure allocated disk space across agent stores, transcript logs, and cache folders. Scans run cooperatively in the background without reading file contents or traversing symlinks.
-
-
-
-
-
-
-
-
- Path Concealment Mode
- Mask repo directories and sensitive disk paths with one toggle in Settings for secure screen sharing and live streaming.
-
-
-
-
-
-
-
-
-
-
Usage Quotas & Reset Timers
-
-
-
-
Local Disk Storage Footprint
-
-
-
-
-
-
-
-
- Desktop Integration
-
Native macOS Widgets
-
Keep agent activity and remaining quotas in your peripheral vision across desktop spaces and Notification Center.
-
-
-
-
-
-
-
- Three Dedicated Widget Families
- Choose from Loom Sessions, Loom Quotas, and Loom Usage Overview across Small, Medium, and Large families.
-
-
-
-
-
-
-
-
- Configurable Provider Targeting
- Monitor all enabled providers simultaneously or configure a widget to follow a specific coding agent via native Edit Widget controls.
-
-
-
-
-
-
-
-
- Native WidgetKit Fidelity
- Built with pure SwiftUI for macOS Sonoma. Adapts automatically to Light, Dark, and desktop tinting modes with zero CPU overhead.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Compatibility
-
Supported Providers
-
Loom connects directly to local runtimes using verified OS evidence and official local IPC.
-
-
-
-
-
-
-
Provider
-
Session Discovery
-
Quota / Usage Interface
-
Storage Accounting
-
Status
-
-
-
-
-
-
- O
- OpenAI Codex
-
-
-
Running processes, child process tree & Git repository metadata
-
Local app-server interface over stdio
-
Caches, session data, and execution logs
-
Implemented
-
-
-
-
- C
- Anthropic Claude Code
-
-
-
Running CLI processes, process hierarchy, active workspaces & transcripts
-
Not exposed by upstream CLI
-
Configuration roots, session state & transcripts
-
Implemented
-
-
-
-
- G
- Google Antigravity
-
-
-
Local session metadata & language-server processes
-
Local language-server interface over loopback HTTPS with ephemeral token
-
Store database, session artifacts & diagnostic logs
-
Implemented
-
-
-
-
-
-
Loom is an independent open-source project and is not affiliated with or endorsed by OpenAI, Anthropic, or Google.
-
-
-
-
-
-
-
- Get Started
-
Install Loom on your Mac
-
Choose between the official Homebrew tap or a signed, notarized disk image.
-
-
-
-
-
- Recommended
-
Homebrew Cask
-
Install and keep Loom updated using Homebrew through the official tap:
Loom is crafted with a strict local-first architecture to protect your code and credentials.
-
-
-
-
-
-
-
-
-
No Accounts, Zero Telemetry
-
There is no sign-in, no Loom user database, and no cloud server. Loom embeds zero tracking, analytics, or behavioral telemetry frameworks.
-
-
-
-
-
-
-
-
-
Strictly Read-Only Inspection
-
Loom never executes prompts, writes code, modifies agent sessions, or approves dangerous CLI operations. It inspects local runtime state purely for monitoring.
-
-
-
-
-
-
-
-
-
Ephemeral Memory Tokens
-
Loopback authentication tokens for Google Antigravity language-server endpoints are retained strictly in memory and are never written to disk or logs.
-
-
-
-
-
-
-
-
-
Path Concealment Mode
-
Mask absolute filesystem paths and project folder evidence across all menu views with a single toggle in Settings (⌘,) during presentations and recordings.
-
-
-
-
-
-
-
100% Free and Open Source
-
Loom is developed in public under the permissive MIT License by Deepak Sharma (ChaiWithCode). Inspect every line of code, verify the build pipeline, or submit contributions on GitHub.
+
+
+Native macOS. Now with Liquid Glass.Click to explore ↗
+
+
Genuine app captures. Illustrative, privacy-safe session, quota, and storage data throughout.
+
+
+
A closer look / 55 seconds
Less switching. More knowing.
From your first session to the next quota reset. See Loom 2.0 in motion.
+
+
+Sound on for the full film. Captions are included in the picture.Vertical edition ↗
+
+
+
+
Made for the way you work
A clear view. A quieter workflow.
+
+
01 / Sessions
Know what needs you.
Working, waiting, idle, or needing attention. Bring your local coding sessions together, with the ones that need you first.
Search by repository, branch, or host app. Focus the app, reveal a workspace in Finder, or inspect discovery diagnostics when the evidence needs a closer look.
See observed quota and reset windows for Codex and Antigravity. Get a warning below 15%, a critical alert below 5%, and a reset notification when fresh observations confirm replenishment.
Session alerts can tell you when attention is needed or work finishes. Finished alerts default to at least five minutes of working time observed by Loom.
Genuine macOS notifications · demo scenarios
Availability depends on each provider's local interface. Claude Code does not expose quota locally.
+
+
+
03 / Local storage
See what adds up.
Get a clear breakdown of local agent storage, without digging through hidden folders. Configure local scans in Settings and see the details in Loom's Storage view.
+Local storage overview · illustrative data
+
+
+
+
04 / Desktop widgets
Keep it in the periphery.
Sessions, Quotas, and Overview widgets bring a little context to your desktop and Notification Center. Native to your Mac, ready when you glance over. Set up your widgets ↗
Loom uses the evidence available locally. Missing data stays missing, with diagnostics to help explain why.
+
Local provider capabilities
Provider
Sessions
Observed quota
OpenAI Codex
Supported
Supported
Claude Code
Supported
Not exposed upstream
Antigravity
Supported
Supported
Discovery, workspace details, and quota freshness depend on provider availability and local evidence. Loom does not guarantee a session for every process or repository.
+
+
Local by design
Your work. Your Mac.
No Loom account. No hosted backend. Your agents stay in your hands.
Loom observes local processes and provider information. It does not send prompts, approve commands, or modify your projects. Hide project paths in Settings to mask them in the interface and notifications.
Antigravity quota access uses a local loopback connection and an ephemeral in-memory token.