Warp:AI Agent 时代的现代开源终端
前言
终端(Terminal)作为开发者日常接触最多的工具之一,几十年来几乎没有本质变化。从 Unix 时代的 VT100 到今天,我们依然在黑底白字的命令行里敲命令、看输出。Warp 的出现改变了这一切——它不是又一个”换皮终端”,而是从底层重新思考了终端应该是什么样子。
2026 年 4 月 28 日,Warp 正式宣布开源,代码托管在 GitHub 上。这对开发者社区来说是一个值得关注的事件。
来源与背景
Warp 由 Zach Lloyd 创立,他此前曾在 Google 工作多年。Warp 的核心理念是:终端不应该只是一个命令行的”管道”,而应该是一个现代化的开发环境。
公司在 2020 年成立,2021 年首次以 “Show HN” 形式在 Hacker News 上亮相,此后经历了五年的迭代开发。2026 年 4 月,Warp 做出了一个重要决定——将客户端代码完全开源。
值得注意的是,OpenAI 是 Warp 开源仓库的创始赞助商,但 Warp 本身并非 OpenAI 或 Sam Altman 的项目。Warp 的创始人是 Zach Lloyd,公司总部位于旧金山。
-
官网:https://www.warp.dev -
GitHub:https://github.com/warpdotdev/Warp -
许可证:AGPL v3(UI 框架部分为 MIT) -
主要语言:Rust(占比约 98%)
截至 2026 年 5 月,Warp 在 GitHub 上已获得 44.7k stars,拥有超过 700,000 活跃开发者用户。
它是什么
Warp 官方将其定义为 “Agentic Development Environment”——智能体开发环境。简单来说,它是一个基于终端的开发平台,既保留了传统终端的命令行交互方式,又融入了现代 IDE 的一些核心能力。
用大白话说:它是一个”长得像终端的轻量 IDE”。
Warp 的核心特征:
-
终端优先:底层仍然是终端,支持所有 Shell(bash、zsh、fish 等) -
块状导航(Block-based Navigation):命令和输出被组织成独立的”块”,可以单独选中、复制、搜索 -
IDE 级输入体验:支持多行编辑、语法高亮、自动补全 -
内置 AI Agent:可以直接在终端中调用 Claude Code、Codex、Gemini CLI 等 AI 编码工具 -
跨平台:支持 macOS、Linux、Windows
和 Windows CMD / PowerShell / Linux 终端是什么关系
很多人看到 Warp 会问:这和我电脑自带的 CMD、PowerShell、或者 Linux 的终端有什么关系?要回答这个问题,需要先搞清楚一个经常被混淆的概念——**终端模拟器(Terminal Emulator)**和 **Shell(命令行解释器)**是两回事。
两个容易混淆的概念
|
|
|
|
|---|---|---|
| Shell |
|
|
| 终端模拟器 |
|
|
Shell 是引擎,终端模拟器是仪表盘。 同一个引擎可以装在不同的车上,同一个终端模拟器也可以跑不同的 Shell。
它们的层级关系
┌──────────────────────────────────────────────────┐
│ │
│ ┌──────────────────────────────────────────┐ │
│ │ 终端模拟器 (Warp / iTerm2 / Windows │ │
│ │ Terminal / GNOME Terminal) │ │
│ │ │ │
│ │ 职责:显示文字、接收输入、管理窗口 │ │
│ │ │ │
│ │ ┌──────────────────────────────────┐ │ │
│ │ │ Shell (bash / zsh / PowerShell │ │ │
│ │ │ / CMD / fish) │ │ │
│ │ │ │ │ │
│ │ │ 职责:解释命令、调用系统程序 │ │ │
│ │ └──────────────────────────────────┘ │ │
│ └──────────────────────────────────────────┘ │
│ │
│ ┌──────────────────────────────────────────┐ │
│ │ 操作系统 (macOS / Linux / Windows) │ │
│ └──────────────────────────────────────────┘ │
│ │
└──────────────────────────────────────────────────┘
各平台的对应关系
Windows 上:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Warp |
|
播放器 |
所以:Warp 和 Windows Terminal 是同类产品,都是终端模拟器。它们可以跑 CMD、PowerShell 或 WSL 里的任何 Shell。
macOS 上:
|
|
|
|---|---|
|
|
|
|
|
|
| Warp |
|
Warp 和 iTerm2 是同类产品,都替代 macOS 自带的 Terminal.app。
Linux 上:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
| Warp |
|
Warp 和 GNOME Terminal、Konsole 是同类产品。
Warp 做了什么改变
传统终端模拟器的工作很简单:打开一个窗口,连接到 Shell 进程,把你敲的字传给 Shell,把 Shell 的输出显示出来。仅此而已。
Warp 在这个基础上加了两层东西:
第一层:更好的终端体验
-
块状导航:命令和输出不再是连续的文本流,而是被组织成独立的”块”,可以单独选中、复制、搜索 -
IDE 级输入:多行编辑、语法高亮、自动补全(传统终端的输入体验很差) -
垂直标签页:比传统标签页更高效的多会话管理 -
文件树:不用离开终端就能浏览项目结构
第二层:AI Agent 集成
-
内置 AI 编码助手 -
可以直接运行 Claude Code、OpenCode、Gemini CLI 等 Agent -
Diff 视图、代码审查等 IDE 级功能
一个实际的例子
假设你打开 Warp,输入 ls 命令:
-
你按下 ls回车 -
**Warp(终端模拟器)**捕获你的键盘输入 -
Warp 把 ls这个字符串发送给 zsh(Shell) -
zsh 解释 ls命令,调用系统的ls程序 -
ls程序输出当前目录的文件列表 -
zsh 把输出返回给 Warp -
Warp 把输出渲染成一个”块”,显示在屏幕上
如果你用的是 iTerm2,步骤 1-6 完全一样,只是第 7 步 iTerm2 会把输出作为连续文本显示(而不是块状)。
Shell 不关心你用什么终端模拟器。 你在 Warp 里跑的 bash,和在 iTerm2 里跑的 bash,执行结果完全一样。区别只在于”显示方式”和”附加功能”。
所以 Warp 到底替代了什么
以前你的工具链:
iTerm2 / GNOME Terminal / Windows Terminal ← 终端模拟器
+ bash / zsh / PowerShell ← Shell
+ Claude Code / OpenCode ← AI Agent(可选)
用了 Warp 之后:
Warp ← 终端模拟器(替代上面的)
+ bash / zsh / PowerShell ← Shell(不变)
+ Warp 内置 Agent / Claude Code / OpenCode ← AI Agent(可选,但集成更好)
Warp 替代的是终端模拟器这一层,不是 Shell。 你原来用什么 Shell,用了 Warp 之后还是用什么 Shell。
能做什么
1. 替代传统终端
Warp 可以完全替代 iTerm2、Terminal.app、Windows Terminal 等传统终端应用。它的基础体验就比传统终端好:
-
命令输出按”块”组织,不再是一大坨文本糊在一起 -
支持在命令块中直接选择文本、复制内容 -
内置命令历史搜索和模糊匹配 -
支持配置主题、字体、快捷键
2. AI 编码辅助
Warp 内置了对多种 AI Agent 的支持,包括 Warp Agent(自研)、Claude Code、Codex、Gemini CLI、OpenCode 等。你可以在 Warp 中直接与这些 Agent 对话,让它们帮你写代码、调试、重构。
详细的安装和使用方式见下方「在 Warp 中运行 AI Agent」章节。
3. 代码审查
Warp 提供了交互式的代码审查功能。Agent 生成的代码变更可以以 Diff 形式展示,你可以:
-
逐行查看变更 -
添加评论 -
一键发送给 Agent 继续修改
4. 文件树与文件编辑
Warp 内置了文件树视图和简易文件编辑器。你不需要离开终端就能:
-
浏览项目目录结构 -
查看文件内容 -
直接编辑文件
5. 知识存储(Warp Drive)
Warp Drive 是一个知识存储功能,可以:
-
保存命令历史和常用命令 -
存储项目相关的计划和决策 -
在团队间共享上下文
这个功能对于需要频繁切换项目或团队协作的场景很有价值。
在 Warp 中运行 AI Agent
一个常见的问题是:Warp 和 Claude Code、OpenCode 这些 Agent 到底能不能一起用?答案是完全可以,而且这正是 Warp 的核心场景之一。
怎么用
安装好 Agent 后,在 Warp 终端里直接执行对应的命令就行:
# 安装 Claude Code(如果还没装)
curl -fsSL https://claude.ai/install.sh | bash
# 在 Warp 中启动
claude
# 安装 OpenCode
curl -fsSL https://opencode.ai/install | bash
# 在 Warp 中启动
opencode
# 安装 Gemini CLI
npm install -g @google/gemini-cli
# 在 Warp 中启动
gemini
和在 iTerm2、Windows Terminal 里运行这些 Agent 没有任何区别——Shell 不关心你用什么终端模拟器。
Warp 提供了什么额外价值
虽然在任何终端里都能跑这些 Agent,但 Warp 会带来一些体验上的提升:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
ls/tree 查看 |
|
|
|
|
|
|
|
|
|
实际工作流示例
以 Claude Code 为例,在 Warp 中的典型工作流:
# 1. 进入项目目录
cd ~/projects/my-app
# 2. 启动 Claude Code
claude
# 3. 在 Claude Code 中描述需求
> 给 UserController 添加一个批量删除接口,需要支持按 ID 列表删除
# 4. Claude Code 生成代码后,Warp 的 Diff 视图展示变更
# 你可以逐行审查,确认后应用
# 5. 回到 Warp 终端运行测试
npm test
# 6. 测试通过后提交
git add . && git commit -m "feat: add batch delete endpoint"
整个过程在一个终端窗口内完成,不需要在多个应用之间切换。
实际场景举例
场景一:后端开发者的日常
小王是一个 Java 后端开发者,日常使用 Spring Boot 开发微服务。以前他的工作流是:
-
打开终端执行 git pull、mvn compile等命令 -
切到 IDE 写代码 -
切回终端看日志、调试
使用 Warp 后:
-
在 Warp 中直接拉取代码,输出以块状呈现,方便定位编译错误 -
通过内置 Agent 描述需求(”给 UserController 添加一个批量删除接口”),Agent 直接生成代码 -
在 Warp 的 Diff 视图中审查代码,确认无误后应用 -
直接在 Warp 的文件树中查看变更,无需切换到 IDE
整个过程不离开终端,效率提升明显。
场景二:运维工程师的排障
小李是运维工程师,经常需要登录多台服务器排查问题。以前他需要:
-
打开多个终端窗口,每个窗口 SSH 到不同的服务器 -
在不同窗口间来回切换,手动对比日志 -
把关键信息复制到笔记中
使用 Warp 后:
-
Warp 支持垂直标签页,可以同时管理多个终端会话 -
每个标签页可以配置元数据(如 Git 分支、工作目录) -
通过 Warp Drive 保存排障过程中的关键命令和发现 -
利用 AI Agent 分析日志,快速定位问题根因
场景三:开源项目贡献者
小张想给某个开源项目贡献代码。以前他需要:
-
Fork 项目,clone 到本地 -
创建分支,修改代码 -
运行测试,确保通过 -
提交 PR
使用 Warp 后:
-
在 Warp 中 clone 项目,通过文件树快速了解项目结构 -
描述修改意图给 AI Agent,让它生成初步实现 -
在 Diff 视图中仔细审查 Agent 生成的代码 -
运行测试命令,Warp 会将测试结果以块状组织 -
直接在 Warp 中完成 git 操作并推送
对于 Warp 项目本身,贡献流程也已经高度 Agent 化。社区成员提交 Issue 后,Warp 的维护者会标记 Issue 状态,然后由 Oz(Warp 的云端 Agent 编排平台)调度 Agent 来完成设计、编码、测试等工作。
场景四:数据分析师的探索
小赵是数据分析师,经常需要执行 SQL 查询、运行 Python 脚本、查看数据分布。以前他需要在终端、数据库客户端、Jupyter Notebook 之间来回切换。
使用 Warp 后:
-
在 Warp 中连接数据库,执行 SQL 查询,结果以块状呈现 -
通过 AI Agent 描述分析需求(”帮我写一个 Python 脚本,分析这张表的用户留存率”) -
Agent 生成脚本后,在 Warp 中直接运行 -
将常用的分析命令保存到 Warp Drive,方便复用
Warp vs Claude Code / OpenCode / 其他 Agent TUI:有什么区别
很多人第一次接触 Warp 时会困惑:它和 Claude Code、OpenCode 这些工具有什么关系?是竞品吗?
一句话回答:它们根本不在同一个层面上。
最核心的区别:层级不同
把开发工具想象成一个分层结构:
┌─────────────────────────────────────┐
│ IDE 层 VS Code / JetBrains │
├─────────────────────────────────────┤
│ Agent 层 Claude Code / OpenCode │ ← 在这里
│ / Gemini CLI / Aider │
├─────────────────────────────────────┤
│ 终端层 iTerm2 / Warp / Windows │ ← Warp 在这里
│ Terminal │
├─────────────────────────────────────┤
│ Shell 层 bash / zsh / fish │
├─────────────────────────────────────┤
│ OS 层 macOS / Linux / Windows │
└─────────────────────────────────────┘
Warp 是终端——它是你操作的”容器”和”窗口”。 Claude Code / OpenCode 是 Agent——它们是运行在终端里的”程序”。
打个比方:Warp 是浏览器,Claude Code 是浏览器里运行的网页应用。你可以在 Chrome 里用 Gmail,也可以在 Chrome 里用 Google Docs,同理你可以在 Warp 里用 Claude Code,也可以在 Warp 里用 OpenCode。
它们可以组合使用
这不是”二选一”的问题,而是”怎么组合”的问题:
-
Warp + Claude Code:在 Warp 的现代化终端界面里运行 Claude Code,享受块状导航和 Diff 视图 -
Warp + OpenCode:在 Warp 里运行 OpenCode,同时利用 Warp 的文件树和知识存储 -
Warp + Gemini CLI:在 Warp 里调用 Google 的 Gemini 模型 -
传统终端 + Claude Code:在 iTerm2 里运行 Claude Code,功能完全正常,只是没有 Warp 的 GUI 增强
主流 Agent TUI 工具对比
|
|
|
|
|
|
|
|---|---|---|---|---|---|
| 本质 |
|
|
|
|
|
| 出品方 |
|
|
|
|
|
| 开源状态 |
|
|
|
|
|
| 许可证 |
|
|
|
|
|
| 主要语言 |
|
|
|
|
|
| GitHub Stars |
|
|
|
|
|
| 模型支持 |
|
|
|
|
|
| UI 丰富度 |
|
|
|
|
|
| 文件树 |
|
|
|
|
|
| Diff 视图 |
|
|
|
|
|
| 知识存储 |
|
|
|
|
|
| Git 集成 |
|
|
|
|
|
| 安装方式 |
|
|
|
|
|
各工具的定位差异
Claude Code —— Anthropic 的”深度集成”路线
-
只支持 Claude 模型,但与 Anthropic 生态深度绑定 -
功能最丰富:计划模式、记忆系统、定时任务、批量执行、远程控制 -
闭源,适合愿意付费换取完整体验的用户 -
适合场景:需要与 GitHub/GitLab/Slack 深度集成的团队
OpenCode —— “多模型+开源”路线
-
支持 75+ 模型提供商,自由度最高 -
完全开源,社区驱动 -
支持会话分享、MDM 企业部署、ACP 协议 -
适合场景:需要灵活切换模型、注重成本控制的开发者
Gemini CLI —— Google 的”免费+搜索”路线
-
Google 账号登录即可免费使用(60 次/分钟,1000 次/天) -
内置 Google Search 联网能力 -
支持 GitHub Action 集成 -
适合场景:需要实时信息检索、预算有限的个人开发者
Aider —— “轻量结对编程”路线
-
Python 编写,安装最简单(pip install) -
自动 Git 提交,每次修改都有清晰的 commit 历史 -
支持语音输入、图片输入 -
自称 88% 的新代码由 Aider 自己编写 -
适合场景:偏好轻量工具、重视 Git 工作流的开发者
Warp —— “终端平台”路线
-
不是 Agent 本身,而是 Agent 的”运行环境” -
提供块状导航、文件树、知识存储等 GUI 增强 -
可以同时运行多个 Agent -
适合场景:希望在一个统一的现代化终端中完成所有工作的开发者
一个实际的选择建议
如果你:
-
只想要 AI 帮你写代码 → 选 Claude Code、OpenCode 或 Aider 中的一个 -
想用多个 AI 工具,但不想装多个应用 → 用 Warp,它能统一管理所有 Agent -
想要最好的终端基础体验 → 用 Warp,即使不用 AI 功能,它的块状导航也值得 -
预算有限 → OpenCode(免费+多模型)或 Gemini CLI(免费额度) -
需要企业级集成 → Claude Code(Slack/GitHub 深度集成)或 Warp(企业版)
从闭源到开源
Warp 在 2026 年 4 月 28 日宣布开源,这是一个经过深思熟虑的决定。
Zach Lloyd 在官方博客中解释了原因:
“开发的最大瓶颈不再是写代码——而是围绕代码的所有人类参与环节:定义产品规格、验证行为……我们发现 Agent 在实现层面做得很好,这释放了贡献者专注于更高价值的工作。”
开源后的 Warp 采用了 Agent-first 的贡献流程:
-
社区成员在 GitHub 上提交 Issue -
维护者审核并标记 Issue 状态( ready-to-spec或ready-to-implement) -
Oz Agent 自动完成设计、编码、测试 -
社区成员参与审查和验证
这种模式在开源项目中是相当新颖的——人类提需求和方向,Agent 做实现,社区做验证。
技术架构亮点
从 GitHub 仓库的结构来看,Warp 的技术选型有几个值得注意的地方:
-
Rust 为主:98% 的代码是 Rust,保证了性能和安全性 -
跨平台:通过平台抽象层支持 macOS、Linux、Windows -
基于 Alacritty:终端渲染部分参考了 Alacritty 的实现 -
NuShell 集成:支持 NuShell 作为 Shell 环境 -
WASM 扩展:支持 WebAssembly 插件
构建 Warp 的命令:
./script/bootstrap # 平台初始化
./script/run # 构建并运行
./script/presubmit # 格式化、clippy、测试
安装与使用
安装 Warp
macOS:
# Homebrew(推荐)
brew install --cask warp
# 或从官网下载 dmg 安装包
# https://www.warp.dev/download
Linux(Debian/Ubuntu):
# .deb 包(x64)
wget https://app.warp.dev/get_warp?package=deb -O warp.deb
sudo dpkg -i warp.deb
# .deb 包(ARM64)
wget https://app.warp.dev/get_warp?package=deb_arm64 -O warp.deb
sudo dpkg -i warp.deb
Linux(Red Hat/Fedora/SUSE):
# .rpm 包(x64)
wget https://app.warp.dev/get_warp?package=rpm -O warp.rpm
sudo rpm -i warp.rpm
Linux(Arch):
# Pacman
sudo pacman -S warp
# 或 AppImage
wget https://app.warp.dev/get_warp?package=appimage -O warp.AppImage
chmod +x warp.AppImage
./warp.AppImage
Windows:
# 从官网下载 exe 安装包(x64 或 ARM64)
# https://www.warp.dev/download
# 或使用 winget(如果支持)
# winget 目前暂未收录,建议直接下载安装包
安装完成后,首次启动 Warp 会引导你选择默认 Shell(bash、zsh、fish 等)和主题配色。
安装 AI Agent(可选)
Warp 本身不强制绑定任何 AI Agent。你可以按需安装:
# Claude Code(Anthropic)
curl -fsSL https://claude.ai/install.sh | bash
# OpenCode(多模型支持)
curl -fsSL https://opencode.ai/install | bash
# Gemini CLI(Google)
npm install -g @google/gemini-cli
# Aider(轻量结对编程)
pip install aider-chat
安装后在 Warp 中直接输入对应的命令即可启动,例如 claude、opencode、gemini。
快速上手
安装完成后的第一步:
-
打开 Warp,在终端中输入任意命令(如 ls),感受块状输出的效果 -
试试多行编辑:按 Ctrl+Shift+Enter进入多行模式,可以一次输入多条命令 -
搜索历史:按 Ctrl+R模糊搜索历史命令 -
配置主题:在设置中切换深色/浅色主题,调整字体和快捷键 -
启动 Agent:如果安装了 Claude Code,输入 claude体验 AI 辅助编码
常用快捷键
|
|
|
|---|---|
Ctrl+Shift+Enter |
|
Ctrl+R |
|
Ctrl+Shift+T |
|
Ctrl+Shift+N |
|
Ctrl+D |
|
Ctrl+Shift+C |
|
Ctrl+Shift+V |
|
Cmd/Ctrl+K |
|
更多快捷键可在 Warp 设置中查看,也支持自定义。
总结
Warp 不是一个”终端模拟器”那么简单。它试图重新定义开发者与命令行交互的方式,同时拥抱 AI Agent 带来的开发范式变化。开源意味着社区可以参与塑造它的未来——无论你是终端用户、开源贡献者,还是对 AI 辅助开发感兴趣的人,Warp 都值得关注。
参考链接
-
官网:https://www.warp.dev -
GitHub 仓库:https://github.com/warpdotdev/Warp -
开源公告博客:https://www.warp.dev/blog/warp-is-now-open-source -
贡献指南:https://github.com/warpdotdev/Warp/blob/master/CONTRIBUTING.md -
文档:https://docs.warp.dev -
贡献看板:https://build.warp.dev
夜雨聆风