Copilot (with “Pro” plan which is free for students and teachers). They have a CLI which let’s you use Claude Sonnet 4.5/4 and GPT-5. According to this, this gives better quotas for Claude models compared to Claude Code.
CLI Command: copilot
Claude Code (with “Pro” plan which is free for students for one year—Jane gave me a link to sign up but I’m not sure if the program is still active). People say it’s the best coding CLI tool out there not just because of its models, but the sheer number of features the tool has. There are a lot of similarities between this and Copilot/Codex/etc., but some features are indeed nice, like the /context command or the Skills feature.
Unfortunately, people often quickly hit the rate limits with CC, which is annoying. It’s possible to hook Claude Code to another model but it’s a hack because you’d have to basically translate each model (AFAIR “big model”, “small model”, “middle model”) to other models. Here is a project that does this:
claude with your custom ANTHROPIC_BASE_URL given by the proxy server. In practice, though, CC still shows Claude model names in the app; you’re just tricking it (e.g., it thinks you’re using claude-sonnet-4-5 while it’s routed to gpt-5 in the proxy server).@custom-agent. Then, the current agent interprets that as a function call and actually calls the agent. Two problems with this:
~/.claude/agents/ and you can view their config using /agents, but it’s better to always show the model used by the agent.CLI Command: claude
OpenCode (OC) may not necessarily have the tried and true function calling of CC, but it can use a lot of models and has tons of features that make it maybe even better than CC. I spent quite some time trying to use a CC reverse proxy like this to use my Claude Pro subscription in OC, but for some reason it didn’t work. However, I found out that there’s no need for that—OC can already login using Claude Pro! So basically I can use my Claude Pro subscription in OC. What’s more, I can point OC to any local model in LMStudio, which is useful when I just want simple agents to work in the background without worrying about costs or getting rate limited. But perhaps what I love most about OC is its approach to AI agents: It allows you to define agents in a variety of ways including the Markdown format that CC uses, but it also lets you quickly switch between agents by tab as follows (OC calls them “primary agents”): You talk to the main agent and press tab to switch to brainstormer. This replaces the system prompt of the agent for the remainder of the conversation but keeps the history, so the brainstormer agent knows what you discussed before invoking it (it actually doesn’t know you activated it; to the agent, you’ve been talking to it the entire time!). Then you interact with this agent and get what you want from it and then switch back to another agent using tab. This, again, replaces the system prompt and so on and so forth. This is a cleaner approach to agents that solves the two problems of CC. Agents, of course, can be configured to use different models, so I can use the best “thinking” model for brainstorming and the fastest model for executing simple actions, etc. Similar to CC, here we can also choose the tools the agent has access to.
But OC also the CC type of agents too. It calls them “subagent” and these will be invoked by other agents or by you using @sub-agent.
All in all, I have found OC much much better in general AI assistant stuff than CC because I can delegate tasks to Minimax M2, Kimi K2, Copilot Pro models (e.g., Claude Opus/Sonnet/Haiku), and my own local models. But before I finish this part, I must say how much I love the keybindings of OC! With CC you only get a few shortcuts (visible if you press ?), but OC has an entire suite of keybindings that are customizable too. Switching between models, then, is as easy as <leader>-m where you define the “leader” in the config as well (this is similar to Vim leader, the default is CTRL-X).
Codex. I haven’t used this much but some people say GPT-5 has gotten better than Claude, or rather, Claude has been nerfed by Anthropic. But people do complain about how slow GPT-5 is, which may be due to the fact that GPT models “reason” more than Claude models (but the marginal benefit of that additional thinking seems to be negligible?).
Other than these tools, I’ve seen Aider (which people seem to have forgotten about), Qwen Code, Kimi CLI, Gemini CLI, Jules, etc. There’s also rooCode, Cline, Continue, etc. which are plugins for VSCode. And last but not least, there are some full-blown IDEs with agentic AI support, most notably Cursor (which has gotten much better and also has a Cursor CLI which I haven’t used yet), Windsurft, Zed, etc.