当前位置: 首页 > news >正文

VibeCoding 的项目部署工具:Kite

我服务器上有几十个 Web 站点,因为服务器配置较低,都是在本地完成构建后通过 scp 推到服务器,每个项目里就维护了一个shell脚本。

大概下面这样:(zx 脚本)

await $`scp ${compressPkgName} ${user}@${fullOrigin}:./` await $`ssh -p22 ${user}@${fullOrigin} "tar -xf ${compressPkgName} -C ${destDir}"`

这个样子持续了差不多好多年,但始终感觉不优雅,最近刚好 AI 够强,就把一直想实现的一个部署的 CLI 实现了。

服务器只管收 + 解压 + 重启(如果带后端服务)。

于是有了 Kite —— 装一个 CLI 就能跑起 Web 管理端 + Server 后端 + 一键上传。

快速开始

npm install -g @kitecd/cli kite serve

启动后浏览器打开http://127.0.0.1:5431就是管理后台。

Starting Kite Server... Runtime: bun v1.3.12 Host: 127.0.0.1 Port: 5431 Web Dir: /Users/sugar/Documents/fe/Kite/packages/cli/dist/web DB Dir: /Users/sugar/.kite Admin Token: admin_fb3635137 🦊 Server is running on bun at http://127.0.0.1:5431 🔑 Login Token: admin_fb3635137

线上部署可以通过 pm2,使用 NG 反向代理站点。

kite serve --pm2

新建项目

只需要录入项目名和部署目即可

部署

项目概览页提供了部署的指令复制即可。

本地项目里执行初始化指令,生成kite.config.json

kite init --project proj_669571accfa5 --out ./dist --server http://127.0.0.1:5431 --token kt_a6029f276c354caca86b65960804d22c
{ "projectId": "proj_669571accfa5", "serverUrl": "http://127.0.0.1:5431", "outputDir": "./dist", "files": [ "**/*" ] }

部署,执行kite push即可。

kite push会自动完成:合并配置 → 打包outputDir→ 上传到 Server → 依次执行preDeploy/ 解压 /postDeploy

kite push

多环境支持

如果一个项目需要推到多个服务器或者不同项目目录。

会自动扫描符合kite.config.xx.json的配置。kite push --env xx即可,或者交互式选择。

使用的技术栈

  • 前端:Vue 3 + Vite + Pinia + Vue Router
  • 后端:Bun / Node + Elysia + libSQL(Drizzle ORM)
  • CLI: cac + ora + chalk

GPT + MiMo 一起写出来的

MiMo 完成了大概 80% 的代码,15% 是 GPT。

这个CLI服务端 支持 Bun 和 Node两个运行时,部分适配靠 GPT 搞定

流程:先使用 plan 模式把需求和实现的核心功能确定下来。

然后拆好 step ,让它挨着执行,然后配合给到的测试用例,验收一下。

然后就是 case by case 的修复问题。

http://www.jsqmd.com/news/1086284/

相关文章:

  • 瑞萨RA8P1高速模拟比较器与数据运算电路配置实战指南
  • 大学物理的规范性作答:从符号表达到数值计算的标准化实践
  • 大模型MoE架构原理与实战:专家路由如何实现万亿参数高效推理
  • RA8T2外部总线接口配置详解:从时序计算到实战避坑指南
  • 三分钟上手Scarab:让空洞骑士模组管理变得轻松简单
  • 大漆工艺现代化升级的技术路径:从经验手工到数据驱动的标准化生产
  • Cursor Pro激活工具:突破试用限制的智能解决方案
  • 《龙虾软件低成本打通AS/400与生产体系》
  • 终极指南:如何用React-Icons构建高性能SVG图标系统
  • 汇编语言(王爽)课后习题精解与实战演练
  • 【CH376实战】从零构建嵌入式USB主机:硬件选型、接口调试与文件系统操作全解析
  • 5分钟完全指南:如何用BetterNCM插件管理器解锁网易云音乐隐藏功能
  • Web安全实战:目录浏览与遍历漏洞原理、防御与CTF实战解析
  • STM32 SPI驱动W25Q64:从指令解析到数据流高效管理
  • 如何高效使用RE-UE4SS:开发者必备的完整实战指南
  • 如何快速配置AI自动瞄准:面向新手的完整指南
  • IDM激活脚本:让下载管理工具重获新生的3种实用方法
  • Spectator:基于CH32X035的USB PD/QC诱骗器设计与实现
  • 软考中级-嵌入式系统设计师(三):从编译原理到数据结构,构建软件核心知识体系
  • LangChain 入门 Memory 会话记忆
  • 传统时尚只服务年轻群体,编程中老年新中式服饰市场规模预测,测算银发时尚赛道增长潜力。
  • perftest实战:从零到一,精准评估RDMA网络性能
  • 深度剖析CVE-2025-24813:Tomcat反序列化漏洞的源码级攻防实战
  • PDF解析器安全审计实战:从模糊测试到代码加固
  • 利用Rsoft仿真平台解析长周期光纤光栅的相位匹配与模式耦合
  • Python数据清洗实战:Winsorize缩尾处理中的空值陷阱与解决方案
  • 3分钟掌握OBS多平台直播:obs-multi-rtmp插件完全配置指南
  • 从原理到实战:ARS548 4D毫米波雷达数据处理与多模态融合全解析(含Python代码与可视化)
  • Qt5.15 QWebEngine网页加载超时:从代理到证书链验证的深度排查与优化
  • Windows字体美化终极方案:No!! MeiryoUI让你的系统界面焕然一新