Multi-LLM Platform Support

Available since v2.5.0

Skill Seekers supports 4 LLM platforms out of the box. Scrape documentation once, deploy everywhere.

Supported Platforms

PlatformFormatAuto UploadAI EnhancementPackage SizeAPI Key Required
Claude AIZIP + YAML✅ Yes✅ YesOptimizedANTHROPIC_API_KEY
Google Geminitar.gz✅ Yes✅ YesCompressedGOOGLE_API_KEY
OpenAI ChatGPTZIP + Vector Store✅ Yes✅ YesIndexedOPENAI_API_KEY
Generic MarkdownZIP❌ Manual❌ NoUniversalNone

Installation Options

Install Core Package Only

# Default installation (Claude support only)
pip install skill-seekers

Install with Specific Platform Support

# Google Gemini support
pip install skill-seekers[gemini]

# OpenAI ChatGPT support
pip install skill-seekers[openai]

# All LLM platforms
pip install skill-seekers[all-llms]

# Development dependencies (includes testing)
pip install skill-seekers[dev]

Install from Source

git clone https://github.com/yusufkaraaslan/Skill_Seekers.git
cd Skill_Seekers

# Editable install with all platforms
pip install -e .[all-llms]

Claude AI (Default)

Claude AI is the default and most feature-rich platform.

Installation

# Claude support is included by default
pip install skill-seekers

Setup

# Set your Anthropic API key
export ANTHROPIC_API_KEY="your-api-key-here"

# Or add to ~/.bashrc for persistence
echo 'export ANTHROPIC_API_KEY="your-key"' >> ~/.bashrc
source ~/.bashrc

Usage

# Scrape documentation
skill-seekers scrape \
  --url https://docs.astro.build \
  --output-dir output/astro

# Package for Claude (default)
skill-seekers package output/astro/

# Upload to Claude
skill-seekers upload astro.zip

Features

  • YAML frontmatter - Skills with metadata
  • References folder - Organized documentation structure
  • Auto-categorization - Smart content organization
  • AI enhancement - Claude Sonnet for skill improvement
  • Version tracking - Skill versioning support

Output Structure

astro.zip
├── skill.yaml
├── SKILL.md
└── references/
    ├── getting-started.md
    ├── guides.md
    ├── api-reference.md
    └── examples.md

Google Gemini

Google Gemini support with tar.gz format.

Installation

# Install with Gemini support
pip install skill-seekers[gemini]

# Or install all platforms
pip install skill-seekers[all-llms]

Setup

# Get API key from: https://makersuite.google.com/app/apikey
export GOOGLE_API_KEY="your-google-api-key"

Usage

# Scrape documentation (same as Claude)
skill-seekers scrape \
  --url https://docs.astro.build \
  --output-dir output/astro

# Package for Gemini
skill-seekers package output/astro/ --target gemini

# Upload to Gemini
skill-seekers upload astro-gemini.tar.gz --target gemini

Features

  • tar.gz format - Gemini’s preferred format
  • Context caching - Efficient token usage
  • Long context - Up to 2M tokens
  • AI enhancement - Gemini Pro for improvements
  • Multimodal - Supports images in docs

Output Structure

astro-gemini.tar.gz
├── metadata.json
├── content/
│   ├── main.md
│   └── sections/
│       ├── 01-getting-started.md
│       ├── 02-guides.md
│       └── 03-api.md

OpenAI ChatGPT

OpenAI ChatGPT with vector store integration.

Installation

# Install with OpenAI support
pip install skill-seekers[openai]

# Or install all platforms
pip install skill-seekers[all-llms]

Setup

# Get API key from: https://platform.openai.com/api-keys
export OPENAI_API_KEY="your-openai-api-key"

Usage

# Scrape documentation (same process)
skill-seekers scrape \
  --url https://docs.astro.build \
  --output-dir output/astro

# Package for OpenAI
skill-seekers package output/astro/ --target openai

# Upload to OpenAI (creates vector store)
skill-seekers upload astro-openai.zip --target openai

Features

  • Vector store - Automatic embeddings
  • Semantic search - Find relevant content by meaning
  • File search - GPT-4 file search capability
  • AI enhancement - GPT-4 for improvements
  • Assistants API - Ready for custom GPTs

Output Structure

astro-openai.zip
├── manifest.json
├── content.md
└── embeddings/
    └── vectors.json

Generic Markdown

Universal markdown export for any platform.

Installation

# Included by default
pip install skill-seekers

Usage

# Scrape documentation
skill-seekers scrape \
  --url https://docs.astro.build \
  --output-dir output/astro

# Package as generic markdown
skill-seekers package output/astro/ --target markdown

Features

  • Universal format - Works with any LLM
  • Clean markdown - No platform-specific metadata
  • Portable - Copy-paste friendly
  • Git-friendly - Human-readable
  • No auto-upload - Manual import required
  • No AI enhancement - Raw content only

