Skip to content

Commit dc6b82f

Browse files
chore: Bump version to 2.7.1 for hotfix release
Version Bump: - pyproject.toml: 2.8.0-dev → 2.7.1 - src/skill_seekers/__init__.py: 2.8.0-dev → 2.7.1 - src/skill_seekers/cli/__init__.py: 2.8.0-dev → 2.7.1 - src/skill_seekers/mcp/__init__.py: 2.8.0-dev → 2.7.1 - src/skill_seekers/mcp/tools/__init__.py: 2.8.0-dev → 2.7.1 CHANGELOG: - Added v2.7.1 entry documenting critical config download bug fix - Root cause, solution, files fixed, impact, and testing documented This hotfix resolves the critical 404 error bug when downloading configs from the skillseekersweb.com API. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 86a0d53 commit dc6b82f

File tree

7 files changed

+74
-5
lines changed

7 files changed

+74
-5
lines changed

CHANGELOG.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,26 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1717

1818
---
1919

20+
## [2.7.1] - 2026-01-18
21+
22+
### 🚨 Critical Bug Fix - Config Download 404 Errors
23+
24+
This **hotfix release** resolves a critical bug causing 404 errors when downloading configs from the API.
25+
26+
### Fixed
27+
28+
- **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
29+
- **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)
30+
- **Solution**: Changed to use `config_info.get("download_url")` from API response in both MCP server implementations
31+
- **Files Fixed**:
32+
- `src/skill_seekers/mcp/tools/source_tools.py` (FastMCP server)
33+
- `src/skill_seekers/mcp/server_legacy.py` (Legacy server)
34+
- **Impact**: Fixes all config downloads from skillseekersweb.com API and private Git repositories
35+
- **Reported By**: User testing `skill-seekers install --config godot --unlimited`
36+
- **Testing**: All 15 source tools tests pass, all 8 fetch_config tests pass
37+
38+
---
39+
2040
## [2.7.0] - 2026-01-18
2141

2242
### 🔐 Smart Rate Limit Management & Multi-Token Configuration

configs/godot.json

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
{
2+
"name": "godot",
3+
"description": "Complete Godot Engine knowledge base combining official documentation and source code analysis",
4+
"merge_mode": "claude-enhanced",
5+
"sources": [
6+
{
7+
"type": "documentation",
8+
"base_url": "https://docs.godotengine.org/en/stable/",
9+
"extract_api": true,
10+
"selectors": {
11+
"main_content": "div[role='main']",
12+
"title": "title",
13+
"code_blocks": "pre"
14+
},
15+
"url_patterns": {
16+
"include": [],
17+
"exclude": ["/search.html", "/_static/", "/_images/"]
18+
},
19+
"categories": {
20+
"getting_started": ["introduction", "getting_started", "step_by_step"],
21+
"scripting": ["scripting", "gdscript", "c_sharp"],
22+
"2d": ["2d", "canvas", "sprite", "animation"],
23+
"3d": ["3d", "spatial", "mesh", "shader"],
24+
"physics": ["physics", "collision", "rigidbody"],
25+
"api": ["api", "class", "reference", "method"]
26+
},
27+
"rate_limit": 0.5,
28+
"max_pages": 500
29+
},
30+
{
31+
"type": "github",
32+
"repo": "godotengine/godot",
33+
"enable_codebase_analysis": true,
34+
"code_analysis_depth": "deep",
35+
"fetch_issues": true,
36+
"max_issues": 100,
37+
"fetch_changelog": true,
38+
"fetch_releases": true,
39+
"file_patterns": [
40+
"core/**/*.h",
41+
"core/**/*.cpp",
42+
"scene/**/*.h",
43+
"scene/**/*.cpp",
44+
"servers/**/*.h",
45+
"servers/**/*.cpp"
46+
]
47+
}
48+
]
49+
}

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "skill-seekers"
7-
version = "2.8.0-dev"
7+
version = "2.7.1"
88
description = "Convert documentation websites, GitHub repositories, and PDFs into Claude AI skills"
99
readme = "README.md"
1010
requires-python = ">=3.10"

src/skill_seekers/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
documentation from various sources into uploadable Claude AI skills.
66
"""
77

8-
__version__ = "2.8.0-dev"
8+
__version__ = "2.7.1"
99
__author__ = "Yusuf Karaaslan"
1010
__license__ = "MIT"
1111

src/skill_seekers/cli/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
open_folder = None
2929
read_reference_files = None
3030

31-
__version__ = "2.8.0-dev"
31+
__version__ = "2.7.1"
3232

3333
__all__ = [
3434
"LlmsTxtDetector",

src/skill_seekers/mcp/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,6 @@
2828
in ~/.config/claude-code/mcp.json
2929
"""
3030

31-
__version__ = "2.8.0-dev"
31+
__version__ = "2.7.1"
3232

3333
__all__ = ["agent_detector"]

src/skill_seekers/mcp/tools/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
- source_tools: Config source management (fetch, submit, add/remove sources)
1212
"""
1313

14-
__version__ = "2.8.0-dev"
14+
__version__ = "2.7.1"
1515

1616
from .config_tools import (
1717
generate_config as generate_config_impl,

0 commit comments

Comments
 (0)