一键安装,让你的开发环境更加美好!
跟 AI 说句话就能装软件?我开源了一个桌面工具,今天你装了吗?

你有没有被安装软件搞崩溃过?
- 想装个 MySQL,官网下载 → 选版本 → 配环境变量 → 搞半天服务起不来
- 新手学 Python,装完 Python 装 pip,装完 pip 换源,然后才发现装错版本了
- 换新电脑,MySQL、Node.js、Git、Redis 一个个装,一上午就过去了
这些场景是不是很熟悉?每个人或多或少都经历过。所以项目团队就在想:
能不能跟电脑说一句「我要装 MySQL 8.0」,它就自动帮我查版本、写脚本、一键跑完?
于是有了这个项目——
「一键安装」
---
一键安装是什么?
一个
AI 驱动的桌面软件安装助手
MySQL),AI 自动帮你:
- 搜软件 → 匹配最佳候选
- 拉取真实版本列表(四级降级获取)
- 生成带中文注释的安装脚本(流式输出)
- 一键执行安装 / 一键执行卸载
支持单个装、批量装、Docker 装、国内镜像加速、历史回溯、AI 故障分析……
把装软件这件事,从 30 分钟变成 30 秒。

核心功能一览
AI 生成安装方案
输入软件名,AI 流式输出安装脚本,
每一步都有中文注释
复制代码# 步骤 1:更新包管理器
sudo apt update# 步骤 2:安装 MySQL 8.0 服务器
sudo apt install -y mysql-server-8.0# 步骤 3:启动 MySQL 服务
sudo systemctl start mysql
批量安装
搜索框输入 MySQL + Node.js + Git(支持 + , 、 空格 分隔),一次生成三个软件的合并安装脚本。
已装检测
启动自动扫描本机环境(which、brew list、pip list、npm list -g),已安装的软件首页打 ,安装完成后自动刷新高亮。
️ 卸载脚本
每个方案自带卸载命令,不怕装错。独立的「️ 卸载」按钮,一键移除。
Docker 模式
不想污染本机环境?一键切换到 Docker 模式,AI 生成 docker pull + docker run 命令。
国内镜像加速
pip / npm / brew 源可选清华、阿里或默认,解决国内下载慢的问题。
5 套主题
漫画风 / 暗夜 / 简约 / 终端 / 紫梦,CSS 变量驱动,偏好自动保存。换个主题换种心情。
安装历史 + AI 分析
每条安装/卸载记录可回溯:
- :自动分析成功原因 or 失败根因
AI 分析
- :跟 AI 讨论安装问题,支持 Ctrl+V 粘贴截图
安装助手聊天
- :一键导出 .md / .pdf / .doc
导出
⭐ 收藏夹
常用软件一键收藏,首页「我的收藏」区快速访问。
脚本保存
保存安装/卸载脚本为独立文件,文件名含软件名 + 版本号,UTF-8 BOM 编码,PowerShell / VS Code 打开不乱码。
CLI 命令行
不喜欢 GUI?终端也能用:
复制代码zlm search mysql # 搜索软件
zlm install node.js # 一键安装
zlm install mysql -v 8.0 -p linux --run # 指定版本+平台+直接跑
zlm history # 查看历史
软件详情弹窗
点 按钮查看软件的 AI 深度介绍 + 安装统计(总安装次数、成功率、版本分布)。
其他细节
- :自动检测 OS,非当前系统灰化禁用
平台锁定
- : 浏览文件夹(Electron 原生对话框)
安装路径自定义
- :bash / zsh / pwsh / cmd
终端选择
- :文件 / 编辑 / 视图 / 帮助
菜单栏中文化

