Skip to content

Latest commit

 

History

History
2203 lines (1788 loc) · 95.6 KB

File metadata and controls

2203 lines (1788 loc) · 95.6 KB

Changelog

All notable changes to Skill Seeker will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Added

  • Support for custom Claude-compatible API endpoints via ANTHROPIC_BASE_URL environment variable
  • Compatibility with GLM-4.7 and other Claude-compatible APIs across all AI enhancement features

Changed

  • All AI enhancement modules now respect ANTHROPIC_BASE_URL for custom endpoints
  • Updated documentation with GLM-4.7 configuration examples

Fixed

Removed


[2.7.4] - 2026-01-22

🔧 Bug Fix - Language Selector Links

This patch release fixes the broken Chinese language selector link that appeared on PyPI and other non-GitHub platforms.

Fixed

  • Broken Language Selector Links on PyPI
    • Issue: Chinese language link used relative URL (README.zh-CN.md) which only worked on GitHub
    • Impact: Users on PyPI clicking "简体中文" got 404 errors
    • Solution: Changed to absolute GitHub URL (https://github.com/yusufkaraaslan/Skill_Seekers/blob/main/README.zh-CN.md)
    • Result: Language selector now works on PyPI, GitHub, and all platforms
    • Files Fixed: README.md, README.zh-CN.md

Technical Details

Why This Happened:

  • PyPI displays README.md but doesn't include README.zh-CN.md in the package
  • Relative links break when README is rendered outside GitHub repository context
  • Absolute GitHub URLs work universally across all platforms

Impact:

  • ✅ Chinese language link now accessible from PyPI
  • ✅ Consistent experience across all platforms
  • ✅ Better user experience for Chinese developers

[2.7.3] - 2026-01-21

🌏 International i18n Release

This documentation release adds comprehensive Chinese language support, making Skill Seekers accessible to the world's largest developer community.

Added

  • 🇨🇳 Chinese (Simplified) README Translation (#260)

    • Complete 1,962-line translation of all documentation (README.zh-CN.md)
    • Language selector badges in both English and Chinese READMEs
    • Machine translation disclaimer with invitation for community improvements
    • GitHub issue #260 created for community review and contributions
    • Impact: Makes Skill Seekers accessible to 1+ billion Chinese speakers
  • 📦 PyPI Metadata Internationalization

    • Updated package description to highlight Chinese documentation availability
    • Added i18n-related keywords: "i18n", "chinese", "international"
    • Added Natural Language classifiers: English and Chinese (Simplified)
    • Added direct link to Chinese README in project URLs
    • Impact: Better discoverability on PyPI for Chinese developers

Why This Matters

  • Market Reach: Addresses existing Chinese traffic and taps into world's largest developer community
  • Discoverability: Better indexing on Chinese search engines (Baidu, Gitee, etc.)
  • User Experience: Native language documentation lowers barrier to entry
  • Community Growth: Opens contribution opportunities from Chinese developers
  • Competitive Edge: Most similar tools don't offer Chinese documentation

Community Engagement

Chinese developers are invited to improve the translation quality:

  • Review issue: yusufkaraaslan#260
  • Translation guidelines provided for technical accuracy and natural expression
  • All contributions welcome and appreciated

[2.7.2] - 2026-01-21

🚨 Critical CLI Bug Fixes

This hotfix release resolves 4 critical CLI bugs reported in issues #258 and #259 that prevented core commands from working correctly.

Fixed

  • Issue #258: install --config command fails with unified scraper (#258)

    • Root Cause: unified_scraper.py missing --fresh and --dry-run argument definitions
    • Solution: Added both flags to unified_scraper argument parser and main.py dispatcher
    • Impact: skill-seekers install --config react now works without "unrecognized arguments" error
    • Files Fixed: src/skill_seekers/cli/unified_scraper.py, src/skill_seekers/cli/main.py
  • Issue #259 (Original): scrape command doesn't accept URL and --max-pages (#259)

    • Root Cause: No positional URL argument or --max-pages flag support
    • Solution: Added positional URL argument and --max-pages flag with safety warnings
    • Impact: skill-seekers scrape https://example.com --max-pages 50 now works
    • Safety Warnings:
      • ⚠️ Warning if max-pages > 1000 (may take hours)
      • ⚠️ Warning if max-pages < 10 (incomplete skill)
    • Files Fixed: src/skill_seekers/cli/doc_scraper.py, src/skill_seekers/cli/main.py
  • Issue #259 (Comment A): Version shows 2.7.0 instead of actual version (#259)

    • Root Cause: Hardcoded version string in main.py
    • Solution: Import __version__ from __init__.py dynamically
    • Impact: skill-seekers --version now shows correct version (2.7.2)
    • Files Fixed: src/skill_seekers/cli/main.py
  • Issue #259 (Comment B): PDF command shows empty "Error: " message (#259)

    • Root Cause: Exception handler didn't handle empty exception messages
    • Solution:
      • Improved exception handler to show exception type if message is empty
      • Added proper error handling with context-specific messages
      • Added traceback support in verbose mode
    • Impact: PDF errors now show clear messages like "Error: RuntimeError occurred" instead of just "Error: "
    • Files Fixed: src/skill_seekers/cli/main.py, src/skill_seekers/cli/pdf_scraper.py

Testing

  • ✅ Verified skill-seekers install --config react --dry-run works
  • ✅ Verified skill-seekers scrape https://tailwindcss.com/docs/installation --max-pages 50 works
  • ✅ Verified skill-seekers --version shows "2.7.2"
  • ✅ Verified PDF errors show proper messages
  • ✅ All 202 tests passing

[2.7.1] - 2026-01-18

🚨 Critical Bug Fix - Config Download 404 Errors

This hotfix release resolves a critical bug causing 404 errors when downloading configs from the API.

Fixed

  • Critical: Config download 404 errors - Fixed bug where code was constructing download URLs manually instead of using the download_url field from the API response
    • Root Cause: Code was building f"{API_BASE_URL}/api/download/{config_name}.json" which failed when actual URLs differed (CDN URLs, version-specific paths)
    • Solution: Changed to use config_info.get("download_url") from API response in both MCP server implementations
    • Files Fixed:
      • src/skill_seekers/mcp/tools/source_tools.py (FastMCP server)
      • src/skill_seekers/mcp/server_legacy.py (Legacy server)
    • Impact: Fixes all config downloads from skillseekersweb.com API and private Git repositories
    • Reported By: User testing skill-seekers install --config godot --unlimited
    • Testing: All 15 source tools tests pass, all 8 fetch_config tests pass

[2.7.0] - 2026-01-18

🔐 Smart Rate Limit Management & Multi-Token Configuration

This minor feature release introduces intelligent GitHub rate limit handling, multi-profile token management, and comprehensive configuration system. Say goodbye to indefinite waits and confusing token setup!

Added

  • 🎯 Multi-Token Configuration System - Flexible GitHub token management with profiles

    • Secure config storage at ~/.config/skill-seekers/config.json with 600 permissions
    • Multiple GitHub profiles support (personal, work, OSS, etc.)
      • Per-profile rate limit strategies: prompt, wait, switch, fail
      • Configurable timeout per profile (default: 30 minutes)
      • Auto-detection and smart fallback chain
      • Profile switching when rate limited
    • API key management for Claude, Gemini, OpenAI
      • Environment variable fallback (ANTHROPIC_API_KEY, GOOGLE_API_KEY, OPENAI_API_KEY)
      • Config file storage with secure permissions
    • Progress tracking for resumable jobs
      • Auto-save at configurable intervals (default: 60 seconds)
      • Job metadata: command, progress, checkpoints, timestamps
      • Stored at ~/.local/share/skill-seekers/progress/
    • Auto-cleanup of old progress files (default: 7 days, configurable)
    • First-run experience with welcome message and quick setup
    • ConfigManager class with singleton pattern for global access
  • 🧙 Interactive Configuration Wizard - Beautiful terminal UI for easy setup

    • Main menu with 7 options:
      1. GitHub Token Setup
      2. API Keys (Claude, Gemini, OpenAI)
      3. Rate Limit Settings
      4. Resume Settings
      5. View Current Configuration
      6. Test Connections
      7. Clean Up Old Progress Files
    • GitHub token management:
      • Add/remove profiles with descriptions
      • Set default profile
      • Browser integration - opens GitHub token creation page
      • Token validation with format checking (ghp_, github_pat_)
      • Strategy selection per profile
    • API keys setup with browser integration for each provider
    • Connection testing to verify tokens and API keys
    • Configuration display with current status and sources
    • CLI commands:
      • skill-seekers config - Main menu
      • skill-seekers config --github - Direct to GitHub setup
      • skill-seekers config --api-keys - Direct to API keys
      • skill-seekers config --show - Show current config
      • skill-seekers config --test - Test connections
  • 🚦 Smart Rate Limit Handler - Intelligent GitHub API rate limit management

    • Upfront warning about token status (60/hour vs 5000/hour)
    • Real-time detection of rate limits from GitHub API responses
      • Parses X-RateLimit-* headers
      • Detects 403 rate limit errors
      • Calculates reset time from timestamps
    • Live countdown timers with progress display
    • Automatic profile switching - tries next available profile when rate limited
    • Four rate limit strategies:
      • prompt - Ask user what to do (default, interactive)
      • wait - Auto-wait with countdown timer
      • switch - Automatically try another profile
      • fail - Fail immediately with clear error
    • Non-interactive mode for CI/CD (fail fast, no prompts)
    • Configurable timeouts per profile (prevents indefinite waits)
    • RateLimitHandler class with strategy pattern
    • Integration points: GitHub fetcher, GitHub scraper
  • 📦 Resume Command - Resume interrupted scraping jobs

    • List resumable jobs with progress details:
      • Job ID, started time, command
      • Current phase and file counts
      • Last updated timestamp
    • Resume from checkpoints (skeleton implemented, ready for integration)
    • Auto-cleanup of old jobs (respects config settings)
    • CLI commands:
      • skill-seekers resume --list - List all resumable jobs
      • skill-seekers resume <job-id> - Resume specific job
      • skill-seekers resume --clean - Clean up old jobs
    • Progress storage at ~/.local/share/skill-seekers/progress/<job-id>.json
  • ⚙️ CLI Enhancements - New flags and improved UX

    • --non-interactive flag for CI/CD mode
      • Available on: skill-seekers github
      • Fails fast on rate limits instead of prompting
      • Perfect for automated pipelines
    • --profile flag to select specific GitHub profile
      • Available on: skill-seekers github
      • Uses configured profile from ~/.config/skill-seekers/config.json
      • Overrides environment variables and defaults
    • Entry points for new commands:
      • skill-seekers-config - Direct config command access
      • skill-seekers-resume - Direct resume command access
  • 🧪 Comprehensive Test Suite - Full test coverage for new features

    • 16 new tests in test_rate_limit_handler.py
    • Test coverage:
      • Header creation (with/without token)
      • Handler initialization (token, strategy, config)
      • Rate limit detection and extraction
      • Upfront checks (interactive and non-interactive)
      • Response checking (200, 403, rate limit)
      • Strategy handling (fail, wait, switch, prompt)
      • Config manager integration
      • Profile management (add, retrieve, switch)
    • All tests passing ✅ (16/16)
    • Test utilities: Mock responses, config isolation, tmp directories
  • 🎯 Bootstrap Skill Feature - Self-hosting capability (PR #249)

    • Self-Bootstrap: Generate skill-seekers as a Claude Code skill
      • ./scripts/bootstrap_skill.sh - One-command bootstrap
      • Combines manual header with auto-generated codebase analysis
      • Output: output/skill-seekers/ ready for Claude Code
      • Install: cp -r output/skill-seekers ~/.claude/skills/
    • Robust Frontmatter Detection:
      • Dynamic YAML frontmatter boundary detection (not hardcoded line counts)
      • Fallback to line 6 if frontmatter not found
      • Future-proof against frontmatter field additions
    • SKILL.md Validation:
      • File existence and non-empty checks
      • Frontmatter delimiter presence
      • Required fields validation (name, description)
      • Exit with clear error messages on validation failures
    • Comprehensive Error Handling:
      • UV dependency check with install instructions
      • Permission checks for output directory
      • Graceful degradation on missing header file
  • 🔧 MCP Now Optional - User choice for installation profile

    • CLI Only: pip install skill-seekers - No MCP dependencies
    • MCP Integration: pip install skill-seekers[mcp] - Full MCP support
    • All Features: pip install skill-seekers[all] - Everything enabled
    • Lazy Loading: Graceful failure with helpful error messages when MCP not installed
    • Interactive Setup Wizard:
      • Shows all installation options on first run
      • Stored at ~/.config/skill-seekers/.setup_shown
      • Accessible via skill-seekers-setup command
    • Entry Point: skill-seekers-setup for manual access
  • 🧪 E2E Testing for Bootstrap - Comprehensive end-to-end tests

    • 6 core tests verifying bootstrap workflow:
      • Output structure creation
      • Header prepending
      • YAML frontmatter validation
      • Line count sanity checks
      • Virtual environment installability
      • Platform adaptor compatibility
    • Pytest markers: @pytest.mark.e2e, @pytest.mark.venv, @pytest.mark.slow
    • Execution modes:
      • Fast tests: pytest -k "not venv" (~2-3 min)
      • Full suite: pytest -m "e2e" (~5-10 min)
    • Test utilities: Fixtures for project root, bootstrap runner, output directory
  • 📚 Comprehensive Documentation Overhaul - Complete v2.7.0 documentation update

    • 7 new documentation files (~3,750 lines total):
      • docs/reference/API_REFERENCE.md (750 lines) - Programmatic usage guide for Python developers
      • docs/features/BOOTSTRAP_SKILL.md (450 lines) - Self-hosting capability documentation
      • docs/reference/CODE_QUALITY.md (550 lines) - Code quality standards and ruff linting guide
      • docs/guides/TESTING_GUIDE.md (750 lines) - Complete testing reference (1200+ test suite)
      • docs/QUICK_REFERENCE.md (300 lines) - One-page cheat sheet for quick command lookup
      • docs/guides/MIGRATION_GUIDE.md (400 lines) - Version upgrade guides (v1.0.0 → v2.7.0)
      • docs/FAQ.md (550 lines) - Comprehensive Q&A for common user questions
    • 10 existing files updated:
      • README.md - Updated test count badge (700+ → 1200+ tests), v2.7.0 callout
      • ROADMAP.md - Added v2.7.0 completion section with task statuses
      • CONTRIBUTING.md - Added link to CODE_QUALITY.md reference
      • docs/README.md - Quick links by use case, recent updates section
      • docs/guides/MCP_SETUP.md - Fixed server_fastmcp references (PR #252)
      • docs/QUICK_REFERENCE.md - Updated MCP server reference (server.py → server_fastmcp.py)
      • CLAUDE_INTEGRATION.md - Updated version references
      • 3 other documentation files with v2.7.0 updates
    • Version consistency: All version references standardized to v2.7.0
    • Test counts: Standardized to 1200+ tests (was inconsistent 700+ in some docs)
    • MCP tool counts: Updated to 18 tools (from 17)
  • 📦 Git Submodules for Configuration Management - Improved config organization and API deployment

    • Configs as git submodule at api/configs_repo/ for cleaner repository
    • Production configs: Added official production-ready configuration presets
    • Duplicate removal: Cleaned up all duplicate configs from main repository
    • Test filtering: Filtered out test-example configs from API endpoints
    • CI/CD integration: GitHub Actions now initializes submodules automatically
    • API deployment: Updated render.yaml to use git submodule for configs_repo
    • Benefits: Cleaner main repo, better config versioning, production/test separation
  • 🔍 Config Discovery Enhancements - Improved config listing

    • --all flag for estimate command: skill-seekers estimate --all
    • Lists all available preset configurations with descriptions
    • Helps users discover supported frameworks before scraping
    • Shows config names, frameworks, and documentation URLs

Changed

  • GitHub Fetcher - Integrated rate limit handler

    • Modified github_fetcher.py to use RateLimitHandler
    • Added upfront rate limit check before starting
    • Check responses for rate limits on all API calls
    • Automatic profile detection from config
    • Raises RateLimitError when rate limit cannot be handled
    • Constructor now accepts interactive and profile_name parameters
  • GitHub Scraper - Added rate limit support

    • New --non-interactive flag for CI/CD mode
    • New --profile flag to select GitHub profile
    • Config now supports interactive and github_profile keys
    • CLI argument passing for non-interactive and profile options
  • Main CLI - Enhanced with new commands

    • Added config subcommand with options (--github, --api-keys, --show, --test)
    • Added resume subcommand with options (--list, --clean)
    • Updated GitHub subcommand with --non-interactive and --profile flags
    • Updated command documentation strings
    • Version bumped to 2.7.0
  • pyproject.toml - New entry points and dependency restructuring

    • Added skill-seekers-config entry point
    • Added skill-seekers-resume entry point
    • Added skill-seekers-setup entry point for setup wizard
    • MCP moved to optional dependencies - Now requires pip install skill-seekers[mcp]
    • Updated pytest markers: e2e, venv, bootstrap, slow
    • Version updated to 2.7.0
  • install_skill.py - Lazy MCP loading

    • Try/except ImportError for MCP imports
    • Graceful failure with helpful error message when MCP not installed
    • Suggests alternatives: scrape + package workflow
    • Maintains backward compatibility for existing MCP users

Fixed

  • Code Quality Improvements - Fixed all 21 ruff linting errors across codebase

    • SIM102: Combined nested if statements using and operator (7 fixes)
    • SIM117: Combined multiple with statements into single multi-context with (9 fixes)
    • B904: Added from e to exception chaining for proper error context (1 fix)
    • SIM113: Removed unused enumerate counter variable (1 fix)
    • B007: Changed unused loop variable to _ (1 fix)
    • ARG002: Removed unused method argument in test fixture (1 fix)
    • Files affected: config_extractor.py, config_validator.py, doc_scraper.py, pattern_recognizer.py (3), test_example_extractor.py (3), unified_skill_builder.py, pdf_scraper.py, and 6 test files
    • Result: Zero linting errors, cleaner code, better maintainability
  • Version Synchronization - Fixed version mismatch across package (Issue #248)

    • All __init__.py files now correctly show version 2.7.0 (was 2.5.2 in 4 files)
    • Files updated: src/skill_seekers/__init__.py, src/skill_seekers/cli/__init__.py, src/skill_seekers/mcp/__init__.py, src/skill_seekers/mcp/tools/__init__.py
    • Ensures skill-seekers --version shows accurate version number
    • Critical: Prevents bug where PyPI shows wrong version (Issue #248)
  • Case-Insensitive Regex in Install Workflow - Fixed install workflow failures (Issue #236)

    • Made regex patterns case-insensitive using (?i) flag
    • Patterns now match both "Saved to:" and "saved to:" (and any case variation)
    • Files: src/skill_seekers/mcp/tools/packaging_tools.py (lines 529, 668)
    • Impact: install_skill workflow now works reliably regardless of output formatting
  • Test Fixture Error - Fixed pytest fixture error in bootstrap skill tests

    • Removed unused tmp_path parameter causing fixture lookup errors
    • File: tests/test_bootstrap_skill.py:54
    • Result: All CI test runs now pass without fixture errors
  • MCP Setup Modernization - Updated MCP server configuration (PR #252, @MiaoDX)

    • Fixed 41 instances of server_fastmcp_fastmcpserver_fastmcp typo in docs/guides/MCP_SETUP.md
    • Updated all 12 files to use skill_seekers.mcp.server_fastmcp module
    • Enhanced setup_mcp.sh with automatic venv detection (.venv, venv, $VIRTUAL_ENV)
    • Updated tests to accept -e ".[mcp]" format and module references
    • Files: .claude/mcp_config.example.json, CLAUDE.md, README.md, docs/guides/*.md, setup_mcp.sh, tests/test_setup_scripts.py
    • Benefits: Eliminates "module not found" errors, clean dependency isolation, prepares for v3.0.0
  • Rate limit indefinite wait - No more infinite waiting

    • Configurable timeout per profile (default: 30 minutes)
    • Clear error messages when timeout exceeded
    • Graceful exit with helpful next steps
    • Resume capability for interrupted jobs
  • Token setup confusion - Clear, guided setup process

    • Interactive wizard with browser integration
    • Token validation with helpful error messages
    • Clear documentation of required scopes
    • Test connection feature to verify tokens work
  • CI/CD failures - Non-interactive mode support

    • --non-interactive flag fails fast instead of hanging
    • No user prompts in non-interactive mode
    • Clear error messages for automation logs
    • Exit codes for pipeline integration
  • AttributeError in codebase_scraper.py - Fixed incorrect flag check (PR #249)

    • Changed if args.build_api_reference: to if not args.skip_api_reference:
    • Aligns with v2.5.2 opt-out flag strategy (--skip-* instead of --build-*)
    • Fixed at line 1193 in codebase_scraper.py

Technical Details

  • Architecture: Strategy pattern for rate limit handling, singleton for config manager
  • Files Modified: 6 (github_fetcher.py, github_scraper.py, main.py, pyproject.toml, install_skill.py, codebase_scraper.py)
  • New Files: 6 (config_manager.py ~490 lines, config_command.py ~400 lines, rate_limit_handler.py ~450 lines, resume_command.py ~150 lines, setup_wizard.py ~95 lines, test_bootstrap_skill_e2e.py ~169 lines)
  • Bootstrap Scripts: 2 (bootstrap_skill.sh enhanced, skill_header.md)
  • Tests: 22 tests added, all passing (16 rate limit + 6 E2E bootstrap)
  • Dependencies: MCP moved to optional, no new required dependencies
  • Backward Compatibility: Fully backward compatible, MCP optionality via pip extras
  • Credits: Bootstrap feature contributed by @MiaoDX (PR #249)

Migration Guide

Existing users - No migration needed! Everything works as before.

MCP users - If you use MCP integration features:

# Reinstall with MCP support
pip install -U skill-seekers[mcp]

# Or install everything
pip install -U skill-seekers[all]

New installation profiles:

# CLI only (no MCP)
pip install skill-seekers

# With MCP integration
pip install skill-seekers[mcp]

# With multi-LLM support (Gemini, OpenAI)
pip install skill-seekers[all-llms]

# Everything
pip install skill-seekers[all]

# See all options
skill-seekers-setup

To use new features:

# Set up GitHub token (one-time)
skill-seekers config --github

# Add multiple profiles
skill-seekers config
# → Select "1. GitHub Token Setup"
# → Select "1. Add New Profile"

# Use specific profile
skill-seekers github --repo owner/repo --profile work

# CI/CD mode
skill-seekers github --repo owner/repo --non-interactive

# View configuration
skill-seekers config --show

# Bootstrap skill-seekers as a Claude Code skill
./scripts/bootstrap_skill.sh
cp -r output/skill-seekers ~/.claude/skills/

Breaking Changes

None - this release is fully backward compatible.


[2.6.0] - 2026-01-13

🚀 Codebase Analysis Enhancements & Documentation Reorganization

This minor feature release completes the C3.x codebase analysis suite with standalone SKILL.md generation for codebase scraper, adds comprehensive documentation reorganization, and includes quality-of-life improvements for setup and testing.

Added

  • C3.8 Standalone Codebase Scraper SKILL.md Generation - Complete skill structure for standalone codebase analysis

    • Generates comprehensive SKILL.md (300+ lines) with all C3.x analysis integrated
    • Sections: Description, When to Use, Quick Reference, Design Patterns, Architecture, Configuration, Available References
    • Includes language statistics, analysis depth indicators, and feature checkboxes
    • Creates references/ directory with organized outputs (API, dependencies, patterns, architecture, config)
    • Integration points:
      • CLI tool: skill-seekers-codebase-scraper --directory /path/to/code --output /path/to/output
      • Unified scraper: Automatic SKILL.md generation when using codebase analysis
    • Format helpers for all C3.x sections (patterns, examples, API, architecture, config)
    • Perfect for local codebase documentation without GitHub
    • Use Cases: Private codebases, offline analysis, local project documentation, pre-commit hooks
    • Documentation: Integrated into codebase scraper workflow
  • Global Setup Script with FastMCP - setup.sh for end-user global installation

    • New setup.sh script for global PyPI installation (vs setup_mcp.sh for development)
    • Installs skill-seekers globally: pip3 install skill-seekers
    • Sets up MCP server configuration for Claude Code Desktop
    • Creates MCP configuration in ~/.claude/mcp_settings.json
    • Uses global Python installation (no editable install)
    • Perfect for end users who want to use Skill Seekers without development setup
    • Separate from development setup: setup_mcp.sh remains for editable development installs
    • Documentation: Root-level setup.sh with clear installation instructions
  • Comprehensive Documentation Reorganization - Complete overhaul of documentation structure

    • Removed 7 temporary/analysis files from root directory
    • Archived 14 historical documents to docs/archive/ (historical, research, temp)
    • Organized 29 documentation files into clear subdirectories:
      • docs/features/ (10 files) - Core features, AI enhancement, PDF tools
      • docs/integrations/ (3 files) - Multi-LLM platform support
      • docs/guides/ (6 files) - Setup, MCP, usage guides
      • docs/reference/ (8 files) - Architecture, standards, technical reference
    • Created docs/README.md - Comprehensive navigation index with:
      • Quick navigation by category
      • "I want to..." user-focused navigation
      • Clear entry points for all documentation
      • Links to guides, features, integrations, and reference docs
    • Benefits: 3x faster documentation discovery, user-focused navigation, scalable structure
    • Structure: Before: 64 files scattered → After: 57 files organized with clear navigation
  • Test Configuration - AstroValley unified config for testing

    • Added configs/astrovalley_unified.json for comprehensive testing
    • Demonstrates GitHub + codebase analysis integration
    • Verified AI enhancement works on both standalone and unified skills
    • Tests context awareness: standalone (codebase-only) vs unified (GitHub+codebase)
    • Quality metrics: 8.2x growth for standalone, 3.7x for unified enhancement
  • Enhanced LOCAL Enhancement Modes - Advanced enhancement execution options (moved from previous unreleased)

    • 4 Execution Modes for different use cases:
      • Headless (default): Runs in foreground, waits for completion (perfect for CI/CD)
      • Background (--background): Runs in background thread, returns immediately
      • Daemon (--daemon): Fully detached process with nohup, survives parent exit
      • Terminal (--interactive-enhancement): Opens new terminal window (macOS)
    • Force Mode (Default ON): Skip all confirmations by default for maximum automation
      • No flag needed - force mode is ON by default
      • Use --no-force to enable confirmation prompts if needed
      • Perfect for CI/CD, batch processing, unattended execution
      • "Dangerously skip mode" as requested - auto-yes to everything
    • Status Monitoring: New enhance-status command for background/daemon processes
      • Check status once: skill-seekers enhance-status output/react/
      • Watch in real-time: skill-seekers enhance-status output/react/ --watch
      • JSON output for scripts: skill-seekers enhance-status output/react/ --json
    • Status File: .enhancement_status.json tracks progress (status, message, progress %, PID, timestamp, errors)
    • Daemon Logging: .enhancement_daemon.log for daemon mode execution logs
    • Timeout Configuration: Custom timeouts for different skill sizes (--timeout flag)
    • CLI Integration: All modes accessible via skill-seekers enhance command
    • Documentation: New docs/ENHANCEMENT_MODES.md guide with examples
    • Use Cases:
      • CI/CD pipelines: Force ON by default (no extra flags!)
      • Long-running tasks: --daemon for tasks that survive logout
      • Parallel processing: --background for batch enhancement
      • Debugging: --interactive-enhancement to watch Claude Code work
  • C3.1 Design Pattern Detection - Detect 10 common design patterns in code

    • Detects: Singleton, Factory, Observer, Strategy, Decorator, Builder, Adapter, Command, Template Method, Chain of Responsibility
    • Supports 9 languages: Python, JavaScript, TypeScript, C++, C, C#, Go, Rust, Java (plus Ruby, PHP)
    • Three detection levels: surface (fast), deep (balanced), full (thorough)
    • Language-specific adaptations for better accuracy
    • CLI tool: skill-seekers-patterns --file src/db.py
    • Codebase scraper integration: --detect-patterns flag
    • MCP tool: detect_patterns for Claude Code integration
    • 24 comprehensive tests, 100% passing
    • 87% precision, 80% recall (tested on 100 real-world projects)
    • Documentation: docs/PATTERN_DETECTION.md
  • C3.2 Test Example Extraction - Extract real usage examples from test files

    • Analyzes test files to extract real API usage patterns
    • Categories: instantiation, method_call, config, setup, workflow
    • Supports 9 languages: Python (AST-based deep analysis), JavaScript, TypeScript, Go, Rust, Java, C#, PHP, Ruby (regex-based)
    • Quality filtering with confidence scoring (removes trivial patterns)
    • CLI tool: skill-seekers extract-test-examples tests/ --language python
    • Codebase scraper integration: --extract-test-examples flag
    • MCP tool: extract_test_examples for Claude Code integration
    • 19 comprehensive tests, 100% passing
    • JSON and Markdown output formats
    • Documentation: docs/TEST_EXAMPLE_EXTRACTION.md
  • C3.3 How-To Guide Generation with Comprehensive AI Enhancement - Transform test workflows into step-by-step educational guides with professional AI-powered improvements

    • Automatically generates comprehensive markdown tutorials from workflow test examples
    • 🆕 COMPREHENSIVE AI ENHANCEMENT - 5 automatic improvements that transform basic guides (⭐⭐) into professional tutorials (⭐⭐⭐⭐⭐):
      1. Step Descriptions - Natural language explanations for each step (not just syntax)
      2. Troubleshooting Solutions - Diagnostic flows + solutions for common errors
      3. Prerequisites Explanations - Why each prerequisite is needed + setup instructions
      4. Next Steps Suggestions - Related guides, variations, learning paths
      5. Use Case Examples - Real-world scenarios showing when to use guide
    • 🆕 DUAL-MODE AI SUPPORT - Choose how to enhance guides:
      • API Mode: Uses Claude API directly (requires ANTHROPIC_API_KEY)
        • Fast, efficient, perfect for automation/CI
        • Cost: ~$0.15-$0.30 per guide
      • LOCAL Mode: Uses Claude Code CLI (no API key needed)
        • Uses your existing Claude Code Max plan (FREE!)
        • Opens in terminal, takes 30-60 seconds
        • Perfect for local development
      • AUTO Mode (default): Automatically detects best available mode
    • 🆕 QUALITY TRANSFORMATION: Basic templates become comprehensive professional tutorials
      • Before: 75-line template with just code (⭐⭐)
      • After: 500+ line guide with explanations, troubleshooting, learning paths (⭐⭐⭐⭐⭐)
    • CLI Integration: Simple flags control AI enhancement
      • --ai-mode api - Use Claude API (requires ANTHROPIC_API_KEY)
      • --ai-mode local - Use Claude Code CLI (no API key needed)
      • --ai-mode auto - Automatic detection (default)
      • --ai-mode none - Disable AI enhancement
    • 4 Intelligent Grouping Strategies:
      • AI Tutorial Group (default) - Uses C3.6 AI analysis for semantic grouping
      • File Path - Groups by test file location
      • Test Name - Groups by test name patterns
      • Complexity - Groups by difficulty level (beginner/intermediate/advanced)
    • Python AST-based Step Extraction - Precise step identification from test code
    • Rich Markdown Guides with prerequisites, code examples, verification points, troubleshooting
    • Automatic Complexity Assessment - Classifies guides by difficulty
    • Multi-Language Support - Python (AST-based), JavaScript, TypeScript, Go, Rust, Java, C#, PHP, Ruby (heuristic)
    • Integration Points:
      • CLI tool: skill-seekers-how-to-guides test_examples.json --group-by ai-tutorial-group --ai-mode auto
      • Codebase scraper: --build-how-to-guides --ai-mode local (default ON, --skip-how-to-guides to disable)
      • MCP tool: build_how_to_guides for Claude Code integration
    • Components: WorkflowAnalyzer, WorkflowGrouper, GuideGenerator, HowToGuideBuilder, GuideEnhancer (NEW!)
    • Output: Comprehensive index + individual guides with complete examples + AI enhancements
    • 56 comprehensive tests, 100% passing (30 GuideEnhancer tests + 21 original + 5 integration tests)
    • Performance: 2.8s to process 50 workflows + 30-60s AI enhancement per guide
    • Quality Metrics: Enhanced guides have 95%+ user satisfaction, 50% reduction in support questions
    • Documentation: docs/HOW_TO_GUIDES.md with AI enhancement guide
  • C3.4 Configuration Pattern Extraction with AI Enhancement - Analyze and document configuration files across your codebase with optional AI-powered insights

    • 9 Supported Config Formats: JSON, YAML, TOML, ENV, INI, Python modules, JavaScript/TypeScript configs, Dockerfile, Docker Compose
    • 7 Common Pattern Detection:
      • Database configuration (host, port, credentials)
      • API configuration (endpoints, keys, timeouts)
      • Logging configuration (level, format, handlers)
      • Cache configuration (backend, TTL, keys)
      • Email configuration (SMTP, credentials)
      • Authentication configuration (providers, secrets)
      • Server configuration (host, port, workers)
    • 🆕 COMPREHENSIVE AI ENHANCEMENT (optional) - Similar to C3.3 dual-mode support:
      • API Mode: Uses Claude API (requires ANTHROPIC_API_KEY)
      • LOCAL Mode: Uses Claude Code CLI (FREE, no API key needed)
      • AUTO Mode: Automatically detects best available mode
      • 5 AI-Powered Insights:
        1. Explanations - What each configuration setting does
        2. Best Practices - Suggested improvements (better structure, naming, organization)
        3. Security Analysis - Identifies hardcoded secrets, exposed credentials, security issues
        4. Migration Suggestions - Opportunities to consolidate or standardize configs
        5. Context - Explains detected patterns and when to use them
    • Comprehensive Extraction:
      • Extracts all configuration settings with type inference
      • Detects environment variables and their usage
      • Maps nested configuration structures
      • Identifies required vs optional settings
    • Integration Points:
      • CLI tool: skill-seekers-config-extractor --directory . --enhance-local (with AI)
      • Codebase scraper: --extract-config-patterns --ai-mode local (default ON, --skip-config-patterns to disable)
      • MCP tool: extract_config_patterns(directory=".", enhance_local=true) for Claude Code integration
    • Output Formats: JSON (machine-readable with AI insights) + Markdown (human-readable documentation)
    • Components: ConfigFileDetector, ConfigParser, ConfigPatternDetector, ConfigExtractor, ConfigEnhancer (NEW!)
    • Performance: Analyzes 100 config files in ~3 seconds (basic) + 30-60 seconds (AI enhancement)
    • Use Cases: Documentation generation, configuration auditing, migration planning, security reviews, onboarding new developers
    • Test Coverage: 28 comprehensive tests covering all formats and patterns
  • C3.5 Architectural Overview & Skill Integrator - Comprehensive integration of ALL C3.x codebase analysis into unified skills

    • ARCHITECTURE.md Generation - Comprehensive architectural overview with 8 sections:
      1. Overview - Project description and purpose
      2. Architectural Patterns - Detected patterns (MVC, MVVM, etc.) from C3.7 analysis
      3. Technology Stack - Frameworks, libraries, and languages detected
      4. Design Patterns - Summary of C3.1 design patterns (Factory, Singleton, etc.)
      5. Configuration Overview - C3.4 config files with security warnings
      6. Common Workflows - C3.3 how-to guides summary
      7. Usage Examples - C3.2 test examples statistics
      8. Entry Points & Directory Structure - Main directories and file organization
    • Default ON Behavior - C3.x codebase analysis now runs automatically when GitHub sources have local_repo_path
    • CLI Flag - --skip-codebase-analysis to disable C3.x analysis if needed
    • Skill Directory Structure - New references/codebase_analysis/ with organized C3.x outputs:
      • ARCHITECTURE.md - Master architectural overview (main deliverable)
      • patterns/ - C3.1 design pattern analysis
      • examples/ - C3.2 test examples
      • guides/ - C3.3 how-to tutorials
      • configuration/ - C3.4 config patterns
      • architecture_details/ - C3.7 architectural pattern details
    • Enhanced SKILL.md - Architecture & Code Analysis summary section with:
      • Primary architectural pattern with confidence
      • Design patterns count and top 3 patterns
      • Test examples statistics
      • How-to guides count
      • Configuration files count with security alerts
      • Link to ARCHITECTURE.md for complete details
    • Config Properties:
      • enable_codebase_analysis (boolean, default: true) - Enable/disable C3.x analysis
      • ai_mode (enum: auto/api/local/none, default: auto) - AI enhancement mode
    • Graceful Degradation - Skills build successfully even if C3.x analysis fails
    • Integration Points:
      • Unified scraper: Automatic C3.x analysis when local_repo_path exists
      • Skill builder: Automatic ARCHITECTURE.md + references generation
      • Config validator: Validates new C3.x properties
    • Test Coverage: 9 comprehensive integration tests
    • Updated Configs: 5 unified configs updated (react, django, fastapi, godot, svelte-cli)
    • Use Cases: Understanding codebase architecture, onboarding developers, code reviews, documentation generation, skill completeness
  • C3.6 AI Enhancement - AI-powered insights for patterns and test examples

    • Enhances C3.1 (Pattern Detection) and C3.2 (Test Examples) with AI analysis
    • Pattern Enhancement: Explains why patterns detected, suggests improvements, identifies issues
    • Test Example Enhancement: Adds context, groups examples into tutorials, identifies best practices
    • API Mode (for pattern/example enhancement):
      • Uses Anthropic API with ANTHROPIC_API_KEY
      • Batch processing (5 items per call) for efficiency
      • Automatic activation when key is set
      • Graceful degradation if no key (works offline)
    • LOCAL Mode (for SKILL.md enhancement - existing feature):
      • Uses skill-seekers enhance output/skill/ command
      • Opens Claude Code in new terminal (no API costs!)
      • Uses your existing Claude Code Max plan
      • Perfect for enhancing generated SKILL.md files
    • Note: Pattern/example enhancement uses API mode only (batch processing hundreds of items)
  • C3.7 Architectural Pattern Detection - Detect high-level architectural patterns

    • Detects MVC, MVVM, MVP, Repository, Service Layer, Layered, Clean Architecture
    • Multi-file analysis (analyzes entire codebase structure)
    • Framework detection: Django, Flask, Spring, ASP.NET, Rails, Laravel, Angular, React, Vue.js
    • Directory structure analysis for pattern recognition
    • Evidence-based detection with confidence scoring
    • AI-enhanced insights for architectural recommendations
    • Always enabled (provides high-level overview)
    • Output: output/codebase/architecture/architectural_patterns.json
    • Integration with C3.6 for AI-powered architectural insights

Changed

  • BREAKING: Analysis Features Now Default ON - Improved UX for codebase analysis
    • All analysis features (API reference, dependency graph, patterns, test examples) are now enabled by default
    • Changed flag pattern from --build-* to --skip-* for better discoverability
    • Old flags (DEPRECATED): --build-api-reference, --build-dependency-graph, --detect-patterns, --extract-test-examples
    • New flags: --skip-api-reference, --skip-dependency-graph, --skip-patterns, --skip-test-examples
    • Migration: Remove old --build-* flags from your scripts (features are now ON by default)
    • Backward compatibility: Deprecated flags show warnings but still work (will be removed in v3.0.0)
    • Rationale: Users should get maximum value by default; explicitly opt-out if needed
    • Impact: codebase-scraper --directory . now runs all analysis features automatically

Fixed

  • Codebase Scraper Language Stats - Fixed dict format handling in _get_language_stats()
    • Issue: AttributeError: 'dict' object has no attribute 'suffix' when generating SKILL.md
    • Cause: Function expected Path objects but received dict objects from analysis results
    • Fix: Extract language from dict instead of calling detect_language() on Path
    • Impact: SKILL.md generation now works correctly for all codebases
    • Location: src/skill_seekers/cli/codebase_scraper.py:778

Removed


[2.5.2] - 2025-12-31

🔧 Package Configuration Improvement

This patch release improves the packaging configuration by switching from manual package listing to automatic package discovery, preventing similar issues in the future.

Changed

  • Package Discovery: Switched from manual package listing to automatic discovery in pyproject.toml (#227)
    • Before: Manually listed 5 packages (error-prone when adding new modules)
    • After: Automatic discovery using [tool.setuptools.packages.find]
    • Benefits: Future-proof, prevents missing module bugs, follows Python packaging best practices
    • Impact: No functional changes, same packages included
    • Credit: Thanks to @iamKhan79690 for the improvement!

Package Structure

No changes to package contents - all modules from v2.5.1 are still included:

  • skill_seekers (core)
  • skill_seekers.cli (CLI tools)
  • skill_seekers.cli.adaptors (platform adaptors)
  • skill_seekers.mcp (MCP server)
  • skill_seekers.mcp.tools (MCP tools)

Related Issues

  • Closes #226 - MCP server package_skill tool fails (already fixed in v2.5.1, improved by this release)
  • Merges #227 - Update setuptools configuration to include adaptors module

Contributors


[2.5.1] - 2025-12-30

🐛 Critical Bug Fix - PyPI Package Broken

This patch release fixes a critical packaging bug that made v2.5.0 completely unusable for PyPI users.

Fixed

  • CRITICAL: Added missing skill_seekers.cli.adaptors module to packages list in pyproject.toml (#221)
    • Issue: v2.5.0 on PyPI throws ModuleNotFoundError: No module named 'skill_seekers.cli.adaptors'
    • Impact: Broke 100% of multi-platform features (Claude, Gemini, OpenAI, Markdown)
    • Cause: The adaptors module was missing from the explicit packages list
    • Fix: Added skill_seekers.cli.adaptors to packages in pyproject.toml
    • Credit: Thanks to @MiaoDX for finding and fixing this issue!

Package Structure

The skill_seekers.cli.adaptors module contains the platform adaptor architecture:

  • base.py - Abstract base class for all adaptors
  • claude.py - Claude AI platform implementation
  • gemini.py - Google Gemini platform implementation
  • openai.py - OpenAI ChatGPT platform implementation
  • markdown.py - Generic markdown export

Note: v2.5.0 is broken on PyPI. All users should upgrade to v2.5.1 immediately.


[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:

    # 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:

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

This major release upgrades the MCP infrastructure to the 2025 specification with support for 5 AI coding agents, dual transport modes (stdio + HTTP), and a complete FastMCP refactor.

🎯 Major Features

MCP SDK v1.25.0 Upgrade

  • Upgraded from v1.18.0 to v1.25.0 - Latest MCP protocol specification (November 2025)
  • FastMCP framework - Decorator-based tool registration, 68% code reduction (2200 → 708 lines)
  • Enhanced reliability - Better error handling, automatic schema generation from type hints
  • Backward compatible - Existing v2.3.0 configurations continue to work

Dual Transport Support

  • stdio transport (default) - Standard input/output for Claude Code, VS Code + Cline
  • HTTP transport (new) - Server-Sent Events for Cursor, Windsurf, IntelliJ IDEA
  • Health check endpoint - GET /health for monitoring
  • SSE endpoint - GET /sse for real-time communication
  • Configurable server - --http, --port, --host, --log-level flags
  • uvicorn-powered - Production-ready ASGI server

Multi-Agent Auto-Configuration

  • 5 AI agents supported:
    • Claude Code (stdio)
    • Cursor (HTTP)
    • Windsurf (HTTP)
    • VS Code + Cline (stdio)
    • IntelliJ IDEA (HTTP)
  • Automatic detection - agent_detector.py scans for installed agents
  • One-command setup - ./setup_mcp.sh configures all detected agents
  • Smart config merging - Preserves existing MCP servers, only adds skill-seeker
  • Automatic backups - Timestamped backups before modifications
  • HTTP server management - Auto-starts HTTP server for HTTP-based agents

Expanded Tool Suite (17 Tools)

  • Config Tools (3): generate_config, list_configs, validate_config
  • Scraping Tools (4): estimate_pages, scrape_docs, scrape_github, scrape_pdf
  • Packaging Tools (3): package_skill, upload_skill, install_skill
  • Splitting Tools (2): split_config, generate_router
  • Source Tools (5): fetch_config, submit_config, add_config_source, list_config_sources, remove_config_source

Added

Core Infrastructure

  • server_fastmcp.py (708 lines) - New FastMCP-based MCP server

    • Decorator-based tool registration (@safe_tool_decorator)
    • Modular tool architecture (5 tool modules)
    • HTTP transport with uvicorn
    • stdio transport (default)
    • Comprehensive error handling
  • agent_detector.py (333 lines) - Multi-agent detection and configuration

    • Detects 5 AI coding agents across platforms (Linux, macOS, Windows)
    • Generates agent-specific config formats (JSON, XML)
    • Auto-selects transport type (stdio vs HTTP)
    • Cross-platform path resolution
  • Tool modules (5 modules, 1,676 total lines):

    • tools/config_tools.py (249 lines) - Configuration management
    • tools/scraping_tools.py (423 lines) - Documentation scraping
    • tools/packaging_tools.py (514 lines) - Skill packaging and upload
    • tools/splitting_tools.py (195 lines) - Config splitting and routing
    • tools/source_tools.py (295 lines) - Config source management

Setup & Configuration

  • setup_mcp.sh (rewritten, 661 lines) - Multi-agent auto-configuration

    • Detects installed agents automatically
    • Offers configure all or select individual agents
    • Manages HTTP server startup
    • Smart config merging with existing configurations
    • Comprehensive validation and testing
  • HTTP server - Production-ready HTTP transport

    • Health endpoint: /health
    • SSE endpoint: /sse
    • Messages endpoint: /messages/
    • CORS middleware for cross-origin requests
    • Configurable host and port
    • Debug logging support

Documentation

  • docs/MCP_SETUP.md (completely rewritten) - Comprehensive MCP 2025 guide

    • Migration guide from v2.3.0
    • Transport modes explained (stdio vs HTTP)
    • Agent-specific configuration for all 5 agents
    • Troubleshooting for both transports
    • Advanced configuration (systemd, launchd services)
  • docs/HTTP_TRANSPORT.md (434 lines, new) - HTTP transport guide

  • docs/MULTI_AGENT_SETUP.md (643 lines, new) - Multi-agent setup guide

  • docs/SETUP_QUICK_REFERENCE.md (387 lines, new) - Quick reference card

  • SUMMARY_HTTP_TRANSPORT.md (360 lines, new) - Technical implementation details

  • SUMMARY_MULTI_AGENT_SETUP.md (556 lines, new) - Multi-agent technical summary

Testing

  • test_mcp_fastmcp.py (960 lines, 63 tests) - Comprehensive FastMCP server tests

    • All 18 tools tested
    • Error handling validation
    • Type validation
    • Integration workflows
  • test_server_fastmcp_http.py (165 lines, 6 tests) - HTTP transport tests

    • Health check endpoint
    • SSE endpoint
    • CORS middleware
    • Argument parsing
  • All tests passing: 602/609 tests (99.1% pass rate)

Changed

MCP Server Architecture

  • Refactored to FastMCP - Decorator-based, modular, maintainable
  • Code reduction - 68% smaller (2200 → 708 lines)
  • Modular tools - Separated into 5 category modules
  • Type safety - Full type hints on all tool functions
  • Improved error handling - Graceful degradation, clear error messages

Server Compatibility

  • server.py - Now a compatibility shim (delegates to server_fastmcp.py)
  • Deprecation warning - Alerts users to migrate to server_fastmcp
  • Backward compatible - Existing configurations continue to work
  • Migration path - Clear upgrade instructions in docs

Setup Experience

  • Multi-agent workflow - One script configures all agents
  • Interactive prompts - User-friendly with sensible defaults
  • Validation - Config file validation before writing
  • Backup safety - Automatic timestamped backups
  • Color-coded output - Visual feedback (success/warning/error)

Documentation

  • README.md - Added comprehensive multi-agent section
  • MCP_SETUP.md - Completely rewritten for v2.4.0
  • CLAUDE.md - Updated with new server details
  • Version badges - Updated to v2.4.0

Fixed

  • Import issues in test files (updated to use new tool modules)
  • CLI version test (updated to expect v2.3.0)
  • Graceful MCP import handling (no sys.exit on import)
  • Server compatibility for testing environments

Deprecated

  • server.py - Use server_fastmcp.py instead
    • Compatibility shim provided
    • Will be removed in v3.0.0 (6+ months)
    • Migration guide available

Infrastructure

  • Python 3.10+ - Recommended for best compatibility
  • MCP SDK: v1.25.0 (pinned to v1.x)
  • uvicorn: v0.40.0+ (for HTTP transport)
  • starlette: v0.50.0+ (for HTTP transport)

Migration from v2.3.0

Upgrade Steps:

  1. Update dependencies: pip install -e ".[mcp]"
  2. Update MCP config to use server_fastmcp:
    {
      "mcpServers": {
        "skill-seeker": {
          "command": "python",
          "args": ["-m", "skill_seekers.mcp.server_fastmcp"]
        }
      }
    }
  3. For HTTP agents, start HTTP server: python -m skill_seekers.mcp.server_fastmcp --http
  4. Or use auto-configuration: ./setup_mcp.sh

Breaking Changes: None - fully backward compatible

New Capabilities:

  • Multi-agent support (5 agents)
  • HTTP transport for web-based agents
  • 8 new MCP tools
  • Automatic agent detection and configuration

Contributors

  • Implementation: Claude Sonnet 4.5
  • Testing & Review: @yusufkaraaslan

[2.3.0] - 2025-12-22

🤖 Multi-Agent Installation Support

This release adds automatic skill installation to 10+ AI coding agents with a single command.

Added

  • Multi-agent installation support (#210)
    • New install-agent command to install skills to any AI coding agent
    • Support for 10+ agents: Claude Code, Cursor, VS Code, Amp, Goose, OpenCode, Letta, Aide, Windsurf
    • --agent all flag to install to all agents at once
    • --force flag to overwrite existing installations
    • --dry-run flag to preview installations
    • Intelligent path resolution (global vs project-relative)
    • Fuzzy matching for agent names with suggestions
    • Comprehensive error handling and user feedback

Changed

  • Skills are now compatible with the Agent Skills open standard (agentskills.io)
  • Installation paths follow standard conventions for each agent
  • CLI updated with install-agent subcommand

Documentation

  • Added multi-agent installation guide to README.md
  • Updated CLAUDE.md with install-agent examples
  • Added agent compatibility table

Testing

  • Added 32 comprehensive tests for install-agent functionality
  • All tests passing (603 tests total, 86 skipped)
  • No regressions in existing functionality

[2.2.0] - 2025-12-21

🚀 Private Config Repositories - Team Collaboration Unlocked

This major release adds git-based config sources, enabling teams to fetch configs from private/team repositories in addition to the public API. This unlocks team collaboration, enterprise deployment, and custom config collections.

🎯 Major Features

Git-Based Config Sources (Issue #211)

  • Multi-source config management - Fetch from API, git URL, or named sources
  • Private repository support - GitHub, GitLab, Bitbucket, Gitea, and custom git servers
  • Team collaboration - Share configs across 3-5 person teams with version control
  • Enterprise scale - Support 500+ developers with priority-based resolution
  • Secure authentication - Environment variable tokens only (GITHUB_TOKEN, GITLAB_TOKEN, etc.)
  • Intelligent caching - Shallow clone (10-50x faster), auto-pull updates
  • Offline mode - Works with cached repos when offline
  • Backward compatible - Existing API-based configs work unchanged

New MCP Tools

  • add_config_source - Register git repositories as config sources

    • Auto-detects source type (GitHub, GitLab, etc.)
    • Auto-selects token environment variable
    • Priority-based resolution for multiple sources
    • SSH URL support (auto-converts to HTTPS + token)
  • list_config_sources - View all registered sources

    • Shows git URL, branch, priority, token env
    • Filter by enabled/disabled status
    • Sorted by priority (lower = higher priority)
  • remove_config_source - Unregister sources

    • Removes from registry (cache preserved for offline use)
    • Helpful error messages with available sources
  • Enhanced fetch_config - Three modes

    1. Named source mode - fetch_config(source="team", config_name="react-custom")
    2. Git URL mode - fetch_config(git_url="https://...", config_name="react-custom")
    3. API mode - fetch_config(config_name="react") (unchanged)

Added

Core Infrastructure

  • GitConfigRepo class (src/skill_seekers/mcp/git_repo.py, 283 lines)

    • clone_or_pull() - Shallow clone with auto-pull and force refresh
    • find_configs() - Recursive *.json discovery (excludes .git)
    • get_config() - Load config with case-insensitive matching
    • inject_token() - Convert SSH to HTTPS with token authentication
    • validate_git_url() - Support HTTPS, SSH, and file:// URLs
    • Comprehensive error handling (auth failures, missing repos, corrupted caches)
  • SourceManager class (src/skill_seekers/mcp/source_manager.py, 260 lines)

    • add_source() - Register/update sources with validation
    • get_source() - Retrieve by name with helpful errors
    • list_sources() - List all/enabled sources sorted by priority
    • remove_source() - Unregister sources
    • update_source() - Modify specific fields
    • Atomic file I/O (write to temp, then rename)
    • Auto-detect token env vars from source type

Storage & Caching

  • Registry file: ~/.skill-seekers/sources.json

    • Stores source metadata (URL, branch, priority, timestamps)
    • Version-controlled schema (v1.0)
    • Atomic writes prevent corruption
  • Cache directory: $SKILL_SEEKERS_CACHE_DIR (default: ~/.skill-seekers/cache/)

    • One subdirectory per source
    • Shallow git clones (depth=1, single-branch)
    • Configurable via environment variable

Documentation

  • docs/GIT_CONFIG_SOURCES.md (800+ lines) - Comprehensive guide

    • Quick start, architecture, authentication
    • MCP tools reference with examples
    • Use cases (small teams, enterprise, open source)
    • Best practices, troubleshooting, advanced topics
    • Complete API reference
  • configs/example-team/ - Example repository for testing

    • react-custom.json - Custom React config with metadata
    • vue-internal.json - Internal Vue config
    • company-api.json - Company API config example
    • README.md - Usage guide and best practices
    • test_e2e.py - End-to-end test script (7 steps, 100% passing)
  • README.md - Updated with git source examples

    • New "Private Config Repositories" section in Key Features
    • Comprehensive usage examples (quick start, team collaboration, enterprise)
    • Supported platforms and authentication
    • Example workflows for different team sizes

Dependencies

  • GitPython>=3.1.40 - Git operations (clone, pull, branch switching)
    • Replaces subprocess calls with high-level API
    • Better error handling and cross-platform support

Testing

  • 83 new tests (100% passing)
    • tests/test_git_repo.py (35 tests) - GitConfigRepo functionality
      • Initialization, URL validation, token injection
      • Clone/pull operations, config discovery, error handling
    • tests/test_source_manager.py (48 tests) - SourceManager functionality
      • Add/get/list/remove/update sources
      • Registry persistence, atomic writes, default token env
    • tests/test_mcp_git_sources.py (18 tests) - MCP integration
      • All 3 fetch modes (API, Git URL, Named Source)
      • Source management tools (add/list/remove)
      • Complete workflow (add → fetch → remove)
      • Error scenarios (auth failures, missing configs)

Improved

  • MCP server - Now supports 12 tools (up from 9)
    • Maintains backward compatibility
    • Enhanced error messages with available sources
    • Priority-based config resolution

Use Cases

Small Teams (3-5 people):

# One-time setup
add_config_source(name="team", git_url="https://github.com/myteam/configs.git")

# Daily usage
fetch_config(source="team", config_name="react-internal")

Enterprise (500+ developers):

# IT pre-configures sources
add_config_source(name="platform", ..., priority=1)
add_config_source(name="mobile", ..., priority=2)

# Developers use transparently
fetch_config(config_name="platform-api")  # Finds in platform source

Example Repository:

cd /path/to/Skill_Seekers
python3 configs/example-team/test_e2e.py  # Test E2E workflow

Backward Compatibility

  • ✅ All existing configs work unchanged
  • ✅ API mode still default (no registration needed)
  • ✅ No breaking changes to MCP tools or CLI
  • ✅ New parameters are optional (git_url, source, refresh)

Security

  • ✅ Tokens via environment variables only (not in files)
  • ✅ Shallow clones minimize attack surface
  • ✅ No token storage in registry file
  • ✅ Secure token injection (auto-converts SSH to HTTPS)

Performance

  • ✅ Shallow clone: 10-50x faster than full clone
  • ✅ Minimal disk space (no git history)
  • ✅ Auto-pull: Only fetches changes (not full re-clone)
  • ✅ Offline mode: Works with cached repos

Files Changed

  • Modified (2): pyproject.toml, src/skill_seekers/mcp/server.py
  • Added (6): 3 source files + 3 test files + 1 doc + 1 example repo
  • Total lines added: ~2,600

Migration Guide

No migration needed! This is purely additive:

# Before v2.2.0 (still works)
fetch_config(config_name="react")

# New in v2.2.0 (optional)
add_config_source(name="team", git_url="...")
fetch_config(source="team", config_name="react-custom")

Known Limitations

  • MCP async tests require pytest-asyncio (added to dev dependencies)
  • Example repository uses 'master' branch (git init default)

See Also


[2.1.1] - 2025-11-30

Fixed

  • submit_config MCP tool - Comprehensive validation and format support (#11)
    • Now uses ConfigValidator for comprehensive validation (previously only checked 3 fields)
    • Validates name format (alphanumeric, hyphens, underscores only)
    • Validates URL formats (must start with http:// or https://)
    • Validates selectors, patterns, rate limits, and max_pages
    • Supports both legacy and unified config formats
    • Provides detailed error messages with validation failures and examples
    • Adds warnings for unlimited scraping configurations
    • Enhanced category detection for multi-source configs
    • 8 comprehensive test cases added to test_mcp_server.py
    • Updated GitHub issue template with format type and validation warnings

[2.1.1] - 2025-11-30

🚀 GitHub Repository Analysis Enhancements

This release significantly improves GitHub repository scraping with unlimited local analysis, configurable directory exclusions, and numerous bug fixes.

Added

  • Configurable directory exclusions for local repository analysis (#203)
    • exclude_dirs_additional: Extend default exclusions with custom directories
    • exclude_dirs: Replace default exclusions entirely (advanced users)
    • 19 comprehensive tests covering all scenarios
    • Logging: INFO for extend mode, WARNING for replace mode
  • Unlimited local repository analysis via local_repo_path configuration parameter
  • Auto-exclusion of virtual environments, build artifacts, and cache directories
  • Support for analyzing repositories without GitHub API rate limits (50 → unlimited files)
  • Skip llms.txt option - Force HTML scraping even when llms.txt is detected (#198)

Fixed

  • Fixed logger initialization error causing AttributeError: 'NoneType' object has no attribute 'setLevel' (#190)
  • Fixed 3 NoneType subscriptable errors in release tag parsing
  • Fixed relative import paths causing ModuleNotFoundError
  • Fixed hardcoded 50-file analysis limit preventing comprehensive code analysis
  • Fixed GitHub API file tree limitation (140 → 345 files discovered)
  • Fixed AST parser "not iterable" errors eliminating 100% of parsing failures (95 → 0 errors)
  • Fixed virtual environment file pollution reducing file tree noise by 95%
  • Fixed force_rescrape flag not checked before interactive prompt causing EOFError in CI/CD environments

Improved

  • Increased code analysis coverage from 14% to 93.6% (+79.6 percentage points)
  • Improved file discovery from 140 to 345 files (+146%)
  • Improved class extraction from 55 to 585 classes (+964%)
  • Improved function extraction from 512 to 2,784 functions (+444%)
  • Test suite expanded to 427 tests (up from 391)

[2.1.0] - 2025-11-12

🎉 Major Enhancement: Quality Assurance + Race Condition Fixes

This release focuses on quality and reliability improvements, adding comprehensive quality checks and fixing critical race conditions in the enhancement workflow.

🚀 Major Features

Comprehensive Quality Checker

  • Automatic quality checks before packaging - Validates skill quality before upload
  • Quality scoring system - 0-100 score with A-F grades
  • Enhancement verification - Checks for template text, code examples, sections
  • Structure validation - Validates SKILL.md, references/ directory
  • Content quality checks - YAML frontmatter, language tags, "When to Use" section
  • Link validation - Validates internal markdown links
  • Detailed reporting - Errors, warnings, and info messages with file locations
  • CLI tool - skill-seekers-quality-checker with verbose and strict modes

Headless Enhancement Mode (Default)

  • No terminal windows - Runs enhancement in background by default
  • Proper waiting - Main console waits for enhancement to complete
  • Timeout protection - 10-minute default timeout (configurable)
  • Verification - Checks that SKILL.md was actually updated
  • Progress messages - Clear status updates during enhancement
  • Interactive mode available - --interactive-enhancement flag for terminal mode

Added

New CLI Tools

  • quality_checker.py - Comprehensive skill quality validation
    • Structure checks (SKILL.md, references/)
    • Enhancement verification (code examples, sections)
    • Content validation (frontmatter, language tags)
    • Link validation (internal markdown links)
    • Quality scoring (0-100 + A-F grade)

New Features

  • Headless enhancement - skill-seekers-enhance runs in background by default
  • Quality checks in packaging - Automatic validation before creating .zip
  • MCP quality skip - MCP server skips interactive checks
  • Enhanced error handling - Better error messages and timeout handling

Tests

  • +12 quality checker tests - Comprehensive validation testing
  • 391 total tests passing - Up from 379 in v2.0.0
  • 0 test failures - All tests green
  • CI improvements - Fixed macOS terminal detection tests

Changed

Enhancement Workflow

  • Default mode changed - Headless mode is now default (was terminal mode)
  • Waiting behavior - Main console waits for enhancement completion
  • No race conditions - Fixed "Package your skill" message appearing too early
  • Better progress - Clear status messages during enhancement

Package Workflow

  • Quality checks added - Automatic validation before packaging
  • User confirmation - Ask to continue if warnings/errors found
  • Skip option - --skip-quality-check flag to bypass checks
  • MCP context - Automatically skips checks in non-interactive contexts

CLI Arguments

  • doc_scraper.py:
    • Updated --enhance-local help text (mentions headless mode)
    • Added --interactive-enhancement flag
  • enhance_skill_local.py:
    • Changed default to headless=True
    • Added --interactive-enhancement flag
    • Added --timeout flag (default: 600 seconds)
  • package_skill.py:
    • Added --skip-quality-check flag

Fixed

Critical Bugs

  • Enhancement race condition - Main console no longer exits before enhancement completes
  • MCP stdin errors - MCP server now skips interactive prompts
  • Terminal detection tests - Fixed for headless mode default

Enhancement Issues

  • Process detachment - subprocess.run() now waits properly instead of Popen()
  • Timeout handling - Added timeout protection to prevent infinite hangs
  • Verification - Checks file modification time and size to verify success
  • Error messages - Better error handling and user-friendly messages

Test Fixes

  • package_skill tests - Added skip_quality_check=True to prevent stdin errors
  • Terminal detection tests - Updated to use headless=False for interactive tests
  • MCP server tests - Fixed to skip quality checks in non-interactive context

Technical Details

New Modules

  • src/skill_seekers/cli/quality_checker.py - Quality validation engine
  • tests/test_quality_checker.py - 12 comprehensive tests

Modified Modules

  • src/skill_seekers/cli/enhance_skill_local.py - Added headless mode
  • src/skill_seekers/cli/doc_scraper.py - Updated enhancement integration
  • src/skill_seekers/cli/package_skill.py - Added quality checks
  • src/skill_seekers/mcp/server.py - Skip quality checks in MCP context
  • tests/test_package_skill.py - Updated for quality checker
  • tests/test_terminal_detection.py - Updated for headless default

Commits in This Release

  • e279ed6 - Phase 1: Enhancement race condition fix (headless mode)
  • 3272f9c - Phases 2 & 3: Quality checker implementation
  • 2dd1027 - Phase 4: Tests (+12 quality checker tests)
  • befcb89 - CI Fix: Skip quality checks in MCP context
  • 67ab627 - CI Fix: Update terminal tests for headless default

Upgrade Notes

Breaking Changes

  • Headless mode default - Enhancement now runs in background by default
    • Use --interactive-enhancement if you want the old terminal mode
    • Affects: skill-seekers-enhance and skill-seekers scrape --enhance-local

New Behavior

  • Quality checks - Packaging now runs quality checks by default
    • May prompt for confirmation if warnings/errors found
    • Use --skip-quality-check to bypass (not recommended)

Recommendations

  • Try headless mode - Faster and more reliable than terminal mode
  • Review quality reports - Fix warnings before packaging
  • Update scripts - Add --skip-quality-check to automated packaging scripts if needed

Migration Guide

If you want the old terminal mode behavior:

# Old (v2.0.0): Default was terminal mode
skill-seekers-enhance output/react/

# New (v2.1.0): Use --interactive-enhancement
skill-seekers-enhance output/react/ --interactive-enhancement

If you want to skip quality checks:

# Add --skip-quality-check to package command
skill-seekers-package output/react/ --skip-quality-check

[2.0.0] - 2025-11-11

🎉 Major Release: PyPI Publication + Modern Python Packaging

Skill Seekers is now available on PyPI! Install with: pip install skill-seekers

This is a major milestone release featuring complete restructuring for modern Python packaging, comprehensive testing improvements, and publication to the Python Package Index.

🚀 Major Changes

PyPI Publication

  • Published to PyPI - https://pypi.org/project/skill-seekers/
  • Installation: pip install skill-seekers or uv tool install skill-seekers
  • No cloning required - Install globally or in virtual environments
  • Automatic dependency management - All dependencies handled by pip/uv

Modern Python Packaging

  • pyproject.toml-based configuration - Standard PEP 621 metadata
  • src/ layout structure - Best practice package organization
  • Entry point scripts - skill-seekers command available globally
  • Proper dependency groups - Separate dev, test, and MCP dependencies
  • Build backend - setuptools-based build with uv support

Unified CLI Interface

  • Single skill-seekers command - Git-style subcommands
  • Subcommands: scrape, github, pdf, unified, enhance, package, upload, estimate
  • Consistent interface - All tools accessible through one entry point
  • Help system - Comprehensive --help for all commands

Added

Testing Infrastructure

  • 379 passing tests (up from 299) - Comprehensive test coverage
  • 0 test failures - All tests passing successfully
  • Test suite improvements:
    • Fixed import paths for src/ layout
    • Updated CLI tests for unified entry points
    • Added package structure verification tests
    • Fixed MCP server import tests
    • Added pytest configuration in pyproject.toml

Documentation

  • Updated README.md - PyPI badges, reordered installation options
  • ROADMAP.md - Comprehensive roadmap with task-based approach
  • Installation guides - Simplified with PyPI as primary method
  • Testing documentation - How to run full test suite

Changed

Package Structure

  • Moved to src/ layout:
    • src/skill_seekers/ - Main package
    • src/skill_seekers/cli/ - CLI tools
    • src/skill_seekers/mcp/ - MCP server
  • Import paths updated - All imports use proper package structure
  • Entry points configured - All CLI tools available as commands

Import Fixes

  • Fixed merge_sources.py - Corrected conflict_detector import (.conflict_detector)
  • Fixed MCP server tests - Updated to use skill_seekers.mcp.server imports
  • Fixed test paths - All tests updated for src/ layout

Fixed

Critical Bugs

  • Import path errors - Fixed relative imports in CLI modules
  • MCP test isolation - Added proper MCP availability checks
  • Package installation - Resolved entry point conflicts
  • Dependency resolution - All dependencies properly specified

Test Improvements

  • 17 test fixes - Updated for modern package structure
  • MCP test guards - Proper skipif decorators for MCP tests
  • CLI test updates - Accept both exit codes 0 and 2 for help
  • Path validation - Tests verify correct package structure

Technical Details

Build System

  • Build backend: setuptools.build_meta
  • Build command: uv build
  • Publish command: uv publish
  • Distribution formats: wheel + source tarball

Dependencies

  • Core: requests, beautifulsoup4, PyGithub, mcp, httpx
  • PDF: PyMuPDF, Pillow, pytesseract
  • Dev: pytest, pytest-cov, pytest-anyio, mypy
  • MCP: mcp package for Claude Code integration

Migration Guide

For Users

Old way:

git clone https://github.com/yusufkaraaslan/Skill_Seekers.git
cd Skill_Seekers
pip install -r requirements.txt
python3 cli/doc_scraper.py --config configs/react.json

New way:

pip install skill-seekers
skill-seekers scrape --config configs/react.json

For Developers

  • Update imports: from cli.* → from skill_seekers.cli.*
  • Use pip install -e ".[dev]" for development
  • Run tests: python -m pytest
  • Entry points instead of direct script execution

Breaking Changes

  • CLI interface changed - Use skill-seekers command instead of python3 cli/...
  • Import paths changed - Package now at skill_seekers.* instead of cli.*
  • Installation method changed - PyPI recommended over git clone

Deprecations

  • Direct script execution - Still works but deprecated (use skill-seekers command)
  • Old import patterns - Legacy imports still work but will be removed in v3.0

Compatibility

  • Python 3.10+ required
  • Backward compatible - Old scripts still work with legacy CLI
  • Config files - No changes required
  • Output format - No changes to generated skills

[1.3.0] - 2025-10-26

Added - Refactoring & Performance Improvements

  • Async/Await Support for Parallel Scraping (2-3x performance boost)
    • --async flag to enable async mode
    • async def scrape_page_async() method using httpx.AsyncClient
    • async def scrape_all_async() method with asyncio.gather()
    • Connection pooling for better performance
    • asyncio.Semaphore for concurrency control
    • Comprehensive async testing (11 new tests)
    • Full documentation in ASYNC_SUPPORT.md
    • Performance: ~55 pages/sec vs ~18 pages/sec (sync)
    • Memory: 40 MB vs 120 MB (66% reduction)
  • Python Package Structure (Phase 0 Complete)
    • cli/__init__.py - CLI tools package with clean imports
    • skill_seeker_mcp/__init__.py - MCP server package (renamed from mcp/)
    • skill_seeker_mcp/tools/__init__.py - MCP tools subpackage
    • Proper package imports: from cli import constants
  • Centralized Configuration Module
    • cli/constants.py with 18 configuration constants
    • DEFAULT_ASYNC_MODE, DEFAULT_RATE_LIMIT, DEFAULT_MAX_PAGES
    • Enhancement limits, categorization scores, file limits
    • All magic numbers now centralized and configurable
  • Code Quality Improvements
    • Converted 71 print() statements to proper logging calls
    • Added type hints to all DocToSkillConverter methods
    • Fixed all mypy type checking issues
    • Installed types-requests for better type safety
  • Multi-variant llms.txt detection: downloads all 3 variants (full, standard, small)
  • Automatic .txt → .md file extension conversion
  • No content truncation: preserves complete documentation
  • detect_all() method for finding all llms.txt variants
  • get_proper_filename() for correct .md naming

Changed

  • _try_llms_txt() now downloads all available variants instead of just one
  • Reference files now contain complete content (no 2500 char limit)
  • Code samples now include full code (no 600 char limit)
  • Test count increased from 207 to 299 (92 new tests)
  • All print() statements replaced with logging (logger.info, logger.warning, logger.error)
  • Better IDE support with proper package structure
  • Code quality improved from 5.5/10 to 6.5/10

Fixed

  • File extension bug: llms.txt files now saved as .md
  • Content loss: 0% truncation (was 36%)
  • Test isolation issues in test_async_scraping.py (proper cleanup with try/finally)
  • Import issues: no more sys.path.insert() hacks needed
  • .gitignore: added test artifacts (.pytest_cache, .coverage, htmlcov, etc.)

1.2.0 - 2025-10-23

🚀 PDF Advanced Features Release

Major enhancement to PDF extraction capabilities with Priority 2 & 3 features.

Added

Priority 2: Support More PDF Types

  • OCR Support for Scanned PDFs

    • Automatic text extraction from scanned documents using Tesseract OCR
    • Fallback mechanism when page text < 50 characters
    • Integration with pytesseract and Pillow
    • Command: --ocr flag
    • New dependencies: Pillow==11.0.0, pytesseract==0.3.13
  • Password-Protected PDF Support

    • Handle encrypted PDFs with password authentication
    • Clear error messages for missing/wrong passwords
    • Secure password handling
    • Command: --password PASSWORD flag
  • Complex Table Extraction

    • Extract tables from PDFs using PyMuPDF's table detection
    • Capture table data as 2D arrays with metadata (bbox, row/col count)
    • Integration with skill references in markdown format
    • Command: --extract-tables flag

Priority 3: Performance Optimizations

  • Parallel Page Processing

    • 3x faster PDF extraction using ThreadPoolExecutor
    • Auto-detect CPU count or custom worker specification
    • Only activates for PDFs with > 5 pages
    • Commands: --parallel and --workers N flags
    • Benchmarks: 500-page PDF reduced from 4m 10s to 1m 15s
  • Intelligent Caching

    • In-memory cache for expensive operations (text extraction, code detection, quality scoring)
    • 50% faster on re-runs
    • Command: --no-cache to disable (enabled by default)

New Documentation

  • docs/PDF_ADVANCED_FEATURES.md (580 lines)
    • Complete usage guide for all advanced features
    • Installation instructions
    • Performance benchmarks showing 3x speedup
    • Best practices and troubleshooting
    • API reference with all parameters

Testing

  • New test file: tests/test_pdf_advanced_features.py (568 lines, 26 tests)
    • TestOCRSupport (5 tests)
    • TestPasswordProtection (4 tests)
    • TestTableExtraction (5 tests)
    • TestCaching (5 tests)
    • TestParallelProcessing (4 tests)
    • TestIntegration (3 tests)
  • Updated: tests/test_pdf_extractor.py (23 tests fixed and passing)
  • Total PDF tests: 49/49 PASSING ✅ (100% pass rate)

Changed

  • Enhanced cli/pdf_extractor_poc.py with all advanced features
  • Updated requirements.txt with new dependencies
  • Updated README.md with PDF advanced features usage
  • Updated docs/TESTING.md with new test counts (142 total tests)

Performance Improvements

  • 3.3x faster with parallel processing (8 workers)
  • 1.7x faster on re-runs with caching enabled
  • Support for unlimited page PDFs (no more 500-page limit)

Dependencies

  • Added Pillow==11.0.0 for image processing
  • Added pytesseract==0.3.13 for OCR support
  • Tesseract OCR engine (system package, optional)

1.1.0 - 2025-10-22

🌐 Documentation Scraping Enhancements

Major improvements to documentation scraping with unlimited pages, parallel processing, and new configs.

Added

Unlimited Scraping & Performance

  • Unlimited Page Scraping - Removed 500-page limit, now supports unlimited pages
  • Parallel Scraping Mode - Process multiple pages simultaneously for faster scraping
  • Dynamic Rate Limiting - Smart rate limit control to avoid server blocks
  • CLI Utilities - New helper scripts for common tasks

New Configurations

  • Ansible Core 2.19 - Complete Ansible documentation config
  • Claude Code - Documentation for this very tool!
  • Laravel 9.x - PHP framework documentation

Testing & Quality

  • Comprehensive test coverage for CLI utilities
  • Parallel scraping test suite
  • Virtual environment setup documentation
  • Thread-safety improvements

Fixed

  • Thread-safety issues in parallel scraping
  • CLI path references across all documentation
  • Flaky upload_skill tests
  • MCP server streaming subprocess implementation

Changed

  • All CLI examples now use cli/ directory prefix
  • Updated documentation structure
  • Enhanced error handling

1.0.0 - 2025-10-19

🎉 First Production Release

This is the first production-ready release of Skill Seekers with complete feature set, full test coverage, and comprehensive documentation.

Added

Smart Auto-Upload Feature

  • New upload_skill.py CLI tool for automatic API-based upload
  • Enhanced package_skill.py with --upload flag
  • Smart API key detection with graceful fallback
  • Cross-platform folder opening in utils.py
  • Helpful error messages instead of confusing errors

MCP Integration Enhancements

  • 9 MCP tools (added upload_skill tool)
  • mcp__skill-seeker__upload_skill - Upload .zip files to Claude automatically
  • Enhanced package_skill tool with smart auto-upload parameter
  • Updated all MCP documentation to reflect 9 tools

Documentation Improvements

  • Updated README with version badge (v1.0.0)
  • Enhanced upload guide with 3 upload methods
  • Updated MCP setup guide with all 9 tools
  • Comprehensive test documentation (14/14 tests)
  • All references to tool counts corrected

Fixed

  • Missing import os in mcp/server.py
  • package_skill.py exit code behavior (now exits 0 when API key missing)
  • Improved UX with helpful messages instead of errors

Changed

  • Test count badge updated (96 → 14 passing)
  • All documentation references updated to 9 tools

Testing

  • CLI Tests: 8/8 PASSED ✅
  • MCP Tests: 6/6 PASSED ✅
  • Total: 14/14 PASSED (100%)

0.4.0 - 2025-10-18

Added

Large Documentation Support (40K+ Pages)

  • Config splitting functionality for massive documentation sites
  • Router/hub skill generation for intelligent query routing
  • Checkpoint/resume feature for long scrapes
  • Parallel scraping support for faster processing
  • 4 split strategies: auto, category, router, size

New CLI Tools

  • split_config.py - Split large configs into focused sub-skills
  • generate_router.py - Generate router/hub skills
  • package_multi.py - Package multiple skills at once

New MCP Tools

  • split_config - Split large documentation via MCP
  • generate_router - Generate router skills via MCP

Documentation

  • New docs/LARGE_DOCUMENTATION.md guide
  • Example config: godot-large-example.json (40K pages)

Changed

  • MCP tool count: 6 → 8 tools
  • Updated documentation for large docs workflow

0.3.0 - 2025-10-15

Added

MCP Server Integration

  • Complete MCP server implementation (mcp/server.py)
  • 6 MCP tools for Claude Code integration:
    • list_configs
    • generate_config
    • validate_config
    • estimate_pages
    • scrape_docs
    • package_skill

Setup & Configuration

  • Automated setup script (setup_mcp.sh)
  • MCP configuration examples
  • Comprehensive MCP setup guide (docs/MCP_SETUP.md)
  • MCP testing guide (docs/TEST_MCP_IN_CLAUDE_CODE.md)

Testing

  • 31 comprehensive unit tests for MCP server
  • Integration tests via Claude Code MCP protocol
  • 100% test pass rate

Documentation

  • Complete MCP integration documentation
  • Natural language usage examples
  • Troubleshooting guides

Changed

  • Restructured project as monorepo with CLI and MCP server
  • Moved CLI tools to cli/ directory
  • Added MCP server to mcp/ directory

0.2.0 - 2025-10-10

Added

Testing & Quality

  • Comprehensive test suite with 71 tests
  • 100% test pass rate
  • Test coverage for all major features
  • Config validation tests

Optimization

  • Page count estimator (estimate_pages.py)
  • Framework config optimizations with start_urls
  • Better URL pattern coverage
  • Improved scraping efficiency

New Configs

  • Kubernetes documentation config
  • Tailwind CSS config
  • Astro framework config

Changed

  • Optimized all framework configs
  • Improved categorization accuracy
  • Enhanced error messages

0.1.0 - 2025-10-05

Added

Initial Release

  • Basic documentation scraper functionality
  • Manual skill creation
  • Framework configs (Godot, React, Vue, Django, FastAPI)
  • Smart categorization system
  • Code language detection
  • Pattern extraction
  • Local and API-based enhancement options
  • Basic packaging functionality

Core Features

  • BFS traversal for documentation scraping
  • CSS selector-based content extraction
  • Smart categorization with scoring
  • Code block detection and formatting
  • Caching system for scraped data
  • Interactive mode for config creation

Documentation

  • README with quick start guide
  • Basic usage documentation
  • Configuration file examples

Release Links

  • v1.2.0 - PDF Advanced Features
  • v1.1.0 - Documentation Scraping Enhancements
  • v1.0.0 - Production Release
  • v0.4.0 - Large Documentation Support
  • v0.3.0 - MCP Integration

Version History Summary

Version Date Highlights
1.2.0 2025-10-23 📄 PDF advanced features: OCR, passwords, tables, 3x faster
1.1.0 2025-10-22 🌐 Unlimited scraping, parallel mode, new configs (Ansible, Laravel)
1.0.0 2025-10-19 🚀 Production release, auto-upload, 9 MCP tools
0.4.0 2025-10-18 📚 Large docs support (40K+ pages)
0.3.0 2025-10-15 🔌 MCP integration with Claude Code
0.2.0 2025-10-10 🧪 Testing & optimization
0.1.0 2025-10-05 🎬 Initial release