The bridge serves any same-user process, including input
Maintainer antworten meist innerhalb von 1 Tag
Ein zugehöriger Pull Request wurde bereits gemerged.
- #120 von @iamnbutler — gemerged
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 8/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- macos, swift
- Bereich
- authorization, desktop-dev, security
Rechercherichtung
The issue concerns the bridge that serves the desktop-client binary over desktop.sock under ~/.local/state/ace-canary/, and the payload names no source files. Start by reproducing the report: run a plain process as the same user and call the socket through the client. Done would mean the runtime verifies the peer's audit token and rejects callers whose parent is not the signed Ace Helper or Ace, which is a design decision still open in the thread.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Found in the githubnext/ace#427 study, on Ace Canary 0.0.46.49–0.0.46.52.
What happens: the bridge authenticates the signed client binary, not the process that runs it. Any process running as the user can execute Ace's client against Ace's socket (~/.local/state/ace-canary/desktop-client and desktop.sock) and get every operation under Ace's Accessibility, Screen Recording and input grants. That includes clicks, inserts, keys, menus and quit.
Shown three ways:
- A plain
nodeprocess outside Ace listed apps. - Headless Claude Code (Sonnet 5.5) and Codex (gpt-6-astra) drove TextEdit end to end through the MCP server in #12.
- A channel shell can do the same while that channel's desktop tools are off.
Why it matters:
- githubnext/ace#379 accepted that shell capture bypasses the off toggle. This extends that to input.
- Nothing in Ace records that an outside caller acted.
- macOS shows only Ace as holding the grants.
Options:
- Same-uid code can't be fully excluded; any secret on disk is readable by it. The bar can still be raised: have the runtime check the peer's audit token, and require that the client's parent is the signed Ace Helper or Ace.
- A deliberate route for outside agents can then be offered: a standalone signed host app with its own grants, or Ace-hosted MCP that pairs with a channel. See the stretch notes on #12.
At minimum, this belongs in githubnext/ace#427's known gaps and in Ace's desktop tools docs.
- Vorherrschende Sprache
- Swift
- Sterne
- 0
- Forks
- 0
- Ø Merge
- 19 Min.
- Gemergte PRs (30 T.)
- 107
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus githubnext/desktop-tools
-
ace documentation
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 79/100
githubnext/desktop-tools#104 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Linux support (meta)Offen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
githubnext/desktop-tools#136 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Select text in a PDFOffen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 52/100
githubnext/desktop-tools#130 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 42/100
githubnext/desktop-tools#129 ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
githubnext/desktop-tools#117 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in githubnext/desktop-tools
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
raullenchai/Rapid-MLX#4889 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 75/100
Maintainer antworten meist innerhalb von 1 Tag
-
iOS-2026
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
mozilla-mobile/firefox-ios#36150 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 83/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
openwatersio/slackwater-ios#736 ·
Maintainer antworten meist innerhalb von 1 Tag