Für Videos arbeite ich parallel auf zwei Notebooks: Auf dem Mac schneide und rendere ich, auf dem Windows-Notebook laufen PowerShell-Skripte und die Verbindungen zu Azure und Microsoft Entra. Jeder Wechsel kostete drei Knöpfe – dutzende Male pro Stunde. Mit vier Gratis-Bausteinen geht das jetzt per Sprache: ddcctl schaltet den Eingang des Monitors, Deskflow reicht Maus, Tastatur und Zwischenablage über das Netzwerk an das Windows-Notebook weiter, und ein Apple-Kurzbefehl verbindet beides mit Siri. Der Artikel zeigt den Aufbau, die Komponenten, sechs Stolpersteine und wie man den SSH-Zugang dafür sauber absichert.

KVM-Switch per Sprachbefehl umschalten
Videoschnitt auf dem Mac, PowerShell und Azure auf Windows – der KVM-Switch im Monitor steuert beide Notebooks. Ein Satz genügt: „Hey Siri, Windows.“ oder „Hey Siri, Mac.“ – Bild, Ton, Tastatur und Maus wechseln mit, die Zwischenablage auch. Kein Knopf, keine Kabel umstecken.
Das Ergebnis in einem Satz
„Hey Siri, Windows.“ – und in wenigen Sekunden zeigt der Monitor das Windows-Notebook. Maus und Tastatur werden gleich mit umgeschaltet – und sogar der Ton: Die Boxen hängen am Monitor und spielen automatisch das Notebook, das gerade zu sehen ist.
„Hey Siri, Mac.“ – und alles ist wieder beim Mac.
Der eigentliche Wow-Effekt: Ich fahre mit der Maus vom Bildschirm des MacBook Pro links über den grossen Monitor bis auf das Windows-Notebook rechts – in einem einzigen Zug, als wären alle Bildschirme eine einzige Oberfläche. Kein Umstecken, kein Knopf, kein Sprachbefehl nötig: Die Maus kennt keine Gerätegrenzen mehr.
Als Bonus wandert die Zwischenablage mit: Was ich auf dem Mac kopiere, füge ich unter Windows ein. Und es ist egal, ob gerade der Mac, das iPhone oder die Apple Watch zuhört.

Links das MacBook Pro für den Videoschnitt, in der Mitte der 34-Zoll-Monitor, rechts das HP EliteBook. Eine Tastatur, eine Maus – für beide Notebooks.
Der Arbeitsplatz

