knowledge-base/raw/xpost/2026-09-19_bhosal-pratim-macbrow.md

44 lines
No EOL
6.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
type: xpost
source_url: https://x.com/BhosalePratim/status/2101281829168792002
retrieved: 2026-09-23
author: "@BhosalePratim"
is_thread: false
quote_count: 8
tags: [jev, typesafe-ai, macbrow, computer-use, sprachsteuerung, browser-use, gradium, repo, demo]
---
# Pratim Bhosale — „Macbrow": sprachgesteuerter Mac-/Browser-Agent mit Jev (19.09.2026)
## Metadaten (FxTwitter/GitHub API, Abruf 23.09.2026)
- **Autor:** Pratim Bhosale (@BhosalePratim), Paris, 42.523 Follower, verifiziert; Bio „Education @GradiumAI | Building @spokira with @sachaarbonel | Prev Eng @ UBS" — **arbeitet bei Gradium**, dem im Stack genannten STT/TTS-Anbieter (Interessenkonflikt bei der Produktbewertung, nicht bei der Jev-Rolle)
- **Post:** Note-Tweet, **19.09.2026 12:06 UTC**; **55.975 Views / 414 Likes / 27 Reposts / 39 Replies / 488 Bookmarks**; keine Community Note; Video-Anhang 152,3 s (1748×1080)
- **Wortlaut:** „I've always wanted a way to talk to my Mac and do things on the go. Until now, it was super slow. So I built Macbrow. Voice-controlled browser and computer-use agent. Built using @GradiumAI @browser_use and @typesafeai — Still early and a work in progress."
- **Repo:** https://github.com/timpratim/macbrow — öffentlich, MIT, **140 Stars / 15 Forks** beim Abruf, created 18.09.2026 22:18 UTC, letzter Push 21.09.2026, Sprache Python
## README (vollständig gelesen)
Kopf: „Talk to your Mac. Say a command and it runs as AppleScript; say a web task and it drives your Chrome. **Routing takes about 300 ms because a System One model chooses instead of generating.**"
- **Warnung:** „Experimental. Not for production." Eine frühe Version sollte „clean up my desktop" ausführen und **verschob alle Dateien des Desktops in einen Ordner** — deshalb existiert die Safety-Policy (`macbrow/policy.py`).
- **Pipeline:** `Gradium STT → Jev picks tool + arguments (one request, ~300 ms) → AppleScript → Gradium TTS`; Website-Tasks über `jev-ultrafast` (Browser Use × TypeSafe) mit **einem Jev-Request pro Schritt**; unbekannte Aktionen: LLM schreibt ein neues Tool (Kompilier-, Effekt-, Policy- und Jev-Review-Gates, 3 Repair-Runden); Small Talk: LLM, ein Satz.
- **Jev-Aufgaben konkret:** Routing als ein Choice über die Tools offener Apps (+ „chat"/„new action") mit Wahrscheinlichkeit je Option (hoch → ausführen, mittel → nachfragen, niedrig → nicht); **spekulative Arguments** (alle Enum-Argumente aller Kandidaten-Tools als eigene Choices im selben Request, nur die des Gewinners werden gelesen; Freitext-Argumente durch Span-Auswahl statt Generierung); Follow-up-/Vollständigkeits-Urteile als einzelne Noul/Choice.
- **Browser-Schritt:** Seite als indizierte Tabelle der Controls; ein Jev-Request wählt Operation (click, type, select, scroll, wait, done) + Ziel-Index. „Nothing is generated except the text to type. Model output never becomes a selector or code; every target is an element the code observed. **No screenshots in the loop.**"
- **Eigenmessung („Measured on this machine"):** „add the best vacuum cleaner to my Amazon cart" — 4 Schritte, 11 s; Follow-up „the return date should be November 4th" — 6 Schritte, 3,7 s; „play the Love Hypothesis trailer" — **1,6 s** vom Satzende bis zum Video.
- **Policy:** Allowed: Apps, Dateien, URLs, Browser-Tasks, Slack/Messages/Mail, Notes/Reminders/Calendar, Medien. Blocked: Systemeinstellungen, Terminals, Shell außerhalb Allow-list, Datei-Löschen/Verschieben, Trash, Power, Keychain; im Browser: Kauf/Checkout/Payment/Sign-in. State-Änderungen brauchen gesprochene Bestätigung; Policy schützt nicht vor falsch verstandenen Wörtern, `MACBROW_POLICY=off` existiert zum Debuggen.
- **Tests:** `uv run pytest -q`**26 Offline-Tests**; ruff clean; MIT.
## Demo-Video (lokal ausgewertet: 15 Standbilder à 10 s + Volltext-STT via Grok STT, 152,4 s)
Kette: Outlander-Trailer auf YouTube („Done." nach ~4,5 s Sprachpause) → „find me bags under 300 euros" → Google Shopping „handbags under 300 euros" (Ergebnisse sichtbar: Polène €269, THEA MINI €264 u. a.) → „Paris to Istanbul, November 1015" → Google Flights (AJet/Transavia/Turkish, Nonstop 3h45) → „open the desktop folder" → Finder öffnet Desktop → zwei Schließ-Befehle → Love-Hypothesis-Trailer → X-Suche „Jev site:twitter.com" (Suchvorschläge sichtbar; ein Timeline-Post von @thisiskp_ zufällig sichtbar: „running out of patience bookmarking every cool Jev demo on the timeline"). Chrome-Banner: „Chrome is being controlled by automated test software."
**Bemerkenswerte Sprachmomente (aus Wortzeitstempeln):** Nach dem Outlander-Befehl (Ende ~4,6 s) fällt das „Done." bereits bei 8,5 s — **unter 4 Sekunden bis zur fertigen YouTube-Suche**; die Korrektur „Sorry, the desktop folder, not the downloads folder" wird korrekt aufgelöst (Finder zeigt Desktop); am Ende **versagt** der Agent beim einfachen „close this tab": „Okay, stopping. Goodbye." — dann der Tester: „I asked you to close the tab. Okay, I think there's a lot of work to be done, but this is not bad." Das Demo endet mit einem dokumentierten Misserfolg.
## Einordnung
- **Erster Jev-Computer-Use-Build mit öffentlichem Code.** Anders als Andy-Gao (kein Repo, keine Messung) ist Macbrow nachprüfbar: README, Policy, 26 Tests, Architekturbeschreibung. Die Jev-Rolle ist **dokumentiert**, nicht nur mentioned: Routing + spekulative Argumente + Schrittentscheidungen im Browser + Noul/Choice-Urteile.
- **Der Text-only-Befund wird konstruktiv aufgelöst:** Jev „sieht" nichts — hier liest `jev-ultrafast` die Seite als indizierte Tabelle der Controls, Jev wählt daraus. Keine Screenshots im Loop. Das ist die sauberste bisher dokumentierte Antwort auf die Text-Only-Grenze.
- **Latenzplausibilität:** ~300 ms pro Jev-Request liegt in der dokumentierten 70500-ms-Spanne; die 1,6-s-Gesamtlatenz (Sprachende → Video) ist mit STT + 1 Jev-Call + YouTube-Suche vereinbar. Keine unvereinbaren Zahlen.
- ⚠️ **Interessenkonflikt des Autors** bei Gradium (Education), nicht bei TypeSafe; Eigenmessungen („measured on this machine") ohne Rohdaten.
- ⚠️ Der Agent versagt in der Demo am Ende beim Tab-Schließen — vom Tester selbst eingeordnet; gut gegen Überglättung der Welle.