Windows-first local terminal workbench for multi-workspace development, split panes, and long-running AI CLI tasks.
Chuchen-Terminal is a local desktop terminal workbench built with Tauri 2, Vue 3, TypeScript, Rust, and xterm.js.
It was created for a very specific but increasingly common workflow: you have several repositories open, multiple frontend/backend services running, one or more AI CLI sessions working in the background, and you still need a clean way to remember which terminal belongs to which project, which command was run where, and which AI session needs your attention.
Most terminal apps are powerful, but they usually treat every terminal as a tab or a pane. Chuchen-Terminal treats terminals as part of a workspace structure:
Workspace -> Project Tab -> Pane -> Terminal Session
That structure is the core idea of this project.
AI coding tools changed how many developers use terminals.
It is common to leave a CLI agent running for minutes, switch to another project, come back later, and then wonder:
- Which terminal was running the frontend?
- Which one was the backend?
- Which AI CLI session finished?
- Which session is waiting for approval or input?
- Which command did I run in this project yesterday?
- How do I restore the same split layout after closing the app?
Chuchen-Terminal tries to make those workflows explicit instead of relying on memory, terminal titles, or a pile of unnamed tabs.
Chuchen-Terminal is currently an MVP / preview project.
It is already useful for local experimentation and day-to-day workflow testing, but it is not yet a polished release product. APIs, data structures, UI details, and packaging may still change.
If this problem matches your workflow, issues, suggestions, screenshots, and real-world usage feedback are very valuable.
- Workspace, project tab, pane, and terminal session hierarchy.
- Local PowerShell terminal sessions.
- Split-pane terminal workbench.
- Workspace snapshot save and restore.
- Recent workspaces, projects, terminal sessions, commands, and saved layouts.
- Workflow templates for AI CLI, frontend, backend, and full-stack setups.
- Quick search across local Chuchen-Terminal data.
- Session attention states for completed, waiting, failed, and stalled terminal tasks.
- System notifications and taskbar attention indicators for unattended AI CLI sessions.
- Local Provider profile discovery, import, full-configuration switching, and native write-back for Codex CLI, Claude Code, Gemini CLI, and Hermes.
- CC Switch configuration import as an optional source, with Provider identity reconciliation and duplicate merging.
- Usage and cost analytics with Provider/model/channel filtering, request details, Token breakdowns, latency, duration, model pricing, historical rollups, and real-time refresh events.
- Chinese and English interface localization across the main application flow.
- Light-first UI with dark theme support.
The June-July 2026 update substantially expanded Provider management, Usage analytics, native session ingestion, localization, terminal performance, and UI reliability. See CHANGELOG.md for the full breakdown.
The screenshots below use local demo data. Some local paths or notification details may be masked to avoid exposing private workspace information.
| Home / Workspaces | Terminal Workbench |
|---|---|
![]() |
![]() |
| System Templates | Personal Templates |
|---|---|
![]() |
![]() |
| Search | Attention States |
|---|---|
![]() |
![]() |
| Settings |
|---|
![]() |
All published screenshots use sanitized demo data and exclude private project names, terminal logs, Provider credentials, tokens, company data, and personal account information.
Chuchen-Terminal may be useful if you:
- work with multiple local repositories every day;
- often run frontend, backend, worker, database, and AI CLI terminals together;
- use Codex CLI, Claude Code, Gemini CLI, or other terminal-based AI coding tools;
- want workspace-level organization instead of only terminal-level tabs;
- want reminders when a long-running AI CLI task completes, waits for input, fails, or appears stalled;
- want to save and restore a project terminal layout.
It is probably not the right tool if you only need a lightweight single-terminal emulator, SSH management, or cloud-hosted terminal collaboration.
- Scenario: You leave Codex CLI, Claude Code, or another AI CLI running for several minutes and switch to other work.
- How Chuchen-Terminal helps: Keep those sessions grouped inside a workspace and monitor attention states such as completed, waiting for input, failed, or stalled.
- Why it matters: You do not need to keep watching one terminal window all the time.
Related screenshot:
docs/assets/screenshots/attention.png
- Scenario: A typical local project runs multiple terminals at once: frontend dev server, backend service, scripts, and AI CLI.
- How Chuchen-Terminal helps: Organize them under one workspace with project tabs and pane-based layouts.
- Why it matters: Terminals stop being anonymous tabs and become part of a project structure.
Related screenshot:
docs/assets/screenshots/workbench.png
- Scenario: You repeatedly create the same terminal combinations for AI CLI, frontend, backend, or full-stack work.
- How Chuchen-Terminal helps: Use system templates for common setups and personal templates for your own preferred layout.
- Why it matters: Starting a new project is faster and more consistent.
Related screenshots:
docs/assets/screenshots/template1.pngdocs/assets/screenshots/template2.png
- Scenario: You forget which project ran a command, which terminal belongs to a workspace, or where a layout was saved.
- How Chuchen-Terminal helps: Search workspace names, project tabs, terminals, paths, commands, and layouts from one place.
- Why it matters: You spend less time manually browsing terminal history and project structure.
Related screenshot:
docs/assets/screenshots/search.png
- Scenario: You reopen the app and want to decide which workspace to resume first.
- How Chuchen-Terminal helps: The home page shows a workspace-level entry point instead of dropping you into a single terminal immediately.
- Why it matters: You can re-enter work from context, not from a blank shell.
Related screenshots:
docs/assets/screenshots/home.pngdocs/assets/screenshots/settings.png
- Windows 10 / Windows 11
- Node.js 20+
- npm 10+
- Rust 1.77+
- WebView2 Runtime
npm installonly installs the JavaScript / frontend dependencies used by the app shell.- To run the desktop version with
npm run tauri:devor package it withnpm run tauri:build, you still need a working Rust toolchain and the Tauri build environment. - If you only want to preview the frontend UI in a browser,
npm install+npm run devis enough. - If you want the desktop app, terminal runtime integration, notifications, and taskbar behaviors, you need the full desktop development environment.
In other words:
npm install!= desktop environment readynpm run dev= frontend preview onlynpm run tauri:dev/npm run tauri:build= requires Rust + Tauri toolchain
Use this mode only if you want to view or edit the frontend shell in a browser.
Clone the repository:
git clone https://github.com/TheYoungChen/Chuchen-Terminal.git
cd Chuchen-Terminal/appInstall dependencies:
npm installRun the desktop app:
npm run tauri:devFrontend-only development:
npm run devThen open:
http://127.0.0.1:6173/
Use this mode if you want the actual terminal runtime, taskbar behavior, system notifications, and desktop integration.
Prerequisites:
- Node.js 20+
- npm 10+
- Rust 1.77+
- Tauri build environment
- WebView2 Runtime
Then run:
cd Chuchen-Terminal/app
npm install
npm run tauri:devIf Rust or the Tauri build environment is missing, the desktop app will not build even if npm install succeeds.
Frontend build:
cd Chuchen-Terminal/app
npm run buildDesktop build:
cd Chuchen-Terminal/app
npm run tauri:buildTauri and Rust build outputs are generated under app/src-tauri/target/. This directory can become very large and must not be committed.
For this project, large disk usage usually does not come from the source code itself.
The main contributors are:
app/node_modules/: frontend dependencies installed bynpm installapp/dist/: frontend production build outputapp/src-tauri/target/: Rust and Tauri compilation cache and build artifacts
In practice:
npm installusually adds the normal JavaScript dependency footprint.- The really large part is often
app/src-tauri/target/, especially after repeated desktop builds. - This is normal for local Tauri / Rust development, but these directories should never be committed.
If you are only browsing the UI or editing frontend code, the disk footprint stays much smaller than a full desktop build workflow.
Packaged Windows preview builds are available from the repository's GitHub Releases page. Developers can also run the latest source using the instructions above.
The repository uses sanitized demo workspace data only. Demo paths use examples such as:
D:\Projects\demo-workspace
D:\Projects\demo-frontend
D:\Projects\demo-backend
D:\Projects\demo-agent
Demo data makes the interface understandable on first launch without exposing real workspace paths, project names, Provider credentials, API keys, terminal logs, or private commands.
app/
src/ Vue frontend, UI state, terminal workbench logic
src-tauri/ Tauri 2 Rust desktop runtime
scripts/ Local development helper scripts
tests/ Desktop smoke tests
docs/
assets/ Public screenshots and demo assets
README.md
README.zh-CN.md
LICENSE
CONTRIBUTING.md
CODE_OF_CONDUCT.md
SECURITY.md
Internal planning notes, AI tool state, local caches, generated builds, and personal scratch files are not part of the public source distribution.
cd Chuchen-Terminal/app
npm run buildDesktop behavior should be verified on Windows because terminal sessions, WebView2 behavior, notifications, and taskbar attention indicators depend on the host OS.
- Improve public screenshots and release documentation.
- Stabilize workspace, template, search, and settings flows.
- Improve provider and runtime configuration management.
- Add import/export flows for common AI CLI configuration tools.
- Improve long-running task supervision for AI CLI workflows.
- Prepare signed desktop releases.
If you run into a bug, have a workflow that does not fit the current model, or think a feature would make AI CLI work easier, please open an issue.
Useful feedback includes:
- your operating system;
- what AI CLI or terminal workflow you use;
- how many projects and terminals you usually keep open;
- what layout or notification behavior feels wrong;
- screenshots with private data removed.
If this project matches a problem you have also run into, a Star helps other developers discover it.
See CONTRIBUTING.md.
See SECURITY.md.
MIT






