Skip to content

Feat: vibes and creAItors#40

Open
jayinatlanta wants to merge 270 commits intotimmyy123:mainfrom
jayinatlanta:feature/vibes-and-creAItors
Open

Feat: vibes and creAItors#40
jayinatlanta wants to merge 270 commits intotimmyy123:mainfrom
jayinatlanta:feature/vibes-and-creAItors

Conversation

@jayinatlanta
Copy link
Copy Markdown
Contributor

Builds on the excellent tooling foundation of LLM-Hub with two new tools: Vibes and creAItors.

Vibes is a vibe coding tool: a multi-agent system that produces code ready for a canvas even from a simple prompt, and then a Preview button is enabled to act as a runtime for that code right within the app. Fun for quick games and apps, even offline!

creAItors is a powerful tool similar to Gemini's "Gems" or OpenAI "Custom GPTs": it creates personas to interact with you and do your work. Under the covers, it creates meta prompts, so that within chat, you can select a creAItor, talk to it or give it any goal, and it will respond precisely as trained. Try adding a creAItor like "produce markdown prompts for a coding agent based on the user's goal" or "summarize any topic in the Smart Brevity style", then call on them from chat with extremely simple ideas like "snake game" or "laws of thermodynamics".

…s. Updated SelectableMarkdownText to support URL and phone number detection, allowing users to interact with links directly. Added new function for annotating links and phones in the text.
…separating user and AI message designs. Introduce regeneration functionality for AI responses and enhance loading indicators in ChatScreen. Add database method to delete messages after a specified timestamp in ChatDao and implement corresponding repository method. Improve ChatViewModel to handle regeneration of AI responses, ensuring proper session management and error handling.
…s and output-metadata.json. Enhance MessageBubble component with full-screen image viewer functionality, allowing users to view and interact with image attachments. Implement image copying and saving features to gallery, improving user experience with chat attachments.
…mproving message input handling. Introduce loading state management in MessageInput and allow users to cancel ongoing generation. Update ChatViewModel to manage model unloading and prevent auto-loading of models for new chats. Update Gradle plugin version to 8.12.1.
…oduce token estimation for proactive session resets, implement basic disallowed content filtering, and refine history handling to accommodate topic shifts. Update message handling to ensure safe responses and improve user experience.
…ableMarkdownText and improving MessageBubble layout. Introduce selectedModel state in ChatViewModel for immediate UI feedback on model selection.
…n in ChatScreen. Add Google Play Store badge to README for easier installation.
- Integrated DuckDuckGo web search service to fetch current information based on user queries.
- Updated InferenceService to include a parameter for enabling/disabling web search.
- Enhanced response generation logic to incorporate web search results when applicable.
- Added UI toggle in SettingsScreen to enable/disable web search feature.
- Updated ChatViewModel and ThemeViewModel to manage web search preferences.
- Implemented SearchIntentDetector to identify when a web search is needed based on user input.
…and InferenceService for improved context management
…ussian languages

- Created strings.xml for Spanish (values-es) with 11048 entries.
- Created strings.xml for French (values-fr) with 11543 entries.
- Created strings.xml for Portuguese (values-pt) with 10930 entries.
- Created strings.xml for Russian (values-ru) with 15367 entries.

