Proactive Notifications Apps#1240
Merged
Merged
Conversation
5982f63 to
2c0839a
Compare
Contributor
|
Does it work on IOS? |
e685b15 to
f8df172
Compare
12ef56f to
1487b3f
Compare
…ion with new plugin db
Closed
Glucksberg
pushed a commit
to Glucksberg/omi-local
that referenced
this pull request
Apr 28, 2026
## Overview Issue: BasedHardware#1235 BasedHardware#1132 ## Features - Developer could create new apps with the proactive notification capacity ## Usages - Developer create a new app with capacity `proactive_notification`, and `external_integration` to trigger the `transcript_processed`. ``` { "id": "mentor-01", ... "capabilities": [ "external_integration", "proactive_notification", ], "external_integration": { "triggers_on": "transcript_processed", "webhook_url": "https://based-hardware-development--plugins-api.modal.run/mentor", ... }, "proactive_notification": { "scopes": ["user_name", "user_facts"] }, ... } ``` - Webhook respond with the format: ``` { "mentor": { "prompt": "the prompt template, with `{{user_name}}` and `{{user_facts}}`, Omi will use this prompt to ask LLM then send a notification to user", "params": ["user_name", "user_facts"] } } ``` - (Optional) you could detect the codeword before responding with the `mentor` instruction, either by using the LLM or just a simple regex: ``` ai_names = ['Omi', 'Omie', 'Homi', 'Homie'] codewords = [f'hey {ai_name} what do you think' for ai_name in ai_names] ai_name in ai_names] transcript = TranscriptSegment.segments_as_string(segments) text_lower = normalize(transcript) pattern = r'\b(?:' + '|'.join(map(re.escape, [normalize(cw) for cw in codewords])) + r')\b' if bool(re.search(pattern, text_lower)): # respond ``` ## Technical details <img width="1074" alt="Screenshot 2024-11-06 at 10 43 46" src="https://github.com/user-attachments/assets/09a18457-6116-454b-98a8-d36dd9a7b1d2"> ## Examples  ## TODO - [x] A dead simple app which could trigger codeword and send the notification - [x] Put the LLM to it - [x] `user_facts` scope - [x] Put capacity `proactive_notification` - [x] Refine the document ## Future idea - `memory_context` scope - rate limits per plugin per user per 5s - 1 ## 🚀 Deploy Steps - [ ] Merge https://github.com/BasedHardware/omi/pull/1240/files - [ ] Create plugin. ``` curl -X 'POST' \ 'https://based-hardware-development--backend-thinh-v2-api.modal.run/v3/plugins' \ -H 'accept: application/json' \ -H 'authorization: <KEY>' \ -H 'Content-Type: multipart/form-data' \ -F 'plugin_data={"name":"Mentor.01","author":"@thinh","description":"Mentor.01 - An AI-powered mentor, designed to elevate your meetings and help you achieve your goals. With its insightful guidance and real-time support, you'\''ll gain the confidence and skills to excel in every interaction.","image":"/plugins/logos/mentor_01.jpg","capabilities":["external_integration","proactive_notification"],"external_integration":{"triggers_on":"transcript_processed","webhook_url":"https://based-hardware-development--plugins-api.modal.run/mentor","setup_completed_url":"https://based-hardware-development--plugins-api.modal.run/setup/mentor","setup_instructions_file_path":"https://raw.githubusercontent.com/BasedHardware/Omi/main/plugins/instructions/mentor_01/README.md"},"proactive_notification":{"scopes":["user_name","user_facts"]},"deleted":false,"private":false}' \ -F 'file=@mentor_01.jpg;type=image/jpeg' ``` - [ ] Deploy Pusher service - [ ] Deploy Plugin service
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
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.
Overview
Issue: #1235 #1132
Features
Usages
Developer create a new app with capacity
proactive_notification, andexternal_integrationto trigger thetranscript_processed.Webhook respond with the format:
(Optional) you could detect the codeword before responding with the
mentorinstruction, either by using the LLM or just a simple regex:Technical details
Examples
TODO
user_factsscopeproactive_notificationFuture idea
memory_contextscope🚀 Deploy Steps
Summary by CodeRabbit
Release Notes
New Features
ProactiveNotificationclass to enhance plugin capabilities with proactive notifications.Bug Fixes
Documentation
Refactor