2作者: GertLH大约 1 个月前原帖
我和朋友一起开发了一款高尔夫应用。我们的代码库迅速增长,并且分散在多个代码仓库中:iOS 应用、Android 应用、后端、前端以及额外的工具。我们两人都在更大规模的公司工作,发现同样的问题:理解大型分布式代码库变得越来越困难。微服务真是太棒了。 理解和回答以下问题需要时间: - <i>这个函数是由什么调用的?</i> - <i>更改这个接口的影响是什么?</i> - <i>这段代码实际上是可达并被使用的吗?</i> 我们都知道,AI 编程助手带来了很大的便利。但……AI 助手花费了意想不到的时间来理解和重新发现架构。对它们来说,架构是通过 grep 命令的结果,有时还需要假设依赖关系。每次新会话时,它们又会重新发现架构。然而,架构是确定性的。要引入任何更改,您需要理解架构。 经过几个月的优化,我们构建了 Enola 来解决这个难题。 Enola 是一个开源架构引擎,提供一个 MCP 服务器。可以将任何代码库索引到一个持久的知识图谱中。如果需要,可以将多个仓库组合成一个图的图。在构建图的过程中,Enola 在不使用大型语言模型(LLM)的情况下解析仓库。图是从源代码确定性构建的。最终结果:您系统的结构化、确定性的架构模型 <i>(多个仓库的集合)</i>。 为什么选择开源?我们的目标是提供工程工具来管理<i>“代码膨胀”</i>。生成的代码越来越多,代码库的增长速度也越来越快。但仍然需要保持架构的完整性。Enola 的存在是因为软件工程仍然需要在更改系统之前理解它。 关键特性 <i>(子集)</i>: 1. 影响分析:通过查询符号、模块和 API 路由之间的关系图,确定更改的“爆炸半径”。您只需问:“<i>如果我更改这个,会有什么破坏?</i>” 2. 死代码发现:识别未使用的代码路径和无法通过您定义的入口点访问的孤立组件。 3. 依赖分析 (<i>我们称之为遍历,为什么不呢</i>):追踪依赖关系,包括下游和上游。您可以简单地问 Enola:“<i>什么依赖于 X?</i>” 4. 多仓库上下文:Enola 支持“图的图”,允许您在架构所需的任意多个仓库中索引和查询关系。所以尽情堆叠吧! 5. 性能:Enola 运行快速,具体取决于您的代码库。试试看吧!非常期待。 我们是开源的,正在公开构建。您可以在上面的链接中找到文档和源代码。 如果您有一个复杂的代码库,并愿意测试 Enola,我将非常感激您的反馈。告诉我们哪些功能有效,哪些功能缺失。
1作者: sermakarevich大约 1 个月前原帖
受到朋友用人工智能规划日本假期的故事启发,我决定自己也尝试一下。这大概为我节省了一周的时间用于计划和研究,希望对你也有所帮助。<p><a href="https:&#x2F;&#x2F;sermakarevich.substack.com&#x2F;p&#x2F;vibe-vacationing" rel="nofollow">https:&#x2F;&#x2F;sermakarevich.substack.com&#x2F;p&#x2F;vibe-vacationing</a>
1作者: dmaginas大约 1 个月前原帖
嗨,Hacker News,我是应用程序Chauffeur的开发者。 每次我都需要手动打开所有应用程序——在正确的文件夹中打开VS Code、打开Chrome标签页、编辑Notepad++中的一些文件、打开PDF。我希望有一个应用程序可以通过点击一个按钮恢复我整个的工作环境。 Chauffeur可以做到这一点:它保存多个应用程序的状态,并在需要时恢复它们。所有内容都保留在本地计算机上。打开的文件/项目/标签页仅与127.0.0.1或localhost进行通信。 诚实披露:目前仅支持Windows系统。 商业模式:免费版和专业版。没有试用期,没有时间限制。免费版:永久免费,无需账户,无需信用卡。限制:1个可覆盖的已保存工作区,恢复是免费的。 专业版(付费):无限命名工作区 + 自动快照 + 导出/导入功能。 价格为每月5.99欧元或每年49欧元。 我希望能收到关于跨应用程序上下文模型和仅限本地架构的反馈。我很乐意回答任何问题。