🔖 Bump version to 4.0.7

- Add automatic update checking feature
- Fix component validation for pipx installations
- Update all version references across 35+ files
This commit is contained in:
NomenAK 2025-08-23 12:52:10 +02:00
parent 291b8a0c2b
commit 45bc5b8a98
27 changed files with 69 additions and 48 deletions

View File

@ -7,6 +7,27 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased]
## [4.0.7] - 2025-01-23
### Added
- Automatic update checking for PyPI and NPM packages
- `--no-update-check` flag to skip update checks
- `--auto-update` flag for automatic updates without prompting
- Environment variable `SUPERCLAUDE_AUTO_UPDATE` support
- Update notifications with colored banners showing available version
- Rate limiting to check updates once per 24 hours
- Smart installation method detection (pip/pipx/npm/yarn)
- Cache files for update check timestamps (~/.claude/.update_check and .npm_update_check)
### Fixed
- Component validation now correctly uses pipx-installed version instead of source code
### Technical
- Added `setup/utils/updater.py` for PyPI update checking logic
- Added `bin/checkUpdate.js` for NPM update checking logic
- Integrated update checks into main entry points (SuperClaude/__main__.py and bin/cli.js)
- Non-blocking update checks with 2-second timeout to avoid delays
### Changed
- **BREAKING**: Agent system restructured to 14 specialized agents
- **BREAKING**: Commands now use `/sc:` namespace to avoid conflicts with user custom commands

View File

@ -518,7 +518,7 @@ This code of conduct draws inspiration from several established community standa
**Last Updated**: December 2024 (SuperClaude Framework v4.0)
**Next Review**: June 2025 (Semi-annual review cycle)
**Version**: 4.0.6 (Updated for v4 community structure and governance)
**Version**: 4.0.7 (Updated for v4 community structure and governance)
**Review Schedule:**
- **Semi-Annual Reviews**: Policy effectiveness assessment and community feedback integration

View File

@ -27,7 +27,7 @@ SuperClaude Framework transforms Claude Code into a structured development platf
**Good Bug Report Example:**
```
**Environment:**
- SuperClaude: 4.0.6
- SuperClaude: 4.0.7
- OS: Ubuntu 22.04
- Claude Code: 1.5.2
- Python: 3.9.7

View File

@ -5,7 +5,7 @@
### **Transform Claude Code with 21 Commands, 14 Agents & 6 MCP Servers**
<p align="center">
<img src="https://img.shields.io/badge/version-4.0.6-blue?style=for-the-badge" alt="Version">
<img src="https://img.shields.io/badge/version-4.0.7-blue?style=for-the-badge" alt="Version">
<img src="https://img.shields.io/badge/Python-3.8+-green?style=for-the-badge" alt="Python">
<img src="https://img.shields.io/badge/Platform-Linux%20|%20macOS%20|%20Windows-orange?style=for-the-badge" alt="Platform">
</p>
@ -266,7 +266,7 @@ SuperClaude install --dry-run
```bash
# Verify SuperClaude version
python3 -m SuperClaude --version
# Expected: SuperClaude 4.0.6
# Expected: SuperClaude 4.0.7
# List installed components
SuperClaude install --list-components

View File

@ -6,7 +6,7 @@
<p align="center">
<img src="https://img.shields.io/badge/Framework-Context_Engineering-purple?style=for-the-badge" alt="Framework">
<img src="https://img.shields.io/badge/Version-4.0.6-blue?style=for-the-badge" alt="Version">
<img src="https://img.shields.io/badge/Version-4.0.7-blue?style=for-the-badge" alt="Version">
<img src="https://img.shields.io/badge/Time_to_Start-5_Minutes-green?style=for-the-badge" alt="Quick Start">
</p>
@ -486,7 +486,7 @@ Create custom workflows
</p>
<p align="center">
<sub>SuperClaude v4.0.6 - Context Engineering for Claude Code</sub>
<sub>SuperClaude v4.0.7 - Context Engineering for Claude Code</sub>
</p>
</div>

View File

