Hinweis
Verwaltete Einstellungen, die Beispielprofile und die Schemas für Jamf Pro und Profil-Editoren gibt es ab TypeWhisper für Mac 1.8. Den verwalteten Lizenzschlüssel (ManagedLicenseKey) gibt es schon seit 1.6.1.
Überblick
Als Administrator legst du fest:
- welche Edition auf die Macs kommt und wie: der Direkt-Download über dein MDM oder Homebrew, oder die Mac-App-Store-Edition über Apple Business Manager,
- wie sie eingestellt ist: Lizenz, Modelle, Cloud-Verarbeitung, Downloads, Updates und Start über verwaltete Einstellungen,
- was sie darf und erreicht: Anmeldeobjekt, Berechtigungen und die Netzwerk-Hosts unten.
TypeWhisper braucht macOS 14 oder neuer und zum Ausführen keine Administratorrechte. Jeder Benutzer eines Mac hat eigene Einstellungen, Modelle und Plugins in seinem Benutzerordner. Ein Geräteprofil gilt für alle Benutzer, ein Benutzerprofil nur für diesen Benutzer.
Edition wählen
| Edition | Bezug und Updates |
|---|---|
| Direkt-Download | DMG oder ZIP aus den GitHub-Releases, mit Developer ID signiert und notarisiert, oder der Homebrew-Cask. Updates kommen über Sparkle und folgen UpdateMode, UpdateChannel und AllowedUpdateChannels. Nur diese Edition aktiviert ManagedLicenseKey. |
| Mac-App-Store-Edition | Apple Business Manager > Apps und Bücher, zugewiesen über dein MDM. Der App Store aktualisiert sie, und ihre Plugins sind eingebaut. |
Beide Editionen sind getrennte Apps mit getrennten Einstellungen; meist ist nur eine installiert. Apps-und-Bücher-Lizenzen enthalten keine In-App-Käufe. Für kommerzielle Lizenzschlüssel brauchst du daher den Direkt-Download.
Direkt-Download installieren
Jedes Release enthält TypeWhisper-v<version>.dmg und eine ZIP-Datei. Die meisten MDMs installieren das DMG oder ein daraus erstelltes Paket; kopiere TypeWhisper.app nach /Applications (im Finder „Programme“). Die Dateien liegen auf der Release-Seite auf GitHub. Mit Homebrew:
brew install --cask typewhisper/tap/typewhisperZum Deinstallieren beendest du die App und löschst sie aus /Applications. Einstellungen, Modelle und Plugins bleiben im Benutzerordner erhalten; die Installationsseite nennt die Pfade für eine vollständige Bereinigung. Das Löschen der App deaktiviert eine verwaltete Lizenz nicht; entferne die Aktivierung in Polar.
Updates
Der Direkt-Download aktualisiert sich mit Sparkle über https://typewhisper.github.io/typewhisper-mac/appcast.xml. Mit UpdateMode steuerst du das: 0 überlässt Updates deiner Softwareverteilung, 1 zeigt neue Versionen nur an, 2 installiert nur, wenn der Benutzer es startet. Unter 0 verteilst du neue Versionen mit deinem MDM.
Ein Update, das Sparkle vor einem strengeren UpdateMode schon für die automatische Installation geladen hat, kann beim Beenden von TypeWhisper noch installiert werden; Sparkle bietet keinen Weg, das abzubrechen. Verteile die Richtlinie deshalb zusammen mit der App.
Anmeldeobjekt
macOS listet TypeWhisper unter Systemeinstellungen > Allgemein > Anmeldeobjekte & Erweiterungen. Dort können Benutzer es abschalten, auch wenn LaunchAtLogin erzwungen ist; TypeWhisper zeigt dann unter Einstellungen > Allgemein, dass das Anmeldeobjekt eine Freigabe braucht.
Um das Anmeldeobjekt freizugeben und zu sperren, verteilst du einen Service-Management-Payload (com.apple.servicemanagement, ab macOS 13, über MDM) mit einer Regel für die Team-ID 2D8ALY3LCL von TypeWhisper oder für die Bundle-ID. Das Beispiel für das Anmeldeobjekt deckt beide Editionen ab. Eine App, die nie gestartet wurde, kann ihr Anmeldeobjekt nicht registrieren: Starte TypeWhisper nach der Installation einmal.
Berechtigungen
TypeWhisper fragt nach diesen Berechtigungen, sobald eine Funktion sie zum ersten Mal braucht. Ein Profil mit Datenschutzeinstellungen (PPPC, com.apple.TCC.configuration-profile-policy), das ein MDM ausliefert, kann einige davon vorab erteilen. Das Datenschutz-Beispiel enthält Einträge für Bedienungshilfen, PostEvent, Eingabeüberwachung und Bildschirmaufnahme. Erteile nur, was deine Funktionen und deine Edition brauchen. Kalender und Automation sind optional; ergänze ihre Einträge selbst, wenn du sie vorab erteilen willst.
| Berechtigung | Verwendung und PPPC-Eintrag |
|---|---|
| Mikrofon | Diktat und Aufnahme. Lässt sich nicht vorab erteilen; Benutzer bestätigen die Abfrage. Ab macOS 27 kann die Konfiguration für App-Einstellungen es vorschlagen (Microphone: Allow). |
| Bedienungshilfen | Direkt-Download: Diktat-Tastenkürzel, Text einfügen und den Kontext der aktiven App lesen. Accessibility: Allow; ab macOS 27 veraltet, dort schlägt die Konfiguration für App-Einstellungen es stattdessen vor. |
| Bedienungshilfen (Ereignisse senden) | Transkript einfügen; in der App-Store-Edition der Eintrag unter Datenschutz & Sicherheit > Bedienungshilfen (ab macOS 27 „Gerätesteuerung und Datenzugriff“). PostEvent: Allow. |
| Eingabeüberwachung | App-Store-Edition: Diktat-Tastenkürzel. Direkt-Download: Tastenkürzel, die das System nicht registrieren kann, und Esc in anderen Apps. ListenEvent: nur AllowStandardUserToSetSystemService, damit Benutzer ohne Administratorrechte zustimmen können. |
| Aufnahme von Bildschirm & Systemaudio | Systemaudio im Recorder. ScreenCapture: nur AllowStandardUserToSetSystemService. |
| Automation (Apple Events) | Direkt-Download: die aktuelle Browser-Adresse für Website-Workflows lesen; die App-Store-Edition nutzt dafür die Browser-Erweiterung. AppleEvents: Allow, mit einem Eintrag pro Browser als Empfänger. |
| Kalender | Meeting-Erinnerungen und Aufnahmen starten. Calendar: Allow, wenn deine Organisation das möchte. |
| Lokales Netzwerk | Gekoppelte iPhones und iPads, die den Mac zum Transkribieren nutzen. Nicht per PPPC einstellbar; Benutzer bestätigen die Abfrage. Ab macOS 27 kann die Konfiguration für App-Einstellungen es vorschlagen (LocalNetwork: Allow). |
Die Code-Anforderungen im Beispiel sind die Designated Requirements von TypeWhisper. So prüfst du sie an einer installierten App:
codesign -dr - /Applications/TypeWhisper.appmacOS wendet Datenschutzeinstellungen nur an, wenn ein MDM sie über eine automatisierte Geräteregistrierung oder eine vom Benutzer genehmigte MDM-Registrierung ausliefert. Ein von Hand installiertes Profil reicht dafür nicht.
Ab macOS 27: App-Einstellungen
Ab macOS 27 ist der Eintrag Accessibility in einem PPPC-Profil veraltet, und die Systemeinstellungen nennen den Bereich „Gerätesteuerung und Datenzugriff“: macOS benachrichtigt den Benutzer und lässt ihn die Berechtigung dort abschalten. Apples Ersatz ist der Schlüssel Privacy der deklarativen Konfiguration für App-Einstellungen (com.apple.configuration.app.settings) für betreute Macs mit macOS 27 oder neuer. Er schlägt pro App Berechtigungen vor, erkannt an Bundle-ID und Code-Anforderung; der Benutzer bestätigt sie beim Start der App in einer einzigen Abfrage, zusammen mit der Begründung deiner Organisation. Vorschlagen lassen sich Bedienungshilfen, Mikrofon und lokales Netzwerk; still erteilt wird nichts.
- Das Beispiel für die App-Einstellungen schlägt Bedienungshilfen und Mikrofon für beide Editionen vor. Passe seine
OrganizationJustificationan. - Die Abfrage nennt nur Berechtigungen, nach denen der Benutzer noch nicht gefragt wurde, und erscheint nicht mehr, wenn er alle schon gesehen hat. Verteile die Deklaration also, bevor Benutzer TypeWhisper zum ersten Mal starten.
- Liefere sie mit einem MDM aus, das deklarative Geräteverwaltung auf dem Benutzerkanal unterstützt, weil macOS den Schlüssel
Privacynur für Benutzer anwendet. Gib ihr bei jeder Änderung ein neuesServerToken, sonst behält der Mac die vorige Version; die meisten MDMs setzen das Token selbst. - Behalte das Datenschutzprofil für ältere macOS-Versionen und für PostEvent, Eingabeüberwachung und Bildschirmaufnahme.
Netzwerk-Hosts
Die App selbst kontaktiert diese Hosts über HTTPS und nutzt dabei die Proxy-Einstellungen des Systems:
| Host | Zweck |
|---|---|
api.polar.sh | Aktivierung und Prüfung kommerzieller Lizenzschlüssel, auch ManagedLicenseKey. |
app.typewhisper.com | Anmeldung beim Premium-Konto und Kontostatus sowie das Plugin Improve TypeWhisper. |
typewhisper.github.io | App-Updates (/typewhisper-mac/appcast.xml, außer bei UpdateMode 0), der Plugin-Katalog und Begriffspakete. |
github.com, release-assets.githubusercontent.com | Downloads von App-Updates und Plugins. |
huggingface.co, *.hf.co | Modell-Downloads der lokalen Plugins: Parakeet, WhisperKit, Qwen3, Canary, Granite, Voxtral, Cohere Transcribe, GigaAM, Local LLM, Supertonic, Sprechererkennung und Importe von Hugging Face. Der Host leitet auf *.hf.co-Hosts über mehrere Subdomain-Ebenen weiter; der Platzhalter muss alle abdecken. |
www.typewhisper.com | Dokumentation, die im Browser geöffnet wird. |
Schaltet ein Benutzer die Verbindung für gekoppelte iPhones und iPads ein, lauscht TypeWhisper dafür im lokalen Netzwerk. Die HTTP-API lauscht nur auf der Loopback-Schnittstelle.
Cloud-Plugins kontaktieren ihren Anbieter. Die Tabelle nennt die Hosts der Plugins im Katalog, Stand TypeWhisper für Mac 1.8. Plugins mit dem Verarbeitungsort configurable erreichen den Endpunkt, Befehl oder Dienst, den der Benutzer einträgt.
| Plugin | Hosts |
|---|---|
| AssemblyAI | api.assemblyai.com, streaming.assemblyai.com |
| Cartesia | api.cartesia.ai |
| Cerebras | api.cerebras.ai |
| Claude | api.anthropic.com |
| Cohere | api.cohere.com |
| Deepgram | api.deepgram.com |
| ElevenLabs | api.elevenlabs.io |
| Fireworks AI | api.fireworks.ai, audio-prod.api.fireworks.ai, audio-turbo.api.fireworks.ai |
| Gemini | generativelanguage.googleapis.com |
| Gladia | api.gladia.io |
| Google Cloud Speech-to-Text | speech.googleapis.com, oauth2.googleapis.com |
| Groq | api.groq.com |
| Linear | api.linear.app |
| Meta | api.meta.ai |
| Microsoft AI | Die konfigurierte Azure-Ressource: *.cognitiveservices.azure.com oder <region>.api.cognitive.microsoft.com |
| Mistral AI | api.mistral.ai |
| OpenAI / ChatGPT, OpenAI Vector Memory | api.openai.com; auth.openai.com und chatgpt.com für die Anmeldung mit ChatGPT |
| OpenRouter | openrouter.ai |
| Sber SaluteSpeech | smartspeech.sber.ru, ngw.devices.sberbank.ru |
| Smallest Pulse | api.smallest.ai |
| Soniox | api.soniox.com und die Regionen eu und jp, stt-rt.* und tts-rt.* |
| Speechmatics | Die regionalen *.speechmatics.com-Hosts |
| Vercel AI Gateway | ai-gateway.vercel.sh |
| xAI / Grok | api.x.ai |
| Reson8 | api.reson8.dev oder der konfigurierte Endpunkt |
| MemPalace | api.mempalace.cloud oder der konfigurierte Server |
| OpenAI Compatible, Cloudflare ASR, MCP Client, Obsidian, Webhook, Script Runner, File Job Script, Authenticated Provider CLIs, R2T2 | Der Endpunkt, der Befehl oder der Vault, den der Benutzer konfiguriert |
| Web Link Transcription | Die Websites der Links, die Benutzer transkribieren, über yt-dlp |
Modelle und Plugins bereitstellen
- TypeWhisper liest das Profil beim Start vor allem anderen. Ein Profil, das beim ersten Start vorhanden ist, gilt also sofort. Verteile einschränkende Profile vor der App oder zusammen mit ihr.
- Sind
AllowModelDownloadsoderAllowPluginDownloadsabgeschaltet, können Benutzer Modelle oder Plugins nicht selbst laden. Modelle und Plugins liegen in~/Library/Application Supportjedes Benutzers: Lege sie dort ab, bevor die Einschränkung greift, oder erlaube Downloads für die erste Einrichtung. Kopiere nie Einstellungen oder Schlüsselbund-Einträge eines anderen Benutzers. - Die Schlüssel steuern das Verhalten von TypeWhisper, nicht das Netzwerk. Kombiniere sie mit den Netzwerkkontrollen deines MDM, wo du stärkere Garantien brauchst.
Pilottest
Prüfe vor dem Rollout auf einem verwalteten Mac mit dem Release, das du verteilst:
- Verteile das Profil und starte TypeWhisper als Standardbenutzer. Einstellungen > Erweitert > Verwaltete Einstellungen listet die Werte, ohne ungültige Schlüssel und ohne Probleme mit Richtlinien.
- Gesperrte Einstellungen zeigen „Von deiner Organisation verwaltet“, und abgelehnte Anbieter und Plugins nennen den Grund.
- Diktiere einmal mit der vorgesehenen Engine und, falls genutzt, mit einem Workflow mit Sprachmodell.
- Prüfe die Modelle, die deine Einrichtung braucht, besonders wenn Downloads abgeschaltet sind.
- Ändere einen Wert im MDM und prüfe, dass die App ihn nach etwa 30 Sekunden ohne Neustart übernimmt. Entferne das Profil und prüfe, dass die eigenen Einstellungen des Benutzers zurückkehren.
- Mit
ManagedLicenseKey: Einstellungen > Lizenz zeigt den verwalteten Zustand und die Aktivierung. Starte TypeWhisper zweimal neu und prüfe, dass Polar keine zusätzlichen Aktivierungen zeigt. Wiederhole das mit einem zweiten Benutzer und mit einem ersten Start ohne Internet, gefolgt von „Aktivierung erneut versuchen“. Ersetze danach den Schlüssel, entferne ihn und vergleiche das Ergebnis mit dem Ablauf unter „Verwalteter Lizenzschlüssel“. - Starte den Mac neu und prüfe, dass Anmeldeobjekt, Mikrofon und die übrigen Berechtigungen sich wie vorgesehen verhalten.
- Wiederhole die Prüfung mit der Mac-App-Store-Edition, wenn du sie verteilst.