# Tidebreak

The research engine for serious work. Now open source.

Tidebreak is a local-first agentic coworker with two modes, proven on three years of private equity diligence at Brightwave and rebuilt in Rust. You choose your files, your repository, and your model. You walk away with a versioned spreadsheet, deck, or app, or with a reviewed change on a branch.

One engine, two modes. Work mode turns a granted folder into a versioned spreadsheet, deck, memo, chart, or small app. Code mode runs Claude Code, Codex CLI, opencode, and Grok CLI in isolated git worktrees, with native approvals, per-turn diffs, pull requests it repairs until the checks are green, and a merge that only you can start. Both modes share the same models, the same folder grants, the same permission modes, and one inbox.

Apache-2.0. Built in Rust. macOS, Windows, and Linux downloads at https://www.tidebreak.io/download, source at https://github.com/brightwave-inc/tidebreak.

## Three ways to bring a model

- Your ChatGPT plan. Sign in with ChatGPT and use the Plus or Pro subscription you already pay for. The OAuth handshake runs on your own machine.
- One API key. Anthropic, OpenAI, Google, xAI, Fireworks, Together, or OpenRouter. Keys live in the OS credential store, not in a config file.
- No cloud at all. Point the OpenAI-compatible slot at Ollama and run open-weight models on your own hardware.

Models reachable through those doors include Claude, GPT, Gemini, Grok, Llama, Mistral, Qwen, DeepSeek, GLM, Gemma, and Kimi. You can switch models mid-task; the journal carries context across the switch.

## Every layer is swappable

- Models: ChatGPT subscription, API key, OpenRouter, or Ollama. Cheap model for the grind, strong model for the hard step.
- Execution: one exec tool, four backends. Native macOS sandbox (the macOS default), local Docker, E2B, or Daytona, with per-chat network policy. Credentials never enter the sandbox. A code workspace can also run on a Model Gateway hosted machine that clones, commits, and pushes as you.
- Host access: a folder is available only after you pick it in the native picker, and the grant belongs to that chat, with separate list, read, write, and run capabilities. The model never sees absolute paths. Overwriting a connected file always asks. In code mode each workspace gets its own git worktree under a root you can see and move.
- Search: the model provider's built-in search (Anthropic and OpenAI), or Exa, Tavily, Brave, Firecrawl, or self-hosted SearXNG. On macOS the agent can drive an in-app browser with its own profile and hand it back to you. Files, code execution, approval-gated MCP servers, and REST APIs registered from an OpenAPI document are the interface to your data; a managed OAuth catalog is deliberately not.
- Work products: versioned files with in-app preview for spreadsheets, Word, PowerPoint, PDFs, and interactive charts, plus small local apps kept in an Apps library. Built-in skills for those formats. Append-only restore, so a wrong file is a recoverable event. Markdown and text outputs are editable in place, and every edit is a new version.
- Trust: permission modes per chat (Plan, Ask, Auto, Allow all), keys in the OS credential store, state in SQLite on disk. Every MCP tool asks. An agent can open, repair, and update a pull request, but only you can merge it.

## What working in it looks like

- Every deliverable keeps its history. Preview any version; restore one without deleting what came after.
- Switch models mid-task. One task, one journal, any provider.
- Folders are scoped to a chat. Access starts when you grant it and ends there.
- Sensitive actions ask first, in every permission mode.
- Every turn in code mode arrives as a diff. Read what the agent changed before any of it reaches your branch.
- Agents never share a checkout. Each workspace works in its own git worktree, so parallel work never collides.
- Hand it the pull request and walk away. Watch and fix survives a restart, repairs each new failure, and stops when the PR is ready for you.
- Rules that fire on the pull request, not on a clock. Triggers react to failed checks, conflicts, requested changes, a stale branch, or ready-to-merge state, once per commit.

## Code mode

- Four engines: Claude Code, Codex CLI, opencode, and Grok CLI. Tidebreak downloads the pinned engine the first time you pick it and uses the engine's own sign-in.
- Several conversations per workspace, each in its own tab, and workspaces side by side. Fork any finished turn. Engine subagents show up as child rows. Turns on a shared worktree run in sequence.
- Set the model, reasoning effort, and fast mode from the composer. Queue follow-ups or steer a live turn.
- Pull requests without leaving the app: open or update, move a draft to ready, read checks and review comments, update a stale branch, resolve conflicts, and merge by squash, merge, or rebase. Stacked pull requests render as lanes.
- One page tracks pull requests, workflow runs, and deployments across repositories. Analytics shows turn outcomes, tokens, prompt-cache traffic, estimated cost, and subscription usage.
- Several terminals per workspace, as tabs or split panes, in the worktree. Open the worktree in your own editor whenever you want to type.
- On macOS, Claude Code, Codex CLI, and opencode get scoped tools for an in-app browser with its own profile: snapshots, clicks, forms, waits, responsive viewports.

## Who builds it

Brightwave. For three years we built enterprise research agents for private equity diligence, the kind of file someone stakes their career on. Tidebreak is that engine, rewritten in Rust and open-sourced. Around it we are building governed model and app gateways, policy-bound access to production infrastructure, and a fully supported coding workflow. See the roadmap at https://www.tidebreak.io/roadmap.

## Practical notes

- Packaged builds ship for macOS (Universal and Apple Silicon), Windows (x86_64 and ARM64 installers), and Linux (AppImage and Debian package, x86_64 and ARM64). Release builds check for updates on every platform.
- The native sandbox, computer use, agent-driven browsing, and the managed LibreOffice install are macOS-only. On Windows and Linux, run generated code in Docker, E2B, or Daytona.
- Code mode drives Claude Code, Codex CLI, opencode, and Grok CLI on macOS, Windows, and Linux.
- Windows installers are not Authenticode-signed yet, so SmartScreen may warn on first run.
- No Tidebreak account. No Tidebreak server in the path.
- Pre-1.0: interfaces and local data formats may change between releases.

---

Canonical: https://www.tidebreak.io/
Site briefing for agents and crawlers: https://www.tidebreak.io/llms.txt

