vibe-launch
🚀 vibe-launch
把 AI 写的项目,一键部署到你的服务器 | MCP 原生 | agentless | 多服务器编排
一句"部署"就上线 | SSH 全自动免密 | 可视化操作台 | git 部署闭环 | 安全隧道
100% 开源,完全免费。 纯本地工具 —— 无账号、无后端、无 secret,清单和密钥都在你自己机器上,透明可控。
vibe-tutor 教你怎么做,vibe-launch 替你部署上线。 —— 补全 vibecoding「从写到上线」的最后一公里。
🎯 解决什么问题?
AI 帮你把项目写完了,但部署上线还是一道坎:
❌ 手搓
ssh-keygen、配免密、上 GitHub 加 deploy key —— 每台服务器、每个项目都来一遍❌ 多个项目散在多台机器,「哪个在哪台、当初怎么部署的」全靠脑子记
❌ 想让 AI 顺手帮你部署,可它碰不到你的服务器
❌ 数据库端口图省事开了公网,悄悄变成攻击面
❌ 部署完不知道成没成,一出问题就 SSH 上去翻半天日志
vibe-launch 帮你:
✅ 一条命令接入服务器 —— 自动装专用 key,之后免密直连
✅ 一份本地清单 管住所有服务器和项目,谁在哪台、怎么部署一目了然
✅ MCP 原生 —— 在 Claude Code / Cursor 里说一句「部署 X」就上线
✅ SSH 隧道 把内网数据库映射到本地,公网端口彻底关掉
✅ 可视化操作台 —— 部署 / 回滚 / 日志 / 状态一眼看全
✨ 核心特性
🪶 agentless —— 用你本地
~/.ssh直连,目标服务器零安装🤖 AI 原生 —— MCP 让 Claude Code / Cursor / Codex 直接调用;CLI 给终端和自动化
🔑 SSH 全自动 —— 一条命令生成专用 key、装到服务器、之后免密,不用手搓
ssh-keygen🔌 部署机制可插拔 —— 每个项目自配部署命令(
git pull && docker restart/docker compose up/ 任意脚本),不锁 1Panel / GitHub📥 git 部署闭环 —— 一条命令把服务器目录转成 git checkout + 自动配只读 deploy key,之后
git pull部署🖥️ 可视化操作台 —— 状态 / 部署 / 回滚 / 实时日志 / 端口检测 / 文件管理,纯本地浏览器里点
🔒 安全隧道 —— 内网 PG / Redis 映射到本地,公网 DB 端口可彻底关闭
🌍 跨发行版 —— 指标采集只依赖 procfs + POSIX,CentOS 7 老到 git 1.8 也兼容
📦 安装
npm install -g vibe-launch需要 Node ≥ 18。装好后
vibe-launch(或简写vl)即可用。
🚀 60 秒上手
# 1. 接入服务器(自动配好 SSH,之后免密)
vibe-launch server add prod --host 1.2.3.4 --user root --password "你的密码"
# 2. 登记项目(部署到哪台、怎么部署、容器、健康检查)
vibe-launch project add myapp --server prod \
--dir /path/to/app \
--deploy "git pull && docker restart myapp-api myapp-web" \
--containers myapp-api,myapp-web \
--health http://127.0.0.1:8000/health
# 3. 部署 / 看状态 / 重启
vibe-launch deploy myapp
vibe-launch status
vibe-launch restart myapp # 只重启容器 + 健康检查,不拉代码🛠 复杂运维:从"手搓 SSH"收进 vl
常规「部署当前代码」deploy 就够;但事故响应 / 带 DB 迁移 / 灰度上线这类要细粒度控制、穿透执行、步骤间验证的活,也不用再手搓一堆 ssh … docker exec …:
# 穿透执行:在项目所在服务器上跑即席命令(自动带 host/key)
vibe-launch run myapp "git -C /path/to/app log -3"
vibe-launch run myapp --container myapp-api "python manage.py migrate" # 自动 docker exec 进容器
vibe-launch run myapp --container myapp-pg "psql -U app -c 'select count(*) from users'"
# 选择性重启:poller 改动只重 worker,不打断 api 用户
vibe-launch restart myapp --only myapp-worker
# 部署前后钩子(写在项目配置里):先迁移 → pull → 重启 → 烟测,一条 deploy 全编排
vibe-launch deploy myapp --dry-run # 先看编排计划,不执行
# 灰度收尾:部署后持续盯,异常就秒回滚
vibe-launch deploy myapp --watch --duration 30m
vibe-launch env myapp set FEATURE_X=on --restart # 改远端 .env(自动备份)+ 重启
vibe-launch rollback myapp # 回退上一个提交 + 重启(默认二次确认)
# 前端一体:本地 build → 传产物 → 原子替换 → 重启 web(走项目 frontend 配置)
vibe-launch deploy myapp --frontend
preDeploy/postDeploy/frontend/envFile都是项目配置里的可选段,见vibe-launch.example.yaml。危险操作(rollback/env set)带--dry-run预览和二次确认(脚本里加-y跳过)。
🖥️ 可视化操作台
vibe-launch ui # 起本地操作台 + 自动开浏览器(localhost:7777)起
vibe-launch ui后浏览器里看:总览 / 服务器 / 项目 / MCP / 设置 五个页签。
一个完整的运维面板,纯本地、只监听 127.0.0.1、无需账号。「看比说高效」的那些事都在这里:
总览 —— 项目状态网格(git 版本 / 容器 / 健康检查)+ 服务器健康一眼概况
服务器 —— 内存 / 磁盘 / 负载彩色条 + 容器数 + 运行时长 + OS / 内核 / CPU 信息(一次 SSH 采集)
一键部署 —— 实时输出;部署前看更新(列出将拉取的新提交 diff);健康检查失败自动拉容器尾部日志
回滚 —— 部署历史里每条「回滚到此」,git reset 到旧版本 + 重启 + 健康检查
容器 —— 列表(含已停止)/ 重启 / 删除 / 清理;实时日志流(关键词高亮 / 只看错误 / 导出
.log)端口暴露检测 —— 探 PG / Redis / MySQL / Mongo / SQL Server 公网可达性,区分容器 vs 原生、仅本地 vs 公网,给针对性关闭指引
隧道 —— 界面里一键开 PG / Redis 隧道、管理活跃隧道
文件 —— 项目目录 / 服务器任意路径浏览,
.env等配置在线编辑(存前自动备份)、二进制上传下载
重活(容器编排、数据库、反代、防火墙全功能、Web 终端)是 1Panel 的地盘 —— vibe-launch 只做部署闭环 + 「看比说高效」的可视化,不做又一个服务器面板。
🤖 给 AI 工具用(MCP)
启动 MCP server:
vibe-launch mcp在 Claude Code / Cursor 里配置后,对它说 「部署 myapp」,它会调用 deploy_project 工具完成。
{
"mcpServers": {
"vibe-launch": { "command": "npx", "args": ["-y", "vibe-launch", "mcp"] }
}
}命令 | MCP 工具 |
|
|
|
|
|
|
|
|
|
|
|
|
外加 6 个只读诊断工具,让 AI 看见操作台能看到的数据,形成「部署 → 查健康 → 读日志 → 决策」闭环:
MCP 工具 | 作用 |
| 拉容器日志尾部,定位健康检查失败原因 |
| 部署前看将拉取的新提交 diff |
| 看部署 / 回滚历史 |
| 服务器 CPU / 内存 / 磁盘 / 负载指标 |
| 列出容器(含已停止) |
| 数据库端口暴露检测 |
MCP 只暴露安全幂等的动词 + 只读诊断。盯实时日志流、开隧道、回滚、删容器、文件读写这类交互 / 有副作用的操作只在操作台(
ui)里,不进 MCP —— 不让 AI 自动碰。
🔗 让项目用 git 部署(一条命令搞定)
想让服务器 git pull 拉私有仓库部署,难点是「服务器怎么有权限拉代码」。setup-git 一条命令全自动:
vibe-launch setup-git myapp --repo yourname/yourrepo它会在服务器上:
装 git(没有就自动装;老到 git 1.8 / CentOS 7 也兼容)
生成专用 deploy key(每个项目一把,只读)
自动把 key 加到 GitHub 仓库的 Deploy Keys —— 你不用手动碰 GitHub 设置
配好 ssh 别名 + remote,免密拉取
加 key 到 GitHub 需要授权,三选一(自动选,优先级从上到下):
vibe-launch auth—— 浏览器点一下授权(device flow,最省事,不用装 gh、不用手动建 token)本地已登录的
gh(零配置)
--token <PAT>或环境变量GITHUB_TOKEN(需repo/Administration:write权限)
浏览器授权(device flow)
vibe-launch auth # 弹出"打开链接 + 输入码",授权后存 token 本地
vibe-launch auth --status # 看是否已授权
vibe-launch auth --logout # 清除 token纯本地、无后端、无 secret —— 同 gh auth login 的机制。
三种 key 各司其职、互不相干:① 你本地连服务器的 SSH key ② 你本地推代码到 GitHub 的认证(
gh) ③ 服务器拉代码的 deploy key(这条命令自动配的)。
目录已经有手写代码(非 git)?加 --adopt,它会先备份再转成 git checkout(用仓库覆盖被跟踪文件,保留 .env / 构建产物等未跟踪文件)。
🔒 安全访问:SSH 隧道(免开公网 DB 端口)
数据库 / 缓存不该暴露在公网。生产让 app 走内网容器访问 PG / Redis;你本地开发要连库时,用隧道:
vibe-launch tunnel prod --service pg # 本地 localhost:5432 → 服务器内网 PG
vibe-launch tunnel prod --service redis # 本地 localhost:6379 → 服务器内网 Redis
vibe-launch tunnel prod --remote-port 8001 --local-port 18001 # 任意端口走的是已有的 SSH 端口(key 加密)。你的 DB 工具连 localhost 即可,服务器上 PG / Redis 的公网端口可以彻底关闭,攻击面大降。Ctrl+C 关闭隧道。
🧭 设计原则
不做 1Panel / k8s 已经做好的事 —— 不跑容器、不管数据库、不反代、不 build 镜像
只做缺的那块 —— 多服务器多项目的集中编排 + 清单 + AI 接口
清单 + 专用 key 都在本地
~/.vibe-launch/,透明可控
🧩 vibecoding 工具家族
从写到上线,一条龙:
📘 vibecoding 教程 —— AI 编程方法论,从想法到上线
🎓 Vibe Tutor —— AI 编程方法论导师(14 步流程 + 7 大陷阱检测)
🚀 vibe-launch —— 你在这里:替你把项目部署上线
💬 联系方式
GitHub Issues:提交问题
🙏 致谢
commander —— CLI 框架
ssh2 / node-ssh —— SSH 直连
Model Context Protocol SDK —— AI 工具接口
License
如果觉得有用,点个 ⭐ Star 支持一下!
Made with ❤️ by tmwgsicp