AI技能中心服务器

一个动态加载Markdown技能文件的MCP服务器,使AI助手能够访问团队的编码标准、最佳实践和技能知识库。

  • by LidoxLee
  • TypeScript
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 LidoxLee/ai-skills-hub

使用说明

人工智能技能中心

MCP(模型上下文协议)服务器,可动态加载Markdown技能文件,使AI助手能够访问团队的编码标准、最佳实践和技能知识库。

Languages / 语言

项目架构

ai-skills-hub/
├── src/                    # --- MCP Server Core (Librarian) ---
│   ├── index.ts            # Auto-scans ~/.ai-skills-hub/skills/*/SKILL.md and converts to MCP Tools
│   ├── cli.ts              # CLI tool entry point
│   ├── utils.ts            # Helper functions (Markdown parsing, path handling)
│   └── commands/           # CLI command implementations
│       ├── sync.ts          # Sync command
│       └── check.ts         # Check command
├── dist/                   # [Ignore] Compiled JS (actual execution code)
├── package.json            # Project dependencies and script definitions
├── tsconfig.json           # TypeScript configuration
└── README.md               # Team usage manual

安装

方法1:全局安装(推荐)

全局安装软件包,以便从任何地方使用CLI命令:

npm install -g ai-skills-hub

安装后,您可以同时使用 skillshub 和 ai-skills-hub 命令:

# Sync skills library and configure AI tools
skillshub sync
# Or use the full command name
ai-skills-hub sync

# Add a skill from URL
skillshub add <url>

# Check status
skillshub check

# List all skills
skillshub list

# View help
skillshub help

方法2:使用npx(无需安装)

如果您不想全局安装,可以使用npx直接运行命令:

# Sync skills library and configure AI tools
npx ai-skills-hub sync

# Add a skill from URL
npx ai-skills-hub add <url>

# Check status
npx ai-skills-hub check

# List all skills
npx ai-skills-hub list

# View help
npx ai-skills-hub help

方法3:本地开发安装

为了促进或地方发展:

  1. 克隆项目

    git clone <repository-url>
    cd ai-skills-hub
    
  2. 安装依赖项

    npm install
    
  3. 构建项目

    npm run build
    
  4. 地方发展链接

    npm link
    

链接后,您可以使用 skillshub 命令,就像它是全局安装的一样。

CLI命令

skillshub sync / skillshub s

同步和更新AI工具配置。此命令将:

  • 编译TypeScript代码(在本地开发模式下)
  • 为支持的AI工具配置MCP设置

注: 技能存储在 ~/.ai-skills-hub/skills/,不在存储库中。使用 skillshub add 从存储库中添加技能。

选项:

  • -f, --force:即使没有更改,也强制重新编译

示例:

skillshub sync
skillshub sync --force

skillshub check / skillshub c

检查AI工具安装状态和MCP配置状态。

此命令将:

  • 显示当前安装的AI工具
  • 显示哪些AI工具配置了MCP路由
  • 提供配置状态摘要

选项:

  • -v, --verbose:显示详细信息(版本号、配置文件路径、命令等)

示例:

skillshub check
skillshub check --verbose

输出图例:

  • ✓ 绿色标记:已安装/已配置
  • ○ 黄色标记:未安装/未配置

skillshub add / skillshub a

将URL中的技能添加到本地技能库。

此命令将:

  • 下载a SKILL.md 文件来自提供的URL
  • 自动将GitHub blob URL转换为原始URL
  • 从URL路径中提取技能名称
  • 将技能保存到 ~/.ai-skills-hub/skills/<skill-name>/

选项:

  • -f, --force:如果现有技能已存在,则覆盖它

示例:

# Add a skill from GitHub blob URL
skillshub add https://github.com/user/repo/blob/main/skills/api-design/SKILL.md

# Add a skill from raw URL
skillshub add https://raw.githubusercontent.com/user/repo/main/skills/api-design/SKILL.md

# Force overwrite existing skill
skillshub add https://github.com/user/repo/blob/main/skills/api-design/SKILL.md --force

URL格式:

  • GitHub blob URL: https://github.com/{user}/{repo}/blob/{branch}/path/to/SKILL.md
  • 原始GitHub URL: https://raw.githubusercontent.com/{user}/{repo}/{branch}/path/to/SKILL.md
  • 该命令会自动将blob URL转换为原始URL