技术架构
复制代码┌──────────────────┐ HTTP/SSE ┌──────────────────┐ OpenAI API ┌──────────────┐
│ Electron │ ◀──────────────────▶ │ FastAPI │ ◀──────────────────▶ │ DeepSeek │
│ + Vite + React │ │ + SQLite │ │ / OpenAI │
└──────────────────┘ └──────────────────┘ └──────────────┘
桌面 APP 后端服务 AI 大模型┌──────────────────┐
│ CLI (zlm) │────── HTTP ──────▶ FastAPI
└──────────────────┘
| 层 | 技术栈 | 说明 |
|---|---|---|
| 桌面端 | Electron + Vite + React | 原生对话框、菜单栏、窗口背景色同步 |
| 后端 | Python FastAPI + SQLite | REST API + SSE 流式输出,方案缓存 |
| AI | OpenAI Chat Completions 兼容 | 默认 DeepSeek,可换任意兼容模型 |
| CLI | Python 脚本 | 跨平台,zlm / zlm.bat |
| 管理后台 | Vite + React | 独立 Web 面板,统计 + 反馈管理 |
技术深挖:AI 是怎么写出靠谱安装脚本的?
1. 先解决「装什么版本」——四级降级获取版本号
这是整个流程最关键的一步。如果版本号都是 AI 瞎编的,后面全白搭。
项目团队设计了四级降级策略:
复制代码优先级 1:官方信息源
├─ nodejs.org/dist → Node.js 版本
├─ go.dev/dl → Go 版本
├─ endoflife.date API → 通用软件 EOL + 版本
├─ PyPI / npm / GitHub Releases / Maven Central
└─ 命中 → 返回真实版本列表,缓存 24h优先级 2:联网搜索
└─ GitHub 仓库搜索 → 解析 tag/release优先级 3:AI 兜底
└─ 前面都挂了,才让 AI 凭知识回答(标记为非官方来源)
这样一来,
用户看到的版本号 99% 来自真实数据源
2. 提示词设计:让 AI 写出可执行的脚本
提示词分四个核心部分:
系统提示词(约束 AI 行为):
复制代码你是一个软件安装专家。你需要:
1. 先检测操作系统和已装环境
2. 优先使用官方推荐安装方式,Homebrew/apt/yum 作为备选
3. 每一步必须有中文注释,说明这一步在做什么
4. 同时生成对应的卸载脚本
5. 如果指定了安装路径,GUI 软件也生成脚本(优先便携版解压)
6. 指定镜像源时,pip/npm/brew 使用对应国内源
用户提示词(传入上下文):
复制代码目标软件:MySQL
目标版本:8.0.36
目标系统:Ubuntu 22.04
安装方式:原生安装
包管理器镜像:清华源
安装路径:默认
终端类型:bash
这样 AI 拿到的不是一句模糊的「帮我装 MySQL」,而是
结构化的、可执行的需求
3. SSE 流式输出:像 ChatGPT 一样逐字蹦出来
后端用 FastAPI 的 StreamingResponse,把 AI 的生成结果通过 SSE(Server-Sent Events)逐块推给前端:
复制代码@router.post("/api/generate")
async def generate(req: GenerateRequest):
async def event_stream():
async for chunk in stream_ai(prompt):
yield f"data: {json.dumps({'content': chunk})}nn"
yield f"data: {json.dumps({'done': True})}nn" return StreamingResponse(event_stream(), media_type="text/event-stream")
前端用 fetch + ReadableStream 逐块渲染,用户体验跟 ChatGPT 一模一样。
4. 方案缓存:同样的请求不重复调 AI
安装方案生成后写入 SQLite 缓存,相同参数(软件+版本+系统+安装方式)的请求直接返回缓存,
省 Token 也省时间

项目结构
复制代码zhuanglema/
├── server/ # Python FastAPI + SQLite
│ ├── app/
│ │ ├── main.py # 应用入口 + SSE 路由
│ │ ├── ai.py # AI 调用 + 提示词
│ │ ├── config.py # 配置(环境变量)
│ │ ├── database.py # SQLite 数据库 + 迁移
│ │ ├── versions.py # 四级版本获取
│ │ ├── scanner.py # 本机环境扫描
│ │ ├── seed.py # 20 个预置软件
│ │ └── routers/ # API 路由
│ ├── .env.example # 配置模板
│ └── requirements.txt
├── desktop/ # Electron + Vite + React
│ ├── electron/ # Electron 主进程
│ ├── src/
│ │ ├── App.jsx # 主界面 + 主题
│ │ ├── api.js # API 封装
│ │ ├── components/ # RunPanel, InstallDetail 等
│ │ └── styles.css # CSS 变量(5 套主题)
│ └── package.json
├── admin/ # 管理后台(Vite + React)
├── zlm / zlm.bat # CLI 命令行工具
└── *.md # 文档
快速开始
复制代码# 1. 启动服务端
cd server
cp .env.example .env # 编辑 .env,填入 AI_API_KEY
pip install -r requirements.txt
uvicorn app.main:app --port 8787# 2. 启动桌面 APP
cd desktop
npm install
npm run dev# 3. 或者用 CLI
python zlm search mysql
详细步骤见仓库 README 和 启动方法步骤。
写在最后
这个项目的初衷很简单:
让装软件这件事不再劝退新手
每次重装系统或者帮朋友配环境,都要重复一遍「去官网 → 找下载 → 选版本 → 敲命令」的流程。有了 AI 之后,这件事完全可以自动化。
目前项目已完成所有核心功能,开箱即用。后续计划:
- 方案分享社区(用户上传自己的安装方案)
- 更多软件适配(目前预置 20 个常用开发工具)
- 一键部署到服务器(SSH 远程安装)
- 软件卸载残留清理
如果你也觉得装软件很烦,欢迎 Star ⭐ 和 PR!
