The bridge serves any same-user process, including input
Mantenedores costumam responder em até 1 dia
Um pull request relacionado já foi integrado.
- #120 de @iamnbutler — integrado
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 8/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Ativa
- Stack de tecnologia
- macos, swift
- Domínio
- authorization, desktop-dev, security
Direção de pesquisa
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.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
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.
- Linguagem predominante
- Swift
- Estrelas
- 0
- Forks
- 0
- Merge médio
- 19min
- PRs com merge (30d)
- 107
Preparar o ambiente
Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de githubnext/desktop-tools
-
ace documentation
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 79/100
githubnext/desktop-tools#104 ·
Mantenedores costumam responder em até 1 dia
-
Linux support (meta)Aberta
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
githubnext/desktop-tools#136 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Select text in a PDFAberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 52/100
githubnext/desktop-tools#130 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 42/100
githubnext/desktop-tools#129 ·
Mantenedores costumam responder em até 1 dia
-
enhancement
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
githubnext/desktop-tools#117 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
Todas as issues de githubnext/desktop-tools
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
SwiftKickMobile/skai#84 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
raullenchai/Rapid-MLX#4889 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 75/100
Mantenedores costumam responder em até 1 dia
-
iOS-2026
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
mozilla-mobile/firefox-ios#36150 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 83/100