diff --git a/INSTALL.md b/INSTALL.md index bb1207f..a30a406 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -59,15 +59,16 @@ openclaw gateway restart ``` qiniu-uploader/ ├── scripts/ -│ ├── upload-to-qiniu.js # 核心上传脚本 -│ ├── debug-upload.js # 调试工具 -│ ├── check-bucket-override.js # 存储桶检查 -│ └── update-bucket-setting.js # 设置更新 -├── openclaw-processor.js # OpenClaw 处理器 -├── openclaw-handler.js # HTTP 处理器 -├── SKILL.md # Skill 说明文档 -├── INSTALL.md # 本文件 -└── README.md # 完整文档 +│ ├── upload-to-qiniu.js # 核心上传脚本 +│ ├── feishu-listener.js # 飞书独立监听器 +│ └── update-bucket-setting.js # 存储桶设置工具 +├── openclaw-processor.js # OpenClaw 处理器 +├── openclaw-handler.js # HTTP 处理器 +├── deploy.sh # 部署脚本 +├── SKILL.md # Skill 说明文档 +├── INSTALL.md # 本文件 +├── README.md # 完整文档 +└── qiniu-config.example.json # 配置示例 ``` --- @@ -167,6 +168,20 @@ node scripts/upload-to-qiniu.js config set default.accessKey YOUR_KEY ## 📝 版本信息 -- **Skill 版本**: 1.1.0 +- **Skill 版本**: 2.0.0 (清理版) - **兼容 OpenClaw**: 2026.3.2+ - **七牛云 API**: 表单上传 v2 +- **代码行数**: ~1850 行(核心代码) + +## 🔄 更新日志 + +### v2.0.0 (2026-03-07) +- 🧹 清理调试代码和废弃文件(删除 2670 行) +- ✅ 修复上传成功回复显示实际存储桶名称 +- 🔧 添加 DEBUG 环境变量控制日志输出 +- 📦 优化文件结构,便于部署 + +### v1.1.0 +- ✅ 支持覆盖上传同名文件 +- ✅ 显示实际存储桶名称 +- ✅ 自动刷新 CDN 缓存 diff --git a/README.md b/README.md index 5cf6ebe..85b4305 100644 --- a/README.md +++ b/README.md @@ -217,24 +217,49 @@ node scripts/upload-to-qiniu.js config reset --- -## 🚀 启动监听器 +## 🚀 部署方式 + +### 方式一:OpenClaw 集成(推荐) + +1. 复制 skill 到 OpenClaw: +```bash +cp -r qiniu-uploader ~/.openclaw/workspace/skills/ +``` + +2. 配置七牛云凭证: +```bash +cp qiniu-config.example.json ~/.openclaw/credentials/qiniu-config.json +nano ~/.openclaw/credentials/qiniu-config.json +``` + +3. 重启 OpenClaw Gateway: +```bash +openclaw gateway restart +``` + +4. 在飞书中测试: +``` +/qiniu-config list +``` + +### 方式二:独立监听器 ```bash cd ~/.openclaw/workspace/skills/qiniu-uploader -# 前台运行 -./scripts/start-listener.sh +# 配置环境变量 +cp .env.example .env +nano .env # 编辑飞书凭证 -# 后台运行 -nohup node scripts/feishu-listener.js > listener.log 2>&1 & +# 启动监听器 +node scripts/feishu-listener.js -# 查看日志 -tail -f listener.log - -# 停止服务 -pkill -f feishu-listener +# 或使用 PM2 后台运行 +pm2 start scripts/feishu-listener.js --name qiniu-uploader ``` +**注意:** 独立监听器需要在飞书开放平台配置事件订阅地址。 + --- ## 📊 文件结构 @@ -242,15 +267,15 @@ pkill -f feishu-listener ``` qiniu-uploader/ ├── scripts/ -│ ├── upload-to-qiniu.js # 核心上传脚本(支持配置管理) -│ ├── feishu-listener.js # 飞书监听器(v2) -│ ├── start-listener.sh # 启动脚本 -│ └── verify-url.js # URL 验证 -├── .env.example # 环境变量模板 -└── docs/ - ├── README.md # 本文档 - ├── QUICKSTART.md # 快速开始 - └── FEISHU_SETUP.md # 飞书配置 +│ ├── upload-to-qiniu.js # 核心上传脚本 +│ ├── feishu-listener.js # 飞书独立监听器 +│ └── update-bucket-setting.js # 存储桶设置工具 +├── openclaw-processor.js # OpenClaw 处理器 +├── openclaw-handler.js # HTTP 处理器 +├── deploy.sh # 部署脚本 +├── .env.example # 环境变量模板 +├── qiniu-config.example.json # 配置示例 +└── README.md # 本文档 ``` --- @@ -259,20 +284,31 @@ qiniu-uploader/ ### 上传失败 +1. 检查配置: ```bash -# 检查配置 /qiniu-config list +``` -# 手动测试上传 +2. 手动测试上传: +```bash node scripts/upload-to-qiniu.js upload --file ./test.txt --key /test.txt ``` +3. 检查实际存储桶名称: +```bash +# 回复中的"存储桶"应显示实际桶名(如 daoqires),而不是配置别名(如 default) +``` + ### 配置命令无响应 -检查监听器日志: - +1. 检查 OpenClaw Gateway 状态: ```bash -tail -f listener.log +openclaw gateway status +``` + +2. 查看日志: +```bash +tail -f /tmp/openclaw/openclaw-*.log ``` ### 权限错误 @@ -282,6 +318,10 @@ tail -f listener.log - `im:file` - `im:message:send_as_bot` +### 存储桶覆盖问题 + +如果同名文件无法覆盖,检查七牛云控制台的"防覆盖"设置是否已关闭。 + --- ## 💡 最佳实践 diff --git a/SKILL.md b/SKILL.md index 37924d4..111d3aa 100644 --- a/SKILL.md +++ b/SKILL.md @@ -20,14 +20,11 @@ description: 七牛云文件上传和管理。支持命令触发和飞书卡片 | `/qiniu-help` | 查看帮助 | `/qiniu-help` | | `/qh` | 帮助快捷命令(别名) | `/qh` | -### 方式 2:飞书卡片交互(推荐) +### 方式 2:飞书卡片交互(可选) -通过飞书消息卡片按钮操作,体验更佳。需要配置卡片交互服务器。 +通过飞书消息卡片按钮操作,体验更佳。需要独立部署监听器。 -**卡片功能:** -- 📎 选择文件上传 -- 📋 查看配置 -- ❓ 帮助 +**注意:** OpenClaw 集成模式下推荐使用命令触发方式。 ## 命令格式