Wave Terminal:内置AI与浏览器的下一代开源终端

0 阅读9分钟

Wave Terminal:内置AI与浏览器的下一代开源终端

背景

作为开发者,终端是我们每天打交道最多的工具之一。但传统终端存在一些痛点:

  • 查看文件需要切换到编辑器或浏览器
  • 远程连接断开后会话丢失
  • 需要查文档时要频繁切换窗口
  • AI 辅助需要单独打开 ChatGPT 或其他工具

如果能在一个终端里完成所有这些工作,效率会大大提升。

Wave Terminal 就是这样的工具——它把 AI 助手、文件预览、网页浏览、远程编辑全部集成到终端中,在 GitHub 上已获得 17K+ Star

什么是 Wave Terminal?

Wave Terminal 是一个开源的、AI 集成的现代终端,支持 macOS、Linux 和 Windows。

核心特性:

特性说明
内置 AI 助手支持 OpenAI、Claude、Gemini、Ollama 等多种模型
可视化文件预览支持 Markdown、图片、视频、PDF、CSV 等格式
内置编辑器远程文件编辑,支持语法高亮
持久化 SSH断网自动重连,会话不丢失
多区块布局拖拽式界面,终端、编辑器、浏览器同屏显示
内置浏览器直接在终端中查看文档、搜索问题
跨平台支持 macOS、Linux、Windows

GitHub 地址: github.com/wavetermdev…

快速上手

安装

方式一:官网下载

访问 www.waveterm.dev/download 下载对应平台的安装包。

方式二:包管理器安装

# macOS (Homebrew)
brew install --cask waveterm

# Windows (Winget)
winget install waveterm

# Linux (AppImage)
wget https://github.com/wavetermdev/waveterm/releases/latest/download/waveterm-linux-x86_64.AppImage
chmod +x waveterm-linux-x86_64.AppImage
./waveterm-linux-x86_64.AppImage

首次启动

启动后会进入主界面,左侧是命令面板,右侧是工作区。你可以:

  1. 点击 + 创建新的终端区块
  2. 输入命令开始使用
  3. Ctrl+Shift+P 打开命令面板

核心功能详解

1. AI 助手集成

Wave 内置了 AI 助手,可以直接在终端中与 AI 对话,无需切换窗口。

支持的 AI 模型:

模型类型支持的服务
云端模型OpenAI (GPT-4)、Claude、Gemini、Azure、Perplexity
本地模型Ollama、LM Studio 等 OpenAI 兼容服务

配置 AI:

  1. 打开设置 → AI Settings
  2. 选择模型提供商
  3. 输入 API Key(本地模型无需 Key)

使用示例:

# 在终端中直接调用 AI
wsh ai "解释这个命令的作用: $(history | tail -1)"

# 管道输出给 AI 分析
kubectl logs pod-xxx | wsh ai "分析这个错误日志"

# 让 AI 帮你写命令
wsh ai "帮我写一个查找大文件的命令"

AI 的终端上下文能力:

Wave AI 可以读取你的终端输出和滚动历史,这意味着:

  • 直接分析当前命令的输出结果
  • 调试错误日志
  • 解释复杂的命令输出

2. 可视化文件预览

Wave 支持在终端内直接预览各种文件,无需打开其他应用。

支持的文件类型:

类型说明
Markdown渲染后的富文本显示
图片PNG、JPG、GIF 等
视频MP4、WebM 等
PDF内置 PDF 查看器
CSV表格形式展示
代码语法高亮显示

使用方式:

# 预览 Markdown 文件
wsh file preview README.md

# 预览图片
wsh file preview screenshot.png

# 预览远程服务器上的文件
wsh file preview user@server:/var/log/app.log

也可以直接在文件管理器中点击文件预览。

3. 内置编辑器

Wave 内置了一个功能完整的编辑器,可以直接编辑远程文件。

编辑器特性:

  • 语法高亮(支持主流编程语言)
  • 行号显示
  • 自动缩进
  • 查找替换
  • 多标签页

编辑远程文件:

# 方式一:命令行打开
wsh file edit user@server:/etc/nginx/nginx.conf

# 方式二:在文件预览中点击编辑按钮

编辑保存后自动同步到远程服务器,无需手动上传。

4. 持久化 SSH 会话

这是 Wave 最实用的功能之一。传统终端 SSH 连接断开后,会话和正在运行的命令都会丢失。Wave 的持久化 SSH 可以:

  • 网络中断后自动重连
  • 关闭 Wave 后重新打开,会话仍在
  • 切换网络(如从 WiFi 切到热点)不影响会话

配置 SSH 连接:

  1. 点击左侧 +New Connection
  2. 输入服务器信息:user@hostname
  3. 选择认证方式(密码/密钥)
  4. 保存连接

一键连接:

保存的连接会显示在左侧面板,点击即可快速连接。

5. 多区块布局

Wave 采用"区块"概念,可以在一个窗口中同时显示多个终端、编辑器、浏览器。

创建区块:

快捷键: Ctrl+Shift+N (新建终端区块)
       Ctrl+Shift+E (新建编辑器区块)
       Ctrl+Shift+B (新建浏览器区块)

拖拽布局:

  • 拖动区块标题栏调整位置
  • 拖动区块边缘调整大小
  • 双击标题栏全屏区块

典型布局示例:

┌─────────────────────────────────────────┐
│  终端区块1 (SSH到服务器)  │  编辑器区块  │
│                          │  (编辑配置)   │
├──────────────────────────┴──────────────┤
│  浏览器区块 (查看文档/StackOverflow)     │
├─────────────────────────────────────────┤
│  AI 助手区块 (分析日志/写命令)           │
└─────────────────────────────────────────┘

6. 内置浏览器