@ -13,7 +13,7 @@ Test: /sc:brainstorm "test" should ask questions
### 2. Installation Verification
```bash
python3 -m SuperClaude --version # Should show 4.0.6
python3 -m SuperClaude --version # Should show 4.0.7
# If not working:
# For pipx users
@ -71,7 +71,7 @@ pip3 install SuperClaude
```
## Verification Checklist
- [ ] `python3 -m SuperClaude --version` returns 4.0.6
- [ ] `python3 -m SuperClaude --version` returns 4.0.7
- [ ] `/sc:brainstorm "test"` works in Claude Code
- [ ] `SuperClaude install --list-components` shows components

View File

@ -6,7 +6,7 @@ Quick fixes to advanced diagnostics for SuperClaude Framework issues.
**Installation Verification:**
```bash
python3 -m SuperClaude --version # Should show 4.0.6
python3 -m SuperClaude --version # Should show 4.0.7
SuperClaude install --list-components
```
@ -19,7 +19,7 @@ SuperClaude install --list-components
```
**Resolution Checklist:**
- [ ] Version commands work and show 4.0.6
- [ ] Version commands work and show 4.0.7
- [ ] `/sc:` commands respond in Claude Code
- [ ] MCP servers listed: `SuperClaude install --list-components | grep mcp`

View File

@ -67,7 +67,7 @@ SuperClaude provides behavioral context files that Claude Code reads to adopt sp
```bash
# Verify SuperClaude is working (primary method)
python3 -m SuperClaude --version
# Example output: SuperClaude 4.0.6
# Example output: SuperClaude 4.0.7
# Claude Code CLI version check
claude --version

View File

@ -5,7 +5,7 @@
### **Transform Claude Code into a Structured Development Platform**
<p align="center">
<img src="https://img.shields.io/badge/version-4.0.6-blue?style=for-the-badge" alt="Version">
<img src="https://img.shields.io/badge/version-4.0.7-blue?style=for-the-badge" alt="Version">
<img src="https://img.shields.io/badge/License-MIT-yellow.svg?style=for-the-badge" alt="License">
<img src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=for-the-badge" alt="PRs Welcome">
</p>

View File

@ -723,7 +723,7 @@ For organizations requiring dedicated security support:
**Last Updated**: December 2024 (SuperClaude Framework v4.0)
**Next Review**: March 2025 (Quarterly review cycle)
**Version**: 4.0.6 (Updated for v4 architectural changes)
**Version**: 4.0.7 (Updated for v4 architectural changes)
**Review Schedule:**
- **Quarterly Reviews**: Security policy accuracy and completeness assessment

View File

@ -11,7 +11,7 @@ Usage:
SuperClaude --help
"""
__version__ = "4.0.6"
__version__ = "4.0.7"
__author__ = "NomenAK, Mithun Gowda B"
__email__ = "anton.knoery@gmail.com"
__license__ = "MIT"

View File

@ -98,7 +98,7 @@ Examples:
parents=[global_parser]
)
parser.add_argument("--version", action="version", version="SuperClaude 4.0.6")
parser.add_argument("--version", action="version", version="SuperClaude 4.0.7")
subparsers = parser.add_subparsers(
dest="operation",
@ -209,7 +209,7 @@ def main() -> int:
from setup.utils.updater import check_for_updates
# Check for updates in the background
updated = check_for_updates(
current_version="4.0.6",
current_version="4.0.7",
auto_update=getattr(args, 'auto_update', False)
)
# If updated, suggest restart
@ -226,7 +226,7 @@ def main() -> int:
# No operation provided? Show help manually unless in quiet mode
if not args.operation:
if not args.quiet:
display_header("SuperClaude Framework v4.0.6", "Unified CLI for all operations")
display_header("SuperClaude Framework v4.0.7", "Unified CLI for all operations")
print(f"{Colors.CYAN}Available operations:{Colors.RESET}")
for op, desc in get_operation_modules().items():
print(f" {op:<12} {desc}")

View File

@ -1 +1 @@
4.0.6
4.0.7

View File

@ -1,6 +1,6 @@
{
"name": "@bifrost_inc/superclaude",
"version": "4.0.6",
"version": "4.0.7",
"description": "SuperClaude Framework NPM wrapper - Official Node.js wrapper for the Python SuperClaude package. Enhances Claude Code with specialized commands and AI development tools.",
"scripts": {
"postinstall": "node ./bin/install.js",

View File

@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project]
name = "SuperClaude"
version = "4.0.6"
version = "4.0.7"
authors = [
{name = "NomenAK", email = "anton.knoery@gmail.com"},
{name = "Mithun Gowda B", email = "mithungowda.b7411@gmail.com"}

View File

@ -8,7 +8,7 @@ from pathlib import Path
try:
__version__ = (Path(__file__).parent.parent / "VERSION").read_text().strip()
except Exception:
__version__ = "4.0.6" # Fallback
__version__ = "4.0.7" # Fallback
__author__ = "NomenAK"

View File

@ -4,7 +4,7 @@ SuperClaude CLI Base Module
Base class for all CLI operations providing common functionality
"""
__version__ = "4.0.6"
__version__ = "4.0.7"
def get_command_info():

