Spaces:
Sleeping
Sleeping
| #!/usr/bin/env python3 | |
| # -*- coding: utf-8 -*- | |
| """ | |
| Code Review Agent - Main Entry Point | |
| This module serves as the entry point for the Code Review Agent application. | |
| It initializes the Gradio interface and starts the web server. | |
| """ | |
| import os | |
| import sys | |
| import logging | |
| from dotenv import load_dotenv | |
| # Add the project root to the Python path | |
| sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))) | |
| # Import application modules | |
| from src.ui.gradio_app import create_gradio_app | |
| from src.core.agent_manager import AgentManager | |
| # Configure logging | |
| # Create logs directory if it doesn't exist | |
| logs_dir = os.path.join(os.path.dirname(__file__), '..', 'logs') | |
| os.makedirs(logs_dir, exist_ok=True) | |
| logging.basicConfig( | |
| level=logging.INFO, | |
| format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', | |
| handlers=[ | |
| logging.StreamHandler(), | |
| logging.FileHandler(os.path.join(logs_dir, 'app.log'), mode='a') | |
| ] | |
| ) | |
| logger = logging.getLogger(__name__) | |
| def main(): | |
| """Main function to start the Code Review Agent application.""" | |
| # Load environment variables | |
| load_dotenv() | |
| # Create logs directory if it doesn't exist | |
| logs_dir = os.path.join(os.path.dirname(__file__), '..', 'logs') | |
| os.makedirs(logs_dir, exist_ok=True) | |
| # Initialize the agent manager | |
| agent_manager = AgentManager() | |
| # Create and launch the Gradio app | |
| app = create_gradio_app(agent_manager) | |
| # Start the Gradio server | |
| app.launch(server_name="0.0.0.0", server_port=7860) | |
| if __name__ == "__main__": | |
| try: | |
| logger.info("Starting Code Review Agent application") | |
| main() | |
| except Exception as e: | |
| logger.exception(f"Error starting application: {e}") | |
| sys.exit(1) |