๐ŸŽฏ

excel-processor

๐ŸŽฏSkill

from twwch/openskills

VibeIndex|
What it does

excel-processor skill from twwch/openskills

excel-processor

Installation

Install skill:
npx skills add https://github.com/twwch/openskills --skill excel-processor
1
-
Last UpdatedJan 26, 2026

Skill Details

SKILL.md

Overview

# OpenSkills SDK

An open-source Agent Skill framework implementing the progressive disclosure architecture for AI agent skills.

[![PyPI version](https://badge.fury.io/py/openskills-sdk.svg)](https://badge.fury.io/py/openskills-sdk)

[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)

[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)

Features

  • Three-layer progressive disclosure architecture

- Layer 1 (Metadata): Always loaded for skill discovery

- Layer 2 (Instruction): Loaded on demand when skill is selected

- Layer 3 (Resources): Conditionally loaded References and Scripts

  • SKILL.md file format - Simple markdown-based skill definition
  • Smart Reference loading - Three modes (explicit/implicit/always) with LLM-based selection
  • Auto-discovery - Automatically discover references from references/ directory
  • Script execution - Run scripts triggered by LLM via [INVOKE:name]
  • Multiple LLM providers - OpenAI, Azure OpenAI, Ollama, Together, Groq, DeepSeek
  • Auto skill invocation - Automatically match and invoke skills based on user queries
  • Multimodal support - Handle images via URL, base64, or file path
  • Sandbox execution - Secure script execution in isolated AIO Sandbox environment
  • Automatic file sync - Upload input files and download outputs automatically

Installation

```bash

pip install openskills-sdk

```

Quick Start

Using SkillAgent (Recommended)

```python

import asyncio

from openskills import create_agent

async def main():

# Create agent with infographic-skills

agent = await create_agent(

skill_paths=["./infographic-skills"],

api_key="your-api-key",

model="gpt-4",

)

# Chat with automatic skill invocation

response = await agent.chat("ๅธฎๆˆ‘ๆ€ป็ป“ไผš่ฎฎ")

print(response.content)

print(f"Used skill: {response.skill_used}")

asyncio.run(main())

```

Using Sandbox Mode (Recommended for Script Execution)

```python

import asyncio

from openskills import create_agent

async def main():

# Create agent with sandbox enabled

agent = await create_agent(

skill_paths=["./skills"],

api_key="your-api-key",

model="gpt-4",

use_sandbox=True, # Enable sandbox execution

sandbox_base_url="http://localhost:8080",

auto_execute_scripts=True,

)

# Local file paths are automatically uploaded to sandbox

response = await agent.chat("่ฏทๅค„็†่ฟ™ไธชๆ–‡ไปถ: /path/to/file.pdf")

print(response.content)

# Output files are automatically downloaded to skill_dir/output/

asyncio.run(main())

```

Using SkillManager (Low-level API)

```python

from pathlib import Path

from openskills import SkillManager

manager = SkillManager([Path("./infographic-skills")])

# Discover infographic-skills (Layer 1 - Metadata)

await manager.discover()

# Match user query

skills = manager.match("summarize meeting")

# Load instruction (Layer 2)

if skills:

instruction = await manager.load_instruction(skills[0].name)

print(instruction.content)

```

Sandbox Environment

OpenSkills supports executing scripts in an isolated sandbox environment using [AIO Sandbox](https://github.com/agent-infra/aio-sandbox). This provides:

  • Security: Scripts run in isolated containers
  • Dependency management: Auto-install Python packages defined in SKILL.md
  • File synchronization: Automatic upload/download of files

Installing AIO Sandbox

#### Option 1: Docker (Recommended)

```bash

# Pull and run the sandbox container

docker run -d --name aio-sandbox \

-p 8080:8080 \

ghcr.io/agent-infra/aio-sandbox:latest

# Verify it's running

curl http://localhost:8080/health

```

#### Option 2: Docker Compose

```yaml

# docker-compose.yml

version: '3.8'

services:

sandbox:

image: ghcr.io/agent-infra/aio-sandbox:latest

ports:

- "8080:8080"

volumes:

- sandb