mirror of
https://github.com/wavetermdev/waveterm
synced 2026-05-06 15:08:34 +00:00
## 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._ |
||
|---|---|---|
| .. | ||
| docs | ||
| src | ||
| static | ||
| .editorconfig | ||
| .gitignore | ||
| .prettierignore | ||
| .remarkrc | ||
| babel.config.js | ||
| docusaurus.config.ts | ||
| eslint.config.js | ||
| package.json | ||
| prettier.config.cjs | ||
| README.md | ||
| tsconfig.json | ||
Wave Terminal Documentation
This is the home for Wave Terminal's documentation site. This README is specifically about building and contributing to the docs site. If you are looking for the actual hosted docs, go here -- https://docs.waveterm.dev
Installation
Our docs are built using Docusaurus, a modern static website generator.
yarn
Local Development
task docsite
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
Build
task docsite:build:<embedded,public>
This command generates static content into the build directory and can be served using any static contents hosting service.
Deployment
Deployments are handled automatically by the Docsite and Storybook CI/CD workflow