 
___ ____ _____ _ _ ____ _ _____ _ _ ____
/ _ \| _ \| ____| \ | | / ___|| |/ /_ _| | | | / ___|
| | | | |_) | _| | \| | \___ \| ' / | || | | | \___ \
| |_| | __/| |___| |\ | ___) | . \ | || |___| |___ ___) |
\___/|_| |_____|_| \_| |____/|_|\_\___|_____|_____|____/
OpenSkills:在Mac上本地运行Claude Skills
Anthropic最近宣布 克劳德的技能 -可重复使用的文件夹,其中包含指令、脚本和资源,使Claude更好地完成专门的任务。这个工具可以让你运行这些技能 完全在您的本地计算机上 在沙盒环境中。
这意味着: 现在,您可以使用这些专业技能处理文件(文档、电子表格、演示文稿、图像),同时将所有数据保存在Mac上。无上传,完全隐私。
此工具使用Apple的原生容器在Mac上真正隔离的沙盒环境中执行AI生成的代码。
演示
使用Gemini CLI观看Open Skills的实际操作:
Open-Skills Demo with Gemini CLI
为什么要在本地运行技能?
- 隐私: 处理敏感文件、财务数据
- 完全控制: 技能在具有VM级隔离的隔离容器中执行
- 兼容性: 可与Claude Desktop、Gemini CLI、Qwen CLI或任何兼容MCP的工具配合使用
- 可扩展性: 导入Anthropic的官方技能或创建自己的自定义技能
快速开始
先决条件: 配备macOS和苹果Silicon(M1/M2/M3/M4/M5)的Mac,Python 3.10+
git clone https://github.com/BandarLabs/open-skills.git
cd open-skills
chmod +x install.sh
./install.sh安装大约需要2分钟。MCP服务器将在 http://open-skills.local:8222/mcp
安装所需的软件包 (使用virtualenv并注意python路径):
pip install -r examples/requirements.txt设置:连接您的AI工具
此MCP服务器可与任何兼容MCP的工具配合使用。所有执行都在您的Mac上本地进行。
选项1:克劳德桌面集成
配置Claude Desktop以使用此MCP服务器:
- 复制示例配置:
cd examples
cp claude_desktop/claude_desktop_config.example.json claude_desktop/claude_desktop_config.json- 编辑配置文件 并替换占位符路径:
- 替换 /path/to/your/python 使用您的实际Python路径(例如。, /usr/bin/python3 或 /opt/homebrew/bin/python3) - 替换 /path/to/open-skills 带有克隆存储库的实际路径
编辑后示例:
{
"mcpServers": {
"open-skills": {
"command": "/opt/homebrew/bin/python3",
"args": ["/Users/yourname/open-skills/examples/claude_desktop/mcpproxy.py"]
}
}
}- 更新Claude桌面配置:
- 打开克劳德桌面 - 前往设置→ 开发者 - 添加MCP服务器配置 - 重新启动克劳德桌面
选项2:OpenCode配置
对于OpenCode用户,创建 ~/.config/opencode/opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"open-skills": {
"type": "remote",
"url": "http://open-skills.local:8222/mcp",
"enabled": true
}
}
}选项3:Gemini CLI配置
编辑 ~/.gemini/settings.json:
{
"theme": "Default",
"selectedAuthType": "oauth-personal",
"mcpServers": {
"open-skills": {
"httpUrl": "http://open-skills.local:8222/mcp"
}
}
}对于系统说明,请更换 ~/.gemini/GEMINI.md 和 双子座.md
选项3:Python OpenAI代理
将此服务器与OpenAI的Python代理库一起使用:
- 设置您的OpenAI API密钥:
export OPENAI_API_KEY="your-openai-api-key-here"- 运行客户端:
python examples/openai_agents/openai_client.py其他支持的工具
- Qwen CLI: 配置类似于Gemini CLI
- 亚马逊的Kiro: 有关配置,请参阅此存储库中的示例
- 任何MCP客户端: 指向
http://open-skills.local:8222/mcp
示例用例
配置后,您可以要求您的AI:
- “根据此标记大纲创建专业PowerPoint演示文稿”
- “从这10个PDF中提取所有表格,并合并到一个Excel电子表格中”
- “为我的项目生成ASCII艺术徽标”
- “用我的CSV文件中的数据填写此税务表格PDF”
- “批量处理这100张图像:裁剪到16:9并旋转90度”
添加新技能
您可以通过两种方式使用其他技能扩展此服务器:
选项1:导入Anthropic的官方技能
从下载技能 Anthropic技能库 并抄送至:
~/.open-skills/assets/skills/user/可用官方技能:
- 微软Word(docx)
- 微软PowerPoint(pptx)
- 微软Excel(xlsx)
- PDF操作
- 图像处理
- Slack GIF创建者
- 还有更多。..
技能目录结构
以下是一个包含4个导入技能的示例:
~/.open-skills/assets/skills/
├── public
│ ├── image-crop-rotate
│ │ ├── scripts
│ │ └── SKILL.md
│ └── pdf-text-replace
│ ├── scripts
│ └── SKILL.md
└── user
├── docx
│ ├── docx-js.md
│ ├── LICENSE.txt
│ ├── ooxml
│ ├── ooxml.md
│ ├── scripts
│ └── SKILL.md
├── pptx
│ ├── html2pptx.md
│ ├── LICENSE.txt
│ ├── ooxml
│ ├── ooxml.md
│ ├── scripts
│ └── SKILL.md
├── slack-gif-creator
│ ├── core
│ ├── LICENSE.txt
│ ├── requirements.txt
│ ├── SKILL.md
│ └── templates
└── xlsx
├── LICENSE.txt
├── recalc.py
└── SKILL.md选项2:创造自己的技能
创建一个与上面所示结构匹配的文件夹。唯一必须提交的文件是 SKILL.md。参见 Anthropic技能文档 了解详情。
快速方法: 让克劳德为你生成一项技能:
“你能写出一种创造ASCII文字艺术的技能吗?”
Claude将创建技能并提供ZIP下载。将ZIP文件直接放入 ~/.open-skills/assets/skills/user (无需扩展)。
手动方法: 创建自己的技能文件夹结构:
~/.open-skills/assets/skills/user/my-custom-skill/
├── SKILL.md # Documentation and usage examples
├── scripts/ # Your Python/bash scripts
│ └── process.py
└── requirements.txt # (optional) Python dependencies文件夹映射的工作原理
此MCP服务器提供了一个兼容层,允许您在本地运行Claude的技能,无需修改:
路径转换:
- 克劳德的路:
/mnt/user-data→ 本地路径:/app/uploads - 专为克劳德设计的技能在当地工作,没有任何变化
文件共享-如何使用技能共享文件: 要共享具有处理技能的本地文件,请执行以下操作:
- 将文件放置在输出目录中:
cp your-file.pdf ~/.open-skills/assets/outputs/
cp your-image.png ~/.open-skills/assets/outputs/- 容器内的文件变得可用:
- 您的文件在 ~/.open-skills/assets/outputs/ 自动安装 - 技能可以通过以下方式访问它们 /mnt/user-data/ (标准克劳德路径) - 无需手动复制或云端上传
- 已处理的文件出现在同一目录中:
- 输出文件保存回 ~/.open-skills/assets/outputs/ - 您可以在Mac上立即访问结果
技能结构:
- 导入的技能无需更改
- 原始文件夹层次结构和文件组织保持不变
- 导入克劳德技能并直接使用
现场演示:ASCII艺术技巧
下面是一个使用Gemini CLI的真实示例:
> /mcp
Configured MCP servers:
🟢 open-skills - Ready (5 tools)
Tools:
- execute_python_code
- get_skill_file
- get_skill_info
- list_skills
- navigate_and_get_all_visible_text
> can you generate ascii art for my project
✦ I will generate the ASCII art you desire. First, I must survey my available skills.
✓ list_skills (open-skills MCP Server)
✦ I have located a relevant skill: ascii-art. I will now retrieve its instructions.
✓ get_skill_info (open-skills MCP Server) {"skill_name":"ascii-art"}
✦ Your ASCII art is ready:
___ ____ _____ _ _ ____ _ _____ _ _ ____
/ _ \| _ \| ____| \ | | / ___|| |/ /_ _| | | | / ___|
| | | | |_) | _| | \| | \___ \| ' / | || | | | \___ \
| |_| | __/| |___| |\ | ___) | . \ | || |___| |___ ___) |
\___/|_| |_____|_| \_| |____/|_|\_\___|_____|_____|____/
Using: 1 GEMINI.md file | 3 MCP servers (ctrl+t to view)发生了什么:
- AI通过以下方式发现可用技能
list_skills - 找到相关
ascii-art技能 - 检索到的技能说明
get_skill_info - 在沙盒中本地执行技能
- 返回的结果-所有这些都不需要将任何数据上传到云端
安全
代码在具有VM级隔离的隔离容器中运行。您的主机系统和沙盒外的文件仍受保护。
自 @苹果/容器:
每个容器都具有完整VM的隔离属性,使用一组最小的核心实用程序和动态库来减少资源利用率和攻击面。
建筑
此MCP服务器由以下部分组成:
- 沙箱容器: 使用Jupyter内核的隔离执行环境
- MCP服务器: 处理AI模型和沙盒之间的通信
- 技能体系: 用于常见任务(PDF操作、图像处理等)的预打包工具
可用的MCP工具
连接后,此服务器将这些工具暴露给您的AI:
execute_python_code-在沙盒中执行代码get_skill_file-阅读技能档案get_skill_info-获取技能文档list_skills-列出所有可用技能navigate_and_get_all_visible_text-使用Playwright进行网页抓取
了解更多
- GitHub存储库:
- 拟人技能:
- 技能文档: docs.claude.com/skills
- 博客:构建离线工作空间: instavm.io/blog/building-my-offline-workspace-part-2技能
- 报告问题:
贡献
我们欢迎捐款!如果你创造了有用的技能或改进了实施,请与社区分享。
许可证
此项目根据Apache 2.0许可证获得许可-请参阅 许可证 文件以获取详细信息。
