From b912331550cbf2aaa9838e701e10a9842f1ead66 Mon Sep 17 00:00:00 2001 From: yusyus Date: Sun, 28 Dec 2025 22:17:59 +0300 Subject: [PATCH] chore: Bump version to v2.5.0 - Multi-Platform Feature Parity MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Prepare v2.5.0 release with multi-LLM platform support. Major changes: - Add support for 4 platforms (Claude, Gemini, OpenAI, Markdown) - Complete feature parity across all platforms - 18 MCP tools with multi-platform support - Comprehensive platform documentation Updated files: - pyproject.toml: version 2.4.0 โ†’ 2.5.0 - README.md: version badge updated, tests 427 โ†’ 700 - CHANGELOG.md: Added v2.5.0 release notes - docs/CLAUDE.md: Updated version and features Release date: 2025-12-28 --- CHANGELOG.md | 239 +++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 4 +- docs/CLAUDE.md | 53 ++++++++++- pyproject.toml | 2 +- 4 files changed, 294 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d6e1918..84362cc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,6 +17,245 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 --- +## [2.5.0] - 2025-12-28 + +### ๐Ÿš€ Multi-Platform Feature Parity - 4 LLM Platforms Supported + +This **major feature release** adds complete multi-platform support for Claude AI, Google Gemini, OpenAI ChatGPT, and Generic Markdown export. All features now work across all platforms with full feature parity. + +### ๐ŸŽฏ Major Features + +#### Multi-LLM Platform Support +- **4 platforms supported**: Claude AI, Google Gemini, OpenAI ChatGPT, Generic Markdown +- **Complete feature parity**: All skill modes work with all platforms +- **Platform adaptors**: Clean architecture with platform-specific implementations +- **Unified workflow**: Same scraping output works for all platforms +- **Smart enhancement**: Platform-specific AI models (Claude Sonnet 4, Gemini 2.0 Flash, GPT-4o) + +#### Platform-Specific Capabilities + +**Claude AI (Default):** +- Format: ZIP with YAML frontmatter + markdown +- Upload: Anthropic Skills API +- Enhancement: Claude Sonnet 4 (local or API) +- MCP integration: Full support + +**Google Gemini:** +- Format: tar.gz with plain markdown +- Upload: Google Files API + Grounding +- Enhancement: Gemini 2.0 Flash +- Long context: 1M tokens supported + +**OpenAI ChatGPT:** +- Format: ZIP with assistant instructions +- Upload: Assistants API + Vector Store +- Enhancement: GPT-4o +- File search: Semantic search enabled + +**Generic Markdown:** +- Format: ZIP with pure markdown +- Upload: Manual distribution +- Universal compatibility: Works with any LLM + +#### Complete Feature Parity + +**All skill modes work with all platforms:** +- Documentation scraping โ†’ All 4 platforms +- GitHub repository analysis โ†’ All 4 platforms +- PDF extraction โ†’ All 4 platforms +- Unified multi-source โ†’ All 4 platforms +- Local repository analysis โ†’ All 4 platforms + +**18 MCP tools with multi-platform support:** +- `package_skill` - Now accepts `target` parameter (claude, gemini, openai, markdown) +- `upload_skill` - Now accepts `target` parameter (claude, gemini, openai) +- `enhance_skill` - NEW standalone tool with `target` parameter +- `install_skill` - Full multi-platform workflow automation + +### Added + +#### Core Infrastructure +- **Platform Adaptors** (`src/skill_seekers/cli/adaptors/`) + - `base_adaptor.py` - Abstract base class for all adaptors + - `claude_adaptor.py` - Claude AI implementation + - `gemini_adaptor.py` - Google Gemini implementation + - `openai_adaptor.py` - OpenAI ChatGPT implementation + - `markdown_adaptor.py` - Generic Markdown export + - `__init__.py` - Factory function `get_adaptor(target)` + +#### CLI Tools +- **Multi-platform packaging**: `skill-seekers package output/skill/ --target gemini` +- **Multi-platform upload**: `skill-seekers upload skill.zip --target openai` +- **Multi-platform enhancement**: `skill-seekers enhance output/skill/ --target gemini --mode api` +- **Target parameter**: All packaging tools now accept `--target` flag + +#### MCP Tools +- **`enhance_skill`** (NEW) - Standalone AI enhancement tool + - Supports local mode (Claude Code Max, no API key) + - Supports API mode (platform-specific APIs) + - Works with Claude, Gemini, OpenAI + - Creates SKILL.md.backup before enhancement + +- **`package_skill`** (UPDATED) - Multi-platform packaging + - New `target` parameter (claude, gemini, openai, markdown) + - Creates ZIP for Claude/OpenAI/Markdown + - Creates tar.gz for Gemini + - Shows platform-specific output messages + +- **`upload_skill`** (UPDATED) - Multi-platform upload + - New `target` parameter (claude, gemini, openai) + - Platform-specific API key validation + - Returns skill ID and platform URL + - Graceful error for markdown (no upload) + +#### Documentation +- **`docs/FEATURE_MATRIX.md`** (NEW) - Comprehensive feature matrix + - Platform support comparison table + - Skill mode support across platforms + - CLI command support matrix + - MCP tool support matrix + - Platform-specific examples + - Verification checklist + +- **`docs/UPLOAD_GUIDE.md`** (REWRITTEN) - Multi-platform upload guide + - Complete guide for all 4 platforms + - Platform selection table + - API key setup instructions + - Platform comparison matrices + - Complete workflow examples + +- **`docs/ENHANCEMENT.md`** (UPDATED) + - Multi-platform enhancement section + - Platform-specific model information + - Cost comparison across platforms + +- **`docs/MCP_SETUP.md`** (UPDATED) + - Added enhance_skill to tool listings + - Multi-platform usage examples + - Updated tool count (10 โ†’ 18 tools) + +- **`src/skill_seekers/mcp/README.md`** (UPDATED) + - Corrected tool count (18 tools) + - Added enhance_skill documentation + - Updated package_skill with target parameter + - Updated upload_skill with target parameter + +#### Optional Dependencies +- **`[gemini]`** extra: `pip install skill-seekers[gemini]` + - google-generativeai>=0.8.3 + - Required for Gemini enhancement and upload + +- **`[openai]`** extra: `pip install skill-seekers[openai]` + - openai>=1.59.6 + - Required for OpenAI enhancement and upload + +- **`[all-llms]`** extra: `pip install skill-seekers[all-llms]` + - Includes both Gemini and OpenAI dependencies + +#### Tests +- **`tests/test_adaptors.py`** - Comprehensive adaptor tests +- **`tests/test_multi_llm_integration.py`** - E2E multi-platform tests +- **`tests/test_install_multiplatform.py`** - Multi-platform install_skill tests +- **700 total tests passing** (up from 427 in v2.4.0) + +### Changed + +#### CLI Architecture +- **Package command**: Now routes through platform adaptors +- **Upload command**: Now supports all 3 upload platforms +- **Enhancement command**: Now supports platform-specific models +- **Unified workflow**: All commands respect `--target` parameter + +#### MCP Architecture +- **Tool modularity**: Cleaner separation with adaptor pattern +- **Error handling**: Platform-specific error messages +- **API key validation**: Per-platform validation logic +- **TextContent fallback**: Graceful degradation when MCP not installed + +#### Documentation +- All platform documentation updated for multi-LLM support +- Consistent terminology across all docs +- Platform comparison tables added +- Examples updated to show all platforms + +### Fixed + +- **TextContent import error** in test environment (5 MCP tool files) + - Added fallback TextContent class when MCP not installed + - Prevents `TypeError: 'NoneType' object is not callable` + - Ensures tests pass without MCP library + +- **UTF-8 encoding** issues on Windows (continued from v2.4.0) + - All file operations use explicit UTF-8 encoding + - CHANGELOG encoding handling improved + +- **API key environment variables** - Clear documentation for all platforms + - ANTHROPIC_API_KEY for Claude + - GOOGLE_API_KEY for Gemini + - OPENAI_API_KEY for OpenAI + +### Other Improvements + +#### Smart Description Generation +- Automatically generates skill descriptions from documentation +- Analyzes reference files to suggest "When to Use" triggers +- Improves SKILL.md quality without manual editing + +#### Smart Summarization +- Large skills (500+ lines) automatically summarized +- Preserves key examples and patterns +- Maintains quality while reducing token usage + +### Deprecation Notice + +None - All changes are backward compatible. Existing v2.4.0 workflows continue to work with default `target='claude'`. + +### Migration Guide + +**For users upgrading from v2.4.0:** + +1. **No changes required** - Default behavior unchanged (targets Claude AI) + +2. **To use other platforms:** + ```bash + # Install platform dependencies + pip install skill-seekers[gemini] # For Gemini + pip install skill-seekers[openai] # For OpenAI + pip install skill-seekers[all-llms] # For all platforms + + # Set API keys + export GOOGLE_API_KEY=AIzaSy... # For Gemini + export OPENAI_API_KEY=sk-proj-... # For OpenAI + + # Use --target flag + skill-seekers package output/react/ --target gemini + skill-seekers upload react-gemini.tar.gz --target gemini + ``` + +3. **MCP users** - New tools available: + - `enhance_skill` - Standalone enhancement (was only in install_skill) + - All packaging tools now accept `target` parameter + +**See full documentation:** +- [Multi-Platform Guide](docs/UPLOAD_GUIDE.md) +- [Feature Matrix](docs/FEATURE_MATRIX.md) +- [Enhancement Guide](docs/ENHANCEMENT.md) + +### Contributors + +- @yusufkaraaslan - Multi-platform architecture, all platform adaptors, comprehensive testing + +### Stats + +- **16 commits** since v2.4.0 +- **700 tests** (up from 427, +273 new tests) +- **4 platforms** supported (was 1) +- **18 MCP tools** (up from 17) +- **5 documentation guides** updated/created +- **29 files changed**, 6,349 insertions(+), 253 deletions(-) + +--- + ## [2.4.0] - 2025-12-25 ### ๐Ÿš€ MCP 2025 Upgrade - Multi-Agent Support & HTTP Transport diff --git a/README.md b/README.md index 52176af..1ad7942 100644 --- a/README.md +++ b/README.md @@ -2,11 +2,11 @@ # Skill Seeker -[![Version](https://img.shields.io/badge/version-2.4.0-blue.svg)](https://github.com/yusufkaraaslan/Skill_Seekers/releases/tag/v2.4.0) +[![Version](https://img.shields.io/badge/version-2.5.0-blue.svg)](https://github.com/yusufkaraaslan/Skill_Seekers/releases/tag/v2.5.0) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/) [![MCP Integration](https://img.shields.io/badge/MCP-Integrated-blue.svg)](https://modelcontextprotocol.io) -[![Tested](https://img.shields.io/badge/Tests-427%20Passing-brightgreen.svg)](tests/) +[![Tested](https://img.shields.io/badge/Tests-700%20Passing-brightgreen.svg)](tests/) [![Project Board](https://img.shields.io/badge/Project-Board-purple.svg)](https://github.com/users/yusufkaraaslan/projects/2) [![PyPI version](https://badge.fury.io/py/skill-seekers.svg)](https://pypi.org/project/skill-seekers/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/skill-seekers.svg)](https://pypi.org/project/skill-seekers/) diff --git a/docs/CLAUDE.md b/docs/CLAUDE.md index e5630ec..1843920 100644 --- a/docs/CLAUDE.md +++ b/docs/CLAUDE.md @@ -2,6 +2,21 @@ This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. +## ๐ŸŽฏ Current Status (December 28, 2025) + +**Version:** v2.5.0 (Production Ready - Multi-Platform Feature Parity!) +**Active Development:** Multi-platform support complete + +### Recent Updates (December 2025): + +**๐ŸŽ‰ MAJOR RELEASE: Multi-Platform Feature Parity! (v2.5.0)** +- **๐ŸŒ Multi-LLM Support**: Full support for 4 platforms - Claude AI, Google Gemini, OpenAI ChatGPT, Generic Markdown +- **๐Ÿ”„ Complete Feature Parity**: All skill modes work with all platforms +- **๐Ÿ—๏ธ Platform Adaptors**: Clean architecture with platform-specific implementations +- **โœจ 18 MCP Tools**: Enhanced with multi-platform support (package, upload, enhance) +- **๐Ÿ“š Comprehensive Documentation**: Complete guides for all platforms +- **๐Ÿงช Test Coverage**: 700 tests passing, extensive platform compatibility testing + ## Overview This is a Python-based documentation scraper that converts ANY documentation website into a Claude skill. It's a single-file tool (`doc_scraper.py`) that scrapes documentation, extracts code patterns, detects programming languages, and generates structured skill files ready for use with Claude. @@ -94,11 +109,47 @@ The LOCAL enhancement option (`--enhance-local` or `enhance_skill_local.py`) ope "Package skill at output/react/" ``` -9 MCP tools available: list_configs, generate_config, validate_config, estimate_pages, scrape_docs, package_skill, upload_skill, split_config, generate_router +18 MCP tools available with multi-platform support: list_configs, generate_config, validate_config, fetch_config, estimate_pages, scrape_docs, scrape_github, scrape_pdf, package_skill, upload_skill, enhance_skill (NEW), install_skill, split_config, generate_router, add_config_source, list_config_sources, remove_config_source, submit_config ### Test with limited pages (edit config first) Set `"max_pages": 20` in the config file to test with fewer pages. +## Multi-Platform Support (v2.5.0+) + +**4 Platforms Fully Supported:** +- **Claude AI** (default) - ZIP format, Skills API, MCP integration +- **Google Gemini** - tar.gz format, Files API, 1M token context +- **OpenAI ChatGPT** - ZIP format, Assistants API, Vector Store +- **Generic Markdown** - ZIP format, universal compatibility + +**All skill modes work with all platforms:** +- Documentation scraping +- GitHub repository analysis +- PDF extraction +- Unified multi-source +- Local repository analysis + +**Use the `--target` parameter for packaging, upload, and enhancement:** +```bash +# Package for different platforms +skill-seekers package output/react/ --target claude # Default +skill-seekers package output/react/ --target gemini +skill-seekers package output/react/ --target openai +skill-seekers package output/react/ --target markdown + +# Upload to platforms (requires API keys) +skill-seekers upload output/react.zip --target claude +skill-seekers upload output/react-gemini.tar.gz --target gemini +skill-seekers upload output/react-openai.zip --target openai + +# Enhance with platform-specific AI +skill-seekers enhance output/react/ --target claude # Sonnet 4 +skill-seekers enhance output/react/ --target gemini --mode api # Gemini 2.0 +skill-seekers enhance output/react/ --target openai --mode api # GPT-4o +``` + +See [Multi-Platform Guide](UPLOAD_GUIDE.md) and [Feature Matrix](FEATURE_MATRIX.md) for complete details. + ## Architecture ### Single-File Design diff --git a/pyproject.toml b/pyproject.toml index 86a7df3..2a5a818 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "skill-seekers" -version = "2.4.0" +version = "2.5.0" description = "Convert documentation websites, GitHub repositories, and PDFs into Claude AI skills" readme = "README.md" requires-python = ">=3.10"