qufei1993/skills-hub

GitHub: qufei1993/skills-hub

这是一个基于 Tauri 和 React 构建的跨平台桌面应用,旨在集中管理 AI 编码代理的 Skills 并将其同步到 Cursor、Claude 等多种开发工具的全局目录。

Stars: 729 | Forks: 93

# Skills Hub (Tauri Desktop) 一个跨平台桌面应用(Tauri + React),用于集中管理 Agent Skills 并将其同步到多个 AI 编码工具的全局 skills 目录(首选 symlink/junction,回退至 copy)——“一次安装,随处同步”。 ## 文档 - English (default): `README.md` (本文件) - 中文:[`docs/README.zh.md`](docs/README.zh.md) ## 主要功能 - **探索页面**:浏览精选 skills(ClawHub,每日更新)并在线搜索(skills.sh)——一键安装并同步到所有检测到的工具 - **Skill 详情视图**:点击 skill 名称浏览其文件,支持 Markdown 渲染和语法高亮(40+ 种语言) - **统一视图**:已管理的 skills 以及各工具的启用状态 - **入门迁移**:扫描已安装工具中的现有 skills,导入到中央仓库,并同步 - **导入来源**:本地文件夹 / Git URL(包括多技能仓库选择、`.claude/skills/` 目录支持) - **更新**:从源刷新;将更新传播到复制模式目标 - **新工具检测**:检测新安装的工具并提示同步已管理的 skills ### 我的 Skills ![My Skills](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/c58753096d035509.png) ### 探索与搜索 ![Explore](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/f51b4a18b8035511.png) ### 手动添加 ![Manual Add](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/5c9b022c23035512.png) ### 技能详情 ![Skill Detail](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/290946ca85035513.png) ## 支持的 AI 编码工具 | tool key | 显示名称 | skills 目录(相对于 `~`) | 检测目录(相对于 `~`) | | --- | --- | --- | --- | | `cursor` | Cursor | `.cursor/skills` | `.cursor` | | `claude_code` | Claude Code | `.claude/skills` | `.claude` | | `codex` | Codex | `.codex/skills` | `.codex` | | `opencode` | OpenCode | `.config/opencode/skills` | `.config/opencode` | | `antigravity` | Antigravity | `.gemini/antigravity/global_skills` | `.gemini/antigravity` | | `amp` | Amp | `.config/agents/skills` | `.config/agents` | | `kimi_cli` | Kimi Code CLI | `.config/agents/skills` | `.config/agents` | | `augment` | Augment | `.augment/rules` | `.augment` | | `openclaw` | OpenClaw | `.openclaw/skills` | `.openclaw` | | `copaw` | Copaw | `.copaw/skill_pool` | `.copaw` | | `cline` | Cline | `.cline/skills` | `.cline` | | `codebuddy` | CodeBuddy | `.codebuddy/skills` | `.codebuddy` | | `command_code` | Command Code | `.commandcode/skills` | `.commandcode` | | `continue` | Continue | `.continue/skills` | `.continue` | | `crush` | Crush | `.config/crush/skills` | `.config/crush` | | `junie` | Junie | `.junie/skills` | `.junie` | | `iflow_cli` | iFlow CLI | `.iflow/skills` | `.iflow` | | `kiro_cli` | Kiro CLI | `.kiro/skills` | `.kiro` | | `kode` | Kode | `.kode/skills` | `.kode` | | `mcpjam` | MCPJam | `.mcpjam/skills` | `.mcpjam` | | `mistral_vibe` | Mistral Vibe | `.vibe/skills` | `.vibe` | | `mux` | Mux | `.mux/skills` | `.mux` | | `openclaude` | OpenClaude IDE | `.openclaude/skills` | `.openclaude` | | `openhands` | OpenHands | `.openhands/skills` | `.openhands` | | `pi` | Pi | `.pi/agent/skills` | `.pi` | | `qoder` | Qoder | `.qoder/skills` | `.qoder` | | `qwen_code` | Qwen Code | `.qwen/skills` | `.qwen` | | `trae` | Trae | `.trae/skills` | `.trae` | | `trae_cn` | Trae CN | `.trae-cn/skills` | `.trae-cn` | | `zencoder` | Zencoder | `.zencoder/skills` | `.zencoder` | | `neovate` | Neovate | `.neovate/skills` | `.neovate` | | `pochi` | Pochi | `.pochi/skills` | `.pochi` | | `adal` | AdaL | `.adal/skills` | `.adal` | | `kilo_code` | Kilo Code | `.kilocode/skills` | `.kilocode` | | `roo_code` | Roo Code | `.roo/skills` | `.roo` | | `goose` | Goose | `.config/goose/skills` | `.config/goose` | | `gemini_cli` | Gemini CLI | `.gemini/skills` | `.gemini` | | `github_copilot` | GitHub Copilot | `.copilot/skills` | `.copilot` | | `clawdbot` | Clawdbot | `.clawdbot/skills` | `.clawdbot` | | `droid` | Droid | `.factory/skills` | `.factory` | | `windsurf` | Windsurf | `.codeium/windsurf/skills` | `.codeium/windsurf` | | `moltbot` | MoltBot | `.moltbot/skills` | `.moltbot` | ## 开发 ### 前置条件 - Node.js 18+(推荐 20+) - Rust(稳定版) - Tauri 系统依赖(请遵循 Tauri 官方文档针对你操作系统的说明) ``` npm install npm run tauri:dev ``` ### 构建 ``` npm run lint npm run build npm run tauri:build ``` #### 平台构建命令(来自 `package.json`) - macOS (dmg): `npm run tauri:build:mac:dmg` - macOS (universal dmg): `npm run tauri:build:mac:universal:dmg` - Windows (MSI): `npm run tauri:build:win:msi` - Windows (NSIS exe): `npm run tauri:build:win:exe` - Windows (MSI+NSIS): `npm run tauri:build:win:all` - Linux (deb): `npm run tauri:build:linux:deb` - Linux (AppImage): `npm run tauri:build:linux:appimage` - Linux (deb+AppImage): `npm run tauri:build:linux:all` ### 测试 (Rust) ``` cd src-tauri cargo test ``` ## 贡献与安全 - 贡献:[`CONTRIBUTING.md`](CONTRIBUTING.md) - 行为准则:[`CODE_OF_CONDUCT.md`](CODE_OF_CONDUCT.md) - 安全:[`SECURITY.md`](SECURITY.md) ## 常见问题 / 注意事项 - Skills 存放在哪里?中央仓库默认为 `~/.skillshub`(可在设置中配置)。 - 为什么 Cursor 同步总是复制?Cursor 目前不支持基于 symlink/junction 的 skills 目录,因此 Skills Hub 在同步到 Cursor 时会强制复制目录。 - 为什么同步有时会回退到复制?Skills Hub 优先使用 symlink/junction,但在某些系统(尤其是 Windows)上可能会受到限制;这种情况下会回退到目录复制。 - `TARGET_EXISTS|...` 是什么意思?目标文件夹已存在且操作未覆盖它(默认为非破坏性)。请删除现有文件夹或使用相应的覆盖流程重试。 - macOS Gatekeeper 注意事项(未签名/未公证构建,可能因 macOS 版本而异):如果看到“已损坏”或“未验证开发者”,请运行 `xattr -cr "/Applications/Skills Hub.app"` (https://v2.tauri.app/distribute/#macos)。 ## 支持的平台 - macOS(已验证) - Windows(设计支持;未在本地验证) - Linux(设计支持;未在本地验证) ## 许可证 MIT License — 见 `LICENSE`。
标签:Agent技能管理, AI编程工具, Claude Code, Cursor, MITM代理, React, Rust, SOC Prime, symlink, Syscalls, Tauri, 二进制发布, 代码助手, 代码片段管理, 可视化界面, 开发工具, 开源工具, 技能同步, 插件管理, 桌面应用, 生产力工具, 符号链接, 网络流量审计, 跨平台应用, 通知系统, 集成开发环境