Cursor Unable to Obtain Terminal Automation Permission on macOS, Preventing C/C++ Programs from Running in External Terminal
I’ve encountered a critical issue while using Cursor for C/C++ development on macOS. When running programs that require user input/output, Cursor fails to open an external terminal window. While the internal terminal shows successful compilation, no external terminal appears for program interaction. The most concerning part is that Cursor doesn’t trigger the macOS automation permission request that would allow it to control the Terminal app.
Environment Details:
- OS: macOS Sequoia 15.2
- Cursor Version: 0.44.11
- Commit: fe574d0820377383143b2ea26aa6ae28b3425220
- Date: 2025-01-03T07:59:06.361Z
My launch.json configuration is correctly set up with "externalConsole": true
:
{
"name": "C/C++: clang++ build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}/${fileBasenameNoExtension}",
"args": [],
"stopAtEntry": false,
"cwd": "${fileDirname}",
"environment": [],
"externalConsole": true,
"MIMode": "lldb",
"preLaunchTask": "C/C++: clang++ build active file"
}
I’ve tried several troubleshooting steps:
- Attempting to reset permissions using
tccutil
- Clearing application caches
- Looking for ways to manually add Cursor to the automation permissions list
None of these attempts have resolved the issue. The core problem appears to be that Cursor never triggers the initial permission request that would allow it to control the Terminal app, unlike VSCode which handles this seamlessly.
This limitation severely impacts C/C++ development workflows that require user input or output, essentially making it impossible to run interactive programs through Cursor on macOS.