These resources include translations for common phrases, chat functionality, about screen details, terms of service, navigation, error messages, accessibility descriptions, and model information.
- Added new strings for initializing neural network and model selection in Portuguese, Russian, and English.
- Updated acknowledgments to include contributions from Google, Meta, Microsoft, and HuggingFace.
- Improved translations for various UI elements and descriptions.
- Introduced new settings options for appearance, language selection, and web search functionality.
- Enhanced error messages and chat management strings for better user experience.
- Updated Terms of Service with the latest information.
- Version bump to 1.0.8.
- Bumped versionCode to 9 and versionName to 1.0.9 across relevant files.
- Improved markdown parsing to support link detection and styling, allowing for better user interaction with links in chat messages.
- Updated string resources to reflect the new version number in multiple languages.
- Bumped versionCode to 10 and versionName to 1.1.0 across relevant files.
- Improved loading indicator animations in ChatScreen for a smoother user experience.
- Updated string resources for model download screen with localized strings in multiple languages.
- Adjusted the system locale detection method in LocaleHelper for better accuracy.
- Updated MessageEntity to include attachment file name and size.
- Modified ChatRepository to handle new attachment parameters when adding messages.
- Improved ChatScreen to enable attachments for all models and added support for vision models.
- Enhanced ChatViewModel to process various file types, including images, documents, and text files, with detailed error handling and user feedback.
- Introduced FileUtils utility class for file handling, including extraction of text from PDFs, Word documents, Excel spreadsheets, and PowerPoint presentations.
- Added new strings for file attachment messages and error notifications in strings.xml.
- Updated ModelDownloadScreen to include pause and resume actions for model downloads.
- Enhanced ModelVariantItem to display paused state and provide buttons for pausing and resuming downloads.
- Implemented broadcast receiver in ModelDownloadViewModel to handle download progress, completion, and errors.
- Refactored ModelDownloadService to manage active downloads, including pause and cancel actions.
- Added localized strings for pause and resume actions in multiple languages.
- Introduced new methods in ModelDownloadViewModel for pausing and resuming downloads, utilizing the service for background operations.
- Implemented audio recording functionality in the ChatScreen and integrated it with the ChatViewModel.
- Added UI components for audio support, including badges and message handling.
- Enhanced model download screen to display audio and vision capabilities.
- Updated string resources for audio recording and multimodal support in multiple languages.
- Created AudioInputService for managing audio recording, including WAV format handling.
- Added file paths configuration for audio file access.
jayinatlanta and others added 15 commits February 12, 2026 21:13
- Updated InferenceService interface to include optional deviceId parameter for model loading.
- Modified MediaPipeInferenceService to handle deviceId, preserving it in the method signature.
- Implemented NPU availability probing in NexaInferenceService, allowing for device-specific model loading.
- Adjusted loadModel methods across OnnxInferenceService, UnifiedInferenceService, and other services to accommodate deviceId.
- Enhanced ChatScreen and other UI components to support NPU device selection.
- Updated ViewModels (ChatViewModel, ScamDetectorViewModel, TranscriberViewModel, etc.) to manage selected NPU device ID.
- Added string resource for NPU backend display.
- Increased Gradle JVM memory allocation for improved build performance.
…loyment target selection mode to DROPDOWN; refine NPU support logic for model selection
@timmyy123
Copy link
Copy Markdown
Owner

Thanks for the pr!
There're few things need to improve:
seems you removed the back arrow in ai chat screen side drawer, I'd like it back for users to easily navigate back to home screen
2 new features ui before model loaded are not consistent with existing features.
I tried loading gguf models in new feature 'vibes' and it crashed, I think mainly because it tried to use max context window each model supports which is too much for larger models.
For wider screen like tablet like foldables and tablets I'd like homescreen to show more than 2 features per row
I'll create a new branch based on your pr and improve on it before merging to main branch
btw are you based in north America? I recently integrated nexa sdk into my app and they have a bounty program with prize for using their sdk https://sdk.nexa.ai/bounty . They said this program is only for north America but I'm based in Australia. If you are based in north America and willing to team up with me I think we have a high chance of wining their prize, because this app is already well established on playstore and we're competing against ones that are just prototype

@timmyy123
Copy link
Copy Markdown
Owner

Screenshot_20260214_191356_LLM Hub
also the vibecode feature always give python code even if if i asked for a website

@jayinatlanta
Copy link
Copy Markdown
Contributor Author

That's funny about the Python, mine (Gemma 3n E2B) always writes HTML no matter what. And yours did external imports even though the agents are instructed not to.
I joined the Nexa competition server & I think you're there too, we'll see what they say about teams with multiple locations.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants