
文档语言 / Readme language
Skills Manager 是一个基于 Tauri 2 + React + Rust 的桌面应用,为 Claude Code 及其他 AI Agent 提供统一的技能管理与分发平台。
它当前围绕以下工作流展开:
默认支持的 Agent 包括:Claude、Cursor、Codex、OpenClaw、OpenCode。

SKILL.md 的文件夹直接拖入导入


| 层级 | 技术 |
|---|---|
| 前端 | React 18、TypeScript、Vite 5、Tailwind CSS、react-i18next |
| 桌面 | Tauri 2(Rust) |
| CI/CD | GitHub Actions(多平台构建、自动发布) |
| 典型依赖 | serde、git2、ureq、walkdir 等 |
开发与构建需安装 Node.js、Rust;在 macOS 上编译部分原生依赖时可能需要 OpenSSL(见下文)。
npm 或 pnpm,与仓库锁文件一致即可)rustup 安装 stable)bash
brew install openssl@3
export OPENSSL_DIR=$(brew --prefix openssl@3)
export PKG_CONFIG_PATH=$(brew --prefix openssl@3)/lib/pkgconfiggit clone <仓库地址>
cd skills-managers
npm install
项目会按需读取 .env / .env.local / src-tauri/.env 等环境变量文件。若你需要启用统计或监控,可自行创建 .env 并填写以下变量:
APTABASE_APP_KEY:事件统计(前端 trackEvent + Rust 生命周期事件)VITE_SENTRY_DSN:前端 React 错误上报SENTRY_DSN:Rust 侧 panic / error 上报VITE_ENABLE_TELEMETRY=false:可一键关闭前端 telemetrynpm run tauri:dev
将启动 Vite(默认 http://localhost:5173)并打开桌面窗口;前端支持热更新,后端修改后按 Tauri 常规流程重新编译。
在纯浏览器中打开前端时,部分能力会使用 Mock 数据,完整功能请在 Tauri 窗口中使用。
# Windows x64
npm run tauri:build
# macOS(按需指定 target,详见 Tauri 文档)
npm run tauri:build -- --target aarch64-apple-darwin
npm run tauri:build -- --target x86_64-apple-darwin
产物位于 src-tauri/target/release/ 及 src-tauri/target/release/bundle/(安装包视平台而定)。
仅改 Rust 时可加快迭代:
cargo build --manifest-path=src-tauri/Cargo.toml
~/.skills-manager/config.json(技能启用状态、Agent、语言等)~/.skills-manager/skills/~/.skills-manager/github-config.json技能元数据来自各目录下的 SKILL.md(建议含 YAML frontmatter:name、description 等)。
项目使用 GitHub Actions 实现自动化构建与发布:
.github/workflows/build.yml)触发条件:
- 推送标签:v*(如 v1.0.4)
- 手动触发:可选择指定标签
支持平台: - macOS ARM64(Apple Silicon) - macOS x64(Intel) - Windows x64
构建产物:
- macOS:.app、.app.tar.gz、.dmg
- Windows:.exe(NSIS 安装包)、.msi(Windows Installer)
自动发布: - 构建成功后自动创建 GitHub Release - 产物上传为 Release Assets - 支持环境变量配置监控与统计(Aptabase、Sentry)
# 创建并推送标签触发自动构建
git tag v1.0.4
git push origin v1.0.4
# 或在 GitHub Actions 页面手动触发工作流
| 现象 | 处理方向 |
|---|---|
| 图标格式报错 | 使用 npx @tauri-apps/cli icon <源图> 生成符合要求的图标集 |
| 5173 端口占用 | 结束占用进程或修改 Vite 端口配置 |
| macOS OpenSSL | 设置上文 OPENSSL_DIR / PKG_CONFIG_PATH |
| 列表里没有技能 | 确认本机已安装对应 Agent、技能路径存在且含 SKILL.md,在界面中执行重新扫描 |
| Marketplace 无法加载 | 检查网络连接,确保能访问 skills.sh API |
| GitHub 备份失败 | 确认 GitHub Token 有仓库读写权限,检查仓库配置是否正确 |
| 技能安装失败 | 确认目标 Agent 目录存在且有写入权限,检查磁盘空间 |
更多截图、说明和静态文档可参考 docs/ 目录;若文档与代码不一致,以当前代码实现为准。
skills-manager/
├── .github/workflows/ # GitHub Actions CI/CD 配置
│ ├── build.yml # 多平台构建工作流
│ └── deploy-pages.yml # 页面部署工作流
├── app/ # React 前端(Vite)
│ └── src/
│ ├── pages/ # 页面组件
│ │ ├── Dashboard/ # 技能管理主页
│ │ ├── SkillDownload.tsx # Marketplace 技能市场
│ │ ├── GitHubBackup/ # GitHub 备份页
│ │ └── Settings/ # 设置页
│ └── api/ # Tauri API 封装
├── src-tauri/ # Tauri + Rust 后端
│ ├── src/
│ │ ├── commands/ # Tauri 命令处理
│ │ └── *.rs # 核心业务逻辑
├── docs/ # 文档与资源(如 docs/assets/logo.png)
├── LICENSE
├── README.md
└── README.en.md # 英文说明
欢迎通过 GitHub Issues 反馈与讨论,也欢迎 Pull Request:功能改进、文档、国际化、Bug 修复等。
git checkout -b feature/your-feature 提交前建议在本地执行 npm run build(含 tsc)与 cargo build,减少 CI 失败。
本项目以 MIT License 发布,详见仓库内 LICENSE。
英文说明见 README.en.md。
$ claude mcp add skills-manager \
-- python -m otcore.mcp_server <graph>