Trace is a local-first desktop app for working with AI agents.
Run built-in and external agents, manage files, use skills and MCP tools, automate tasks, and keep control on your machine.
Trace is a cross-platform Electron desktop app that gives AI agents a visual, local workspace. It is not just a chat window: agents can read and write project files, use tools, run multi-step workflows, and ask for approval when needed.
The desktop app is designed to work local-first. Core usage does not require a hosted server. GitHub Releases remain the release source of truth, while mirrored release assets can be served through the public release CDN; a separate hosted web app is optional for landing pages, license/billing, or account features.
- Local-first desktop app: your workspace and app runtime stay on your machine by default.
- Built-in agent runtime: install the app, add an API key, and start using agent workflows.
- Multi-agent support: connect tools such as Claude Code, Codex, Qwen Code, OpenCode, Gemini, Hermes Agent, Cursor Agent, and other compatible runtimes through one interface.
- Files and workspaces: attach files, chat with folders, preview generated files, and let agents work against real project context.
- Assistants and skills: use built-in assistants for coding, documents, spreadsheets, presentations, research, planning, and custom workflows; extend them with reusable skills.
- MCP tools: configure Model Context Protocol servers once and use them across supported agents.
- Team mode: coordinate multiple agents through a leader/teammate workflow with shared workspace context.
- WebUI and channels: expose a local WebUI or connect messaging channels when you intentionally want remote access.
- Scheduled automation: run recurring or unattended tasks while keeping the desktop app in control.
Download the latest signed build from the Trace downloads page. GitHub Releases remain available for release notes and fallback assets.
Supported platforms:
- macOS
- Windows
- Linux
After installation:
- Open Trace.
- Add an API key or configure a local/provider endpoint.
- Choose an assistant or agent runtime.
- Attach files or open a workspace folder.
- Approve tool actions as needed.
Trace should continue to be useful without any hosted backend:
- Desktop app runtime runs locally.
- Workspace files remain local unless you explicitly connect remote services.
- WebUI is optional and can run from the local app.
- GitHub Releases publish the canonical release artifacts.
- The release CDN can mirror installers and update metadata for public downloads and auto-update checks.
A hosted web app can be added later for:
- marketing/landing page
- downloads page
- billing and license checkout
- account or license validation
- custom update metadata if the release CDN needs a different layout
This repo uses Bun.
bun install
bun run devUseful checks:
bun run format
bun run format:check
bun run lint:fix
bunx tsc --noEmit
bun run testIf renderer text or locale files change, also run:
bun run i18n:types
node scripts/check-i18n.jsDesktop releases are published through GitHub Releases, then mirrored to the release CDN when distribution credentials are configured.
Typical flow:
git tag v1.0.0
git push origin v1.0.0The release workflow builds desktop artifacts and uploads installer/update metadata. Signed and notarized production builds require the appropriate GitHub Actions secrets for Apple and Windows code signing.
packages/desktop/: Electron desktop app.packages/web-host/: local WebUI host/runtime support.packages/web-cli/: standalone WebUI CLI packaging.packages/shared-scripts/: shared build and packaging helpers.scripts/: release, install, build, and maintenance scripts.tests/: unit, integration, and e2e coverage.resources/: app icons, README assets, release resources, and packaged Trace local runtime assets.
Some internal package names, protocol identifiers, backend contracts, and legacy environment variables are compatibility surfaces and should not be renamed casually. User-facing product identity should be Trace.
Apache-2.0. See LICENSE.