Wave 内置了一个轻量级浏览器,可以直接在终端中:

  • 查看 GitHub 仓库
  • 搜索 StackOverflow
  • 阅读技术文档
  • 访问内部 Wiki

使用场景:

# 遇到错误,直接打开浏览器搜索
# 无需切换窗口,在同一工作区中完成

# 查看项目文档
wsh browse https://docs.project.io

# 查看代码仓库
wsh browse https://github.com/user/repo

实战场景

场景1:远程服务器调试

传统方式:

  1. 终端 SSH 连接服务器
  2. 查看日志需要 cattail
  3. 编辑配置需要 vim 或本地编辑后上传
  4. 遇到问题需要切换浏览器搜索

Wave 方式:

┌──────────────────┬──────────────────┐
│ SSH终端          │ 日志预览         │
│ kubectl logs...  │ (可视化滚动)     │
├──────────────────┴──────────────────┤
│ 编辑器 (直接编辑远程配置)            │
├─────────────────────────────────────┤
│ AI助手 (分析错误日志)                │
└─────────────────────────────────────┘

一个窗口完成所有操作,无需切换。

场景2:AI 辅助命令行

# 场景:忘记某个复杂的 Git 命令
wsh ai "如何撤销最近一次 commit 但保留修改"

# AI 返回:
# git reset --soft HEAD~1

# 场景:分析日志错误
tail -100 /var/log/app.log | wsh ai "找出所有 ERROR 并解释原因"

# 场景:生成复杂命令
wsh ai "写一个命令:查找当前目录下超过100MB的文件并按大小排序"

场景3:多服务器管理

Wave 支持同时连接多个服务器,每个连接一个区块:

┌──────────────────┬──────────────────┐
│ 生产服务器       │ 测试服务器       │
│ ssh prod-server  │ ssh test-server  │
├──────────────────┴──────────────────┤
│ AI助手 (对比两台服务器的配置差异)    │
└─────────────────────────────────────┘

高级技巧

1. wsh 命令系统

Wave 提供了强大的 wsh 命令系统:

# 文件操作
wsh file list                    # 列出文件
wsh file copy local:/file remote:/path  # 跨主机复制
wsh file sync local:/dir remote:/dir    # 同步目录

# AI 操作
wsh ai "你的问题"                 # AI 对话
wsh ai --attach file.txt "分析这个文件"  # 附加文件

# 工作区管理
wsh workspace save "我的工作区"   # 保存当前布局
wsh workspace load "我的工作区"   # 加载保存的布局

2. 安全密钥存储

Wave 使用系统原生后端安全存储敏感信息:

# 存储密钥
wsh secret set openai_key "sk-xxx"
wsh secret set db_password "xxx"

# 在配置中引用
# Wave 会自动解密使用

3. 自定义主题

Wave 支持丰富的自定义:

  • 终端主题(配色方案)
  • 标签页样式
  • 背景图片
  • 字体设置

配置文件位置:

~/.waveterm/config.yaml

4. 快捷键

快捷键功能
Ctrl+Shift+P命令面板
Ctrl+Shift+N新建终端区块
Ctrl+Shift+E新建编辑器区块
Ctrl+Shift+B新建浏览器区块
Ctrl+Shift+A新建 AI 区块
Ctrl+Shift+F全屏切换当前区块
Ctrl+Shift+W关闭当前区块

与其他终端对比

对比项Wave TerminaliTerm2Windows TerminalWarp
开源✅ Apache 2.0❌ GPL✅ MIT❌ 闭源
跨平台✅ Mac/Win/Linux❌ 仅 Mac❌ 仅 Windows❌ 仅 Mac
内置 AI✅ 多模型支持✅ 仅自家
文件预览✅ 多格式
内置编辑器
内置浏览器
持久化 SSH
本地模型✅ Ollama 等--

常见问题

Q:Wave 性能如何?

A:Wave 基于 Electron 开发,内存占用比原生终端稍高,但在现代电脑上完全可接受。远程连接的持久化特性带来的便利远超这点性能开销。

Q:AI 功能是否需要付费?

A:Wave 本身完全免费开源。AI 功能需要自备 API Key,目前 Beta 阶段提供免费 AI 额度。使用本地模型(Ollama)完全免费。

Q:如何迁移现有终端配置?

A:Wave 使用标准 Shell(bash/zsh),会自动读取你的 .bashrc.zshrc 配置。现有的别名、函数、环境变量都会保留。

Q:支持哪些 Shell?

A:支持 bash、zsh、fish、pwsh 等主流 Shell,可以在设置中选择默认 Shell。

Q:远程连接安全吗?

A:Wave 使用标准 SSH 协议,密钥存储使用系统原生安全后端(macOS Keychain、Windows Credential Manager、Linux Secret Service)。

适用场景

推荐使用:

  • 频繁连接远程服务器进行开发
  • 需要在终端中查看多种格式文件
  • 需要 AI 辅助命令行工作
  • 多任务并行,需要同屏显示多个终端/编辑器
  • 远程调试、日志分析

不推荐使用:

  • 对内存占用极其敏感的环境
  • 只需要基础终端功能的场景

总结

Wave Terminal 用"终端 + AI + 可视化"的组合,重新定义了现代终端该有的样子。

核心优势回顾:

  • AI 原生:内置多模型 AI 助手,无需切换窗口
  • 可视化:文件预览、编辑器、浏览器一站式解决
  • 持久连接:SSH 断网自动重连,会话永不丢失
  • 跨平台:macOS、Linux、Windows 全支持
  • 开源免费:Apache 2.0 许可,完全开源

对于经常在终端工作的开发者,Wave Terminal 是一个值得尝试的效率神器。


本文由无边界科技技术团队分享,专注软件开发与技术解决方案。

官网:wubianj.com

© 版权归无边界科技所有,转载请注明出处。