S
SkillNav

Ladybird 在 AI 助力下转向 Rust

资讯Simon Willison2026-02-23T18:52:53+00:002 分钟阅读

2026 年 2 月 23 日 - Link Blog

Ladybird 在 AI 助力下采用 Rust来源)Andreas Kling 分享了一篇非常有意思的案例研究,讲述如何在关键代码、且目标雄心很大的工程项目中,高阶且成熟地使用 coding agents。过去几年里,团队一直期待 Swift 在 Apple 生态之外的平台支持能够更成熟;在这之后,他们调整了路线,转向其首选的内存安全语言 Rust,并从一个关键库的 AI 辅助迁移开始:

我们的第一个目标是 LibJS,也就是 Ladybird 的 JavaScript 引擎。它的 lexer、parser、AST 和 bytecode generator 相对独立,并且通过 test262 拥有广泛的测试覆盖,因此非常适合作为起点。

我使用了 Claude CodeCodex 来完成翻译(迁移)工作。这是人类主导的,而不是自主代码生成。我决定迁移哪些部分、按什么顺序迁移,以及 Rust 代码应当是什么样子。整个过程包含了数百个小提示,在需要的时候引导 agents 朝正确方向推进。[...]

从一开始,我们的要求就是两条流水线产出逐字节一致的结果。最终产出了大约 25,000 行 Rust 代码,整个迁移耗时约两周。同样的工作如果手工完成,我需要几个月时间。我们已经验证:Rust parser 生成的每一棵 AST 都与 C++ 版本完全一致,Rust compiler 生成的所有 bytecode 也与 C++ 编译器输出完全一致。整体零回归。

对于这种规模的项目来说,拥有 test262 这样高质量的既有一致性测试套件,几乎是一个巨大的“解锁条件”;而且还能把输出与现有、可信实现进行对照,这会让 agentic engineering 成为更稳妥的选择。

查看原文 ↗

相关文章

资讯Simon Willison·3月6日
Clinejection 攻击披露:仅靠 Issue 分诊提示词即可攻陷 Cline 生产发布流程

研究者 Adnan Khan 披露了一条针对 Cline GitHub 仓库的完整攻击链:攻击者先通过 Issue 标题中的 prompt injection 控制 AI 分诊流程,再借助 GitHub Actions 缓存投毒影响夜间发布任务。尽管分诊工作流本身不含高价值密钥,但因与发布工作流共享缓存键,最终仍导致 NPM 发布凭据可被窃取。事件后 `cline@2.3.0` 曾被匿名攻击者发布(现已撤回),所幸未造成更严重后果。

3 分钟
Copilot 代码审查突破 6000 万次,GitHub 详解 Agent 架构演进
资讯GitHub·3月5日
Copilot 代码审查突破 6000 万次,GitHub 详解 Agent 架构演进

GitHub 表示,自 2025 年 4 月推出 Copilot code review 以来,使用量已增长 10 倍,如今占 GitHub 全站代码审查的五分之一以上。团队通过持续评估闭环与 Agent 化架构优化,将“好审查”聚焦在准确性、信号强度与速度三项核心指标,并在真实生产环境中用开发者反馈和问题修复率衡量效果。当前已有超过 1.2 万家组织在每个 pull request 上自动运行该能力,GitHub 下一步将推进更深度个性化与双向交互审查体验。

8 分钟