代理技能加载器🧠
](https://www.npmjs.com/package/agent-skill-loader)   ](https://nodejs.org)  
代理技能加载器 是一个模型上下文协议(MCP)服务器,充当静态Claude代码技能库和动态AI代理(如Claude Desktop、Cursor或任何MCP客户端)之间的桥梁。
它既展示了技能,也展示了 MCP提示 (斜线命令,无需调用工具)和 MCP工具 (用于程序化使用)。技能可以从配置的目录中自动发现并保持活动状态——添加新的 SKILL.md 并且自动通知客户端。
🚀 特性
- MCP提示:技能在客户端中显示为斜线命令。无需调用工具即可注入它们。
- 实时更新:
listChanged当技能被添加或删除时,通知会触发(通过文件监视器)。 - 发现:
list_skills--使用可选的搜索筛选器扫描配置的技能目录。 - 动态学习:
read_skill--获取SKILL.md内容。 - 坚持:
install_skill--将技能永久复制到您的项目中。 - 配置:
manage_search_paths--在运行时添加/删除技能目录。 - 故障排除:
debug_info--诊断配置和路径问题。
🛠️ 设置
先决条件
- Node.js>=18
选项A:从npm安装(推荐)
npm install -g agent-skill-loader然后注册 .mcp.json:
"agent-skill-loader": {
"command": "agent-skill-loader"
}选项B:从源代码构建
git clone https://github.com/back1ply/agent-skill-loader.git
cd agent-skill-loader
npm install
npm run build然后注册 .mcp.json:
"agent-skill-loader": {
"command": "node",
"args": ["
/build/index.js"]
}📂 配置
服务器会自动检测其工作区,并从以下位置聚合技能路径:
- 默认:
%USERPROFILE%\.claude\plugins\cache(标准位置) - 动态配置:
skill-paths.json(位于项目根目录中)
环境变量
| 变量 | 描述 |
|---|---|
MCP_SKILL_PATHS | JSON数组或以分号/逗号分隔的附加技能路径列表 |
MCP_WORKSPACE_ROOT | 覆盖自动检测到的工作区根目录 |
MCP_NO_WATCH | 设置为 1 禁用文件监视器(在CI中很有用) |
动态路径管理
您不需要手动编辑配置文件。使用该工具在运行时管理路径:
- 添加:
manage_search_paths(operation="add", path="F:\\My\\Deep\\Skills") - 移除:
manage_search_paths(operation="remove", path="...") - 列表:
manage_search_paths(operation="list")创建/更新skill-paths.json.
🤖 用法
MCP提示(Slash命令)
如果您的客户支持MCP提示(Claude Desktop、Cursor等),则技能会自动显示为斜线命令。从斜线命令菜单中选择一项技能,直接注入其内容,无需调用工具。
工具
代理可以访问五个工具:
list_skills(query?):返回可用技能的JSON列表。可选的query按名称/描述子字符串过滤(不区分大小写)。read_skill(skill_name):返回技能的标记指令。install_skill(skill_name, target_path?):将技能文件夹复制到.agent/skills/为了安全起见,target_path必须在当前工作区内。manage_search_paths(operation, path?):添加、删除或列出技能搜索路径。debug_info():返回诊断信息(路径、状态、警告)。
代理提示示例
“我需要写一个DAX指标,但我不确定最佳实践。”
代理将自动呼叫 list_skills,查找 writing-dax-measures,呼叫 read_skill,并用专业知识回答。或者用户可以直接以斜线命令调用该技能。
🔧 故障排除
如果技能没有被发现,使用 debug_info() 查看:
- 搜索路径:正在扫描哪些目录
- 路径状态:每条路径是否存在且可读
- 警告:扫描过程中遇到的任何错误(拒绝权限、空文件等)
输出示例:
{
"workspace_root": "C:/projects/agent-skill-loader",
"search_paths": {
"base": ["C:/Users/pc/.claude/plugins/cache"],
"dynamic": ["F:/My/Skills"],
"effective": ["C:/Users/pc/.claude/plugins/cache", "F:/My/Skills"]
},
"path_status": [
{ "path": "C:/Users/pc/.claude/plugins/cache", "exists": true, "readable": true },
{ "path": "F:/My/Skills", "exists": false, "readable": false }
],
"skills_found": 12,
"warnings": [
{ "path": "F:/My/Skills", "reason": "Directory does not exist" }
]
}📦 项目结构
src/index.ts:主服务器逻辑(工具+提示+监视器)。src/utils.ts:技能扫描、描述提取、提示助手、去抖动。build/:编译的JavaScript输出。package.json:依赖关系(@modelcontextprotocol/sdk,chokidar,zod).
🤝 贡献
要添加新技能,请添加一个文件夹 SKILL.md 将文件保存到监视的目录之一。服务器会自动接收它们并发送 listChanged 通知--不需要重新启动。
