Tools und Integrationen - YoungJibbit95/YJarvis GitHub Wiki
Tools und Integrationen
Die aktive Legacy-Registry registriert 18 Tools. Alle verlangen Freigabe. Die semantischen Namen im V2-Katalog sind Migrationsmetadaten; API-/DB-/Planner-Namen werden dadurch nicht umbenannt.
Browser, Apps, Launcher, Zwischenablage
| Legacy-Name → semantischer Name | Wirkung | Voraussetzung / Grenze |
|---|---|---|
open_url → url.open |
HTTP(S)-URL im Browser öffnen | Legacy verwendet macOS open |
open_app → apps.open |
Anwendung nach Namen öffnen | macOS open -a; Ziel muss existieren |
raycast_open → raycast.open |
Raycast öffnen, optional mit Suche | Raycast installiert, macOS |
raycast_run_command → raycast.command.run |
Raycast-Erweiterung per Deeplink aufrufen | optional; Kommando kann externe Effekte haben |
clipboard_read → clipboard.read |
Clipboard-Text lesen | macOS pbpaste; kann sensible Inhalte enthalten |
clipboard_write → clipboard.write |
Clipboard-Text ersetzen | macOS pbcopy; aktueller Inhalt wird ersetzt |
Gemergtes Windows-Fundament: WindowsUrlOpenProvider nimmt nur die semantische
Capability url.open und validierte HTTP(S)-Eingaben an. Die native Grenze ist
os.startfile, ohne Shell-Interpolation. Die Rückgabe sagt lediglich, dass der
native Aufruf zurückkehrte; sie prüft weder Browserstart noch geladenen Inhalt.
Der Provider wird nicht produktiv registriert und nicht an den Planner angehängt.
Der gemergte WindowsClipboardReadProvider nimmt nur clipboard.read mit dem
bestehenden leeren Input-Vertrag an. Er liest CF_UNICODETEXT über eine lazy
ctypes/Win32-Grenze; Lesen, Lock und Cleanup laufen auf einem Worker-Thread.
Die Kopie ist auf die native Allocation begrenzt und wird bis zum ersten
ausgerichteten UTF-16-NUL strikt decodiert. Kein verfügbares Unicode-Format und
leerer Text ergeben beide text=""; API-/Unicode-/Cleanup-Fehler werden
nicht als leerer Erfolg ausgegeben. Text wird weder normalisiert noch gekürzt.
Es gibt keine Längenkappe, Retry-/Timeout-Policy oder Abbruchgarantie für einen bereits laufenden nativen Read. Clipboard-Inhalte werden nicht gecacht. Tests verwenden ausschließlich test-eigene Puffer/Mocks, kein Host-Clipboard.
Explizite Registrierung könnte den Provider im isolierten Runtime-Kernel verfügbar machen; Import/Instantiation alleine tun das nicht. Der aktive Chat-/Planner-Pfad bleibt unverändert. Clipboard-Schreiben, Apps und Produktionsadapter sind geplant.
Produktivität und Kommunikation
| Legacy-Name → semantischer Name | Wirkung | Auswirkung |
|---|---|---|
reminder_create → reminders.create |
Erinnerung, optional Notizen/Fälligkeitszeit | schreibend |
reminder_list → reminders.list |
unvollständige Erinnerungen aus Liste | lesend |
calendar_create_event → calendar.events.create |
Kalenderereignis erstellen | schreibend |
calendar_list_events → calendar.events.list |
anstehende Ereignisse abfragen | lesend |
notes_create → notes.create |
Notiz und gegebenenfalls Zielordner erstellen | schreibend |
notes_search → notes.search |
Notizen nach Text/Ordner suchen | lesend |
mail_create_draft → mail.drafts.create |
E-Mail-Entwurf erstellen | sendet selbst keine E-Mail |
messages_send → messages.send |
Nachricht an Empfänger senden | tatsächlicher externer Effekt; vorher freigeben |
contacts_search → contacts.search |
Kontakte nach Namen suchen | personenbezogene Daten |
music_control → music.control |
Wiedergabe, Pause, nächster/vorheriger Titel | System-/App-Zustand |
Alle diese Implementierungen nutzen macOS/AppleScript und benötigte App-/OS-Rechte. Beispiele natürlicher Eingaben sind keine Zusage, dass jede freie Formulierung eindeutig erkannt wird. Vor einer Freigabe Ziel und Argumente prüfen.
Dateien
| Legacy-Name → semantischer Name | Wirkung | Begrenzung |
|---|---|---|
file_read → files.read |
Textdatei lesen | allowed_paths, kritische Pfade; Ausgabe nach 6000 Zeichen gekürzt |
file_write → files.write |
overwrite oder append; Elternverzeichnis bei Bedarf anlegen |
Pfad-/Inhaltsprüfung, Freigabe; Überschreiben kann Daten verlieren |
Die Python-Dateifunktionen existieren, aber die Legacy-Systempfadregeln sichern keine pauschale Windows-Mutationsparität ab. Keine breite Windows-Dateiautomation aktivieren, bevor dort kanonische Pfade, Laufwerke, UNC und Reparse Points fachlich abgesichert sind. Keine Rollback-/Dry-Run-Zusage ableiten.
Smart Home
HomeAssistantStubProvider liest Entitäten aus der lokalen DB und verändert
deren simulierten Zustand mit toggle, turn_on oder turn_off. Dies steuert
keine tatsächlichen Geräte und ist keine Home-Assistant-Verbindung.
Quellen: System-Tools, AppleScript, Dateien, Stub, Windows URL, Windows Clipboard Read.
Fachlich geprüft: 2026-10-08 · Quellstand 7419614bfa3c. Git-Historie veröffentlicht bis 68fa1df76e09.