v0.10.0

Getting Started

Install Tide, open your first project, and bring your tools into a terminal-native IDE.

Install Tide

Install Tide

With Homebrew:

brew install ultradotdev/tap/tide

Or use the shell installer:

curl -fsSL https://ultra.dev/tide/install.sh | sh
Uninstall a shell installation
curl -fsSL https://ultra.dev/tide/uninstall.sh | sh

Removes a script installation. Your settings, sessions and history are kept.

View source on GitHub ↗

This documentation follows v0.10.0. Install with Homebrew or the shell installer. No compiler or build tools are needed. The shell installer downloads a prebuilt executable and adds a managed launcher at ~/.local/bin/tide; Homebrew manages its own installation.

Requirements

Tide runs on macOS and Linux. You need a supported terminal, plus Homebrew for the brew command or curl for the shell installer.

Prebuilt targets require macOS 14+ or Linux with glibc 2.35+ (Ubuntu 22.04+), on ARM64 or x64. WSL support is deferred. A true-color terminal and a Nerd Font give the best display; tui.iconStyle: "ascii" provides a plain-text icon fallback.

Your first project

From your project's directory, run:

tide .

Tide opens the current folder as your workspace.

If tide is not on PATH yet, check your Homebrew shell setup. For a shell installation, run ~/.local/bin/tide . and add ~/.local/bin to your shell's PATH.

  1. Use Ctrl+P to find a file and Ctrl+S to save.
  2. Open the command palette with Ctrl+K while editing. From a shell or agent tab, use Ctrl+T or F1.
  3. Split right with Ctrl+\, or down with Ctrl+Shift+\. Use pane menus to move tabs between panes.
  4. Press F6 to cycle regions and F7 / F8 to move between main panes.
  5. Use Ctrl+Shift+A to add a tab. Choose a file, terminal, SQL editor, or installed coding agent.

Some terminals cannot transmit Ctrl+Shift or Cmd combinations. The shortcut reference includes alternatives and context-specific bindings.

Find your workflow

Manage your installation

Updates and rollback

For a Homebrew installation:

brew upgrade ultradotdev/tap/tide

For a shell installation, run the shell install command again to update. The previous active payload is retained for rollback, and activation checks installation ownership and payload integrity.

To return to the previous shell-installed release:

curl -fsSL https://ultra.dev/tide/install.sh | sh -s -- --rollback

Uninstall

Remove a Homebrew installation with:

brew uninstall ultradotdev/tap/tide

For a shell installation:

tide --uninstall

This keeps your settings, sessions, credentials, and history. To remove Tide's user data too, use tide --uninstall --purge instead and confirm the prompt. Project .tide directories and providers' own session stores remain. These flags apply to the shell-managed launcher; use Homebrew to remove a brew installation.

Configuration and storage

Open Settings from the palette. Tide loads embedded defaults, then your settings.jsonc. Keybindings live alongside it in keybindings.jsonc.

RootLocationContents
config${XDG_CONFIG_HOME:-~/.config}/tide/Settings, keybindings, themes and saved connections
data${XDG_DATA_HOME:-~/.local/share}/tide/Encrypted secrets and database history
state${XDG_STATE_HOME:-~/.local/state}/tide/Sessions, recovery and logs
cache${XDG_CACHE_HOME:-~/.cache}/tide/Rebuildable application data
workspace<workspace>/.tide/Project-scoped database connection records

XDG overrides must be absolute paths. Font family and size are controlled by your terminal application.

{
  "workbench.colorTheme": "ultra-dusk",
  "editor.tabSize": 2,
  "editor.wordWrap": "on",
  "editor.minimap.enabled": true,
  "tui.sidebar.location": "left",
  "tui.terminal.scrollback": 1000
}
Supported settings and defaults
SettingDefault
ai.autoStartClitrue
ai.cli.defaultProvider"claude-code"
ai.cli.workspaceAliases[]
editor.autoIndent"full"
editor.diagnostics.curlyUnderlinetrue
editor.insertSpacestrue
editor.lineNumbers"on"
editor.minimap.enabledtrue
editor.tabSize2
editor.undoHistoryLimit1000
editor.wordWrap"on"
editor.wordWrapColumn80
files.exclude{"**/.DS_Store":true,"**/.git":true,"**/node_modules":true}
files.watchFiles"onFocus"
git.inlineDiff.contextLines3
git.inlineDiff.maxHeight15
lsp.completionDebounceMs250
lsp.diagnostics.enabledtrue
lsp.diagnostics.showInGuttertrue
lsp.diagnostics.underlineErrorstrue
lsp.enabledtrue
lsp.hover.enabledtrue
lsp.signatureHelp.display"popup"
lsp.signatureHelp.enabledtrue
lsp.triggerCharacters".:/<@("
session.autoSavetrue
session.autoSaveInterval30000
session.databaseQueryHistorytrue
session.restoreOnStartuptrue
terminal.shell""
tui.agentsSidebar.visibletrue
tui.agentsSidebar.width36
tui.diffViewer.autoRefreshtrue
tui.diffViewer.editMode"stage-modified"
tui.diffViewer.showDiagnosticstrue
tui.filePicker.maxFiles10000
tui.fileTree.showGitStatustrue
tui.iconStyle"nerd"
tui.mainRegion.minimumWidth56
tui.outline.autoFollowtrue
tui.outline.collapsedOnStartuptrue
tui.sidebar.location"left"
tui.sidebar.visibletrue
tui.sidebar.width36
tui.tabBar.scrollAmount1
tui.terminal.height10
tui.terminal.scrollback1000
tui.timeline.collapsedOnStartuptrue
tui.timeline.commitCount50
tui.timeline.mode"file"
workbench.colorTheme"ultra-dusk"

Moving from an earlier implementation

Back up your configuration, data, and state roots before switching. Rust can read historical TypeScript sessions, but writes its own snapshots. Settings and themes are reused where supported; preserved settings do not necessarily enable a current feature.

If you are developing Tide or managing a source build, see the developer installation instructions.

Check your setup

tide --version
tide --check-catalogs
tide --check-terminal
tide --check-lsp
tide --check-ai-cli

Missing agent or language-server features usually mean the executable is absent from PATH. Install and authenticate provider CLIs separately, then restart Tide after changing PATH.

Use tide --debug for debug logging. To investigate session restoration, start with tide --no-session .; keep your original state intact.

If a sidebar disappears in a small terminal, increase the window size. Tide preserves the requested layout while collapsing regions that no longer fit.

Reference and development