【大模型应用篇】用 OpenClaw + 飞书打造 7x24 小时服务器运维机器人

【大模型应用篇】用 OpenClaw + 飞书打造 7x24 小时服务器运维机器人

前言

本文基于OpenClaw,也是最近超火的可在本地运行的AI Agent网关,记录从零搭建通过飞书对话管理服务器运维机器人的全过程。该机器人支持随时随地通过飞书查看服务器状态、检索日志、管理进程,其核心机制在于:由OpenClaw将聊天平台(飞书等)的消息路由至大模型,模型调用本地工具(如Shell、文件系统、浏览器)执行相应任务,最终将结果自动返回至飞书会话中,实现自动化运维交互。

架构概览

飞书 App (WebSocket 长连接)
        ↕
OpenClaw Gateway (服务器上 systemd 常驻)
        ↕
AI 模型 (DeepSeek v3.2/GLM 4.7)
        ↕
服务器 Shell (受白名单限制的命令执行)

核心组件:

  • OpenClaw Gateway:Agent 网关,管理会话、工具调用、渠道连接
  • 飞书插件:通过 WebSocket 长连接收发消息,无需公网回调地址
  • exec 工具:让 AI 在服务器上执行 shell 命令,支持白名单安全策略
  • 模型提供商:支持自定义 OpenAI 兼容 API,本文使用 OneRouter 提供的 DeepSeek V3.2

环境要求

  • Linux 服务器(本文使用 Ubuntu)
  • Node.js 22+
  • npm 10+
  • 飞书企业账号(可免费创建)
  • AI 模型 API(OpenAI / Anthropic / OpenRouter / 自定义兼容接口均可)

第一步:安装 OpenClaw

由于需要让机器人直接管理服务器上的服务,选择 npm 全局安装(裸机安装),而不是 Docker:

npm install -g openclaw

安装后确认 openclaw 命令可用。如果提示 command not found,需要把 npm 全局 bin 目录加入 PATH:

echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.bashrc

source ~/.bashrc

第二步:注册为 systemd 服务

让 Gateway 开机自启、后台常驻:

openclaw gateway install

openclaw gateway start

验证状态:

openclaw gateway status

第三步:配置模型提供商

编辑 ~/.openclaw/openclaw.json,添加模型配置。以 OneRouter + DeepSeek V3.2 为例:

{
  "agents": {
    "defaults": {
      "model": {
        "primary": "onerouter/deepinfra/deepseek-v3.2"
      }
    }
  },
  "models": {
    "mode": "merge",
    "providers": {
      "onerouter": {
        "baseUrl": "https://your-api-endpoint/v1",
        "apiKey": "your-api-key",
        "api": "openai-completions",
        "models": [
          {
            "id": "deepinfra/deepseek-v3.2",
            "name": "DeepSeek V3.2"
          }
        ]
      }
    }
  }
}

> 任何兼容 OpenAI API 格式的模型提供商都可以用这种方式接入。

第四步:接入飞书

4.1 创建飞书应用

访问 飞书开放平台,创建企业自建应用2在 凭证与基础信息 页面,记下 App ID 和 App Secret在 权限管理 中添加以下权限:im:message — 发送消息im:message:send_as_bot — 以机器人身份发送im:message.p2p_msg:readonly — 读取私聊消息im:message.group_at_msg:readonly — 读取群聊 @消息im:resource — 读取资源contact:contact.base:readonly — 读取联系人基本信息(可选,用于解析发送者名字)
    4. 在 应用能力 中启用 机器人

    5. 安装飞书插件:

          openclaw plugins install @openclaw/feishu

4.2 配置飞书app信息

使用 CLI 向导:

openclaw channels add

选择 Feishu,输入 App ID 和 App Secret。也可以手动在 openclaw.json 中添加:

{
  "channels": {
    "feishu": {
      "enabled": true,
      "accounts": {
        "main": {
          "appId": "cli_xxxxx",
          "appSecret": "your-app-secret"
        }
      }
    }
  }
}

4.3 重启并确认连接

openclaw gateway restart

openclaw logs --follow

看到以下日志说明飞书长连接成功:

feishu[main]: WebSocket client started
[ws] ws client ready

4.4 配置飞书事件订阅

回到飞书开放平台:

  1. 事件与回调 → 选 "使用长连接接收事件" → 保存
  2. 添加事件 im.message.receive_v1
  3. 版本管理与发布 → 创建版本 → 发布

> 注意:必须先启动 Gateway 建立长连接,飞书后台才能保存"长连接"订阅方式。

第五步:配置运维 Agent

5.1 设置 Agent 人设

编辑 ~/.openclaw/workspace/AGENTS.md,在原有内容基础上追加运维规则:

## 服务器运维规则

你同时是一个服务器运维助手,负责维护管理员在这台服务器上部署的服务。



### 工作范围
- 只管理 /home/youruser/projects 目录下的项目和服务
- 不要触碰其他用户的文件和服务



### 允许的操作
- 查看日志、进程、服务状态、端口、磁盘/内存
- 管理用户级服务(systemctl --user)
- 工作目录下的文件操作



### 禁止的操作
- rm -rf(用 trash 代替)
- sudo 操作(除非明确要求)
- 修改系统配置
- 重启其他用户的服务



### 语言
- 用中文回复

5.2 配置 exec 工具

在 openclaw.json 中添加工具配置,让 Agent 可以在服务器上执行命令:

{
  "tools": {
    "exec": {
      "host": "gateway",
      "security": "allowlist",
      "ask": "off"
    }
  }
}
  • host: "gateway" — 命令直接在服务器本机执行
  • security: "allowlist" — 只允许白名单命令,安全可控
  • ask: "off" — 不弹审批提示(7x24 自动化需要)

5.3 配置命令白名单

编辑 ~/.openclaw/exec-approvals.json,为 Agent 配置允许执行的命令:

{
  "version": 1,
  "defaults": {
    "security": "allowlist",
    "ask": "off",
    "askFallback": "allowlist"
  },
  "agents": {
    "main": {
      "security": "allowlist",
      "ask": "off",
      "askFallback": "allowlist",
      "allowlist": [
        { "pattern": "/usr/bin/bash" },
        { "pattern": "/usr/bin/sh" },
        { "pattern": "/usr/bin/ls" },
        { "pattern": "/usr/bin/cat" },
        { "pattern": "/usr/bin/tail" },
        { "pattern": "/usr/bin/head" },
        { "pattern": "/usr/bin/find" },
        { "pattern": "/usr/bin/du" },
        { "pattern": "/usr/bin/df" },
        { "pattern": "/usr/bin/free" },
        { "pattern": "/usr/bin/ps" },
        { "pattern": "/usr/bin/top" },
        { "pattern": "/usr/bin/ss" },
        { "pattern": "/usr/bin/netstat" },
        { "pattern": "/usr/bin/journalctl" },
        { "pattern": "/usr/bin/systemctl" },
        { "pattern": "/usr/bin/git" },
        { "pattern": "/usr/bin/docker" },
        { "pattern": "/usr/bin/node" },
        { "pattern": "/usr/bin/python3" }
      ]
    }
  }
}

> 重要:/usr/bin/bash 和 /usr/bin/sh 必须加上,否则带管道的命令无法执行。路径可能因系统而异,用 which <command> 确认。

第六步:测试

重启 Gateway 后在飞书里直接对机器人说话:

帮我看看服务器上哪些服务在运行

机器人会自动调用 systemctl、ps、ss 等命令,收集信息后返回一份结构化的服务器状态报告。

更多使用场景:

  • "查看 xxx 服务的最近日志"
  • "服务器磁盘还剩多少空间"
  • "帮我重启一下 xxx 服务"
  • "看看哪些端口在监听"

安全策略总结

层级措施说明
命令执行allowlist 白名单只允许指定的二进制文件
工作范围AGENTS.md 规则Agent 被指示只操作特定目录
飞书接入pairing 配对新用户需要管理员批准才能使用
系统权限非 root 运行Gateway 以普通用户身份运行

最终的 openclaw.json 结构

{
  "plugins": { "entries": { "feishu": { "enabled": true } } },
  "agents": {
    "defaults": {
      "model": { "primary": "your-provider/your-model" }
    }
  },
  "models": {
    "mode": "merge",
    "providers": { "...": "..." }
  },
  "tools": {
    "exec": {
      "host": "gateway",
      "security": "allowlist",
      "ask": "off"
    }
  },
  "channels": {
    "feishu": {
      "enabled": true,
      "accounts": {
        "main": {
          "appId": "cli_xxxxx",
          "appSecret": "your-secret"
        }
      }
    }
  },
  "gateway": { "mode": "local" }
}

参考材料

【1】https://github.com/openclaw/openclaw

【2】https://developer.aliyun.com/article/1710355

Read more

AIGC-Fooocus部署实践:从本地手动配置到云端一键启用的深度剖析

