← Back to Skills Marketplace
227
Downloads
0
Stars
1
Active Installs
11
Versions
Install in OpenClaw
/install cms-find-skills
Description
用于"安装 Skill / 下载 Skill / 找一个能做 X 的 Skill / 把某个 Skill 装到本地 / 列出平台 Skill"。从 CMS 平台搜索已有 Skill 并按 downloadUrl 下载 ZIP 解压到本地 ~/.claude/skills。仅负责查找与安装,不负责创建或发布
README (SKILL.md)
当前版本: v1.6.0
cms-find-skills
只做两件事:
- 调用
get-skills查看平台上已有的 Skill。 - 根据
downloadUrl下载 ZIP 并解压到本地。
不要登录,不要授权,不要扩展上传、发布、更新、下架能力。
当前目录
SKILL.mdreferences/skill-registry/README.mdscripts/skill_registry/get_skills.pyscripts/skill_registry/install_skill.py
所有说明文档统一使用 Markdown;本 Skill 不再维护旧接口文档目录。
路由
- 查看列表:
python3 cms-find-skills/scripts/skill_registry/get_skills.py - 搜索:
python3 cms-find-skills/scripts/skill_registry/get_skills.py --search "关键词" - 查看详情:
python3 cms-find-skills/scripts/skill_registry/get_skills.py --detail "code 或 name" - 取下载地址:
python3 cms-find-skills/scripts/skill_registry/get_skills.py --url "code 或 name" - 安装到本地:
python3 cms-find-skills/scripts/skill_registry/install_skill.py --code "code" - 已知下载地址时安装:
python3 cms-find-skills/scripts/skill_registry/install_skill.py --url "https://..."
规则
- 统一以
get-skills返回的数据为准。 - 安装方式固定为:下载 ZIP -> 解压到目标目录。
- 默认安装到脚本所在 workspace 的
skills/目录,可用--target覆盖。 - 本地已存在同名 Skill 时默认跳过,加
--force可删除旧目录并重新安装。 - 只维护 Markdown 说明和 Python 脚本,不维护旧接口文档副本。
Usage Guidance
这是一个用于从平台列出并下载 Skill ZIP 的本地安装工具,功能与描述基本一致 but 注意三点:
1) TLS 验证被禁用:脚本在所有 HTTP 请求中使用 verify=False 并屏蔽相关警告,这会使下载过程易受中间人攻击。如果你要在不受信网络或生产环境使用,应修复代码以启用 TLS 验证(删除 verify=False)并只对受信任的域进行请求。
2) 文档与实现不完全一致:README/文档提到可通过 CMS_API_BASE 环境变量覆盖 API 基址,但 get_skills.py 在模块加载时使用了硬编码的 DEFAULT_API_BASE/API_URL 并未读取该环境变量。若你需要自定义 API_BASE,请在代码中修复以读取环境变量或谨慎修改 API_URL 变量。
3) 下载来源的信任:脚本会下载并在本地展开任意由 downloadUrl 指定的 ZIP 包(尽管实现了路径穿越防护和 SKILL.md 校验)。仅从你信任的 Skill 注册中心或可信 downloadUrl 安装;安装后手动审查解压出的 SKILL.md 和脚本(特别是任何可执行代码)以确认其安全性。
如果你计划使用此 Skill:在受控环境中测试,启用 TLS 验证,修正文档/代码中 CMS_API_BASE 的不一致,必要时增加对 downloadUrl 域的白名单或数字签名校验流程。
Capability Analysis
Type: OpenClaw Skill
Name: cms-find-skills
Version: 1.6.0
The skill bundle is designed to search for and install other skills by downloading ZIP files from a remote registry (skills.mediportal.com.cn). While it implements proactive security measures against path traversal (ZipSlip) in `install_skill.py` using `_safe_extract`, it intentionally disables SSL certificate verification (`verify=False`) in both `get_skills.py` and `install_skill.py`. This creates a significant vulnerability to Man-In-The-Middle (MITM) attacks during the download of executable code. The capability to fetch and install remote artifacts is high-risk, but the presence of safety checks suggests a lack of clear malicious intent.
Capability Assessment
Purpose & Capability
Name/description match the code: scripts list skills from a platform, obtain downloadUrl, download ZIP, safely extract into a local skills directory, and verify SKILL.md. 所有主要功能在脚本中都有实现,未请求额外凭据或不成比例的系统访问。
Instruction Scope
SKILL.md 明确限定只做发现与本地安装,脚本也只执行 API 请求 + 下载 + 解压 + 轻量校验。文档提到可通过环境变量 CMS_API_BASE 覆盖 API 基址,但实际 get_skills.py 并未读取该环境变量(API_URL 在模块导入时以常量构造),这是文档/实现不一致,应修正以避免误导。
Install Mechanism
虽然项目没有 install spec(即不在安装时从远端执行任意代码),但运行时会从 downloadUrl 下载并展开 ZIP。脚本实现了路径穿越保护和结构校验(_normalize_zip_member/_safe_extract/verify_skill),这是良好实践。但所有 requests 调用都以 verify=False 禁用 TLS 验证,且屏蔽了 InsecureRequestWarning —— 这增加了中间人攻击(MITM)与被替换下载内容的风险。
Credentials
无需任何凭据或特殊环境变量。唯一提及的 CMS_API_BASE 在文档中出现但未被代码使用(不需要凭证),总体上没有索取不相关/过多的秘密。
Persistence & Privilege
flags: always=false,默认可被用户调用且允许模型自主调用(平台默认)。脚本不修改其他技能配置或全局代理设置,只将解压文件写入目标目录(默认为查找到的 skills 目录或当前工作目录),权限要求与用途相称。
How to Use
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install cms-find-skills - After installation, invoke the skill by name or use
/cms-find-skills - Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.6.0
CMS Skill 发现工具更新到版本 1.6.0
v1.5.0
Sync from internal platform
v1.0.7
sync from internal platform
v1.3.0
Sync internal platform update
v1.0.6
- Updated version to v1.0.6
- Documentation and metadata updates in SKILL.md to reflect new version
- No changes to core functionality or workflow
v1.0.5
- Removed the version.json file.
- No functional changes to the skill code or behavior.
- Documentation (SKILL.md) now explicitly states current version as v1.0.5.
v1.0.4
更新到 v2.0,优化 Skill 发现功能,增加搜索和详情查看
v1.0.3
- Added version.json file to the project.
v1.0.2
- 更改默认安装目录为脚本所在 workspace 的 skills/ 目录(通过 __file__ 向上动态查找),并支持通过 --target 指定目录
- 安装时如本地已有同名 Skill,默认跳过,支持使用 --force 覆盖安装
v1.0.1
cms-find-skills v1.0.1
- 明确当前目录只包含 4 个文件,并新增文件列表说明。
- 路由参数支持 code 或 name 检索、查看详情、获取下载地址。
- 增加已知下载地址下本地安装的路由说明。
- 修正文档描述和参数细节,使用法更直观清晰。
v1.0.0
Initial release: A tool for browsing, searching, and installing CMS Skills.
- Browse or search Skills via the get-skills API.
- Download and unzip Skills locally using provided download links.
- No login, authorization, uploading, publishing, updating, or removal features included.
- Simple CLI commands for listing, searching, showing details, and installing Skills.
- All install operations default to the current directory, with an option to set a target location.
Metadata
Frequently Asked Questions
What is cms-find-skills?
用于"安装 Skill / 下载 Skill / 找一个能做 X 的 Skill / 把某个 Skill 装到本地 / 列出平台 Skill"。从 CMS 平台搜索已有 Skill 并按 downloadUrl 下载 ZIP 解压到本地 ~/.claude/skills。仅负责查找与安装,不负责创建或发布. It is an AI Agent Skill for Claude Code / OpenClaw, with 227 downloads so far.
How do I install cms-find-skills?
Run "/install cms-find-skills" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is cms-find-skills free?
Yes, cms-find-skills is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does cms-find-skills support?
cms-find-skills is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created cms-find-skills?
It is built and maintained by spzwin (@spzwin); the current version is v1.6.0.
More Skills