因为换机场需要给 Clash 加 VLESS 支持,折腾了一下用重写一切的 Rust 重写了 subconverter 。
过程中试了用 AI (Cursor) 辅助 C++ 转 Rust ,感觉不太行,生成的代码错误不少,还是要自己动手改。感觉 AI 对 Rust 这种 native 语言的帮助远不如 JS/Web ,效率差距可能更大了。
看原版 C++ 代码时,发现里面功能巨多,很多我根本没用过,感觉不完全是写来自用的,有点像给机场用的,但又很全能,要完全测试都很复杂。
最大的疑惑是,为啥这套功能要做成 Web API 而不是 CLI ?转换订阅文件这种事,感觉 CLI 更自然。
结果就是,为了兼容这些功能,项目比我一开始只想加个 VLESS 时搞得复杂多了。
目前自用中,核心接口/sub 对齐功能了。
GitHub: https://github.com/lonelam/subconverter-rs
欢迎老哥们试用、吐槽。
|