Skip to content

Build secure macOS keyboard switcher#1

Merged
GDemay merged 1 commit into
masterfrom
agent/initial-open-source-release
Jul 12, 2026
Merged

Build secure macOS keyboard switcher#1
GDemay merged 1 commit into
masterfrom
agent/initial-open-source-release

Conversation

@GDemay

@GDemay GDemay commented Jul 12, 2026

Copy link
Copy Markdown
Owner

What changed

  • adds the native Keybridge macOS menu-bar application
  • implements authenticated Bonjour enrollment and encrypted peer commands
  • coordinates fenced Magic Keyboard transfers across up to three trusted Macs
  • adds retry, recovery, ownership ordering, Keychain trust, and lifecycle hardening
  • includes onboarding, settings, accessibility, packaging, diagnostics, CI, and physical acceptance tooling

Why

Apple Magic Keyboard hardware does not provide a native multi-host selector. Keybridge coordinates already paired Macs locally without forwarding keystrokes or deleting Bluetooth pairing records.

Validation

  • 48 Swift tests across core, Bluetooth simulation, networking/security, application runtime, and three-peer integration
  • strict Swift concurrency and warnings-as-errors release build
  • license, secret-pattern, and runtime-dependency policy checks
  • reproducible non-signature app bundle verification
  • release archive and SHA-256 verification
  • multiple independent code, security, reliability, UX, and lifecycle reviews

Release gate

Physical USB-C Magic Keyboard A→B→A/A→B→C→A typed-HID acceptance is intentionally still required. The current artifact is ad-hoc signed for local testing and is not a notarized public release.

@GDemay
GDemay marked this pull request as ready for review July 12, 2026 20:58
@GDemay
GDemay merged commit 77767db into master Jul 12, 2026
2 checks passed
@GDemay
GDemay deleted the agent/initial-open-source-release branch July 12, 2026 20:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant