Until last week I could ask the agent to run a skill updating a few repositories with git over ssh.
I have two github identities with different ssh keys and suffixed github aliases (eg. [email protected]) that were also working fine.
Yesterday I updated to macOS 27 (apple silicon) and tried running the skill again after several days and it’s failing a lot on git operations, sometimes it reports failing to resolve the github.com or ssh.github.com hostnames or timing out on SSH port 22 with and without the sandbox, and resorted to tell git to use a specific ssh command with the path to the ssh key for the identity and on a different port 443) to succeed.
If I run the fetch/pull/push commands from my terminal normally no issues, this only happens through agents.
For AI issues: which model did you use?
Model name (e.g., Sonnet 4, Tab…)
For AI issues: add Request ID with privacy disabled
Request ID: f9a7046a-279b-47e5-ab48-6e8dc12daba1
For Background Agent issues, also post the ID: bc-…
Additional Information
Add any other context about the problem here.
Does this stop you from using Cursor?
Yes - Cursor is unusable
Sometimes - I can sometimes use Cursor
No - Cursor works, but with this issue
The more details you provide, the easier it is for us to reproduce and fix the issue. Thanks!
This looks like macOS’s Local Network privacy setting rather than something in the git/ssh path itself. macOS treats an app and everything it launches as one unit for local network access, and a major OS upgrade can reset or re-enforce that state. If your Mac’s DNS server is your router (normal on a home network), name lookups from commands the agent runs get blocked while Terminal.app, which already has the permission, keeps working. Cursor is currently missing the declaration that would make macOS show the permission prompt for it, so it can fail silently. We are tracking that.
Quick check to confirm, two commands:
In Cursor, open a new Agent chat and ask it to run: ping -c 2 $(route -n get default | awk '/gateway/{print $2}')
Run the exact same command in Terminal.app.
If step 1 fails (typically “No route to host” or no replies) and step 2 works, it is the Local Network permission.
Workarounds that other users have confirmed:
Quit Cursor fully, then start it from Terminal.app with /Applications/Cursor.app/Contents/MacOS/Cursor & so it inherits Terminal’s local network permission. This is the most reliable one.
Open System Settings > Privacy & Security > Local Network. If Cursor is listed, enable it and restart Cursor. If it is not listed, toggling any other app off and on again sometimes makes macOS re-read permissions.
Point your Mac’s DNS at a public resolver (for example 1.1.1.1 or 8.8.8.8) in System Settings > Network so lookups no longer go through the router.
Your SSH-over-443 setup (HostName ssh.github.com, Port 443) is a fine fallback to keep.
Could you reply with the output of both ping commands and whether Cursor shows up in the Local Network list?
I noticed git through ssh was also hanging when ran manually in the terminal (I thought it wasn’t doing it), I installed openssh with homebrew and it started working with that one, weird
@Colin I have yet to re-try the same skill that was failing on git requests through Cursor, I had noticed ssh wasn’t working manually in the terminal either. The homebrew openssh seemed like a fix but wasn’t really needed as the ssh returned to work again manually in the terminal.
Running just 1 git command in the cursor agent works fine (I just tried it), I guess the agents were flooding github and were therefore rate-limited and that might have been the reason of the failing git commands.
What’s strange is that until a week ago the same skill working on multiple repos was working fine (eg. fetch + pull, make a commit, push which is nothing crazy)