So sieht der Arbeitsplatz aus:
| Gerät | Rolle |
|---|---|
| MacBook Pro (links) | 64 GB 2667 MHz DDR4 – und immer noch top: • Videoschnitt • Fusion 360 (CAD/CAM) • Publikationen und Webarbeiten • Sprachsteuerung per Siri |
| Samsung ViewFinity S65TC, 34 Zoll, 3440 × 1440 (Mitte) | ein Bildschirm für beide Notebooks: • 34 Zoll, 21:9-Format • Thunderbolt 4 mit 90 W Ladeleistung • Integrierter KVM-Switch • Perfekt für den Mac |
| HP EliteBook (rechts) | Notebook für PowerShell und Azure – dafür muss ich leider auf Windows arbeiten |
| Apple Magic Keyboard · Apple Magic Trackpad | Tastatur und Trackpad – über Deskflow auch für Windows |
| Logitech MX Keys for Business | zweite Tastatur mit drei Kanälen |
| 3Dconnexion CadMouse Pro Wireless | Maus – eine für beide Notebooks |
| Edifier-Boxen | schlank und kraftvoll, schlicht und elegant |
Der Monitor ist der heimliche Star: Ein einziges Thunderbolt-4-Kabel zum Mac überträgt das Bild, lädt den Mac mit 90 Watt und bindet den USB-Hub und das Netzwerk des Monitors an. Er hat zusätzlich HDMI, DisplayPort, einen Thunderbolt-4-Downstream für Zubehör, einen USB-B-Upstream und einen eingebauten KVM-Switch (dazu gleich mehr). Und das Beste: Ich habe ihn bei Galaxus als geprüfte Retoure gekauft – für CHF 250.00. Für einen 34-Zöller mit Thunderbolt und 90 Watt Ladeleistung ein echtes Schnäppchen. Tipp: Der Blick in die Rubriken „Gebraucht & geprüft“ und „B-Ware“ lohnt sich.
Ein persönliches Highlight sind die Edifier-Boxen links und rechts vom Monitor: klein, weiss, passend zum Bildschirm. Sie klingen deutlich grösser, als sie aussehen. Der Clou: Sie hängen am Kopfhörer-Ausgang des Monitors, verbunden über ein simples Kabel von 3,5-mm-Klinke auf Cinch. Der Bildschirm gibt immer den Ton des Notebooks aus, das er gerade zeigt. Schalte ich auf Windows, kommt auch der Ton von Windows. Kein Kabelumstecken, keine Audio-Einstellungen. Beim Videoschnitt höre ich den Mac, ein Satz zu Siri, und der Ton kommt vom Windows-Notebook.
Das Windows-Notebook hängt per HDMI am Monitor und hat sein eigenes Netzteil. Elegant ist das nicht, stört mich aber auch nicht, ist ja nur ein Windows. Das Kabel ist aus der Schrottkiste. (Wie es auch mit einem einzigen ginge, steht weiter unten.)
Warum ich das gebraucht habe
Ich produziere gerade ein Video zum Zero Trust Assessment, also zur Prüfung, wie gut eine Microsoft-365- und Azure-Umgebung nach dem Zero-Trust-Prinzip abgesichert ist. Dafür brauche ich zwei Welten gleichzeitig:
- Auf dem Mac entsteht das Video: Das Storyboard erstelle ich mit Cursor, einem KI-Code-Editor, und schicke es von dort per API an HeyGen. HeyGen erzeugt daraus die Szenen mit meinem KI-Avatar. Danach schaue ich mir eine Vorschau an, komponiere die Szenen, bearbeite Bilder und rendere. Dafür ist der Mac gemacht.
- Auf dem Windows-Notebook laufen die PowerShell-Skripte, die Verbindungen zu Azure und Microsoft Entra und das Assessment selbst. Dafür ist Windows gemacht.
Optional, für mehr Sicherheit: Der kleine MikroTik-Switch unter dem Schreibtisch läuft mit RouterOS und kann mehr als nur verteilen. Wer möchte, kann damit das HP EliteBook und das Teams-Telefon in ein eigenes, abgeschottetes Netz nehmen, das aus dem Heimnetz nicht erreichbar ist – die beiden Netze sehen sich dann nicht. Die einzige gewollte Ausnahme: Der Mac darf das EliteBook über den Deskflow-Port erreichen, sonst wandern Maus und Tastatur nicht mehr mit.
Das heisst: Skript starten auf Windows, Ergebnis ansehen, zum Mac wechseln, Szene schneiden, wieder auf Windows, nächster Befehl, Screenshot, weiter zum Schnitt … Jeder Wechsel bedeutete bisher drei Knöpfe: am Monitor den Eingang, an der Tastatur die Kanaltaste, unten an der Maus den Umschalter. Dutzende Male pro Stunde. Und irgendwann tippt man den Befehl ins falsche Fenster.
Im Alltag wäre das ein nettes Extra. Bei so einem Projekt spart es richtig Zeit, und der Kopf bleibt beim Video statt bei den Knöpfen.
Ein zusätzliches KVM-Kästchen auf dem Tisch brauchte ich dafür nicht. Der Monitor hatte es schon eingebaut.
Tipp: Der KVM-Switch steckt schon im Monitor
Das wissen viele nicht: Der Samsung ViewFinity S65TC hat einen KVM-Switch eingebaut. Wer diesen Monitor kauft, braucht kein zusätzliches Umschalt-Kästchen.
So funktioniert er: Tastatur und Maus (oder deren Funkempfänger) stecken am USB-Hub des Monitors. Der Mac hängt per Thunderbolt 4 am Upstream-Anschluss (mit 90 W). Ein zweites Notebook hängt mit HDMI oder DisplayPort für das Bild am Monitor und zusätzlich mit einem USB-B-Kabel am USB-B-Upstream für den Hub. Wechselt man den Eingang, wandern Tastatur und Maus automatisch mit zum anderen Notebook.
Der Sprachbefehl funktioniert damit genauso. ddcctl schaltet den Eingang, und der eingebaute KVM nimmt Tastatur und Maus gleich mit. Monitor kaufen, zwei Kabel stecken, Kurzbefehl anlegen, fertig.
Warum ich trotzdem Deskflow nutze: Mein Windows-Notebook hängt per HDMI am Monitor (HDMI überträgt kein USB, dafür bräuchte es zusätzlich ein USB-B-Kabel zum Upstream-Port des Monitors), meine Tastatur und Maus sind per Bluetooth und Funk mit dem Mac verbunden, und ich wollte die gemeinsame Zwischenablage. Wer es einfacher mag: Der eingebaute KVM reicht völlig.
Vier Bausteine, alle kostenlos
1. Der Monitor wechselt den Eingang: ddcctl
Fast jeder Monitor versteht Befehle über das Bildschirmkabel – der Standard heisst DDC/CI. Das kleine Open-Source-Tool ddcctl schickt so einen Befehl vom Mac an den Monitor: „Wechsle auf Eingang 17“ (HDMI, Windows) oder „Wechsle auf Eingang 56“ (Thunderbolt, Mac).
ddcctl -d 1 -i 17 # Monitor zeigt das Windows-Notebook
ddcctl -d 1 -i 56 # Monitor zeigt wieder den Mac
Welche Zahl zu welchem Eingang gehört, ist je nach Monitor verschieden. Einmal ausprobieren, dann steht es fest.
2. Maus und Tastatur wandern mit: Deskflow
Deskflow ist ein kostenloser Software-KVM (der Nachfolger von Synergy und Barrier). Tastatur und Maus bleiben per Funk bzw. Bluetooth fest am Mac. Deskflow schickt die Bewegungen und Tastendrücke über das Heimnetz an das Windows-Notebook – verschlüsselt (TLS). Für Windows sieht das aus wie eine angeschlossene Maus.
Der Mac ist der Server, das Windows-Notebook der Client. In der Server-Konfiguration steht nur, wo der zweite Bildschirm liegt, plus zwei Tastenkürzel:
section: links
mac:
right = windows
windows:
left = mac
end
section: options
clipboardSharing = true
keystroke(Control+Alt+Super+w) = switchToScreen(windows)
keystroke(Control+Alt+Super+m) = switchToScreen(mac)
end
So entsteht die durchgehende Oberfläche: Der Mauszeiger läuft über die Bildschirmkante weiter auf das andere Notebook. Damit gibt es drei Wege zum Umschalten: die Maus über den rechten Bildschirmrand schieben, ctrl + opt + cmd + W / M drücken oder Siri fragen.
3. Siri verbindet beides: ein Kurzbefehl per SSH
Ein Apple-Kurzbefehl „Windows“ enthält genau eine Aktion: Skript über SSH ausführen – auf dem Mac selbst. Das hat einen Grund: Sagt man „Hey Siri“, hört oft das iPhone oder die Watch zu, und dort können keine Mac-Skripte laufen. Über SSH landet der Befehl trotzdem immer auf dem Mac.
Das Skript schaltet den Monitor um und stösst dann Deskflow an. Das war der kniffligste Teil (dazu gleich mehr).
Per Sprache oder per Tipp: Der Kurzbefehl läuft vom Mac, vom iPhone und von der Apple Watch – und wer gerade nicht sprechen will, tippt einfach:
- iPhone: als Widget auf dem Home-Bildschirm, im Kontrollzentrum oder auf der Aktionstaste
- Apple Watch: als Komplikation direkt auf dem Zifferblatt – ein Tipp aufs Handgelenk
- Mac: in der Menüleiste oder per Tastenkürzel
4. Die Hilfsprogramme „kvm-hotkey“ und „DF-Umschalter“
Deskflow reagiert nur auf Tastendrücke, die wie echte Tastatureingaben ankommen – ein per AppleScript gesendetes ctrl + opt + cmd + W ignoriert es (siehe Stolperstein 2). Deshalb gibt es zwei kleine, selbst gebaute Mac-Programme ohne Fenster:
- kvm-hotkey ist der eigentliche Mechanismus. Es simuliert die Deskflow-Hotkey-Kombination per
CGEvent(keyboardEventSource:…)(Swift-Gegenstück zuCGEventCreateKeyboardEvent): ctrl + opt + cmd + W für Windows, ctrl + opt + cmd + M für den Mac – dieselben Tasten, die ich auch von Hand drücken könnte. - DF-Umschalter ist der zusätzliche Mechanismus: Er schiebt den Mauszeiger kurz über den Bildschirmrand, was Deskflow ebenfalls erkennt (→ Windows über den rechten, → Mac über den linken Rand).
Das Gate-Skript ddc-gate.sh (siehe Abschnitt Sicherheit) schaltet den Monitor um und startet dann beide Programme. Der DF-Umschalter wird angestossen, kvm-hotkey folgt sofort. Die beiden Mechanismen laufen praktisch gleichzeitig. Den Randtrick allein habe ich anfangs benutzt, er war aber nicht zuverlässig: Nach dem Sprachbefehl schaltete der Monitor um, doch Maus und Tastatur reagierten unter Windows nicht immer. Erst ein manuelles ctrl + opt + cmd + W half. Seit dem 28.9.2026 läuft deshalb die Hotkey-Simulation mit. Sie ist noch jung und erst wenige Tage im Alltag im Einsatz.
Der Code von kvm-hotkey, rund 30 Zeilen Swift:
// kvm-hotkey: simuliert die echte Tastenkombination, die Deskflow
// selbst für den Screen-Wechsel konfiguriert hat:
// Ctrl+Option+Cmd+W -> Windows
// Ctrl+Option+Cmd+M -> Mac
// Aufruf: kvm-hotkey windows | mac
import CoreGraphics
import Foundation
let kVK_Control: CGKeyCode = 0x3B
let kVK_Option: CGKeyCode = 0x3A
let kVK_Command: CGKeyCode = 0x37
let kVK_W: CGKeyCode = 0x0D
let kVK_M: CGKeyCode = 0x2E
func post(_ key: CGKeyCode, down: Bool, flags: CGEventFlags) {
guard let ev = CGEvent(keyboardEventSource: nil,
virtualKey: key,
keyDown: down) else { return }
ev.flags = flags
ev.post(tap: .cghidEventTap)
usleep(15_000)
}
let args = CommandLine.arguments
guard args.count >= 2,
(args[1] == "windows" || args[1] == "mac") else {
print("usage: kvm-hotkey windows|mac")
exit(1)
}
let letter: CGKeyCode = args[1] == "windows" ? kVK_W : kVK_M
let allMods: CGEventFlags = [.maskControl, .maskAlternate, .maskCommand]
post(kVK_Control, down: true, flags: .maskControl)
post(kVK_Option, down: true, flags: [.maskControl, .maskAlternate])
post(kVK_Command, down: true, flags: allMods)
post(letter, down: true, flags: allMods)
post(letter, down: false, flags: allMods)
post(kVK_Command, down: false, flags: [.maskControl, .maskAlternate])
post(kVK_Option, down: false, flags: .maskControl)
post(kVK_Control, down: false, flags: [])
Der Randtrick des DF-Umschalters, ebenfalls rund 30 Zeilen Swift:
// DF-Umschalter: schaltet Deskflow um, indem es die
// Maus kurz ueber den Bildschirmrand schiebt.
// Aufruf: DF-Umschalter windows | mac
// (Windows liegt in Deskflow rechts vom Mac)
import CoreGraphics
import Foundation
let args = CommandLine.arguments.dropFirst()
let ziel = args.first?.lowercased() ?? ""
let src = CGEventSource(stateID: .hidSystemState)
func stoss(bei p: CGPoint, dx: Int64) {
let e = CGEvent(mouseEventSource: src,
mouseType: .mouseMoved,
mouseCursorPosition: p,
mouseButton: .left)!
e.setIntegerValueField(.mouseEventDeltaX,
value: dx)
e.post(tap: .cghidEventTap)
}
if ziel == "windows" {
// rechte Kante aller Mac-Bildschirme finden
var ids = [CGDirectDisplayID](repeating: 0,
count: 16)
var n: UInt32 = 0
CGGetActiveDisplayList(16, &ids, &n)
var maxX: CGFloat = 0, midY: CGFloat = 0
for i in 0..<Int(n) {
let b = CGDisplayBounds(ids[i])
if b.maxX > maxX { maxX = b.maxX; midY = b.midY }
}
// Maus in kleinen Schritten ueber den Rand schieben
for s in 0...10 {
let x = min(maxX - 1, maxX - 30 + CGFloat(s * 6))
stoss(bei: CGPoint(x: x, y: midY), dx: 8)
usleep(20_000)
}
} else if ziel == "mac" {
// nach links, bis Deskflow zum Mac zurueckwechselt
let pos = CGEvent(source: nil)!.location
for _ in 1...80 {
stoss(bei: pos, dx: -120)
usleep(8_000)
}
}
So wird daraus ein Programm:
APP="$HOME/Applications/DF-Umschalter.app"
mkdir -p "$APP/Contents/MacOS"
swiftc -O umschalter.swift \
-o "$APP/Contents/MacOS/DF-Umschalter"
# dazu eine kleine Info.plist: CFBundleIdentifier,
# CFBundleExecutable und LSUIElement = true
# (kein Dock-Symbol, kein Fenster)
codesign --force -s - "$APP"
Danach einmal unter Datenschutz & Sicherheit → Bedienungshilfen DF-Umschalter hinzufügen und einschalten. Nur er darf die Maus bewegen. macOS bindet die Berechtigung an ein signiertes Bundle, deshalb braucht es eine eigene App statt eines Skripts. Eine kleine, eigenständige App bekommt eine eigene Freigabe; die Kurzbefehle-App bekam sie bei mir nicht zuverlässig. (Zu den Grenzen dieser Freigaben siehe den Hinweis am Ende dieses Abschnitts.)
Der Siri-Kurzbefehl „Windows“ schickt per SSH eine feste Befehlszeile an den Mac:
/usr/local/bin/ddcctl -d 1 -i 17; /usr/bin/open -g "$HOME/Applications/DF-Umschalter.app" --args windows
Ausgeführt wird dieser Text allerdings nie: Das Gate-Skript (siehe Abschnitt Sicherheit) erkennt die Zeile und startet stattdessen die dort fest hinterlegten Befehle.
Was daraufhin passiert (Monitor-Eingang umschalten, DF-Umschalter und kvm-hotkey starten), legt dieses kleine Skript auf dem Mac fest. Es dient gleichzeitig als Sicherheitsschranke, dazu gleich mehr.
Berechtigungen unter macOS: Deskflow, deskflow-core, DF-Umschalter und kvm-hotkey brauchen unter Datenschutz & Sicherheit die Freigaben Bedienungshilfen und Eingabeüberwachung. Weil die selbstgebauten Programme nur ad hoc signiert sind, setzt macOS diese Freigaben nach einem Rebuild oder einem Update gern stillschweigend zurück. Das Symptom: Der Bildschirm schaltet um, aber Tastatur und Maus reagieren nicht. Dann zuerst die Freigaben prüfen.
Die Tastatur: bewusst nur an einem Kanal
Die Logitech MX Keys hat oben links drei Easy-Switch-Tasten, eine pro gekoppeltem Gerät. Ich nutze davon bewusst nur Kanal 1: Die Tastatur ist ausschliesslich mit dem Mac gekoppelt (über den Logi-Bolt-Empfänger) und steht im macOS-Layout-Modus. Deskflow leitet die Eingaben in Software an das Windows-Notebook weiter.
Die Easy-Switch-Tasten fasse ich nicht an. Ein Druck löst eine neue Kopplung aus und kollidiert mit der Software-Weiterleitung: Die Tastatur hängt dann direkt am anderen Gerät und geht für Deskflow verloren (siehe Stolperstein 5).
Tastenbelegung: Die MX Keys merkt sich für jeden Kanal das Betriebssystem. Einmal fn + O (3 Sekunden) auf Kanal 1 stellt auf Mac um – dann liegen ⌘ und ⌥ dort, wo sie hingehören. Damit unter Windows trotzdem alles wie beschriftet bleibt, tauscht Deskflow Alt und Windows-Taste für den Windows-Bildschirm wieder zurück (siehe Stolperstein 1).
Die sechs Stolpersteine (und wie ich sie gelöst habe)
1. Die Tastenbelegung – der grösste Stolperstein! Für eingefleischte Mac-Nutzer ist eine fremde Tastatur ein Horror: Das Mac-Keyboard hat links unten vier Tasten – fn, control, option, command. Die Logitech MX Keys hat nur drei: ctrl, opt/start und cmd/alt. Steht sie im Windows-Modus, landet ⌘ auf der Taste „start“ – und cmd + C, cmd + V, cmd + X greifen ins Leere. Jeder Kopiervorgang wird zum Suchspiel.