工作流程:

  1. 命令从URL下载SKILL.md文件
  2. 从目录路径中提取技能名称(例如。, api-design 从 .../api-design/SKILL.md)
  3. 创建目录 ~/.ai-skills-hub/skills/<skill-name>/
  4. 将文件另存为 SKILL.md 在该目录中
  5. 跑 skillshub sync 更新MCP配置

skillshub list / skillshub l

列出所有可用的技能及其描述。

此命令将:

  • 扫描所有 SKILL.md 文件在 ~/.ai-skills-hub/skills/ 目录
  • 显示每个技能的文件名、工具名称和描述
  • 提供使用技巧

选项:

  • -v, --verbose:显示详细信息(文件大小、行数、上次修改时间)

示例:

skillshub list
skillshub list --verbose

输出内容:

  • 文件名(例如。, api-design.md)
  • 工具名称(例如。, api_design)
  • 描述(从Markdown文件的第一个标题中提取)
  • 详细信息(详细模式):文件大小、行数、修改时间

skillshub help

显示帮助信息。

支持的AI工具

本项目支持以下AI工具的MCP配置:

  • 克劳德桌面版 -Anthropic的Claude桌面应用程序
  • 光标 -AI驱动的代码编辑器
  • OpenAI Codex -OpenAI的代码助手CLI
  • GitHub Copilot命令行界面 -GitHub的AI代码助手
  • Gemini CLI -谷歌的Gemini AI命令行界面工具
  • 克劳德代码CLI -Anthropic的Claude Code命令行工具

每种工具的安装方法

OpenAI Codex命令行界面

npm install -g @openai/codex
# Set environment variable
export OPENAI_API_KEY="your-api-key"

GitHub Copilot命令行界面

# macOS/Linux (using Homebrew)
brew install copilot-cli

# Or using npm
npm install -g @github/copilot-cli

Gemini CLI

npm install -g @google/gemini-cli
# Login or set API key
gemini auth login
# Or
export GEMINI_API_KEY="your-api-key"

克劳德代码CLI

npm install -g @anthropic-ai/claude-code
# Set environment variable
export ANTHROPIC_API_KEY="your-api-key"

用法

添加技能

技能存储在本地 ~/.ai-skills-hub/skills/。要添加技能,请执行以下操作:

  1. 手动方法: 在中创建目录 ~/.ai-skills-hub/skills/ (例如。, api-design/)并添加a SKILL.md 里面的文件
  2. 使用CLI: 使用 skillshub add <repository-url> 从Git存储库添加技能
  3. 目录名称将自动转换为工具名称(例如。, api-design/ → api_design)

技能文件格式

技能文件使用标准Markdown格式:

# Skill Title

This is the skill description...

## Section

Content...

### Subsection

More content...
  • 第一个标题将自动用作工具描述
  • 支持所有标准Markdown语法(标题、列表、代码块等)

从技能执行Shell脚本

新功能! 技能现在可以包括AI代理可以运行的可执行shell脚本。

目录结构:

~/.ai-skills-hub/skills/
└── your-skill/
    ├── SKILL.md
    ├── scripts/
    │   ├── setup.sh
    │   └── test.sh
    └── resources/

可用工具:

  • execute_skill_script -从技能目录中执行特定脚本

如何在SKILL.md中引导AI执行脚本:

# My Skill

When working with this skill, please:
1. Execute `scripts/setup.sh` to prepare the environment
2. Run `scripts/test.sh` to validate the implementation

## Available Scripts

### setup.sh
Prepares the development environment.
Execute: `scripts/setup.sh`

### test.sh
Validates the implementation.
Execute: `scripts/test.sh`

...

在游标代理中使用MCP技巧

重要提示:MCP工具仅在Cursor的代理模式下可用!

  1. 配置MCP (如果尚未配置):

    skillshub sync
    
  2. 重新启动游标 加载新的MCP配置

  3. 启用代理模式:

    • 打开光标聊天面板(Cmd+L 或 Ctrl+L)
    • 切换至 代理 模式(非聊天模式)
  4. 使用技能: 在代理模式下,用自然语言提问,例如:

    Please use api_design to help me design a RESTful API
    
    According to go_concurrency standards, help me refactor this code
    

MCP服务器的手动测试

# Start the server (using stdio transport)
npm start

服务器将通过标准输入/输出与MCP客户端通信。

核心组件