Output Structure

astro-markdown.zip
├── README.md
├── getting-started/
│   ├── introduction.md
│   └── installation.md
├── guides/
│   ├── routing.md
│   └── components.md
└── api/
    └── reference.md

Complete Workflow Examples

Workflow 1: Claude AI (Default)

# 1. Scrape
skill-seekers scrape --config configs/react.json

# 2. Enhance (optional but recommended)
skill-seekers enhance output/react/

# 3. Package
skill-seekers package output/react/

# 4. Upload
skill-seekers upload react.zip

# Access at: https://claude.ai/skills

Workflow 2: Google Gemini

# Setup (one-time)
pip install skill-seekers[gemini]
export GOOGLE_API_KEY=AIzaSy...

# 1. Scrape (universal)
skill-seekers scrape --config configs/react.json

# 2. Enhance for Gemini
skill-seekers enhance output/react/ --target gemini

# 3. Package for Gemini
skill-seekers package output/react/ --target gemini

# 4. Upload to Gemini
skill-seekers upload react-gemini.tar.gz --target gemini

# Access at: https://aistudio.google.com/files/

Workflow 3: OpenAI ChatGPT

# Setup (one-time)
pip install skill-seekers[openai]
export OPENAI_API_KEY=sk-proj-...

# 1. Scrape (universal)
skill-seekers scrape --config configs/react.json

# 2. Enhance with GPT-4o
skill-seekers enhance output/react/ --target openai

# 3. Package for OpenAI
skill-seekers package output/react/ --target openai

# 4. Upload (creates Assistant + Vector Store)
skill-seekers upload react-openai.zip --target openai

# Access at: https://platform.openai.com/assistants/

Workflow 4: Export to All Platforms

# Install all platforms
pip install skill-seekers[all-llms]

# Scrape once
skill-seekers scrape --config configs/react.json

# Package for all platforms
skill-seekers package output/react/ --target claude
skill-seekers package output/react/ --target gemini
skill-seekers package output/react/ --target openai
skill-seekers package output/react/ --target markdown

# Result:
# - react.zip (Claude)
# - react-gemini.tar.gz (Gemini)
# - react-openai.zip (OpenAI)
# - react-markdown.zip (Universal)

Comparison

Feature Matrix

FeatureClaude AIGeminiOpenAIMarkdown
Auto-upload
AI enhancement
Structured format
Metadata
Versioning
Context optimization
Multi-source
GitHub integration
Three-stream

Cost Comparison

PlatformEnhancement CostUpload CostContext SizeBest For
Claude$3-7 per skillFree200K tokensDevelopment, coding
Gemini$1-3 per skillFree2M tokensLarge docs, long context
OpenAI$5-10 per skillEmbeddings128K tokensSemantic search
MarkdownFreeN/AUnlimitedSelf-hosting, custom

Configuration

Platform Selection in Config File

{
  "name": "astro",
  "description": "Astro web framework documentation",
  "sources": [
    {
      "type": "documentation",
      "base_url": "https://docs.astro.build"
    }
  ],
  "packaging": {
    "targets": ["claude", "gemini", "openai", "markdown"]
  },
  "enhancement": {
    "enabled": true,
    "provider": "anthropic"  // or "google", "openai"
  }
}

Build for Multiple Platforms

# Package for all platforms at once
skill-seekers package output/astro/ \
  --target claude \
  --target gemini \
  --target openai \
  --target markdown

Output:

  • astro.zip (Claude)
  • astro-gemini.tar.gz (Gemini)
  • astro-openai.zip (OpenAI)
  • astro-markdown.zip (Generic)

AI Enhancement

Enhancement Providers

# Use Claude for enhancement (default)
skill-seekers enhance \
  --input output/astro/ \
  --ai-provider anthropic

# Use Gemini for enhancement
skill-seekers enhance \
  --input output/astro/ \
  --ai-provider google

# Use OpenAI for enhancement
skill-seekers enhance \
  --input output/astro/ \
  --ai-provider openai

Enhancement Modes

ModeDescriptionTimeCost
minimalAdd examples only5 minLow
standardExamples + explanations10 minMedium
comprehensiveFull enhancement + best practices20 minHigh
skill-seekers enhance \
  --input output/astro/ \
  --ai-provider anthropic \
  --enhancement-mode comprehensive

Upload

Upload to Multiple Platforms

# Upload to Claude
skill-seekers upload astro.zip

# Upload to Gemini
skill-seekers upload astro-gemini.tar.gz --target gemini

# Upload to OpenAI
skill-seekers upload astro-openai.zip --target openai

Batch Upload

# Upload all generated packages
for target in claude gemini openai; do
  skill-seekers upload astro-${target}.* --target $target
done

Advanced Usage

Custom Enhancement Models

Each platform uses its default enhancement model, but you can customize:

