1作者: ramsbaby-dev3 个月前原帖
我在Mac mini上运行一个本地AI助手(OpenClaw)。当它崩溃时,我希望它能够自动修复自己。因此,我建立了一个四层恢复系统: <p>第一级 → launchd自动重启(秒级) 第二级 → 每60秒进行一次看门狗健康检查 第三级 → Claude Code AI诊断与修复(在失败超过30分钟后触发) 第四级 → Discord/Telegram人工升级 <p>这个系统在纸面上看起来很完美。但v3.0.0存在一个关键错误:第二级记录了“升级到第三级...”但实际上从未调用脚本。这个链条在最重要的交接处断开了——默默地持续了几周。 <p>v3.1.0修复了这个问题,并增加了: - 安装程序中的链条验证(每个级别都经过端到端测试) - 优雅的.env加载,以确保第三级不会在没有API密钥的情况下静默崩溃 - 看门狗补救模式,用于错过的时间间隔 <p>GitHub: <a href="https://github.com/Ramsbaby/openclaw-self-healing" rel="nofollow">https://github.com/Ramsbaby/openclaw-self-healing</a> <p>主要教训:“我有监控” ≠ “我的监控链实际上是连接的。” 测试每个组件的启动并不等同于测试系统的端到端功能。
1作者: ramsbaby-dev3 个月前原帖
我在Mac mini上运行一个本地AI助手(OpenClaw)。当它崩溃时,我希望它能够自动修复自己。因此,我建立了一个四级恢复系统: <p>第一级 → launchd自动重启(秒级) 第二级 → 每60秒进行一次看门狗健康检查 第三级 → Claude Code AI诊断与修复(在故障超过30分钟后触发) 第四级 → Discord/Telegram人工升级 <p>这个系统在纸面上看起来很完美。但是v3.0.0版本存在一个关键错误:第二级记录了“升级到第三级...”的日志,但实际上并没有调用脚本。这个链条在最重要的交接处断裂了——默默无闻地持续了数周。 <p>v3.1.0修复了这个问题,并在安装程序中增加了链条验证,以便在完成之前对每个级别进行端到端测试。 <p>这个教训是:“我有监控” ≠ “我的监控链实际上是连接的。”
2作者: allanclempe3 个月前原帖
我经营一家小型开发咨询公司,厌倦了每周末“我到底做了什么?”的工时表重建。因此,我开发了Clocktopus。 它可以根据你的git提交生成工时表。这个想法很简单:如果你遵循良好的开发实践:专注工作、定期提交、保持良好的git习惯,那么准确的时间追踪就会成为自然而然的副产品。 它使用Clocktopus的默认工作时间和时区设置作为基线,但如果你有灵活的工作时间,可以通过命令行在开始或结束工作时发送信号。无需打开浏览器标签,也无需切换上下文。 这个工具是为那些按小时计费但讨厌追踪工时的开发者和小型咨询公司而设计的。目前处于免费测试阶段。 欲了解更多信息,请访问: [https://clocktopus.app/docs](https://clocktopus.app/docs) 欢迎随时询问有关该方法或边缘案例的问题(有很多)。
1作者: nxus_dev3 个月前原帖
我刚刚发布了 Goxe v1.4.0。在上次更新后,我一直在努力挖掘 Go 的每一丝性能。 <p>重大更新:离线归一化 (-brew) 我新增了一种模式,用于处理和归一化在安装 Goxe 之前存储在磁盘上的旧日志。它将相似的消息聚类,减少存储占用,并将指标发送到远程服务器。 <p>工程胜利: <pre><code> 内存分配:我成功将每条日志行的开销从 2 次分配减少到仅 1 次,使用了不安全的零拷贝字符串转换和 bufio.Scanner 优化。 目标:我目前正在重构核心管道,力争在下一个周期内实现 0 次分配。 性能:在一台老旧的 i5-8250U @ 3.40 GHz 上,仍然能达到每秒 19,000 条日志的处理速度,并且内存占用极小。 </code></pre> 为什么要使用它?如果你的磁盘上堆满了大量日志文件,-brew 将把它们归一化为结构化摘要([名称]_[日期]_normalized.log),节省空间,并提供清晰的统计信息(计数、首次/最后出现),而不会占用你的 CPU 资源。 <p>我很想听听你对零拷贝方法的看法。 <p>代码库: <a href="https://github.com/DumbNoxx/goxe" rel="nofollow">https://github.com/DumbNoxx/goxe</a>
1作者: mario03183 个月前原帖
我在每个副项目中都不断重写相同的 JSON 规范化代码。天气 API 返回不同的字段名称,数字货币 API 的结构不一致,新闻 API 的日期格式各异——在你开始构建之前,你不得不为所有这些编写适配器。 Sprime 是一个统一的 API 网关,位于 15 个以上数据提供者的前面,每次都以相同的 JSON 结构返回数据。 一个 API 密钥,一致的响应,如果某个服务出现故障,会自动切换到备用提供者。 目前可用的端点包括:天气、数字货币、新闻、外汇、空气质量、地理编码、IP 查询、时区、假期和 Webhook。 免费套餐为每天 500 次请求。希望从 HN 社区获得关于定价、缺失端点或任何看起来不对劲的地方的反馈。