AIGC-Fooocus部署实践:从本地手动配置到云端一键启用的深度剖析

摘要: 本文旨在为人工智能生成内容(AIGC)领域的爱好者和开发者提供一份详尽的Fooocus部署指南。Fooocus作为一款基于Gradio的开源图像生成软件,凭借其简化的操作和高质量的输出,受到了广泛关注。我们将通过两种截然不同的部署路径——传统的本地手动环境配置与现代化的云平台一键部署——来全面探索Fooocus的落地过程。本文将深入剖析手动部署中的每一个步骤、每一条命令及其背后的技术逻辑,详细记录可能遇到的环境冲突与解决方案,并将其与云端部署的流畅体验进行客观对比,为读者在不同场景下选择最合适的部署策略提供坚实的技术参考。 第一章:引言——Fooocus与AIGC部署的挑战 随着Stable Diffusion等底层模型的开源,AIGC技术,特别是文生图领域,迎来了爆发式的增长。各种应用和WebUI层出不穷,极大地降低了普通用户接触和使用前沿AI模型的门槛。在众多工具中,由lllyasviel(ControlNet的作者)开发的Fooocus,以其独特的哲学脱颖而出。Fooocus的设计理念是“化繁为简”,它在保留Stable Diffusion XL(SDXL)强大能力的

By Ne0inhk

一文详解llama.cpp:核心特性、技术原理到实用部署

目录 * 项目定位与核心特性:介绍llama.cpp是什么、核心设计哲学及主要特点。 * 核心架构与技术原理:分析其软件架构、GGML基础库、GGUF文件格式和量化技术。 * 环境部署与实践指南:提供安装部署的多种方式、基本运行方法和API服务配置。 * 进阶特性与扩展功能:介绍路由模式、工具调用、平台移植和企业级部署方案。 🎯 项目定位与核心特性 llama.cpp是一个用纯C/C++编写的开源大语言模型推理框架,最初为在本地运行Meta LLaMA模型而创建。它的核心设计哲学是极简、高效与可移植,旨在让大模型推理摆脱对GPU和复杂Python环境的依赖。 核心设计哲学 1. 极简与可移植性:纯C/C++实现意味着几乎零外部依赖,能在从云服务器到树莓派的各种设备上编译运行。 2. CPU优先优化:虽然后期加入了强大的GPU支持,但其初心是让LLM在普通CPU上高效运行,这使其在众多依赖GPU的框架中独树一帜。 3. 极致性能追求:通过底层硬件指令集优化和量化技术,实现在有限硬件上的惊人性能表现。 主要特点对比 特性维度llama.cpp典型Pyth

By Ne0inhk
Ollama Windows 安装与使用全指南:零配置本地运行 Llama、DeepSeek 等大模型,保障隐私与高效体验

Ollama Windows 安装与使用全指南:零配置本地运行 Llama、DeepSeek 等大模型,保障隐私与高效体验

Ollama Windows 安装与使用全指南:零配置本地运行 Llama、DeepSeek 等大模型,保障隐私与高效体验 * 🎯 核心摘要 * 一、环境准备与系统要求 * 二、安装 Ollama * 方法一:使用官方安装包(最简单,推荐新手) * 方法二:通过命令行安装(可选) * 三、基础使用:快速开始 * 1. 拉取并运行您的第一个模型 * 2. 常用模型管理命令 * 3. 模型选择建议 * 四、进阶应用 * 1. 使用 API 接口 * 2. 使用图形化界面(WebUI) * 五、常见问题与优化 🎯 核心摘要 Ollama 是一个开源工具,可让用户在 Windows 电脑上轻松运行 Llama、DeepSeek 等主流大语言模型。

By Ne0inhk

从 0 到 1:解决 VsCode 远程连服务器后 Github Copilot 无法使用问题

从 0 到 1:解决 VS Code 远程连服务器后 GitHub Copilot 无法使用问题 当您使用 VS Code 的远程功能(如 SSH 或容器)连接到服务器时,GitHub Copilot 可能无法正常工作,这通常是由于远程环境中的网络、扩展安装或身份验证问题导致的。我将一步步引导您解决这个问题,确保过程清晰可靠。请按照顺序操作,并测试每个步骤。 步骤 1: 确认本地 Copilot 正常工作 在开始远程连接前,先确保 Copilot 在您的本地 VS Code 中工作正常。 * 打开本地 VS Code。 * 创建一个新文件(如 test.py),输入一些代码(如 def

By Ne0inhk