Devotd Github
新发现调试与测试

abacusai/simless v0.7.3 — 无需模拟器的 SwiftUI 检查

abacusai/simless 是一个工具,帮助 AI 编码代理在不依赖 iOS 模拟器的情况下检查 SwiftUI 界面和测试。

仓库信息abacusai/simless ↗

Simless 为 AI 编码代理提供无模拟器、无头 SwiftUI 检查,通过无障碍树渲染屏幕并热重载视图。

GitHub 项目说明: Simulator-free, headless SwiftUI checks for AI coding agents: render screens as accessibility trees and hot-reload views in ~2 s, without the iOS Simulator.

星标
★ 48
复刻
2
语言
Swift
许可证
Apache-2.0
最新版本
v0.7.3
查看原始来源 ↗在 GitHub 查看 ↗

abacusai/simless 的最新版本是 v0.7.3。提供的资料中没有说明这一版本发生了哪些变化。这个 Swift 工具在 Mac 上把真实的 iOS 应用目标运行在不可见的渲染宿主中,从而以无障碍树的形式检查界面。单元测试和现有的 XCUITest UI 测试同样在不启动 iOS 模拟器的情况下运行。

无障碍树把界面元素和文案以结构化文本呈现,供代理读取。资料中写明,一个树大约是 150 个 token 的规模。编辑视图时只编译对应文件并以补丁方式注入,据说明约 2 秒即可热重载。它还支持按 git worktree 的文件级锁,使多个项目的代理可以在同一台 Mac 上并行工作。项目使用 Swift 编写,采用 Apache-2.0 许可证。

项目的基准测试给出,相比传统方式,从编辑到验证界面的性能在 1 个代理时提升 10 倍,在 5 个并行代理时提升 17 倍。据报告,常驻内存从 11.2GB、进程数 1,071 个降至 0.15GB 和 6 个,测量方法与注意事项见 docs/benchmarks.md。这些结果来自项目自身的测量,完整的单元测试中也有未获改善的 1.0 倍项目。因此这些性能数字应理解为该测量条件下的结果。