Spaces:
Sleeping
Sleeping
Commit History
-
Add guest try-without-account flow for MuscleGrowthAI.
Kennedy Johnson +1: CursorPort LaunchPad-style disposable guest sessions so visitors can explore advisors without signup, using EmailStr-safe @guests.musclegrowth.ai addresses. Co-authored-by: Cursor <cursoragent@cursor.com>82ccb3f
-
Fix advisor panel to use conversation context for follow-up answers.
Kennedy Johnson +1: CursorSkip orchestrator clarification for continuing threads and weight replies after protein questions; hydrate sessions from MongoDB on cold starts; instruct personas to calculate protein targets from chat history. Co-authored-by: Cursor <cursoragent@cursor.com>838be72 -
Complete Cybersecurity -> MuscleGrowthAI theme swap and fix Profile
NeonClary +1: CursorRetheme the surfaces the config swap couldn't reach and fix the broken Profile flow so the panel is identical to the base app except for the fitness theme. Config-driven wiring: - Add app.logo_icon to backend AppConfig; use it in AppHeader/Login/Signup. - Read app.footer_text (author line) in CopyrightNotice; drop the Neon.ai brand + patents link when a panel supplies its own footer text. Frontend theme content (cyber/PhD -> fitness): - User Guide, ProfileWalkthrough labels, ClearDataModal descriptions. - Canvas subsystem: seed data/insights/presets, Training Roadmap + Fitness Resources widgets, Documents templates, critic widgets and sample reviews, welcome tour, onboarding tour defaults. Backend prompts: - Neutralize academic "student/dissertation" framing in the live orchestrator document prompts and reference-detection regexes. Profile fixes: - Render ProfileWalkthrough/AccountModal/ClearDataModal in ChatPage. - Pass correct avatarOptions/currentAvatarId props to UserAv…7a97213 -
Serve the React SPA at / instead of the backend JSON banner (move health banner to /api/health)
NeonClary +1: CursorCo-authored-by: Cursor <cursoragent@cursor.com>b200cd6
-
Wire FEAT auth, bootstrap, vLLM-with-Neon-pile, profile-sync, conversation summary, and avatar/UserUpdate model into upstream/dev base
NeonClary +1: CursorCo-authored-by: Cursor <cursoragent@cursor.com>923dda1 -
Adopt FEAT cybersecurity branding, CSS, Canvas/Chat/Sidebar UI, HF Spaces deploy infra, SQLite shim wiring, last-week's advisor cap + thinking-indicator fixes
NeonClary +1: CursorCo-authored-by: Cursor <cursoragent@cursor.com>20fa64f -
Add cybersecurity overlay: configs, cyber personas, SQLite shim, onboarding/profile, Canvas widgets, deployment infra
NeonClary +1: CursorCo-authored-by: Cursor <cursoragent@cursor.com>c6537a8
-
Add versioning automation (#47)
Daniel McKnightUnverified signature* Cursor-implemented solution to the open issue * Refactor to remove `setup.py` added just for checking version * Clean up Cursor-generated tests * Refactor module patching to prevent changing sys.modules for other tests * Work with Cursor to refactor version test cases * Refactor test config patching by Cursor * Remove extra `setuptools` installation from Release GHA92ac338
-
Clear User Data (#58)
NeonCharlie-24 +2: rventuri2, Claude Opus 4.7 (1M context)
Unverified signature* added bulk delete endpoint for clearing all chat sessions. * Add ConfirmDialog component and integrate it into Sidebar and CanvasPage for chat and canvas clearing confirmations. Update styles for new buttons and dialog. Enhance user experience with clear action prompts. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * added unit tests for all chat_sessions routes. * added @param/@return doctrings to all routes in chat_sessions.py. * extracted helper function in test_chat_sessions.py to make code less redundant. * Fixed button height and width * added back imports lost during rebase. --------- Co-authored-by: Neon:ryan <ryan@neon.ai> Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>e0d7a62
-
Feat/improve clarification check (#57)
NeonCharlie-24Unverified signature* implemented needs_clarification_improved to use LLM inference to determine if clarification is needed. * added unit tests for needs_clarification_improved. * minor clean up of docstring and potential await error.6baf4bd -
Support Voice Interaction (#32)
Daniel McKnight +1: NeonClaryUnverified signature* feat: add speech-to-text and text-to-speech functionality Add /api/transcribe (STT via Whisper proxy), /api/tts (Google Translate TTS), and /api/voice status routes. Add microphone button to EnhancedChatInput, VoiceStatusContext provider, and VoiceToast component. Made-with: Cursor * Clean up implementation * Refactor to simplify STT/TTS endpoint handling * Remove unused VoiceToast.js * Refactor `voice_router` API to remove `/api` prefix for consistency with other endpoints * Pin added `markdown` dependency version * Remove unused VoiceStatusContext file * Refactor `LOG` to `logger` for consistency per review * Remove unused variables * Add docstrings per review comment * Add actual voice service status checks with test coverage * Cursor refactored test patching (original implementation also by Cursor) * Add comment explaining 44-byte minimum segment length --------- Co-authored-by: NeonClary <askclary@gmail.com>39dbe10
-
Fix/dup first message (#44)
NeonCharlie-24Unverified signature* fixed duplicate user message in chat history on first message sent. * removed unused chat-sequential endpoint and updated references in docs to chat-stream. * moved user message db storage from frontend to backend. * small frontend update to refresh sidebar after message exchange.b4a09bf
-
Feat/advisor tools (#38)
NeonCharlie-24Unverified signature* added /scraper directory from Clary branch for inspection. * Added Gemini function-calling MVP with course search tool. * Added Rate My Professor tool and multi-tool dispatcher. * Added tool registry with auto-discovery and tool filtering. * fixed test warning in RMP tool test. * added structured tool-call return result and get_tool_response method to orchestrator. * wired tool calling into orchestrator chat routes. * cleaned up standalone test routes and did minor refactoring. * fixed context manager dropping non-allowlist persona and tool responses. * pinned backend requirements to <pkg>~=M.m from latest container build. * removed license notices and cu_info_scraper. * moved the tool-calling loop into LLMClient with provider specific overrides implemented in each respective client class. * refactored tools config to support per tool settings. * added rmp school_id lookup script for CLI usage. * added dark mode awareness to advisor color fallback which is used by the o…68ee171
-
Feat/account management (#41)
NeonCharlie-24 +1: Daniel McKnightUnverified signature* added unit tests for account management endpoints. * added account management endpoints (password change, profile update, account deletion). * added param/return docstrings to all auth endpoints. * added Pydantic models for logout, change_password, and delete_account endpoints. * improved error handling for account management endpoints. * simplified unit test imports. * update min password verification length to 8 chars to match front-end Signup.js expectation. * updated delete endpoint to include deleting PhD Canvases. * updated delete_account docstring to note PhD Canvases also deleted. * fix incorrect naming case Co-authored-by: Daniel McKnight <34697904+NeonDaniel@users.noreply.github.com> * fix UpdateProfileRequest name references. * added model validators to ChangePasswordRequest and UpdateProfileRequest. --------- Co-authored-by: Daniel McKnight <34697904+NeonDaniel@users.noreply.github.com>b28bbf0
-
Feat/vllm endpoints (#36)
NeonCharlie-24Unverified signature* added initial tests for vllm client class. * added the ImprovedVllmClient class. * added vLLM option to config, bootstrap, and api routes. * added vLLM option to front-end provider dropdown. * added api key to docker-compose file and removed it from the yaml config files. * added error handling and design decision comments. * removed example vllm client file. * added model re-discovery on request failure. * convert vLLM to a single client and format persona roles to be vLLM acceptable names (system/user/assistant). * moved _clean_responses into LLMClient base class to eliminate duplication. * changed vLLM API label color to red and also set collapsed button color from grey to the respective providers color.be70bd4 -
Stream LLM Responses (#18)
Daniel McKnight +1: NeonClaryUnverified signature* feat: add SSE streaming endpoint for faster response display Add /chat-stream SSE endpoint that sends advisor responses incrementally as they complete. Rewrite ChatPage handleSendMessage to consume SSE events. Add synthesize_responses method to orchestrator for aggregate mode support. Made-with: Cursor * Clean up changes to reduce diff and clean up unused imports * Replace removed comments for code clarity * Remove vestigial synthesized response handling * Remove invalid kwarg * Implement Cursor-generated fix to parallel response generation * Undo `json` import name override * Clean up unused params * Refactor repeated message handling to match existing implementation * Refactor to return JSON objects instead of specifically-formatted plaintext * Remove trailing newline to reduce PR diff * Update `chat_sequential_enhanced` docstring to be consistent with streaming response docstring * Address review comments * Remove unused `active_advisors` handling to simplify adviso…0c40eb4
-
Refactor chat UI layout (#19)
Daniel McKnight +1: NeonClaryUnverified signature* feat: add advisor carousel, avatar images in messages, visual improvements Add AdvisorCarousel for welcome state, inline avatar display in MessageBubble, LemonSliceAvatar component, AgentStatusDropdown, and wider floating input area with sidebar-aware positioning. Made-with: Cursor * Resolve default value bug in `AdvisorCarousel.js` * Remove unused `AgentDrobdownStatus.js` * Remove unrelated `LemonSliceAvatar.js` * Remove LemonSlice references * Implement Cursor fix to carousel UI * Add check to resolve error observed in test deployment * Replace `all` with `and` checks per review --------- Co-authored-by: NeonClary <askclary@gmail.com>33cdede
-
Improve backend logic around user input parsing (#12)
Daniel McKnight +1: NeonClaryUnverified signature* fix: improve canvas confidence scores and insight extraction Switch insight extraction from fragile JSON parsing to plain-text numbered list format. Add content-driven confidence variability: LLM-extracted insights score 0.75-0.90 based on length, rule-based insights score 0.55-0.70 based on pattern match count. Made-with: Cursor * fix: improve orchestrator clarification and LLM response handling Rewrite _needs_clarification to check keywords before length, preventing false triggers. Add generate_contextual_clarification using LLM for tailored follow-up questions. Wire clarification check into /api/chat. Filter Gemini 2.5 thinking-mode parts from responses. Clean up _clean_response in both Gemini and Ollama clients to preserve Markdown. Made-with: Cursor * Address issues noted in review * Revert JSON prompting and clean up imports * Refactor input sanitization to log malformed input requests --------- Co-authored-by: NeonClary <askclary@gmail.com>98d14cc
-
Add configuration support (#3)
Daniel McKnight +1: NeonClaryUnverified signature* feat: make app fully configurable via config.yaml and /api/config endpoint Backend: - Add Pydantic-validated config.yaml with all app settings, personas, LLM, auth, MongoDB, RAG, and orchestrator configuration - Expose public (non-secret) config via GET /api/config endpoint - Refactor auth, database, bootstrap, orchestrator, RAG manager, embedding client, Gemini client, canvas analysis, and chat summary to read from config instead of hardcoded values - Persona definitions (names, prompts, temperatures) driven by config.yaml with shared base_prompt + per-persona persona_prompt - Environment variable fallbacks preserved for secrets (API keys, JWT, MongoDB) Frontend: - Add AppConfigContext that fetches /api/config and provides advisors, colors, icons, and all UI text to every component - Update HomePage, ChatPage, CanvasPage, Login, Signup, Sidebar, AdvisorCard, MessageBubble, ThinkingIndicator, SuggestionsPanel, AdvisorStatusDropdown, and chat inputs to consume config c…2ff64f6
-
update session management
Girish Jeswani396b902
-
bug fix
Girish Jeswanie0687fa -
update canvas
Girish Jeswaniff0136e
-
add canvas backend
Girish Jeswani63da3a1 -
add new imports
Girish Jeswanic3523ce
-
fix document upload to new chat
Girish Jeswania85d17b
-
bug fixes
Girish Jeswani74b0b4e -
add document auth
Girish Jeswanif252547
-
add chat specific context
Girish Jeswani1719e8e -
add new personas
Girish Jeswanic38ccca
-
fix export bug
Girish Jeswani1c5f1a2
-
add new routes
Girish Jeswanib6b3f7f -
add imports
Girish Jeswanic99fd29 -
update summary
Girish Jeswani946b29c -
Routes refactoring
Sohan Kshirsagar578da72