@workskills/getskill
v1.1.10
Published
A skill management tool for OpenClaw that enables searching, downloading, and updating skill files from the getskill.work repository
Maintainers
Readme
GetSkill
OpenClaw 技能管理工具 - 从 getskill.work 搜索、下载和更新技能文件
功能特性
- 🔍 从 getskill.work API 搜索技能
- 🧾 支持 JSON 格式搜索输出(
search --json) - 📥 通过 Git 克隆技能仓库
- 🏷️ 支持安装/更新指定版本(
--version <tag>) - 🔄 通过 Git pull 更新已安装的技能
- 🚀 支持将本地技能目录发布到 Git 远程仓库(
publish) - 🛠️ 自动检测并引导安装 Git(如未安装)
- 📂 跨平台支持(Windows/macOS/Linux)
- 💾 自动管理技能文件到 OpenClaw skills 目录
- ⚙️ 支持自定义 API 地址
工作原理
- 搜索: 从
getskill.workAPI 获取技能列表,包含 Git 仓库地址 - 安装: 使用
git clone克隆技能仓库到缓存目录 - 复制: 将仓库目录(排除
.git)复制到 OpenClaw skills 目录 - 更新: 使用
git pull更新仓库,并重新复制技能目录
目录结构
~/.openclaw/
├── skills/ # OpenClaw 技能目录
│ ├── skill1/
│ └── skill2/
└── skills-cache/ # Git 仓库缓存
├── skill1/
└── skill2/平台路径
- Windows:
%USERPROFILE%\.openclaw\skills - macOS:
~/.openclaw/skills - Linux:
~/.openclaw/skills
安装
全局安装(推荐)
npm install -g @workskills/getskill安装后,可以在任何位置使用 getskill 命令。
本地安装
npm install @workskills/getskill本地安装后,可以通过 npx 运行:
npx getskill search <关键词>从源码安装
git clone https://github.com/work-skills/getskill.git
cd getskill
npm install
npm link使用方法
搜索技能
search/install/update/list/inspect/clean默认都不需要登录。只有publish才需要登录。
getskill search <关键词>输出 JSON:
getskill search <关键词> --json示例输出:
找到 3 个技能:
1. commit-helper
描述: 帮助生成规范的 git commit 信息
Git: https://getskill.work/skills/commit-helper.git
2. code-review
描述: AI 代码审查助手
Git: https://getskill.work/skills/code-review.git安装技能
getskill install <技能名称>安装指定版本:
getskill install <技能名称> --version <tag>示例:
getskill install commit-helper操作流程:
- 执行
git clone到~/.openclaw/skills-cache/commit-helper - 将整个技能目录复制到
~/.openclaw/skills/commit-helper
更新技能
getskill update <技能名称>示例:
getskill update commit-helper批量更新所有已安装技能:
getskill update --all切换到指定版本:
getskill update <技能名称> --version <tag>操作流程:
- 进入缓存目录
~/.openclaw/skills-cache/commit-helper - 执行
git pull - 重新复制最新的技能目录
卸载技能
getskill uninstall <技能名称>仅卸载本地技能目录、保留缓存:
getskill uninstall commit-helper --keep-cache查看安装状态
getskill inspect <技能名称>发布技能目录
getskill publish <目录>默认行为:
- 检查目录中是否存在
SKILL.md - 严格校验
SKILL.md是否包含合法 front matter 和必要章节 - 如果本地未登录,则自动提示输入用户名/邮箱/密码,尝试注册并登录
- 自动在
getskill.work创建同名仓库(若不存在) - 提交并推送到远程仓库
也可以显式指定仓库:
getskill publish <目录> --repo <git-url>
getskill publish <目录> --name <repo-name>可选参数:
--branch <name>: 发布分支(默认main)--message <text>: 自定义提交信息--name <repo-name>: 指定自动创建的仓库名称--username <name>/--email <mail>/--password <pwd>: 非交互发布时提供注册/登录信息--private: 创建私有仓库
如果
SKILL.md缺失,或不符合规范(缺少 front matter、metadata、## 指令等关键结构),发布会被直接阻止。
列出本地技能
getskill list返回 ~/.openclaw/skills 下的技能目录名称列表。
查看目录路径
getskill path清理缓存
getskill clean清理所有 Git 仓库缓存(不影响 skills 目录中的文件)
配置 API 地址
查看当前 API 地址:
getskill config get设置自定义 API 地址:
getskill config set https://your-custom-api.com通过环境变量设置:
GETSKILL_BASE_URL=https://your-custom-api.com getskill search keywordAPI 接口规范
搜索 API
GET https://getskill.work/api/v1/repos/search?sort=updated&order=desc&q=<关键词>&page=1&limit=20响应格式:
{
"ok": true,
"data": [
{
"id": 1,
"full_name": "skills/commit-helper",
"description": "帮助生成规范的 git commit 信息",
"html_url": "https://getskill.work/skills/commit-helper",
"clone_url": "https://getskill.work/skills/commit-helper.git"
}
]
}编程接口
const getskill = require('@workskills/getskill');
// 设置自定义 API 地址(可选)
getskill.setBaseUrl('https://your-custom-api.com');
// 搜索技能
const results = await getskill.searchSkills('commit');
// 安装技能
const result = await getskill.downloadSkill('skills/commit-helper');
console.log(result.files); // 已复制的技能目录列表
// 更新技能
await getskill.updateSkill('commit-helper');
// 列出本地技能
const skills = getskill.listLocalSkills();
// 获取目录
const skillsDir = getskill.getSkillsDirectory();
const cacheDir = getskill.getSkillsCacheDirectory();
// 获取当前 API 地址
const baseUrl = getskill.getBaseUrl();技能仓库规范
技能 Git 仓库应包含:
- 一个或多个
.md技能文件(非 README) - 可选的
README.md说明文档 - 可选的示例代码或配置文件
示例结构:
commit-helper/
├── commit-helper.md # 技能文件(仓库目录会被整体复制)
├── README.md # 说明文档(会随目录复制)
└── examples/ # 示例(会随目录复制)依赖
- Node.js >= 12(运行 CLI)
- Node.js 18+(开发与测试工具)
- Git 命令行工具(如未安装,程序会自动引导安装)
开发与质量保障
npm install
npm run build
npm run lint
npm test
npm run test:flow
npm run coverage当前源码已迁移为 TypeScript,发布产物位于 dist/。
开发文档:
Git 自动检测与安装
首次运行 install 或 update 命令时,程序会自动检测系统是否已安装 Git:
Windows
- 自动下载: 自动下载 Git 安装程序并启动安装向导
- 手动安装: 如果自动下载失败,会提示访问 https://git-scm.com/download/win
macOS
- 提示使用 Homebrew 安装:
brew install git - 如未安装 Homebrew,会提示访问 https://brew.sh/
Linux
- 提示使用系统包管理器安装:
- Ubuntu/Debian:
sudo apt-get install git - CentOS/RHEL:
sudo yum install git - Fedora:
sudo dnf install git - Arch:
sudo pacman -S git
- Ubuntu/Debian:
许可证
MIT
作者
workskills.store
