o3 pro is really good, but the context is really constrained, so its hard to use and doesnt output enough. This makes it suitable for ideating on good abstractions, but cant really make broad sweeping changes. Grok will output a full file. If you use the o3 pro API, its actually great, but it gets really expensive.