Strictly speaking about large, complex, sprawling codebases, I don't think you can beat the experience that an IDE + coding agent brings with a terminal-based coding agent.
Auto-regressive nature of these things mean that errors accumulate, and IDEs are well placed to give that observability to the human, than a coding agent. I can course correct more easily in an IDE with clear diffs, coding navigation, than following a terminal timeline.
You can view and navigate the diffs made by the terminal agent in your IDE in realtime, just like Cursor, as well as commit, revert, etc. That’s really all the “integration” you need.
Auto-regressive nature of these things mean that errors accumulate, and IDEs are well placed to give that observability to the human, than a coding agent. I can course correct more easily in an IDE with clear diffs, coding navigation, than following a terminal timeline.