Press "Enter" to skip to content

openclaw开发环境运行向导

背景

小龙虾 openclaw是开源项目,作为程序员肯定是想要通过源码来运行,这样对项目不爽的地方可以直接通过修改来改造。

克隆项目

我先fork项目 https://github.com/openclaw/openclaw 到自己的空间下面

我们再克隆fork的项目到本地

运行项目

项目的readme里面写的很清楚,可以通过下面命令来开发环境运行:

git clone https://github.com/openclaw/openclaw.git
cd openclaw

pnpm install
pnpm ui:build # auto-installs UI deps on first run
pnpm build

pnpm openclaw onboard --install-daemon

# Dev loop (auto-reload on TS changes)
pnpm gateway:watch

值得注意的是:

pnpm openclaw onboard --install-daemon

这个命令其实是一个初始化项目+帮项目安装到系统后台服务的命令,特别是 –install-deamon。

所以基本上这个执行向导走完之后,就可以打开我们的页面了。

pnpm gateway:watch

这个命令是可以监控我们项目文件修改来让改动实时生效。

所以你发现 即使你停止pnpm gateway:watch 还是能访问你的项目,甚至重启电脑,他还在,那怎么办呢?

为什么停止了 pnpm gateway:watch 还能访问网站?

关键在于执行的这一步: pnpm openclaw onboard --install-daemon

这里的 --install-daemon 参数非常重要。它的作用是向你的操作系统(如果你用的是 macOS 就是 launchd,Linux 则是 systemd)注册并安装一个后台守护进程(Daemon)。 这个守护进程会在后台自动、静默地把 Gateway(网关)服务跑起来。

当你随后运行 pnpm gateway:watch 时,你实际上是在终端前台又开了一个供开发调试用的实例(或者说你停掉前台的这个实例后,真正提供服务的是后台那个一直在运行的系统服务)。所以,即使你通过 Ctrl+C 关掉了 gateway:watch,由系统托管的后台进程依然在默默运行,这就是为什么你依然能打开网站的原因。

项目启动的原理是什么?

在当前的配置下,你的项目分为两层机制:

  • 开发层: pnpm gateway:watch 主要是开发用的,它监听你的 TypeScript 文件变动并实时热更新。
  • 系统服务层: 你通过 --install-daemon 安装的后台服务是生产或持久化运行的标准方式。只要你的电脑开机,系统就会自动帮你把项目(Gateway)挂载在后台。

现在想要重启/管理项目,该怎么执行?

因为项目已经作为系统后台服务安装了,所以你需要使用 openclaw 的 gateway 服务管理命令来控制它。

你可以直接在终端项目目录下(使用你的 pnpm 前缀)执行以下命令:

重启项目:

pnpm openclaw gateway restart

查看项目当前的运行状态(看看后台服务是否在线):

pnpm openclaw gateway status

停止项目(停止后网站就打不开了):

pnpm openclaw gateway stop

再次启动项目:

pnpm openclaw gateway start

💡 额外建议:如何回到纯手动开发模式?

如果你现在处于开发阶段,不想让系统后台服务干扰你(或者不想每次改了代码还要去 restart),你可以卸载掉这个后台服务:

pnpm openclaw gateway uninstall

卸载后,后台服务就不复存在了。这时候你再运行 pnpm gateway:watch,项目就会完全跟着你这个命令的生命周期走——启动就能访问,按 Ctrl+C 停止后网站就会打不开,非常适合开发调试。

如果你想要把项目重新安装为系统的后台服务,你不需要重新走一遍完整的 onboard 初始化流程。你可以直接使用 gateway 的服务管理命令。

在项目目录下执行以下命令来重新安装服务:

pnpm openclaw gateway install

安装完成后,服务通常需要手动启动一下(或者重启电脑后它会自动启动),你可以立刻执行以下命令将其启动:

pnpm openclaw gateway start

另外补充一点: 如果你不仅想重新安装服务,还想把各项配置(比如大模型密钥、渠道等)都重新配置一遍,你依然可以像第一次那样运行完整的新手引导程序:

pnpm openclaw onboard –install-daemon

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注