View File

@ -234,7 +234,7 @@ def display_backup_list(backups: List[Dict[str, Any]]) -> None:
def create_backup_metadata(install_dir: Path) -> Dict[str, Any]:
"""Create metadata for the backup"""
metadata = {
"backup_version": "4.0.6",
"backup_version": "4.0.7",
"created": datetime.now().isoformat(),
"install_dir": str(install_dir),
"components": {},

View File

@ -405,7 +405,7 @@ def run(args: argparse.Namespace) -> int:
# Display header
if not args.quiet:
display_header(
"SuperClaude Update v4.0.6",
"SuperClaude Update v4.0.7",
"Updating SuperClaude framework components"
)

View File

@ -19,7 +19,7 @@ class AgentsComponent(Component):
"""Get component metadata"""
return {
"name": "agents",
"version": "4.0.6",
"version": "4.0.7",
"description": "14 specialized AI agents with domain expertise and intelligent routing",
"category": "agents"
}
@ -29,7 +29,7 @@ class AgentsComponent(Component):
return {
"components": {
"agents": {
"version": "4.0.6",
"version": "4.0.7",
"installed": True,
"agents_count": len(self.component_files),
"install_directory": str(self.install_component_subdir)
@ -63,7 +63,7 @@ class AgentsComponent(Component):
# Add component registration
self.settings_manager.add_component_registration("agents", {
"version": "4.0.6",
"version": "4.0.7",
"category": "agents",
"agents_count": len(self.component_files),
"agents_list": self.component_files

View File

@ -18,7 +18,7 @@ class CommandsComponent(Component):
"""Get component metadata"""
return {
"name": "commands",
"version": "4.0.6",
"version": "4.0.7",
"description": "SuperClaude slash command definitions",
"category": "commands"
}
@ -28,14 +28,14 @@ class CommandsComponent(Component):
return {
"components": {
"commands": {
"version": "4.0.6",
"version": "4.0.7",
"installed": True,
"files_count": len(self.component_files)
}
},
"commands": {
"enabled": True,
"version": "4.0.6",
"version": "4.0.7",
"auto_update": False
}
}
@ -58,7 +58,7 @@ class CommandsComponent(Component):
# Add component registration to metadata
self.settings_manager.add_component_registration("commands", {
"version": "4.0.6",
"version": "4.0.7",
"category": "commands",
"files_count": len(self.component_files)
})

View File

@ -20,7 +20,7 @@ class CoreComponent(Component):
"""Get component metadata"""
return {
"name": "core",
"version": "4.0.6",
"version": "4.0.7",
"description": "SuperClaude framework documentation and core files",
"category": "core"
}
@ -29,7 +29,7 @@ class CoreComponent(Component):
"""Get metadata modifications for SuperClaude"""
return {
"framework": {
"version": "4.0.6",
"version": "4.0.7",
"name": "SuperClaude",
"description": "AI-enhanced development framework for Claude Code",
"installation_type": "global",
@ -37,7 +37,7 @@ class CoreComponent(Component):
},
"superclaude": {
"enabled": True,
"version": "4.0.6",
"version": "4.0.7",
"profile": "default",
"auto_update": False
}
@ -58,7 +58,7 @@ class CoreComponent(Component):
# Add component registration to metadata
self.settings_manager.add_component_registration("core", {
"version": "4.0.6",
"version": "4.0.7",
"category": "core",
"files_count": len(self.component_files)
})

View File

@ -102,7 +102,7 @@ class MCPComponent(Component):
"""Get component metadata"""
return {
"name": "mcp",
"version": "4.0.6",
"version": "4.0.7",
"description": "MCP server configuration management via .claude.json",
"category": "integration"
}
@ -348,7 +348,7 @@ class MCPComponent(Component):
metadata_mods = {
"components": {
"mcp": {
"version": "4.0.6",
"version": "4.0.7",
"installed": True,
"servers_configured": len(self.selected_servers),
"configured_servers": self.selected_servers

View File

@ -34,7 +34,7 @@ class MCPDocsComponent(Component):
"""Get component metadata"""
return {
"name": "mcp_docs",
"version": "4.0.6",
"version": "4.0.7",
"description": "MCP server documentation and usage guides",
"category": "documentation"
}
@ -135,7 +135,7 @@ class MCPDocsComponent(Component):
metadata_mods = {
"components": {
"mcp_docs": {
"version": "4.0.6",
"version": "4.0.7",
"installed": True,
"files_count": len(self.component_files),
"servers_documented": self.selected_servers

View File

@ -20,7 +20,7 @@ class ModesComponent(Component):
"""Get component metadata"""
return {
"name": "modes",
"version": "4.0.6",
"version": "4.0.7",
"description": "SuperClaude behavioral modes (Brainstorming, Introspection, Task Management, Token Efficiency)",
"category": "modes"
}
@ -69,7 +69,7 @@ class ModesComponent(Component):
metadata_mods = {
"components": {
"modes": {
"version": "4.0.6",
"version": "4.0.7",
"installed": True,
"files_count": len(self.component_files)
}

View File

@ -2,7 +2,7 @@
"components": {
"core": {
"name": "core",
"version": "4.0.6",
"version": "4.0.7",
"description": "SuperClaude framework documentation and core files",
"category": "core",
"dependencies": [],
@ -11,7 +11,7 @@
},
"commands": {
"name": "commands",
"version": "4.0.6",
"version": "4.0.7",
"description": "SuperClaude slash command definitions",
"category": "commands",
"dependencies": ["core"],
@ -20,7 +20,7 @@
},
"mcp": {
"name": "mcp",
"version": "4.0.6",
"version": "4.0.7",
"description": "MCP server configuration management via .claude.json",
"category": "integration",
"dependencies": ["core"],
@ -29,7 +29,7 @@
},
"modes": {
"name": "modes",
"version": "4.0.6",
"version": "4.0.7",
"description": "SuperClaude behavioral modes (Brainstorming, Introspection, Task Management, Token Efficiency)",
"category": "modes",
"dependencies": ["core"],
@ -38,7 +38,7 @@
},
"mcp_docs": {
"name": "mcp_docs",
"version": "4.0.6",
"version": "4.0.7",
"description": "MCP server documentation and usage guides",
"category": "documentation",
"dependencies": ["core"],
@ -47,7 +47,7 @@
},
"agents": {
"name": "agents",
"version": "4.0.6",
"version": "4.0.7",
"description": "14 specialized AI agents with domain expertise and intelligent routing",
"category": "agents",
"dependencies": ["core"],

View File

@ -295,7 +295,7 @@ class UpdateChecker:
return False
def check_for_updates(current_version: str = "4.0.6", **kwargs) -> bool:
def check_for_updates(current_version: str = "4.0.7", **kwargs) -> bool:
"""
Convenience function to check for updates