In 2025, several AI coding assistants have been released, which can be accessed directly from the terminal. Codex CLI, Gemini CLI, and Claude Code are some of the popular names that embed large language models into command-line workflows. These programming tools that can generate and fix code via natural language prompts are truly incredible. We document our evaluation of all three of these across different tasks to determine which is most useful.
在 2025 年,市面上发布了几款可以直接通过终端访问的 AI 编程助手。Codex CLI、Gemini CLI 和 Claude Code 是其中几个热门名称,它们都将大型语言模型嵌入到命令行工作流程中。这些编程工具能够通过自然语言提示来生成和修复代码,能力着实令人惊叹。我们记录了对这三款工具在不同任务中的评估结果,以确定哪一个才是最实用的。
每款助手都基于先进的 AI 模型,如 o4-mini、Gemini 2.5 Pro 或 Claude Sonnet 4,旨在提高生产力。我们将它们放置在相同的环境中,并通过特定的指标在真实的编程任务中对它们进行测试。这些任务涵盖了从 Web 开发到 数据分析等多个领域,通过此评估,我们旨在清晰地展现每款助手的优势!
💻 参赛者介绍:Codex CLI、Gemini CLI 与 Claude Code
命令行正迅速成为下一代 AI 编程助手的战场。包括 OpenAI、谷歌和 Anthropic 在内的公司都发布了先进的 CLI(命令行界面)AI 编程助手,每款工具都将强大且令人印象深刻的功能直接带入终端。但它们之间有何不同?哪一个最适合你的工作流程?让我们来详细了解一下这些工具。
// ✅ 合理使用泛型的场景 funcMap[T, Uany](slice []T, fn func(T) U) []U { result := make([]U, len(slice)) for i, v := range slice { result[i] = fn(v) } return result }
funcFilter[Tany](slice []T, predicate func(T)bool) []T { var result []T for _, v := range slice { if predicate(v) { result = append(result, v) } } return result }
# 1) Where would the kernel send a packet? ip route get 192.0.2.10 # 2) What routes and rules exist? ip route; ip rule # 3) Who's my next hop? ip neigh show # 4) What's my firewall/NAT doing? sudo nft list ruleset # or: sudo iptables -L -n -v sudo iptables -t nat -L -n -v # 5) Which sockets are active? ss -tni # 6) What's on the wire (swap eth0/host as needed)? sudo tcpdump -ni eth0 -e -vvv 'host 192.0.2.10 and tcp port 80' # 7) Are my queues healthy? tc -s qdisc show dev eth0 # 8) Is my NIC happy? ip -s link show dev eth0 ethtool -S eth0 # 9) Are counters hinting at a problem? nstat -a | grep -E 'InErrors|OutErrors|InNoRoutes|InOctets|OutOctets' # (Use `-z` instead of `-a` if you explicitly want to zero the counters.) # 10) Is the path MTU safe? tracepath 192.0.2.10 # discovers PMTU via ICMP: IPv4 "Fragmentation Needed" (Type 3, Code 4) / IPv6 "Packet Too Big" (Type 2)