# This is a controlled Python script (.dspy file) that will be executed by the web framework # It provides the API endpoint for /hermes-web-cli/sessions (POST to create) import json import os from hermes_web_cli.init import create_session def main(): """Main function to handle the create session API request.""" try: # Get request method request_method = os.environ.get('REQUEST_METHOD', 'GET') if request_method == 'POST': # Read POST data from stdin content_length = int(os.environ.get('CONTENT_LENGTH', 0)) if content_length > 0: post_data = json.loads(os.read(0, content_length).decode('utf-8')) service_id = post_data.get('service_id') initial_message = post_data.get('initial_message') if not service_id or not initial_message: return { "status": "error", "message": "service_id and initial_message are required", "data": None } # Create session session_id = create_session(service_id, initial_message) return { "status": "success", "data": { "session_id": session_id, "service_id": service_id } } else: return { "status": "error", "message": "No POST data provided", "data": None } else: return { "status": "error", "message": "Method not allowed", "data": None } except Exception as e: return { "status": "error", "message": str(e), "data": None } # Execute and return JSON response result = main() print(json.dumps(result, ensure_ascii=False))