13作者: bsgeraci1 天前原帖
我是一名软件工程师,无论我多么努力想要逃避,还是不断被拉入DevOps的领域。最近我转到了一个首席DevOps工程师的角色,负责编写工具以自动化许多繁琐的工作。在工作之余,我开发了Artifact Keeper——一个自托管的工件注册中心,支持超过45种包格式。安全扫描、单点登录、复制、WASM插件——这些功能都包含在MIT许可的版本中。没有企业级套餐,没有功能限制,也没有意外账单。 你的包管理工具——pip、npm、docker、cargo、helm、go,所有这些——都可以直接使用它们的原生协议与之对接。内置了使用Trivy、Grype和OpenSCAP的安全扫描功能,还有一个策略引擎,可以在不良工件进入你的构建之前将其隔离。如果你需要的格式尚不支持,还有一个WASM插件系统,允许你在不修改后端的情况下添加自己的格式。 我为什么要开发它: 吸引我进入计算机领域的一部分原因是开源。我在新奥尔良长大,家境贫困,早在2000年代初,我唯一能接触到的硬件是一些我父亲从工作中带回来的Compaq Pentium II,这些电脑是他工作单位准备丢弃的。我在这些电脑上安装了Linux,它在那种低端硬件上运行得比Windows 2000和Millennium快得多。那次经历让我明白,最好的软件是开放给所有人查看和使用的,并且能够在你所拥有的设备上良好运行。 快进到今天,我发现这个模式无处不在:GitLab、JFrog、Harbor等公司发布有限的“社区”版本,然后将团队实际需要的功能隐藏在某些付费墙后面。我理解——薪水总得从某个地方来。但我想证明一个功能齐全的工件注册中心可以作为真正的开源软件存在。每个功能,毫无例外。 具体功能源于真实的痛点。Artifactory的搜索速度非常慢——这就是我集成Meilisearch的原因。另一个重要的功能是安全扫描不需要单独的企业许可证。我还希望复制功能不需要中央协调器——因此我构建了一个对等网络,任何节点都可以复制到任何其他节点。我还没有在工作中部署这个系统——目前我在家里为我的个人项目运行它——但我希望看到它在大规模下的测试,这也是我在这里分享它的重要原因。 关于AI的故事(我会诚实地说): 我大约用三周时间使用Claude Code构建了这个项目。我知道很多人会说这可能是“氛围编码”的垃圾——但如果真是这样,那也是一堆令人印象深刻的“氛围编码”垃圾。去看看代码库。后端大约80%是Rust,包含429个单元测试,33个PostgreSQL迁移,分层架构,以及一个完整的CI/CD管道,配有端到端测试、压力测试和故障注入。 AI并没有为我做设计决策。我仍然需要设计WASM插件系统,弄清楚扫描引擎如何相互补充,并架构对等复制。多年的领域知识驱动了设计——AI只是让我构建得更快。我对这些工具为像我这样的爱好者和安全极客所带来的可能性感到震惊。 技术栈:基于Axum的Rust,PostgreSQL 16,Meilisearch,Trivy + Grype + OpenSCAP,支持热重载的Wasmtime WASM插件,带有分块传输的对等复制。前端使用Next.js 15,以及原生的Swift(iOS/macOS)和Kotlin(Android)应用。OpenAPI 3.1规范,自动生成TypeScript和Rust SDK。 试试它: ``` git clone https://github.com/artifact-keeper/artifact-keeper.git cd artifact-keeper docker compose up -d ``` 然后访问 http://localhost:30080 实时演示: [https://demo.artifactkeeper.com](https://demo.artifactkeeper.com) 文档: [https://artifactkeeper.com/docs/](https://artifactkeeper.com/docs/) 我非常欢迎任何反馈——你对这个方法的看法,你希望看到的功能,或者你对Artifactory或Nexus的不满,希望有人能解决的问题。反馈不一定要是PR。可以打开一个问题,开始讨论,或者在这里告诉我。 [https://github.com/artifact-keeper](https://github.com/artifact-keeper)
1作者: BWC_profile_GIF1 天前原帖
被称为“Rdrama”的超级黑客网站已经关闭。从内部渠道泄露的信息来看,高层管理人员因个人资料中的GIF图片而导致网站崩溃。不是开玩笑。有一个用户(BWC)想出一个主意,疯狂地增加个人资料的文件大小,以便容纳更长的GIF。据说甚至可以是一个电影。传说中,有人把一整集《星际迷航》放在了他们的个人资料上。现在,这个网站已经成为历史,被时间遗忘。
1作者: neilbb1 天前原帖
网站:https://ttal.guion.io 706次提交,38个合并的PR,5个代码库,5天。一个人最多进行5个Claude Code会话。 技术栈:Taskwarrior作为任务队列,Zellij作为会话管理器,Claude Code作为工作者。每个CC会话在一个Zellij窗格中运行,并分配一个任务。当一个会话完成时,下一个优先级最高的任务会通过Taskwarrior的钩子自动启动。你管理的是任务,而不是会话。 周四我遇到了API速率限制,吞吐量下降了75%。这就是证据——系统是瓶颈,而不是我。 关键设计:按需的人机协作。代理从不因等待我而阻塞。它们接手任务,完成工作,提交,然后继续前进。我在准备好时审查PR并做出决策——而不是在代理需要我时。这就是消除人作为瓶颈问题的方法。当没有会话在等待你时,5个会话就足够了。 完整的设置已在网站上记录。架构并不局限于Claude Code——Zellij会话不在乎里面运行的是哪个CLI代理。