这两天OpenClaw火了,身边很多朋友让帮忙装一下,装了两次就发现,这个东西可以做个小工具来安装部署的。
哈哈哈,其实我也没调研,就直接开始构思了一小会就开始写代码了,后来工具分享出去也引来了一些围观:
接下来的话介绍一下工具吧。
视频介绍链接: 《一键部署openclaw视频》
关于工具
其实这个工具是我用python写的,它会自动检测/准备运行 OpenClaw 所需的 Node.js 与 Git 环境,并优先使用 pnpm 全局安装 openclaw@latest。工具自带图形界面,实时展示日志与进度,支持一键卸载,且在需要时自动请求管理员权限。
总的来说这个工具就两个核心功能:
1、下载openclaw
2、卸载openclaw
项目地址
大家可以自己拿去试试
📌 项目开源地址: github.com/JackieLing/…
📦 项目安装包: gitee.com/jackieling/… 💡 下载第一个 zip 即可 #openclaw #人工智能 #敲代码 #小龙虾 #大模型
系统要求
- Windows 10 或更高版本。
- 可访问互联网(用于下载 Node.js、MinGit、npm/pnpm 包)。如处于离线环境,可提前准备
gitpackage/目录下的离线 Git 安装包。
快速开始
方式一:直接运行已构建的可执行文件
-
双击
dist/OpenClawInstaller.exe(或OpenClawAuto.exe)启动图形安装器。 -
安装完成后,工具会弹出管理员 PowerShell 窗口,并在 GUI 的 “ConfigTool” 标签页嵌入一个管理员命令行。
-
卸载:
- 双击根目录的
一键卸载.bat,或 - 在可执行文件同目录运行:
OpenClawAuto.exe uninstall
- 双击根目录的
方式二:从源码运行(开发者)
-
准备环境(建议 Python 3.10+)并安装依赖:
python -m venv .venv .venv\Scripts\activate pip install pillow pyinstaller -
启动图形界面(以管理员身份运行):
python main.py -
一键卸载(管理员权限):
python main.py uninstall
典型安装流程
-
检查系统 Node.js 版本,若 < 22 或未安装,则下载并解压便携版 Node.js v22.21.1,并仅在当前进程使用。
-
检查系统 Git;若无:
- 优先使用仓库内
gitpackage/Git-*.exe静默安装; - 若未提供离线包,则下载并解压 MinGit 到本地运行目录。
- 优先使用仓库内
-
检查 pnpm;若未安装,通过 npm 全局安装 pnpm(必要时刷新 PATH)。
-
使用 pnpm 全局安装
openclaw@latest(失败则回退到 npm)。 -
打开管理员 PowerShell,提示你现在可以直接使用
openclaw命令。
主要模块
-
UI
- 主窗口与安装流程界面:main_window.py
- 右侧信息与嵌入式终端面板:panels.py
-
核心逻辑
- 安装编排与卸载:package_manager.py
- Node.js 管理(检测、下载、解压、环境注入):node_manager.py
- Git 管理(系统检测、离线安装、MinGit 下载):git_manager.py
- 命令执行与日志流转:process_runner.py
-
配置
- 版本与窗口参数集中配置:config.py
-
入口
- 管理员提权、GUI 启动与卸载入口:main.py
构建发布
项目使用 PyInstaller 打包,已提供多个 spec 与批处理脚本:
-
一键打包(推荐):
.\build_exe.bat完成后在
dist/目录得到可执行文件(默认使用OpenClawInstaller.spec)。 -
手工命令:
pyinstaller OpenClawInstaller.spec --clean --noconfirm你也可以试用
OpenClawInstaller_onedir.spec或openclaw.spec根据需求调整打包形态与图标(见resources/logo.ico)、管理员权限等设置。
可配置项
- Node 版本与下载地址:编辑 config.py 中的
NODE_VERSION与NODE_BASE_URL。 - Git 下载源与版本:同上文件中的
GIT_TAG、GIT_VERSION、GIT_BASE_URL。 - OpenClaw 包名/版本通道:
OPENCLAW_PACKAGE(默认openclaw@latest)。 - 包源镜像:安装时默认使用
https://registry.npmmirror.com(在 package_manager.py 中可修改)。