腾讯云COS技能:让 OpenClaw Agent 直接操作对象存储

前言

在 Agent 里处理腾讯云 COS,常见做法是临时写一段 SDK 示例,或把控制台步骤口述给用户。上传、列目录、签名链接、批量同步各自一套参数,删改对象还要反复确认路径。下面介绍 SkillHub 上的社区技能「腾讯云COS技能」(@user_9aa92135/tx-cos):把 COS 高频操作收敛成 OpenClaw 可调用的工作流,并附带可复用的 Node 脚本。

这是什么

「腾讯云COS技能」是面向 OpenClaw 的腾讯云 COS 原生操作技能,坐标 @user_9aa92135/tx-cos,当前 SkillHub 页面标注版本 1.0.0,来源为 community,分类 it-ops-security。发布者为 user_9aa92135。Skill 元数据要求运行环境具备 node 与 npm;SkillHub 标签为 requires_api_key=false(指技能商店侧不要求额外 API Key,访问 COS 仍须配置腾讯云凭证)。

技能目标是把对象存储变成 Agent 可直接调度的一组脚本化流程:先校验配置,再按场景调用 scripts/ 下脚本,结果以结构化 JSON 或简洁中文返回。

核心功能

以下能力与 SkillHub 简介及技能包内 SKILL.md 一致,均已核实:

  1. 上传:单文件上传、目录/多文件批量上传、大文件分片上传(可配置分片大小、并发等)。
  2. 访问:生成对象临时签名 URL(文档默认有效期示例为 3600 秒)。
  3. 浏览:按前缀列出对象,用 Prefix + Delimiter: '/' 模拟文件夹视图。
  4. 对象管理:复制、移动、重命名、删除对象;创建文件夹;递归删除文件夹。
  5. 统计:统计某前缀下文件数量、总体积与类型分布。
  6. 排障:检查 COS 凭证、地域、Bucket、自定义域名等配置是否齐全。

技能包内脚本清单(Agent 优先复用,避免每次重写逻辑):

脚本 用途
scripts/check_config.js 检查关键环境变量
scripts/upload_file.js 上传单个文件
scripts/upload_batch.js 批量上传文件或目录
scripts/upload_large_file.js 大文件分片上传
scripts/generate_signed_url.js 生成临时签名链接
scripts/list_objects.js 列出对象或文件夹视图
scripts/manage_objects.js 删除、批量删除、复制、移动、重命名、创建文件夹
scripts/delete_folder.js 删除文件夹(支持递归)
scripts/get_folder_stats.js 目录体量与类型统计

安装与启用

通过 SkillHub CLI 安装

安装前确认本机已有 skillhub(安装方式见 SkillHub 安装文档)。必须用 --dir 指向当前 Agent 的 skills 目录,否则技能不会被识别。

command -v skillhub && skillhub --version

skillhub install tx-cos --namespace user_9aa92135 --dir <skills 目录>

各客户端常用 skills 目录(摘自 SkillHub 安装文档):

  • Cursor:~/.cursor/skills/
  • Claude Code:~/.claude/skills/
  • Codex:~/.codex/skills/ 或项目下的 .agents/skills/

OpenClaw 及其变体(NanoBot、PicoClaw、memUBot 等)同样使用各自的 skills 目录,安装后按对应 Agent 要求重启或刷新技能列表。

通过自然语言让 AI 安装

SkillHub 页面提供的提示词为:请根据 https://skillhub.cn/install/skillhub.md,安装 @user_9aa92135/tx-cos。

环境变量(COS 访问)

scripts/check_config.js 会检查下列变量。必需项未设置时,技能要求先说明缺失项,不继续执行上传/删除类操作。

必需:

COS_SECRET_ID=
COS_SECRET_KEY=
COS_REGION=
COS_BUCKET=

可选:

COS_DOMAIN=

典型用法

技能约定:需要真实读写 COS 时,优先执行 scripts/ 下脚本,入参为 单行 JSON 字符串(与 SKILL.md 中的调用形式一致;路径以技能包内 scripts/ 为准)。

1. 先检查配置

确认凭证与 Bucket 相关环境变量已导出后,让 Agent 运行配置检查脚本。输出为 JSON,标明各键是否已设置。

2. 上传单个文件

upload_file.js 要求 JSON 至少包含 file_path;可选 object_key(默认取本地文件名 basename)、custom_domain。

示例入参结构:

{"file_path": "/path/to/local/file.zip", "object_key": "builds/file.zip"}

成功时脚本返回对象键、大小、ETag、访问 URL 等字段。

3. 生成临时签名链接

适用「给一个可下载的临时链接」。关键参数包括对象 Key 与 Expires;用户未指定有效期时,技能文档建议默认 3600 秒并明确告知为临时链接。

4. 列目录与谨慎删除

列目录时优先返回文件夹与文件分组;结果过多时只展示前若干项并提示可继续翻页。删除、批量删除、递归删文件夹前,技能要求确认对象键或前缀范围;移动/重命名会提示其本质多为复制后删除。

大文件上传场景下,文档建议显式设置分片大小(SliceSize)、并发(AsyncLimit)并说明网络与覆盖同名对象的风险。

适用场景与注意

适合谁

  • 已在用 OpenClaw 系 Agent,需要把本地构建产物、备份、媒体文件同步到腾讯云 COS。
  • 希望用统一脚本完成上传、签名分享、目录浏览与清理,而不是每次让模型从零写 SDK 代码。
  • 需要快速判断「是凭证、地域还是 Bucket 名配错」的运维/开发场景。

限制与注意

  • 依赖 Node 运行时;需在技能目录或依赖环境中能加载 COS SDK(脚本通过 scripts/lib.js 创建客户端)。
  • requires_api_key=false 不等于免配置:仍须合法腾讯云 SecretId/SecretKey 与 Bucket 信息,且不要在对话中泄露敏感值。
  • 删除与公开分享属于高风险操作;技能文档要求对签名 URL 时效、公开 Bucket 额外确认。
  • SkillHub 页面统计(截至查阅时):下载 1016 次、安装 11 次;技能为社区发布,使用前可在 SkillHub 查看版本与说明是否更新。

结尾

「腾讯云COS技能」把 COS 上传、同步、签名、浏览、对象管理与配置排查写成 OpenClaw 可执行的工作流,并配套 scripts/ 脚本与明确的安全边界。若你要在 Agent 里稳定操作腾讯云对象存储,可从 SkillHub 安装 @user_9aa92135/tx-cos。

  • SkillHub 页面:https://www.skillhub.cn/skills/user_9aa92135/tx-cos
  • API 坐标页:https://api.skillhub.cn/user_9aa92135/tx-cos
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye