Skip to content

BreadIceCream/skill-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Skill Manager

一款基于 Electron + TypeScript 构建的桌面端 AI Skills 集中管理与多平台同步工具。


项目简介

当你同时使用多个 AI 辅助工具(Claude Code、Codex、Gemini CLI 等)时,每个工具都有自己独立的 skills 目录,维护起来极为分散。Skill Manager 解决了这个痛点:

  • 指定一个全局 Source 目录作为所有 Skills 的唯一真实来源
  • 一键将选中的 Skills 批量分发到各 AI 平台的目标目录(支持软链接或物理复制)
  • 提供C盘扫描功能,将散落在系统各处的 Skills 归档到 Source 目录
  • 内置冲突解决面板,批量处理同步过程中的文件冲突

核心功能

1. Source & Target 配置

  • Source Config:设置全局 Skills 源目录(如 C:\Users\name\.skills
  • Target Vendors:添加多个同步目标(如 ~/.claude/skills~/.codex/skills),每个 Vendor 独立配置同步方式(Symlink / Copy),添加时自动校验路径是否存在

2. Skills 浏览与管理

  • 目录切换:在 Source 目录与各 Vendor 目录间自由切换查看
  • 有效 Skill 识别:仅展示包含 SKILL.md 的目录,自动解析描述文本
  • 实时搜索:支持按名称或描述模糊过滤,输入即响应
  • 同步状态徽章:自动检测各 Vendor 中是否存在该 Skill,显示"已同步"标签,点击查看详情
  • 软链接标识:通过 lstat 检测,为软链接项显示 🔗 Symlink 徽章
  • 删除:支持单项删除和批量删除;从 Source 删除时,自动联动清理关联的软链接
  • 快速定位:点击 📂 按钮在系统资源管理器中打开对应目录

3. 批量同步与冲突解决

  • 选中 Skills → 选择目标 Vendors → 一键同步
  • 同步过程非阻断:冲突被静默收集,全部完成后统一展示
  • 冲突面板按 Vendor 分组折叠,支持:
    • 单项 Skip / Overwrite
    • 组级 Skip All / Overwrite All
    • 全局 Skip All / Overwrite All

4. Global Discovery(全局扫描归档)

  • 从 Home 目录递归扫描(深度 5 层),找出所有含 SKILL.md 的目录
  • 自动排除 Source 目录,避免重复
  • 结果按父目录分组展示,支持组内全选
  • 选中后一键 Centralize,将 Skills 物理复制到 Source 目录
  • 归档冲突按 Skill 名称分组,支持 Skip Group 和单项 Overwrite

技术栈

层级 技术
桌面框架 Electron 41
语言 TypeScript 6
渲染层 原生 HTML + CSS(无前端框架)
进程通信 Electron IPC(contextBridge 隔离模式)
数据持久化 本地 JSON 配置文件(electron-store 封装)
构建工具 tsc(TypeScript 编译器)

项目结构

skill-manager/
├── package.json              # 项目依赖与 npm scripts
├── tsconfig.json             # TypeScript 编译配置
├── src/
│   ├── main/
│   │   ├── main.ts           # 主进程入口:创建 BrowserWindow,注册 IPC handlers
│   │   ├── preload.ts        # 预加载脚本:通过 contextBridge 将 IPC 接口安全暴露给渲染层
│   │   ├── ipcHandlers.ts    # 核心业务逻辑:文件系统读写、软链接创建、全局扫描、冲突检测
│   │   └── store.ts          # 配置持久化层:读写本地 JSON 配置(source_dir、targets、sync_history)
│   └── renderer/
│       ├── index.html        # 渲染层入口:主界面结构 + 所有模态框 HTML
│       ├── style.css         # 全局样式:Glassmorphism 设计语言、CSS 变量、动画
│       └── renderer.ts       # 渲染层控制器:DOM 操作、事件绑定、调用 electronAPI
└── dist/                     # tsc 编译输出目录(运行时使用)

核心文件说明

ipcHandlers.ts — 所有文件系统操作都在主进程中执行,包括:

  • get-skills:读取目录,过滤出含 SKILL.md 的子目录,解析描述,检测软链接状态和同步状态
  • sync-skills:批量同步,冲突不阻断流程,统一收集后返回
  • search-skills:从 Home 目录递归扫描(最深 5 层),跳过 node_modulesAppData 等无关目录
  • centralize-skills:将扫描到的 Skills 物理复制到 Source 目录
  • delete-skill:删除 Source 目录中的 Skill,并联动清理各 Vendor 中对应的软链接(不影响物理副本)

preload.ts — 以 contextBridge 方式暴露 window.electronAPI,渲染层无法直接访问 Node.js API,保证安全隔离。

renderer.ts — 纯 TypeScript 控制器,核心设计:

  • loadSkills() 负责从主进程拉取数据并重置搜索状态
  • renderSkillsList(query) 负责按搜索词过滤并渲染列表,支持实时模糊搜索
  • 所有危险操作(删除、覆盖)均通过 askUser() 弹出确认对话框

使用指南

环境要求

  • Node.js >= 18
  • Windows / macOS / Linux

Windows 软链接说明:创建目录软链接需要管理员权限或已开启开发者模式(Settings → Developer Mode)。若遇到 EPERM 错误,请以管理员身份运行,或改用 Copy 同步方式。

安装与启动

查看右侧 Releases 中发布的最新版本,下载 .exe 并进行安装。

或者按照以下流程:

# 安装依赖
npm install

# 编译 TypeScript 并启动应用
npm start

# 仅监听编译(开发时配合手动启动 electron 使用)
npm run watch

基本使用流程

第一步:配置 Source 目录

点击右上角 Source Config,输入你存放所有 Skills 的目录路径,点击 Save。

示例:C:\Users\name\.skills

第二步:添加 Target Vendors

点击 Target Vendors,填写 Vendor 名称、路径和同步方式,点击 Add。

名称:claude
路径:C:\Users\name\.claude\skills
方式:Symlink(推荐,节省磁盘空间)

第三步:同步 Skills

在主界面勾选要同步的 Skills,点击 Sync Selected...,选择目标 Vendors,确认同步。

第四步(可选):归档散落的 Skills

点击 Global DiscoveryStart Scan,扫描完成后勾选要归档的 Skills,点击 Centralize Selected

Skill 目录格式

每个 Skill 必须是一个包含 SKILL.md 的目录:

my-skill/
└── SKILL.md    # 必须存在,应用通过此文件识别有效 Skill

SKILL.md 中的 description 字段会被自动解析并显示在列表中:

---
description: 这里是技能描述,会显示在列表中
---

UI 设计规范

  • Glassmorphism:卡片与模态框使用半透明背景 + backdrop-filter: blur(15px),营造悬浮感
  • 渐变色系:背景 #f8f9fa → #e9ecef,标题使用 #3a86ff → #ff006e 渐变裁剪
  • 固定视口:主界面禁止页面级滚动,Skills 列表在卡片内部独立滚动
  • 微交互:列表项 hover 位移、按钮阴影反馈、危险操作使用红色色系区分
  • 排版:使用 Inter 字体,描述文本通过 -webkit-line-clamp: 2 控制截断

Last updated: 2026/3/24

About

AI 助手技能(Skills)中心化管理工具。支持多平台(.claude, .gemini, .codex等)一键同步、智能冲突解析及全盘技能搜寻归档,让你的 AI 技能库时刻保持同步与有序。

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors