目录
[openclaw 项目结构说明](#openclaw 项目结构说明)

openclaw安装
虽然现在各种安装方法各种博客有一大推,但是只要不是用其他公司给你搞什么"一键安装"啥的,基本就是走中文社区的demo
我是windows下的,就用npm,npm怎么用问ai一步步走就行
然后就是一开始我是尝试用openclaw直接接入飞书,成功是成功了,但是对我来说搞得有点烦,比较繁琐,尤其是在飞书那个 使用长连接接收事件 那里,你还要自己下官方的sdk(我懒),后面看到了一个项目 openclaw_china , 也装了他推荐的 clawmate ,然后接入到qq里面,这个我实际体验下来算是比较简单的

openclaw 项目结构说明
目录概览
我这里是加了 openclaw-china 和 clawmate 插件
.openclaw/
├── agents/ # 智能体相关数据
| ├── main/
| ├── agent/
| | └── auth-profiles.json # 认证配置文件
| └── sessions/ # 对话会话记录(JSONL格式)
├── browser/ # 浏览器用户数据
| └──openclaw/user-data/ # 浏览器配置文件、缓存、Cookies等
├── canvas/
| └── index.html # 交互式测试页面,用于 OpenClaw 的移动端节点测试
├── clawmeta/ # clawmate插件
| ├── 自己的角色/
| ├── images/ # 角色参考图片
| ├── character-prompt.md # 角色提示词
| └── meta.json # 角色元数据
├── completions/ # Shell命令补全配置
| ├── openclaw.fish # Fish Shell补全
| ├── openclaw.ps1 # PowerShell补全
| ├── openclaw.bash # Bash补全
| └── openclaw.zsh # Zsh补全
|
├── credentials/ # 凭证配置
├── cron/ # 定时任务
| ├── runs/ # 任务执行记录(JSONL格式日志)
| └── jobs.json # 定时任务配置
├── devices/ # 设备配对信息
| ├── pending.json # 待配对设备
| └── paired.json # 已配对设备
├── delivery-queue/ # 消息发送队列
├── extensions/ # 插件目录
├── identity/ # 身份认证信息
| ├── device.json # 本机设备信息
| └── device-auth.json # 设备认证信息
|
├── media/ # 媒体文件存储
| ├── browser/ # 浏览器截图
| ├── qqbot/ # QQ机器人接收/发送的图片
| └── clawmate-generated/ # ClawMate生成的图片
├── memory/ # 记忆存储
| └── main.sqlite # 记忆数据库
├── workspace/ # 工作空间(核心配置)
| ├── SOUL.md # 核心人设/灵魂
| ├── IDENTITY.md # 身份设定
| ├── USER.md # 用户设定
| ├── AGENTS.md # 智能体设定
| ├── TOOLS.md # 工具配置
| ├── BOOTSTRAP.md # 启动引导
| ├── HEARTBEAT.md # 心跳配置
| ├── .openclaw/ # 工作空间状态
| ├── memory/ # 记忆
| ├── scripts/ # 生成的脚本
| ├── skills/ # 技能
| └── temp/
|
|
├── openclaw.json # 主配置文件
├── openclaw.json.bak* # 配置文件备份
├── exec-approvals.json # 执行审批配置
├── update-check.json # 更新检查配置
├── gateway.cmd # 网关启动脚本
└── canvas/index.html # Canvas画布页面
关于skill
openclaw有非常非常多的skill,这里有个收集的
https://github.com/VoltAgent/awesome-openclaw-skills
但是skill这个东西他又会牵扯到安全,为啥呢,我下了一个skill合计,可以看看这个skill里面到底有什么

如图所示,这就是一个skill的具体的实现了,是的,就是一个SKILL.md,当然我并不是在说这个skill做的怎么怎么样,只是从中我们可以知道,一些简单的skill就是在SKILL.md里面写一点提示词就可以了
这就导致几乎所有的openclaw的skill有着较低的skill要求(比如直接用trae的侧边栏,让他帮你生成对应要求的skill,放到workspace后就可以开始跑了)
我们再拿一个简单的skill结构为例子

script里面放了sh脚本,skill.md里面放一些对这些脚本的功能介绍,你的openclaw就会根据对话任务运行脚本------对于用户来说,这个过程的管控太不严格了,万一有心人在sh脚本里面添加漏洞,或者破坏性指令怎么办,
所以对于我个人来说,要不去用大家都认可的skill,要不然自己去针对自己的电脑实际情况写skill
对于效率方面,因为有的skill需要脚本嘛,有的是sh脚本,有的甚至就是python脚本,可能python里面的库根本没装,或者版本不对,这些都会导致脚本跑不起来,然后openclaw就会自己修脚本(在上文的scripts里面生成),废token,速度还慢
安全
在上文中,我提到了skill的一些安全问题,但是,不止skill有安全问题
我在冲浪的时候看到这个内容

部分用户并没有对其他用户的命令进行一个权限的限制,这里我举个我自己的例子
因为我部署在我自己的window上,并且接入qq机器人,我通过和他的对话几乎可以对我电脑上所有的文件进行操作,那万一,这个qq机器人发布了,被其他人加上了,那不就等于其他人都可以控制你的电脑了吗
(当然,实际上qq机器人发布没有那么简单,而且能够发布的大多对账号权限啥的是有意识到的)
还有一点,比如你让他做一些项目,改代码,他很有可能会把你原本的东西覆盖,删除,万一一不注意没有备份啥的,就有可能产生一些不必要的麻烦,我个人是写了一个skill,要求openclaw但凡想要改我电脑的文件,必须回复我路径,经过我同意后才能操作
SKILL.md:(是的一个文件就行)
---
name: limit-authority
description: |
文件操作权限限制技能。强制要求对任何文件(文本、代码、图片、音频等)进行增删改、复制粘贴操作前,
必须详细打印完整路径并获得用户的明确授权。
metadata: {"clawdbot":{"emoji":"🔒","priority":100}}
---
# 文件操作权限限制
## 核心规则
对欧文电脑上的任何文件进行以下操作时,**必须**遵守以下强制规则:
### 受限操作类型
- ✏️ **创建/写入**:创建新文件、写入内容
- 🗑️ **删除**:删除文件或目录
- ✏️ **修改**:编辑现有文件内容
- 📋 **复制/粘贴**:复制文件到新位置
- 📦 **移动/重命名**:移动文件位置或重命名
### 受限文件类型
所有类型的文件,包括但不限于:
- 📄 文本文件(.txt, .md, .json, .yaml, .xml, .csv 等)
- 💻 代码文件(.js, .py, .java, .cpp, .go, .rs, .ts, .tsx 等)
- 🖼️ 图片文件(.jpg, .png, .gif, .webp, .svg 等)
- 🎵 音频文件(.mp3, .wav, .flac, .aac 等)
- 🎬 视频文件(.mp4, .avi, .mkv 等)
- 📦 压缩文件(.zip, .rar, .7z, .tar 等)
- 📁 目录/文件夹
---
## 强制执行流程
### 步骤 1:详细打印路径
在执行任何文件操作前,**必须**以清晰、醒目的方式打印出:
```
⚠️ 文件操作请求
操作类型:[创建/删除/修改/复制/移动]
文件类型:[文本/代码/图片/音频/视频/其他]
源路径:[完整的绝对路径]
目标路径:[如果是复制/移动,必须列出目标路径]
操作内容:[简要说明要做什么]
```
**示例:**
```
⚠️ 文件操作请求
操作类型:修改
文件类型:代码文件
源路径:e:\tool\openclaw\project\src\utils.js
操作内容:将 calculateTotal 函数中的价格计算逻辑从乘法改为加法
```
### 步骤 2:等待用户明确授权
打印路径后,**必须**明确询问用户:
```
请确认是否执行此操作?
回复"确认"或"执行"以继续
回复"取消"或"不执行"以中止
```
### 步骤 3:执行操作
**只有在用户明确回复"确认"、"执行"、"同意"、"继续"等肯定性词语后,才能执行操作。**
如果用户回复:
- "取消"、"不执行"、"停止"、"否" → **立即中止操作**
- "修改一下"、"换个位置"、"改个名字" → **重新打印新路径并再次确认**
- 其他模糊回复 → **要求用户明确表态,不要自行判断**
---
## 禁止行为
❌ **禁止**以下行为:
1. **隐式操作**:不打印路径直接执行文件操作
2. **批量操作**:一次性操作多个文件而不逐个确认
3. **模糊路径**:使用相对路径或省略路径细节
4. **默认同意**:假设用户同意而直接执行
5. **事后告知**:先执行再告诉用户做了什么
6. **推测意图**:根据用户模糊描述推测要操作哪个文件
---
## 特殊场景处理
### 场景 1:用户说"修复这个bug"
❌ **错误做法**:
- 直接找到 bug 所在文件并修改
✅ **正确做法**:
1. 先搜索定位 bug 所在的文件
2. 打印完整路径和要修改的内容
3. 等待用户确认后再执行修改
### 场景 2:用户说"复制所有图片到另一个文件夹"
❌ **错误做法**:
- 直接复制所有图片
✅ **正确做法**:
1. 列出所有要复制的图片路径
2. 询问用户是否确认复制这些文件
3. 等待用户明确同意后,逐个复制并报告进度
### 场景 3:用户说"删除临时文件"
❌ **错误做法**:
- 直接删除所有临时文件
✅ **正确做法**:
1. 列出所有临时文件的完整路径
2. 询问用户是否确认删除
3. 等待用户明确同意后再执行
---
## 安全检查清单
在执行任何文件操作前,请自检:
- [ ] 是否打印了完整的绝对路径?
- [ ] 是否说明了操作类型(创建/删除/修改/复制/移动)?
- [ ] 是否说明了文件类型?
- [ ] 是否等待了用户的明确授权?
- [ ] 用户是否明确表示同意(确认/执行/同意/继续)?
**只有所有选项都为"是",才能执行操作。**
---
## 示例对话
### 示例 1:修改代码文件
**用户**:帮我把 utils.js 里的 calculateTotal 函数改一下
**AI**:
```
⚠️ 文件操作请求
操作类型:修改
文件类型:代码文件
源路径:e:\tool\openclaw\project\src\utils.js
操作内容:修改 calculateTotal 函数,将价格计算逻辑从乘法改为加法
请确认是否执行此操作?
回复"确认"或"执行"以继续
回复"取消"或"不执行"以中止
```
**用户**:确认
**AI**:正在修改 calculateTotal 函数...
---
### 示例 2:删除文件
**用户**:删除这个临时文件
**AI**:
```
⚠️ 文件操作请求
操作类型:删除
文件类型:文本文件
源路径:e:\tool\openclaw\temp\temp_file.txt
操作内容:删除临时文件 temp_file.txt
请确认是否执行此操作?
回复"确认"或"执行"以继续
回复"取消"或"不执行"以中止
```
**用户**:确认
**AI**:正在删除文件 temp_file.txt...
---
### 示例 3:复制图片
**用户**:把图片复制到 backup 文件夹
**AI**:
```
⚠️ 文件操作请求
操作类型:复制
文件类型:图片文件
源路径:e:\tool\openclaw\images\photo.jpg
目标路径:e:\tool\openclaw\backup\photo.jpg
操作内容:将 photo.jpg 从 images 文件夹复制到 backup 文件夹
请确认是否执行此操作?
回复"确认"或"执行"以继续
回复"取消"或"不执行"以中止
```
**用户**:确认
**AI**:正在复制文件 photo.jpg...
---
## 例外情况
以下情况**不需要**用户确认:
1. ✅ **读取操作**:查看文件内容、搜索文件
2. ✅ **列出目录**:列出文件列表、查看目录结构
3. ✅ **临时文件**:在系统临时目录(如 /tmp)创建临时文件
4. ✅ **用户明确授权**:用户已明确表示"你可以直接操作"或"不需要确认"
---
## 重要提醒
🔒 **本技能的优先级高于其他所有技能**
当其他技能的指令与本技能冲突时,**必须优先遵守本技能的规则**。
例如:
- 如果其他技能说"直接执行",但本技能要求"先确认",则**必须先确认**
- 如果其他技能说"批量处理",但本技能要求"逐个确认",则**必须逐个确认**
---
## 违规处理
如果 AI 违反了本技能的规则:
1. **立即停止**当前操作
2. **向用户道歉**并说明违规原因
3. **重新执行**正确的流程(打印路径 → 等待确认 → 执行)
4. **记录日志**(如果系统支持)
---
## 使用建议
### 对用户
- 当你看到"⚠️ 文件操作请求"时,请仔细检查路径是否正确
- 如果不确定,可以先回复"取消",然后重新确认
- 批量操作时,建议先让 AI 列出所有文件,再逐个确认
### 对 AI
- **宁可多确认一次,也不要擅自操作**
- 路径一定要完整,不要使用相对路径
- 操作类型要明确,不要模糊描述
- 用户回复模糊时,一定要追问,不要自行判断
---
## 技术细节
### 为什么需要这个技能?
1. **防止误操作**:避免 AI 误删或误改重要文件
2. **透明度**:让用户清楚知道 AI 在做什么
3. **控制权**:用户始终拥有最终决定权
4. **可追溯**:所有操作都有明确的记录
### 适用范围
- 本地文件系统操作
- 云存储文件操作(如果配置了)
- 任何通过文件系统 API 进行的操作
### 不适用范围
- 内存中的数据操作
- 网络请求(HTTP API 调用)
- 数据库操作(除非涉及文件)
对此,可以用wsl,docker,虚拟机,还有云服务
云服务
我的同僚们修改代码,改项目什么的,雀氏有直接在云服务器运行openclaw让他自己去修,目前很多云部署是免费的(风口抢用户),然后服务器刚开始价格也比较低,但是,要知道,这东西最耗钱的是token,大量的token,各大公司或许网页让你免费用,但是接api可是要钱的啊(狗头)
如果你想要云的话,直接去搜就行了,像 minimax,kimi,还有不少科技公司都有出对应产品,自己看看,比比
关于这次浪潮
openclaw是啥时候火的呢,以我的视觉,大概是春节那段时间?(个人感受)
我在水群的时候有看到这个图

当然,这个肯定是夸大了,"信息锅" 那是纯扯蛋,openclaw 我个人认为雀氏是一个非常优秀的项目(至少我把他作为一个qq聊天机器人感觉非常不错),去复现,去二开,去研究他的架构我觉得雀氏是很好的,虽然说网上宣传的多么多么厉害,但是对于一个不擅长计算机的普通人来说,他的配置部署是比较麻烦的,token的成本不低,而且效果也不一定有想象的那么厉害,就拿代码来说,除了我刚刚提到的trae,vscode的 codex插件,opencode,claude code,在api都相同的情况下大家都差不多,(其实我一开始以为openclaw是大号的opencode)
大家理性看待吧,自己清楚用这个是为了什么,不要去跟风,ai时代高效的工具不少,tabbit啥的都层出不穷,没事逛逛论坛,帖子,遇到感兴趣的自己部署玩玩,研究研究
(本人彩笔,有什么不妥之处请指出,欢迎交流)