Die Lösung für alle, die auf beiden Plattformen arbeiten: Die MX Keys merkt sich pro Kanal das Betriebssystem. Einmal fn + O (3 Sekunden gedrückt halten) auf dem Mac-Kanal – dann liegt ⌘ auf „cmd/alt“, genau dort, wo der Daumen es vom Mac gewohnt ist. Damit unter Windows trotzdem alles wie beschriftet bleibt (Strg + C, Windows-Taste auf „start“, Alt auf „alt“), tauscht Deskflow für den Windows-Bildschirm Alt und Windows-Taste wieder zurück – zwei Zeilen in der Konfiguration:
section: screens
windows:
alt = super
super = alt
end
2. Deskflow reagiert nicht auf „künstliche“ Tastendrücke. Die naheliegende Idee – der Kurzbefehl drückt per AppleScript ctrl + opt + cmd + W – funktioniert nicht. Deskflow nimmt Hotkeys nur von Eingaben an, die wie echte Tasten ankommen. Meine erste Lösung war der DF-Umschalter (siehe oben): Er schiebt den Mauszeiger kurz über den Bildschirmrand, was Deskflow erkennt. Allein war das aber nicht zuverlässig – manchmal schaltete der Monitor um, und Maus und Tastatur blieben unter Windows stumm. Deshalb simuliert jetzt zusätzlich kvm-hotkey die echte Tastenkombination (ctrl + opt + cmd + W bzw. M) (siehe Abschnitt 4). Beide laufen parallel; der Hotkey ist der Hauptweg.
3. macOS fragt nach Berechtigungen – und merkt sie sich nicht immer. Programme, die Maus oder Tastatur steuern, brauchen die Freigabe unter Datenschutz & Sicherheit → Bedienungshilfen. Die Kurzbefehle-App selbst bekam sie bei mir trotz Häkchen nicht zuverlässig. Ein eigenes kleines Hilfsprogramm mit eigener Freigabe war die bessere Lösung – solange das Programm unverändert bleibt: Nach einem Rebuild oder Update setzt macOS die Freigabe bei ad hoc signierten Programmen gern zurück (siehe Hinweis zu den Berechtigungen oben). Tipp: Nach dem Freigeben das betroffene Programm neu starten.
4. Die Maus ruckelt? WLAN-Energiesparen unter Windows. Die Verbindung zum Windows-Notebook hatte anfangs Aussetzer: im Schnitt 33 ms, Spitzen über 100 ms. Schuld war der Energiesparmodus der WLAN-Karte. Im Geräte-Manager abgeschaltet – danach 3,5 ms und eine flüssige Maus.
5. Tastatur und Maus nur an einem Notebook koppeln. Wer die Maus zusätzlich per Bluetooth mit Windows koppelt, bekommt Chaos: Sie springt direkt zu Windows, und Deskflow verliert sie. Also: Tastatur und Maus nur am Mac, Deskflow übernimmt den Rest.
6. Nach dem Ändern der Konfiguration: Server neu starten. Klingt banal, hat mich aber eine halbe Stunde gekostet: Deskflow lief noch mit der alten, leeren Konfiguration. Kein Übergang, keine Hotkeys – bis zum Neustart.
Sicherheit: SSH ja, aber mit angezogener Handbremse
Ein SSH-Schlüssel, mit dem das iPhone Befehle auf dem Mac ausführen darf, ist mächtig. Deshalb erlaubt dieser Schlüssel nur vier fest hinterlegte Befehlszeilen. Zwei davon wechseln lediglich den Monitor-Eingang, die beiden anderen steuern zusätzlich Deskflow um. In der Datei authorized_keys bekommt der Schlüssel der Kurzbefehle einen Vorsatz:
restrict,command="/Users/<benutzer>/.ssh/ddc-gate.sh"
Dahinter folgt, in derselben Zeile und durch ein Leerzeichen getrennt, wie gewohnt der Schlüssel selbst (ssh-ed25519 AAAA… Kurzbefehle auf iPhone).
Das Skript ddc-gate.sh prüft den angefragten Befehl gegen eine feste Liste. Ausgeführt werden immer die im Skript hinterlegten Befehle, nie der übergebene Text selbst:
#!/bin/sh
# ddc-gate.sh – erlaubt dem Kurzbefehle-Schlüssel nur diese vier Zeilen.
# Ausgeführt werden immer die hier hinterlegten Befehle.
DF="/Users/<benutzer>/Applications/DF-Umschalter.app"
HOTKEY="/Users/<benutzer>/Applications/kvm-helpers/kvm-hotkey"
case "$SSH_ORIGINAL_COMMAND" in
"/usr/local/bin/ddcctl -d 1 -i 56")
exec /usr/local/bin/ddcctl -d 1 -i 56 ;;
"/usr/local/bin/ddcctl -d 1 -i 17")
exec /usr/local/bin/ddcctl -d 1 -i 17 ;;
'/usr/local/bin/ddcctl -d 1 -i 17; /usr/bin/open -g "$HOME/Applications/DF-Umschalter.app" --args windows')
/usr/local/bin/ddcctl -d 1 -i 17
/usr/bin/open -g "$DF" --args windows
exec "$HOTKEY" windows ;;
'/usr/local/bin/ddcctl -d 1 -i 56; /usr/bin/open -g "$HOME/Applications/DF-Umschalter.app" --args mac')
/usr/local/bin/ddcctl -d 1 -i 56
/usr/bin/open -g "$DF" --args mac
exec "$HOTKEY" mac ;;
*) echo "nicht erlaubt: $SSH_ORIGINAL_COMMAND" >&2; exit 1 ;;
esac
Wer den Schlüssel stiehlt, kann damit den Monitor umschalten, sonst nichts. Dazu kommt: restrict verbietet Weiterleitungen und Terminal, Deskflow verschlüsselt per TLS, und nichts davon läuft über eine Cloud.
Und wenn man das HDMI-Kabel nicht will?
Der S65TC hat einen Thunderbolt-4-Eingang, den Upstream. Er liefert die 90 Watt, die ein Notebook zum Laden braucht, und den belegt der Mac. Der zweite Thunderbolt-Anschluss ist ein Downstream für Zubehör und kein Eingang für ein Notebook. Das zweite Notebook hängt deshalb per HDMI oder DisplayPort am Monitor. Damit der KVM-Switch Tastatur und Maus mitnimmt, kommt ein USB-B-Kabel vom Notebook zum USB-B-Upstream-Port hinzu, und geladen wird mit dem Netzteil des Notebooks. Wer beide Notebooks mit je einem einzigen Kabel (Bild + Strom + USB) anschliessen möchte, hat zwei Möglichkeiten:
- Ein Monitor mit zwei USB-C-/Thunderbolt-Eingängen mit voller Ladeleistung. Einige Business-Monitore bieten das.
- Ein USB-C-KVM-Dock zwischen Notebooks und Monitor, das beide Notebooks lädt und das Bild umschaltet.
Für mich ist das HDMI-Kabel der pragmatische Weg, da das Kabel vorhanden war.
Zum Nachbauen
Alles, was man braucht, kostenlos:
- Deskflow – github.com/deskflow/deskflow (macOS, Windows, Linux)
- ddcctl – kleines Kommandozeilen-Tool für DDC/CI am Mac
- Kurzbefehle / Siri – ist auf jedem Mac und iPhone dabei
- kvm-hotkey und DF-Umschalter – zwei kleine Swift-Programme, selbst gebaut; der DF-Umschalter ist oben als Code abgedruckt
- ein Monitor mit DDC/CI (haben fast alle)
- optional: Aktivboxen am Kopfhörer-Ausgang des Monitors (Kabel 3,5-mm-Klinke auf Cinch) – dann wechselt auch der Ton mit
📄 Die Kurzanleitung mit allen Tastenkürzeln zum Ausdrucken: Mac ↔ Windows umschalten (PDF)
Fazit
Vier Gratis-Werkzeuge, Cursor & Claude eine Stunde tüfteln lassen, und der Arbeitsplatz fühlt sich an wie aus einem Guss. Beim Zero-Trust-Video springe ich jetzt dutzende Male pro Stunde zwischen Schnitt und PowerShell hin und her, ohne einen einzigen Knopf zu suchen. Ein Satz genügt, und ich arbeite weiter.
Mein nächstes Projekt: Einkaufen mit KI – bei Migros
Der nächste Umbau betrifft die Küche. Die Idee:
- Kühlschrank auf, Handy raus: Fotos vom Kühlschrank, ein kurzes Video vom Vorratsregal.
- Die App erkennt, was da ist – und was fehlt. Sie weiss, was wir gerne essen.
- Vorschläge für die nächste Woche: asiatisch, polnisch, französisch, italienisch oder schweizer Küche – ganz egal, worauf wir Lust haben.
- Bestellen per Migros-App – und die Sachen werden geliefert.
So macht Einkaufen wieder Spass. Eine Erfahrung, die uns überrascht hat: Wir haben den Eindruck, dass Obst und Gemüse aus der Lieferung frischer sind und nicht angedatscht. Sie sind eben nicht schon durch tausend Grabbelfinger gegangen wie in der Auslage im Laden.
Was kostet die Lieferung? Laut Migros-Hilfe kostet eine Lieferung ab CHF 99 Warenwert CHF 7.90, ab CHF 160 noch CHF 4.90, ab CHF 200 ist sie gratis – dazu kommen bei stark ausgelasteten Zeitfenstern CHF 1 bis 2 Zuschlag. Mit dem Lieferpass entfallen Lieferkosten und Zuschläge ab CHF 99 Bestellwert ganz:
| Lieferpass | Preis | Pro Monat | Bemerkung |
|---|---|---|---|
| 12 Monate | CHF 118.80 | CHF 9.90 | lohnt ab zwei Lieferungen im Monat unter CHF 200 |
| 6 Monate | CHF 65.40 | CHF 10.90 | kürzer gebunden, dafür CHF 1 mehr pro Monat |
Wer mehr als einmal im Monat für unter CHF 200 bestellt, fährt mit dem Jahrespass günstiger: Schon zwei Lieferungen à CHF 7.90 kosten mehr als die CHF 9.90 pro Monat.
Mehr dazu, wenn es läuft, hier im Blog.
Aktualisiert am 30.9.2026: Umschaltung über Hotkey-Simulation statt Mauszeiger-Trick.
Recherche und Entwurf KI-gestützt, geprüft und freigegeben von Andreas Brauckmann · So arbeitet die Redaktion
Änderungshistorie
- — Foto des Arbeitsplatzes im Abschnitt „Der Arbeitsplatz“ ergänzt; Aufgaben von MacBook Pro und HP EliteBook sowie Beschreibung von Monitor und Boxen in der Tabelle überarbeitet; Satz zum Windows-Anschluss angepasst.
- — Anschlüsse des Monitors ergänzt: Thunderbolt-Upstream, Thunderbolt-Downstream und USB-B-Upstream für den KVM.
- — Umschaltung über Hotkey-Simulation (kvm-hotkey) statt Mauszeiger-Trick, mit Code von kvm-hotkey und aktuellem Gate-Skript; Berechtigungs-Hinweis für macOS ergänzt; Tastatur-Abschnitt auf Kanal 1 angepasst, Easy-Switch-Bild entfernt; Monitor-Kauf als geprüfte Retoure korrigiert.
- — Titel gekürzt, quadratisches Vorschaubild für die Startseite ergänzt.
- — Artikel veröffentlicht: Video mit Ton statt Autoplay-stumm, ohne Endlosschleife, Maus-über-alle-Screens-Ausschnitt; Tastenbelegung als Stolperstein-Hinweis ergänzt.