Skip to content

Commit 2e754f7

Browse files
committed
README improvements
1 parent 499b008 commit 2e754f7

File tree

3 files changed

+25
-5
lines changed

3 files changed

+25
-5
lines changed

.github/FUNDING.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
github: agg23

README.md

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,29 @@ This is primary user entrypoint app for [PenumbraOS](https://github.com/Penumbra
77
88
MABL is a central orchestrator app, running as a normal unprivileged `untrusted` app, which exposes a plugin archecture built around the Android SDK ecosystem to enable users to install different implementations of LLMs (local, remote, realtime audio), TTS and STT, separate apps (like a timer or notes app), etc.
99

10+
## Features
11+
12+
- Hold a single finger to talk to LLM
13+
- Hold two fingers to talk to LLM with a picture
14+
- Conversation persistence (ask "what did you just say" or similar)
15+
- Rough laser ink projected display
16+
- Date and time home screen
17+
- Conversation display
18+
- Navigation and menuing
19+
- Dynamic tool calling
20+
- Cosign similiarity between tool description embedding and user query selects the top `n` (currently 6) tools
21+
- Only these tools, plus any "persistent" ones, are passed to the LLM
22+
- Optimized for faster processing and local LLMs
23+
- Plugable tool providers. Existing tool providers are:
24+
- OpenAI compatible LLM (provided API keys)
25+
- Humane speech to text
26+
- Generic Android text to speech
27+
- Google search (provided API keys)
28+
- Generic Android system operations (volume, more to come)
29+
- Ai Pin specific operations (timers, more to come)
30+
31+
---
32+
1033
## Architecture
1134

1235
### Overview
@@ -41,7 +64,7 @@ Plugin discovery uses the normal SDK provisions of `PackageManager`. Plugins reg
4164

4265
#### Logic
4366

44-
Logic runs in the plugin's own process, like a normal Android app. Each plugin binds its own variant of the provider services it implements. `untrusted_app` should be able to register services usable by other `untrusted_app` based on the SELinux rules (**NOTE:** I have not tested this). Each plugin maintains its own access to the [PenumbraOS SDK](https://github.com/penumbraOS/sdk), and thus can access the network and priviledged operations like changing settings.
67+
Logic runs in the plugin's own process, like a normal Android app. Each plugin binds its own variant of the provider services it implements. `untrusted_app` should be able to register services usable by other `untrusted_app` based on the SELinux rules. Each plugin maintains its own access to the [PenumbraOS SDK](https://github.com/penumbraOS/sdk), and thus can access the network and priviledged operations like changing settings.
4568

4669
#### Rendering
4770

plugins/demo/src/main/java/com/penumbraos/plugins/demo/DemoLlmService.kt

Lines changed: 0 additions & 4 deletions
This file was deleted.

0 commit comments

Comments
 (0)