Dieser Commit ist enthalten in:
Claude Project Manager
2025-07-08 13:13:46 +02:00
Ursprung d1667f9e0d
Commit 5f32daf3a4
15 geänderte Dateien mit 1139 neuen und 136 gelöschten Zeilen

Datei anzeigen

@ -4,6 +4,7 @@ from typing import Dict, List, Optional, Any
from dataclasses import dataclass
from datetime import datetime
import logging
from pathlib import Path
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
@ -15,6 +16,30 @@ class GiteaConfig:
api_version: str = "v1"
username: str = "StuXn3t"
def __post_init__(self):
"""Load settings from config file if available"""
self.load_from_settings()
def load_from_settings(self):
"""Load Gitea settings from UI settings file"""
try:
settings_file = Path.home() / ".claude_project_manager" / "ui_settings.json"
if settings_file.exists():
with open(settings_file, 'r') as f:
settings = json.load(f)
# Override with saved settings if available
if "gitea_server_url" in settings and settings["gitea_server_url"]:
self.base_url = settings["gitea_server_url"]
if "gitea_api_token" in settings and settings["gitea_api_token"]:
self.api_token = settings["gitea_api_token"]
if "gitea_username" in settings and settings["gitea_username"]:
self.username = settings["gitea_username"]
logger.info(f"Loaded Gitea settings from config file")
except Exception as e:
logger.warning(f"Could not load Gitea settings from config: {e}")
@property
def api_url(self) -> str:
return f"{self.base_url}/api/{self.api_version}"
@ -204,4 +229,10 @@ class GiteaClient:
"sha": sha,
"branch": branch
}
return self._request("DELETE", f"repos/{owner}/{repo}/contents/{filepath}", json=data)
return self._request("DELETE", f"repos/{owner}/{repo}/contents/{filepath}", json=data)
# Global config instance
gitea_config = GiteaConfig()
# Default client instance
client = GiteaClient(gitea_config)