1 分•作者: heroncoder•大约 1 个月前
大家好,我开发了 Hostflip,一个原生的 macOS 菜单栏应用,用于切换 `/etc/hosts` 文件配置。它免费且根据 MIT 协议开源。 我想要解决的问题不仅仅是编辑 hosts 条目。而是如何在不让一个写入者默默擦除另一个写入者的更改的情况下,与 Docker Desktop、VPN 客户端、脚本和手动编辑共享 `/etc/hosts` 文件。 首次运行时,Hostflip 会从现有文件捕获一个只读基线(称为“Base Hosts”),并将未修改的原始文件保留为 `hosts.orig`。活动配置会以一个清晰标记的块的形式附加在基线之后。 底层写入操作仍然是原子的全文件替换。在每次写入之前,守护进程会计算当前文件的哈希值并与预期的哈希值进行比较。如果不同,它会拒绝写入;应用程序会显示差异并要求用户先协调更改。 其他一些细节: * 配置可以分组。每个组最多只能激活一个配置,而不同组的活动配置和独立配置会堆叠在一起。 * 在系统设置中一次性批准后,后续切换将不再提示输入密码。Root 助手通过 SMAppService 注册,并公开一个单一的 XPC 操作:以原子方式用合并的内容替换 hosts 文件。应用程序和守护进程会互相验证签名身份。 * 捆绑的 CLI 与应用程序共享同一个工作区,并支持结构化的 JSON 输出。`hostflip doctor dev.example.com` 会追踪一个主机名,从配置到合并的输出,再到当前的 `/etc/hosts` 文件,最后到系统解析器。 * 远程配置可以按计划从 HTTPS 源刷新。还有一个用于现有 SwitchHosts 配置的导入器。 * 编辑器支持跨配置主机名/IP 搜索、注释切换、对格式错误的 hosts 行进行基本验证,并且在处理大型远程配置时保持响应。 该应用程序使用 Swift 和 SwiftUI 构建,通过 Homebrew 或签名的公证 DMG 分发,目前需要 macOS 14 或更高版本以及 Apple Silicon。不支持 Intel、Windows 和 Linux。 我特别希望得到关于保守漂移行为的反馈:如果另一个进程更改了 `/etc/hosts`,Hostflip 会阻止对系统文件的进一步写入,直到用户审查差异。你们是如何处理 hosts 文件多重写入的,你们是否期望不同的协调模型?
2 分•作者: JacobWolf•大约 1 个月前
您好!第一次发帖,潜水很久了。我是一家初创公司的专业软件工程师,公司大约有50名工程师。我的主要编程语言是 Ruby (Rails)、TypeScript (React) 和 Go。 在我的同事中,我算是比较关注每一次新 AI 模型发布动态的。当出现新的前沿模型或开源模型时,我会将其作为主要工具试用几天,然后向同事们汇报我的使用体验。 我在工作和个人项目中都使用 Cursor。我常用的模型是:用于规划的 GPT-5.6 Sol (高/超高精度设置),用于实现的 GPT-5.6 Sol (中等精度设置) 或 Grok 4.6,以及偶尔用于处理复杂、难以理解和实现的任务的 Claude Fable 5。我的许多同事则专门使用 Claude,并且使用 Claude Code。 我不是第一个注意到这一点的人,但我感觉每次使用 Fable、Opus 或 Sonnet 时,它们都非常啰嗦。它们会添加大量的额外代码注释,忽略指令,并且会为一些可以通过内置函数或预装库(如 Active Support 和 es-toolkit)解决的问题发明解决方案。我没有在其他模型上看到过同等程度的这种现象。 我的问题是:为什么我们认为 Claude 模型出现这种情况的频率似乎更高?有没有人找到有效的方法来抑制这种行为?