mattouch
I’ve been using bettertouchtool for probably 15 years now, but only for two features:
- I bind fn+opt to window drag
- I bind fn+cmd to window resize
That’s it. BTT has something like 3,000 features and all I use is two of them.
So why not replace it?
Say hello to MATTOUCH.
Mattouch started out as a single-purpose mac menu bar widget to enable accessibility controls to capture mouse input to allow hotkey-based window moving and resizing.
Simple! Quick! Free! Easy to configure!
but then I figured, why not also add window snapping to screen edges? The built-in macos version of window snapping is pretty sad and unconfigurable, so mine can set your windows to 1/2, 1/3, or 1/4 the screen width when it snaps and it can even snap to the bottom of the screen too horizontally.
but then I figured, since I already have my own menu bar app, why not add more features I use in other apps?
Then I added - again, to my simple single-purpose mac menu bar widget accessibilty helper - speech-to-text/ASR/dictation support, so I hold down left option key then speak and whe I release left option key what I spake gets pasted into the current input box.
I added an additional feature though: since I added support for multiple audio speech recognition models (including the built-in mac one if you don’t want to download anything), if you have multiple models enabled, why not just run your captured speech audio through all the models at once then show you the differences if models disagree (or, if all models agree, just paste the responses back)? so yeah, i added that too, again, to my simple single-purpose mac menu bar widget accessibilty helper.
but then I figured, since I already have speech models and ui helpers, another big problem I have is “losing my windows” when I have to many apps or windows open from too many sesions overlapping and having to figure out where, spatially, to recall them again.
Then I add - again, to my simple single-purpose mac menu bar widget accessibilty helper - the ability for Mattouch to take an immediate screenshot of all open windows on your system then use the macos OCR system to OCR the screenshots then run embeddings against the extracted text then you can ask a query of the text content of all open windows on your system from their display content for recalling windows back to the front. You can either speak your request or type it. It works surpsingly well. It’s basically a goddamn usability feature apple should have shipped as “apple intelligence 1.0” two years ago if they weren’t a complete joke of a software company these days.
bu then I figured, since I already have a window screen shot system and a speech model downloading interface, why not add the ability to download and use “VLM” (visual language models) so the search service can send screenshots to a local image-to-text LLM so you can ask more questions about the actual images at a more advanced level than just OCR and embedded distance query scanning? so yeah, i added that too, again, to my simple single-purpose mac menu bar widget accessibilty helper.
but then I figured, since I already have a query-to-screenshot-to-app-locator service and VLM image processing system, why not use a VLM action model system where the model can output actions to take and then the Mattouch (single-purpose window helper) menu bar widget can interpert the model output actions back to the system so the AI models can move your mouse and type from your keybaord into applications based on written or spoken requests to the model? so yeah, i added that too, again, to my simple single-purpose mac menu bar widget accessibilty helper.
Where Are They? Who Are They?
Luckily, I built Mattouch in where each of those additional features don’t bloat the, again, simple single-purpose mac menu bar widget accessibilty helper app.
So, there’s five versions.
FIVE VERSIONS
- mattouch window app
- mattouch speech-to-text app
- mattouch ocr window searching app
- mattouch vlm window searching app
- mattouch vlm agent harness app
Each “next layer” app includes all features from the previous layer apps all combined too.
benefit: if you only want the window resize/drag/tile app, it’s just 7 MB and feature complete and you never need to worry about any updates ever again probably. If you want the more advanced usability or experimental features you can opt in at app bundle levels anytime too.
Each successive app bundle grows slightly larger and may have more updates and features added over time as new ideas and capabilities and feedback comes out.
Happy mattouch to you too.