🏗️ 核心组件

  1. ~/.ai技能中心/技能/*/SKILL.md(技能定义) 技能存储在每个用户的本地主目录中。每个技能都是一个目录,其中包含 SKILL.md 文件。

    优势: 工程师只需要用Markdown写:“当我需要做任务X时,请按照步骤Y,下面的例子……”,人工智能就会理解。

    维护: 任何会写Markdown的人都可以添加或修改技能。技能可以单独管理,也可以从共享存储库同步。

  2. src/index.ts(动态加载器) 此MCP服务器不再包含特定的业务逻辑。它只做两件事:

    • 列出工具(List_tools): 扫描 ~/.ai-skills-hub/skills/ 并将每个技能目录转换为AI的工具名称(例如。, api-design/ → api_design).

    • 传递内容(call_tool): 当AI请求时,读取相应的 SKILL.md 内容来自 ~/.ai-skills-hub/skills/ 并将其作为“背景知识”提供给人工智能。

  3. CLI工具(skillshub) 此CLI工具有助于管理技能和AI工具配置:

    • 使用 skillshub add <url> 将Git存储库中的技能添加到 ~/.ai-skills-hub/skills/
    • 跑 skillshub sync 编译TypeScript代码并为AI工具配置MCP设置
    • 自动为所有支持的AI工具(Claude Desktop、Cursor、OpenAI Codex、GitHub Copilot、Gemini CLI、Claude Code CLI)配置全局设置

🔄 团队协作工作流

  • 技能库: 团队维护着具有标准化技能定义的技能库(例如在GitHub上)。

  • 添加技能: 团队成员A使用添加技能库 skillshub add <repository-url>,将其克隆到 ~/.ai-skills-hub/skills/.

  • 技能更新: 更新技能库时,团队成员可以更新其本地副本或重新添加技能。

  • AI就绪: 团队成员B打开Cursor或Claude并问:“帮我写一个新的服务逻辑”,AI将积极阅读并采用 ~/.ai-skills-hub/skills/.

🌟 为什么这适用于拥有30个微服务的团队?

  • 无污染: 这30个项目的源代码不需要任何更改。无需放置 .cursorrules 或 .claudeprompt 在每个项目中。

  • 集中式: 标准只有一份。如果你在30个项目中的每个项目中都放一个副本,更新它们将是一场灾难。

  • 跨AI工具: 无论团队成员喜欢Cursor、Claude Desktop、Codex、Copilot、Gemini还是Claude Code CLI,只要他们连接到此MCP,他们都会阅读相同的“团队大脑”。

开发指南

项目脚本

  • npm run build -将TypeScript编译为 dist/ 目录
  • npm start -运行已编译的MCP服务器
  • npm run dev -手表模式编译(用于开发)

发布到npm

如果您希望团队成员能够使用 npx ai-skills-hub 命令,您需要先将包发布到npm。

📖 详细指南: 请参考 NPM_PUBLISH_SOP.md 完整的出版标准操作程序。

快速发布步骤:

  1. 登录到npm

    npm login
    
  2. 验证包名称是否可用

    npm view ai-skills-hub
    

    如果包名称已被占用,则需要修改 name 领域 package.json.

  3. 发布包

    npm publish
    

    注: 这 prepublishOnly 脚本将自动运行 npm run build 以确保在发布之前编译最新代码。

  4. 验证发布

    npx ai-skills-hub --version
    

发布后,团队成员可以使用方法1(npx)安装和使用此工具。

项目结构

  • src/index.ts -MCP服务器主程序,实现 list_tools 和 call_tool 处理器
  • src/cli.ts -CLI工具入口点
  • src/utils.ts -实用功能:目录扫描、文件名转换、文件读取等。
  • src/commands/ -CLI命令实现(同步、检查、添加、列表等)
  • ~/.ai-skills-hub/skills/ -用于存储技能Markdown文件的本地目录(首次使用时创建)

贡献

项目开发:

  1. 分叉项目
  2. 创建要素分支(git checkout -b feature/amazing-feature)
  3. 对MCP服务器或CLI工具进行更改
  4. 提交您的更改(git commit -m 'Add amazing feature')
  5. 推到分支(git push origin feature/amazing-feature)
  6. 打开拉取请求

添加技能: 技能在各自的存储库中单独管理。用户通过以下方式添加技能 skillshub add <repository-url>。要创建新的技能库,请参阅技能库文档。

故障排除

AI工具无法连接到MCP服务器

  • 确认您已跑步 skillshub sync 更新配置
  • 检查配置文件路径是否正确
  • 某些工具可能需要重新启动才能加载新配置
  • 验证配置文件中的MCP服务器路径是否正确
  • 使用 skillshub check 检查配置状态

许可证

MIT许可证