An open-source, AI-integrated, cross-platform terminal for seamless workflows
Find a file
Damien Storm 17fb1567e9
docs: add OSC-7 working-directory tracking documentation (#2211)
## Background & Motivation

After installing Wave Terminal, new tabs and splits always started in my
home folder instead of the current project directory, contrary to
expectations from other terminals I've used. For context, I use `bash`
for my shell.

The existing documentation did not provide guidance about the required
OSC 7 setup, so I had to dig into GitHub issues and source code to
discover that Wave relies on a terminal escape sequence to track the
shell’s working directory. This confusion represents a barrier for
first-time users.

## Description

This PR introduces a new documentation page—**Tracking Your Shell’s
Working Directory**—which:

1. Explains **why** Wave uses the OSC 7 escape sequence to keep its
internal `cmd:cwd` metadata in sync with your shell.
2. Provides copy-and-paste snippets to **enable** OSC 7 in **Bash**,
**Zsh**, and **Fish**.
3. Details **verification steps** in the Wave UI to confirm correct CWD
tracking.

By making this enhancement, users can:

- Open new tabs or split panes with their current working directory.
- Avoid the `ERRCWD invalid cwd` errors in some shell configurations.
- Spend less time troubleshooting and more time working.

## Changes

- **Added** `docs/docs/track-cwd.mdx` (new page to enable OSC 7).
- **Updated** `docs/docs/index.mdx` (linked the new page under **Other
References**).

## Related Issues

- <https://github.com/wavetermdev/waveterm/issues/1130> — New tabs
should inherit the CWD.
- <https://github.com/wavetermdev/waveterm/issues/2057> — Split panes
always start in home directory.

## Testing & Review

1. **Local build**

   ```bash
   cd waveterm
   yarn
   task docsite
   ```

- Confirm the new “Tracking Your Shell’s Working Directory” page appears
in the sidebar.
   - Verify the instructions and code samples render correctly.

2. **Content review**
   - Are the shell snippets accurate?
   - Is the enable → verify flow clear and complete?

---
_I have followed the [contributing
guidelines](https://github.com/wavetermdev/waveterm/blob/main/CONTRIBUTING.md)
and used a conventional commit message._
2025-08-14 22:47:23 -07:00
.github fix merge gatekeeper rule to run on foreign PRs (#2250) 2025-08-14 22:46:54 -07:00
.storybook add tailwind to wave, support shadcn + donut chart as a POC (#1775) 2025-02-04 17:58:36 -08:00
.vscode update codeql to only run for code files (#2251) 2025-08-14 22:27:38 -07:00
.zed Add basic Zed workspace configs (#1942) 2025-02-09 15:00:46 -08:00
aiprompts move viewprompt to the aiprompts dir (#1956) 2025-02-13 15:08:51 -08:00
assets Make the Wave logo icons slightly smaller (#1500) 2024-12-11 13:24:12 -08:00
build Squash some leftover bugs (#1495) 2024-12-11 12:52:15 -08:00
cmd fix wsh ai arg handling after "-" (for stdin) (#2129) 2025-04-28 11:00:58 -07:00
db Allow AI Presets To Automatically Update Widgets (#1954) 2025-02-13 13:38:12 -08:00
docs docs: add OSC-7 working-directory tracking documentation (#2211) 2025-08-14 22:47:23 -07:00
emain Error Popups and Context Menu Items (#1989) 2025-02-18 16:25:03 -08:00
frontend Feat add editor fontsize (#2088) 2025-05-02 11:10:17 -07:00
pkg remove panic, and revert connserver from using non-blocking drainchannel safe (#2049) 2025-03-08 12:07:16 -08:00
public add tailwind to wave, support shadcn + donut chart as a POC (#1775) 2025-02-04 17:58:36 -08:00
schema fix: decouple AiSettingsType from SettingsType (#1961) 2025-02-14 00:30:46 -08:00
testdriver touch up final test condition (#1338) 2024-11-22 17:16:04 -08:00
tests/copytests Add S3 fileshare implementation, improve cp behavior (#1896) 2025-02-14 17:27:02 -08:00
.editorconfig Oops i actually made the tabs wrong (#1384) 2024-12-04 13:49:14 -08:00
.gitattributes WSL Integration (#1031) 2024-10-23 22:43:17 -07:00
.gitignore update electron version (#2149) 2025-05-02 11:03:39 -07:00
.prettierignore Add filewatcher for config files (#63) 2024-06-19 23:59:41 -07:00
.yarnrc.yml Fix prettier formatting 2024-05-28 12:12:28 -07:00
ACKNOWLEDGEMENTS.md Add back the acknowledgements readme, update about modal link (#818) 2024-09-24 16:58:18 -07:00
BUILD.md Fix broken arm build (#2017) 2025-02-21 11:37:52 -08:00
CNAME Move docsite to main repo (#1204) 2024-11-06 10:45:21 -08:00
CODE_OF_CONDUCT.md move some metadata files over to new repo 2024-09-18 12:04:28 -07:00
CONTRIBUTING.md Add link to Good First Issues in Contributing Guide (#1991) 2025-02-18 17:06:56 -08:00
electron-builder.config.cjs Fix broken arm build (#2017) 2025-02-21 11:37:52 -08:00
electron.vite.config.ts add tailwind to wave, support shadcn + donut chart as a POC (#1775) 2025-02-04 17:58:36 -08:00
eslint.config.js Switch to using electron-vite instead of WebPack (#45) 2024-06-13 16:49:25 -07:00
go.mod Bump github.com/sashabaranov/go-openai from 1.37.0 to 1.39.0 (#2145) 2025-05-02 10:36:08 -07:00
go.sum Bump github.com/sashabaranov/go-openai from 1.37.0 to 1.39.0 (#2145) 2025-05-02 10:36:08 -07:00
index.html add tailwind to wave, support shadcn + donut chart as a POC (#1775) 2025-02-04 17:58:36 -08:00
LICENSE Happy new year! (#1684) 2025-01-04 20:56:57 -08:00
NOTICE Happy new year! (#1684) 2025-01-04 20:56:57 -08:00
package.json chore: bump package version to 0.11.3 2025-05-05 17:39:14 +00:00
prettier.config.cjs Windows Line Endings (#923) 2024-10-01 12:54:15 -07:00
README.md Update README.md (#2079) 2025-03-24 23:56:53 -07:00
RELEASES.md Update more links in releases.md (#1826) 2025-01-23 17:59:16 -08:00
ROADMAP.md new tevents analytics framework (#1894) 2025-02-03 15:32:44 -08:00
SECURITY.md Add markdown alert parsing, fix buffer issue when switching files (#988) 2024-10-08 09:25:41 -07:00
Taskfile.yml try again to fix the build, remove generates (#2157) 2025-05-02 15:42:27 -07:00
tsconfig.json add tailwind to wave, support shadcn + donut chart as a POC (#1775) 2025-02-04 17:58:36 -08:00
version.cjs If prerelease is false and action is none, remove the prerelease version string (#395) 2024-09-18 13:12:34 -07:00
vitest.config.ts Switch to using electron-vite instead of WebPack (#45) 2024-06-13 16:49:25 -07:00
yarn.lock update caniuse browserlist (#2153) 2025-05-02 13:30:10 -07:00

Wave Terminal Logo

Wave Terminal

FOSSA Status

Wave is an open-source terminal that combines traditional terminal features with graphical capabilities like file previews, web browsing, and AI assistance. It runs on MacOS, Linux, and Windows.

Modern development involves constantly switching between terminals and browsers - checking documentation, previewing files, monitoring systems, and using AI tools. Wave brings these graphical tools directly into the terminal, letting you control them from the command line. This means you can stay in your terminal workflow while still having access to the visual interfaces you need.

WaveTerm Screenshot

Key Features

  • Flexible drag & drop interface to organize terminal blocks, editors, web browsers, and AI assistants
  • Built-in editor for seamlessly editing remote files with syntax highlighting and modern editor features
  • Rich file preview system for remote files (markdown, images, video, PDFs, CSVs, directories)
  • Integrated AI chat with support for multiple models (OpenAI, Claude, Azure, Perplexity, Ollama)
  • Command Blocks for isolating and monitoring individual commands with auto-close options
  • One-click remote connections with full terminal and file system access
  • Rich customization including tab themes, terminal styles, and background images
  • Powerful wsh command system for managing your workspace from the CLI and sharing data between terminal sessions

Installation

Wave Terminal works on macOS, Linux, and Windows.

Platform-specific installation instructions can be found here.

You can also install Wave Terminal directly from: www.waveterm.dev/download.

Minimum requirements

Wave Terminal runs on the following platforms:

  • macOS 11 or later (arm64, x64)
  • Windows 10 1809 or later (x64)
  • Linux based on glibc-2.28 or later (Debian 10, RHEL 8, Ubuntu 20.04, etc.) (arm64, x64)

The WSH helper runs on the following platforms:

  • macOS 11 or later (arm64, x64)
  • Windows 10 or later (arm64, x64)
  • Linux Kernel 2.6.32 or later (x64), Linux Kernel 3.1 or later (arm64)

Roadmap

Wave is constantly improving! Our roadmap will be continuously updated with our goals for each release. You can find it here.

Want to provide input to our future releases? Connect with us on Discord or open a Feature Request!

Building from Source

See Building Wave Terminal.

Contributing

Wave uses GitHub Issues for issue tracking.

Find more information in our Contributions Guide, which includes:

License

Wave Terminal is licensed under the Apache-2.0 License. For more information on our dependencies, see here.