Folder support, Custom theme support, Boiler Plate Code support

This commit is contained in:
Alexander R.
2026-07-29 00:51:54 +00:00
parent 0559f7549a
commit 4aa62722c6
108 changed files with 3020 additions and 152 deletions
+24 -6
View File
@@ -21,10 +21,17 @@ class MentorClient:
self.config = config
async def get_guidance_async(
self, challenge: object, user_code: str, user_question: str = ""
self,
challenge: object,
user_code: str = "",
user_question: str = "",
files: Optional[Dict[str, str]] = None,
active_file: Optional[str] = None,
) -> Dict[str, Any]:
"""Fetch mentor guidance asynchronously from the configured LLM endpoint."""
prompt = get_mentor_prompt(challenge, user_code, user_question=user_question)
prompt = get_mentor_prompt(
challenge, user_code, user_question=user_question, files=files, active_file=active_file
)
endpoint = get_chat_completions_url(self.config.llm_base_url)
user_content = (
@@ -92,7 +99,12 @@ class MentorClient:
}
def get_guidance(
self, challenge: object, user_code: str, user_question: str = ""
self,
challenge: object,
user_code: str = "",
user_question: str = "",
files: Optional[Dict[str, str]] = None,
active_file: Optional[str] = None,
) -> Dict[str, Any]:
"""Synchronous wrapper for fetching mentor guidance."""
import asyncio
@@ -103,15 +115,21 @@ class MentorClient:
import nest_asyncio
nest_asyncio.apply()
return loop.run_until_complete(
self.get_guidance_async(challenge, user_code, user_question=user_question)
self.get_guidance_async(
challenge, user_code, user_question=user_question, files=files, active_file=active_file
)
)
else:
return asyncio.run(
self.get_guidance_async(challenge, user_code, user_question=user_question)
self.get_guidance_async(
challenge, user_code, user_question=user_question, files=files, active_file=active_file
)
)
except Exception:
return asyncio.run(
self.get_guidance_async(challenge, user_code, user_question=user_question)
self.get_guidance_async(
challenge, user_code, user_question=user_question, files=files, active_file=active_file
)
)