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
首次启动
启动后会进入主界面,左侧是命令面板,右侧是工作区。你可以:
- 点击
+创建新的终端区块 - 输入命令开始使用
- 按
Ctrl+Shift+P打开命令面板
核心功能详解
1. AI 助手集成
Wave 内置了 AI 助手,可以直接在终端中与 AI 对话,无需切换窗口。
支持的 AI 模型:
| 模型类型 | 支持的服务 |
|---|---|
| 云端模型 | OpenAI (GPT-4)、Claude、Gemini、Azure、Perplexity |
| 本地模型 | Ollama、LM Studio 等 OpenAI 兼容服务 |
配置 AI:
- 打开设置 → AI Settings
- 选择模型提供商
- 输入 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 查看器 | |
| 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 连接:
- 点击左侧
+→New Connection - 输入服务器信息:
user@hostname - 选择认证方式(密码/密钥)
- 保存连接
一键连接:
保存的连接会显示在左侧面板,点击即可快速连接。
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:远程服务器调试
传统方式:
- 终端 SSH 连接服务器
- 查看日志需要
cat或tail - 编辑配置需要
vim或本地编辑后上传 - 遇到问题需要切换浏览器搜索
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 Terminal | iTerm2 | Windows Terminal | Warp |
|---|---|---|---|---|
| 开源 | ✅ 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
© 版权归无边界科技所有,转载请注明出处。