-
Notifications
You must be signed in to change notification settings - Fork 19
UI Clean Up, Support Free Models & Addition of Developer Tools #2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
debv
wants to merge
23
commits into
liminalbardo:main
Choose a base branch
from
debv:fix/dependencies-and-free-models
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Added backroomsbench.py (674 lines) from upstream - Updated command handlers to match upstream's better implementation: - !search: Now adds results to conversation context (all AIs can see) - !prompt: Changed to list-based additions (appends, doesn't replace) - !temperature: Now adds subtle notification to conversation - Added helper methods: - get_prompt_additions_for_ai(): Formats prompt additions as list - get_temperature_for_ai(): Returns custom temperature or default - Adapted upstream logic for MessageWidget architecture: - Search results trigger conversation redisplay - Prompt/temperature changes trigger UI updates - Subtle notifications added to main_conversation - Changed ai_prompt_modifications to ai_prompt_additions (list-based) - Updated ai_turn() to append prompt additions instead of replacing - All command handlers now properly integrate with conversation flow
- All scenarios now document !search, !prompt, !temperature commands - AIs now know they can search the web for current information - AIs know they can modify their own system prompts - AIs know they can adjust their sampling temperature - D&D scenarios already included (identical to what we added) - 76 mentions of new commands vs 10 previously - Upstream config.py is 1022 lines vs our 886 lines This is critical - without these prompt updates, AIs wouldn't know the new tools are available to them!
…g.py Added compatibility functions to work with our local imports: - DEVELOPER_TOOLS = False (used by freeze detector) - get_model_tier_by_id() function (used by grouped_model_selector.py) These were missing from upstream config.py but required by our codebase.
Added to upstream config.py: - OUTPUTS_DIR = 'outputs' (for HTML export) - get_model_id() function (for model name -> ID lookup) - get_invite_models_text() function (for AI model invitation with tier filtering) These were imported by gui.py, main.py, grouped_model_selector.py, and shared_utils.py but missing from upstream config.py.
…oBox compatibility
CRITICAL FIXES: 1. Added 28 missing free models (was 3, now 31 total) - Meta: Llama 3.3 70B, Llama 3.2 3B - Google: 6 Gemma/Gemini models - Qwen: 3 models - Mistral AI: 3 models - NVIDIA: 2 Nemotron models - OpenAI: 2 GPT OSS models - Plus 11 more providers 2. Integrated tools/model_updater.py validation - Validates models against OpenRouter API - Caches results for 24 hours - Automatically removes 404'd models - _CURATED_MODELS -> validate_models() -> AI_MODELS Free models organized by provider: - Meta (2), Google (6), Qwen (3), Mistral AI (3) - NVIDIA (2), OpenAI (2), Moonshot AI (1) - Nous Research (1), Meituan (1), TNG Technology (3) - Allen AI (1), xAI (1), Amazon (1), Arcee AI (1) - Alibaba (1), KwaiPilot (1), Cognitive Computations (1) Total models: 71 (40 Paid + 31 Free)
…ows compatibility
…Seek R1 (deepseek-ai/deepseek-r1)')
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pull Request: UI Clean Up, Support Free Models & Addition of Developer Tools
Summary
This PR brings improvements to the Liminal Backrooms project, focusing on four main areas:
Key Changes
Model Dropdown Improvements
model_updater.pyvalidates models against OpenRouter API (cached 24h)Developer Tools (
tools/directory)New debugging utilities for development:
debug_tools.py- Comprehensive debug panel with logging, state inspection, and diagnosticsfreeze_detector.py- Detects and reports UI freezes during developmentmodel_updater.py- Validates curated model list against OpenRouter APIcheck_developer_tools.py- Quick check for DEVELOPER_TOOLS flag statusAll debug output is suppressed when
DEVELOPER_TOOLS = Falsein config.py.UI Enhancements
GroupedModelComboBox- Custom dropdown widget supporting hierarchical model selectionstyles.pyfor consistent themingassets/app-icon.icoDependency & Build Fixes
package-mode = falseto fixpoetry installerrorsduckduckgo-searchfor web search featurepoetry.lockto sync with pyproject.toml changesWindows Compatibility
Git Hygiene
Updated
.gitignoreto exclude:/*.html)settings/splitter_state.json).claude/)diff_*.txt,DIFF_*.md)LEADERBOARD.mdandleaderboard.json)Removed from tracking:
conversation_full.html(generated output)settings/splitter_state.json(user-specific UI state)Testing these new changes
poetry installcompletes without errorsDEVELOPER_TOOLS = TrueDEVELOPER_TOOLS = FalseTesting to confirm rebase is all good (i.e. latest features added to upstream repo still work)
!prompt,!searchand!temperaturecommandsFuture Improvements
Screenshots