# Use specific model for enhancement (if supported)
skill-seekers enhance output/react/ --target gemini --model gemini-2.0-flash-exp
skill-seekers enhance output/react/ --target openai --model gpt-4o

Programmatic Usage

from skill_seekers.cli.adaptors import get_adaptor

# Get platform-specific adaptor
gemini = get_adaptor('gemini')
openai = get_adaptor('openai')
claude = get_adaptor('claude')

# Package for specific platform
gemini_package = gemini.package(skill_dir, output_path)
openai_package = openai.package(skill_dir, output_path)

# Upload with API key
result = gemini.upload(gemini_package, api_key)
print(f"Uploaded to: {result['url']}")

Platform Detection

Check which platforms are available:

from skill_seekers.cli.adaptors import list_platforms, is_platform_available

# List all registered platforms
platforms = list_platforms()
print(platforms)  # ['claude', 'gemini', 'openai', 'markdown']

# Check if platform is available
if is_platform_available('gemini'):
    print("Gemini adaptor is available")

Custom Platform

You can create custom packaging for your own platform:

from skill_seekers.packaging import PackagingStrategy

class MyCustomPlatform(PackagingStrategy):
    """Custom packaging for my platform."""

    def package(self, input_dir: Path) -> Path:
        """Package skill for custom platform."""
        # Your custom logic here
        pass

    def format_content(self, content: str) -> str:
        """Format content for your platform."""
        # Your custom formatting
        pass

Register your strategy:

from skill_seekers import registry

registry.register_packaging_strategy("custom", MyCustomPlatform)

Use it:

skill-seekers package output/astro/ --target custom

Best Practices

For Documentation Only

Best choice: Claude AI or Gemini

pip install skill-seekers[gemini]

skill-seekers scrape --url https://docs.framework.dev
skill-seekers package output/ --target gemini
skill-seekers upload framework-gemini.tar.gz --target gemini

Why: Long context (2M tokens), lower cost

For Code + Docs

Best choice: Claude AI

skill-seekers unified \
  --repo-url https://github.com/org/framework \
  --depth c3x \
  --fetch-github-metadata

skill-seekers package output/ --target claude
skill-seekers upload framework.zip

Why: Best code understanding, GitHub integration

Best choice: OpenAI

pip install skill-seekers[openai]

skill-seekers scrape --url https://docs.framework.dev
skill-seekers package output/ --target openai
skill-seekers upload framework-openai.zip --target openai

Why: Vector store, semantic search built-in

For Self-Hosting

Best choice: Generic Markdown

skill-seekers package output/ --target markdown

# Host on your own system
python -m http.server -d framework-markdown/

Why: No API keys, full control, git-friendly

Backward Compatibility

100% backward compatible with existing workflows:

  • All existing Claude commands work unchanged
  • Default behavior remains Claude-focused
  • Optional --target flag adds multi-platform support
  • No breaking changes to existing configs or workflows

Troubleshooting

Missing Dependencies

Error: ModuleNotFoundError: No module named 'google.generativeai'

Solution:

pip install skill-seekers[gemini]

Error: ModuleNotFoundError: No module named 'openai'

Solution:

pip install skill-seekers[openai]

API Key Issues

Error: Invalid API key format

Solution: Check your API key format:

  • Claude: sk-ant-...
  • Gemini: AIza...
  • OpenAI: sk-proj-... or sk-...

Set environment variable:

export ANTHROPIC_API_KEY="your-key"  # Claude
export GOOGLE_API_KEY="your-key"     # Gemini
export OPENAI_API_KEY="your-key"     # OpenAI

Package Format Errors

Error: Not a tar.gz file: react.zip

Solution: Use correct —target flag:

# Gemini requires tar.gz
skill-seekers package output/react/ --target gemini

# OpenAI and Claude use ZIP
skill-seekers package output/react/ --target openai

“Package upload failed”

Check API key is valid:

# Test Claude API
curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-3-sonnet-20240229","max_tokens":10,"messages":[{"role":"user","content":"Hi"}]}'

“Wrong format for platform”

Check target matches:

  • Claude: .zip
  • Gemini: .tar.gz
  • OpenAI: .zip
  • Markdown: .zip

FAQ

Q: Can I use the same scraped data for all platforms?

A: Yes! The scraping phase is universal. Only packaging and upload are platform-specific.

Q: Do I need separate API keys for each platform?

A: Yes, each platform requires its own API key. Set them as environment variables.

Q: Can I enhance with different models?

A: Yes, each platform uses its own enhancement model:

  • Claude: Claude Sonnet 4
  • Gemini: Gemini 2.0 Flash
  • OpenAI: GPT-4o

Q: What if I don’t want to upload automatically?

A: Use the package command without upload. You’ll get the packaged file to upload manually.

Q: Is the markdown export compatible with all LLMs?

A: Yes! The generic markdown export creates universal documentation that works with any LLM or documentation system.

Next Steps