返回市场
开放技能

开放技能

作者:BandarLabs70 星标更新:2025-10-28

项目介绍

<div align="center">

Start License

</div>
                    ___  ____  _____ _   _     ____  _  _____ _     _     ____
                   / _ \|  _ \| ____| \ | |   / ___|| |/ /_ _| |   | |   / ___|
                  | | | | |_) |  _| |  \| |   \___ \| ' / | || |   | |   \___ \
                  | |_| |  __/| |___| |\  |    ___) | . \ | || |___| |___ ___) |
                   \___/|_|   |_____|_| \_|   |____/|_|\_\___|_____|_____|____/

OpenSkills:在Mac上本地运行Claude技能

Anthropic最近宣布了Claude技能——包含指令、脚本和资源的可重用文件夹,使Claude在特定任务上表现得更好。此工具允许你在本地机器的隔离环境中完全运行这些技能。

**这意味着什么:**现在你可以处理你的文件(文档、电子表格、演示文稿、图像)使用这些专业技能,同时将所有数据保留在Mac上。无需上传,完全隐私。

此工具使用Apple的原生容器,在Mac上的真正隔离沙箱环境中执行AI生成的代码。

演示

观看Gemini CLI中的Open-Skills演示:

Open-Skills演示与Gemini CLI

为什么在本地运行技能?

  • **隐私:**处理敏感文档、财务数据
  • **完全控制:**技能在一个具有虚拟机级别隔离的容器中执行
  • **兼容性:**适用于Claude Desktop、Gemini CLI、Qwen CLI或任何MCP兼容工具
  • **扩展性:**导入Anthropic官方技能或创建自己的自定义技能

快速开始

**前提条件:**MacOS和Apple Silicon(M1/M2/M3/M4/M5),Python 3.10+

git clone https://github.com/BandarLabs/open-skills.git
cd open-skills
chmod +x install.sh
sudo ./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集成

配置Claude Desktop以使用此MCP服务器:

  1. 复制示例配置:

    cd examples
    cp claude_desktop/claude_desktop_config.example.json claude_desktop/claude_desktop_config.json
    
  2. 编辑配置文件并替换占位符路径:

    • /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"]
        }
      }
    }
    
  3. 更新Claude Desktop配置:

    • 打开Claude Desktop
    • 前往设置 → 开发者
    • 添加MCP服务器配置
    • 重启Claude Desktop

选项2:Gemini CLI配置

编辑~/.gemini/settings.json

{
  "theme": "Default",
  "selectedAuthType": "oauth-personal",
  "mcpServers": {
    "open-skills": {
      "httpUrl": "http://open-skills.local:8222/mcp"
    }
  }
}

对于系统说明,替换~/.gemini/GEMINI.mdGEMINI.md

选项3:Python OpenAI代理

使用此服务器与OpenAI的Python代理库:

  1. 设置你的OpenAI API密钥:

    export OPENAI_API_KEY="your-openai-api-key-here"
    
  2. 运行客户端:

    python examples/openai_agents/openai_client.py
    

其他支持的工具

  • **Qwen CLI:**配置类似于Gemini CLI
  • **Amazon Kiro:**查看此仓库中的示例配置
  • **任何MCP客户端:**指向http://open-skills.local:8222/mcp

示例用例

配置完成后,你可以让AI执行以下操作:

  • "从这个markdown大纲创建一个专业的PowerPoint演示文稿"
  • "从这10个PDF中提取所有表格,并合并到一个Excel电子表格中"
  • "为我的项目生成ASCII艺术标志"
  • "用我的CSV文件中的数据填写这个税表PDF"
  • "批量处理这100张图片:裁剪至16:9并旋转90度"

添加新技能

你可以通过两种方式扩展此服务器的功能:

选项1:导入Anthropic的官方技能

Anthropic的技能仓库下载技能并复制到:

~/.open-skills/assets/skills/user/<新技能文件夹>

可用官方技能:

  • Microsoft Word (docx)
  • Microsoft PowerPoint (pptx)
  • Microsoft 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-
    │   ├── core
    │   ├── LICENSE.txt
    │   ├── requirements.txt
    │   ├── SKILL.md
    │   └── templates
    └── xlsx
        ├── LICENSE.txt
        ├── recalc.py
        └── SKILL.md

选项2:创建自己的技能

创建一个匹配上述结构的文件夹。唯一必需的文件是SKILL.md。详情见Anthropic的技能文档

快速方法: 让Claude为你生成一个技能:

"你能写一个生成单词ASCII艺术的技能吗?"

Claude会创建该技能并提供ZIP下载。直接将ZIP文件放置在~/.open-skills/assets/skills/user(无需解压)。

手动方法: 创建自己的技能文件夹结构:

~/.open-skills/assets/skills/user/my-custom-skill/
├── SKILL.md              # 文档和使用示例
├── scripts/              # 你的Python/bash脚本
│   └── process.py
└── requirements.txt      # (可选)Python依赖项

文件夹映射如何工作

此MCP服务器提供了一个兼容层,让你可以在不修改的情况下本地运行Claude的技能:

路径转换:

  • Claude的路径:/mnt/user-data → 本地路径:/app/uploads
  • 设计用于Claude的技能在本地运行时无需任何更改

访问本地文件:

  • 将文件放在Mac上的~/.open-skills/assets/outputs
  • 它们通过卷挂载在容器内的技能中可用
  • 映射是自动的——技能可以直接访问你的文件而无需云上传

技能结构:

  • 导入的技能不需要更改
  • 原始文件夹层次结构和文件组织保持不变
  • 导入Claude技能并直接使用它们

实时演示:ASCII艺术技能

这里是一个使用Gemini CLI的真实示例:

> /mcp

已配置的MCP服务器:

🟢 open-skills - 已就绪(5个工具)
  工具:
  - execute_python_code
  - get_skill_file
  - get_skill_info
  - list_skills
  - navigate_and_get_all_visible_text

> 你能为我的项目生成ASCII艺术吗

✦ 我将生成你所需的ASCII艺术。首先,我必须调查我可用的技能。
✓  list_skills (open-skills MCP Server)

✦ 我找到了相关的技能:ascii-art。我现在将检索其说明。
✓  get_skill_info (open-skills MCP Server) {"skill_name":"ascii-art"}
✦ 你的ASCII艺术已准备好:

   ___  ____  _____ _   _     ____  _  _____ _     _     ____
  / _ \|  _ \| ____| \ | |   / ___|| |/ /_ _| |   | |   / ___|
 | | | | |_) |  _| |  \| |   \___ \| ' / | || |   | |   \___ \
 | |_| |  __/| |___| |\  |    ___) | . \ | || |___| |___ ___) |
  \___/|_|   |_____|_| \_|   |____/|_|\_\___|_____|_____|____/



使用:1个GEMINI.md文件 | 3个MCP服务器(按Ctrl+T查看)

发生了什么:

  1. AI通过list_skills发现可用技能
  2. 找到了相关的ascii-art技能
  3. 使用get_skill_info检索技能说明
  4. 在沙箱中本地执行技能
  5. 返回结果——无需上传任何数据到云端

安全性

代码在一个具有虚拟机级别隔离的容器中运行。主机系统和沙箱外的文件保持安全。

来自@apple/container

每个容器都有完整的虚拟机隔离属性,使用最小的核心实用程序和动态库集来减少资源利用率和攻击面。

架构

此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进行网络抓取

了解更多

贡献

我们欢迎贡献!如果你创建了有用的技能或改进了实现,请与社区分享。

许可证

本项目根据Apache 2.0许可证发布——详情见LICENSE文件。