5作者: jsunderland3235 个月前
大家好,我们一直在开发 Coasts(“容器化主机”),让您可以在同一台计算机上的 Git 工作树中运行多个 localhost 实例和多个 docker-compose 运行时。这里有一个演示:<a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=yRiySdGQZZA" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=yRiySdGQZZA</a>。我们的文档中也有一些视频,提供了很好的概念概述:<a href="https:&#x2F;&#x2F;coasts.dev&#x2F;docs&#x2F;learn-coasts-videos">https:&#x2F;&#x2F;coasts.dev&#x2F;docs&#x2F;learn-coasts-videos</a>。 代理可以在不同的工作树中独立地进行代码更改,但他们很难测试他们的更改,除非有多个 localhost 运行时,这些运行时也与这些工作树隔离并限定范围。您可以通过端口黑客技巧做到一定程度,但当您有一个复杂的 docker-compose,其中包含许多服务和多个卷时,这变得不切实际。 我们从今年年初开始使用 Codex 和 Conductor,并且不得不提出一堆临时的解决方法,以便让代理访问隔离的运行时。在修改我们自己的 docker-compose 设置后,我们提出了 Coasts,作为代理拥有自己的运行时的一种方式,而无需更改您的原始 docker-compose。 一个容器化主机(从现在开始,我们简称“coast”)是您项目运行时的表示,就像一个 devcontainer,但没有 IDE 的东西——它只专注于运行时。您在项目的根目录创建一个 Coastfile,通常从那里指向您的项目的 docker-compose。当您在 Coastfile 旁边运行 `coast build` 时,您将获得一个构建(本质上是一个 Docker 镜像),可用于启动您项目的多个 Docker-in-Docker 运行时。 一旦您运行了一个 coast,您就可以执行诸如将其分配给工作树之类的操作,例如 `coast assign dev-1 -w worktree-1`。然后,coast 将指向 worktree-1 的根目录。 在底层,主机项目根目录和任何外部工作树目录在创建时通过 Docker-bind-mount 挂载到容器中,但 /workspace 目录(我们从中运行 coast 的服务)是一个单独的 Linux bind mount,我们在运行的容器内创建它。切换工作树时,我们基本上只做 umount -l /workspace, mount --bind &lt;path_to_worktree_root&gt;, mount --make-rshared /workspace 在运行的 coast 内部。rshared 标志设置了挂载传播,以便当我们重新挂载 /workspace 时,更改会向下流到内部 Docker 守护程序的容器中。 主要思想是,代理可以继续在主机端工作,但如果他们需要测试运行时更改或访问运行时日志,则可以针对特定的 coast 实例运行 exec 命令。这使得我们与框架无关,并在任何在主机端运行的代理或代理框架周围创建互操作性。 每个 coast 都有自己的一组动态端口:您在 Coastfile 中定义您希望公开给主机机器的端口。您还可以“检出”一个 coast。当您这样做时,socat 将您的 coast 的规范端口(例如 web 3000,db 5432)绑定到主机机器。如果您在项目中硬编码了端口或需要执行诸如测试 webhook 之类的操作,这很有用。 在您的 Coastfile 中,您指向在主机机器上存储项目工作树的所有位置(例如 ~&#x2F;.codex&#x2F;worktrees)。当代理从主机端工作树目录运行 `coast lookup` 时,它能够找到它正在运行的 coast 实例的名称,因此它可以执行诸如调用 `coast exec dev-1 make tests` 之类的操作。如果您的代理需要执行诸如使用 Playwright 进行测试之类的操作,它可以通过使用前端的动态端口在主机端进行。 您还可以配置卷拓扑,省略代理不需要的服务和卷,以及在主机端共享某些服务,这样您就不会为每个 coast 实例增加开销。您还可以执行诸如定义每个服务在工作树分配更改后的行为策略(例如,无、热、重启、重建)之类的操作。这有助于您优化切换工作树,因此您不必每次都执行整个 docker-compose down 和 up 周期。 我们很乐意回答任何问题并获得您的反馈!
3作者: DEEPAN_C5 个月前
Hi HN, 我开发了 SEARCH WIZARD——一个让你用自然语言搜索电脑的工具。 传统的搜索文件方式只有在你记得文件名时才有效。 但大多数时候,我们记得的是这样的信息: “我开会时的截图” “关于变压器的 PDF 文件” “关于机器学习的笔记” 智能搜索会索引你的文件,让你通过语义而不是文件名进行搜索。 目前支持: - 图片 - 视频 - 音频 - 文档 示例查询: “一个男人看着显示器的旧照片” 系统会立即检索到正确的文件。 除了嵌入(embeddings)之外,所有操作都在本地运行。 我正在寻求关于以下方面的反馈: - 索引方法 - 隐私问题 - 你希望在这个工具中拥有的功能 GitHub: [https://github.com/deepanmpc/SMART-SEARCH](https://github.com/deepanmpc/SMART-SEARCH) 演示: [https://deepanmpc.github.io/SMART-SEARCH/](https://deepanmpc.github.io/SMART-SEARCH/)
1作者: sohamrj5 个月前
上周,我发布了 SentrySearch,这是一个使用 Gemini 嵌入 API 的语义视频搜索命令行工具。排名第一的需求是支持本地模型。<p>事实证明,Qwen3-VL-Embedding 可以原生将视频嵌入到相同类型的向量空间中,无需 API,完全离线。它可以在 Apple Silicon (MPS) 和 NVIDIA GPU (CUDA) 上运行。8B 模型的运行需要大约 18GB 的 RAM,或者在较小的机器上使用 2B 模型。<p>sentrysearch index /path --backend local<p>此外,还添加了:相似度阈值以抑制弱匹配,以及一个特斯拉元数据叠加层,可以将速度/位置渲染到匹配的片段上。<p>详情请参阅 README。
1作者: efecto19205 个月前
人工智能正迅速成为人们构建软件的默认方式。 即使你试图强制执行一些规则,安全性也常常会疏漏。需要覆盖的方面实在太多,而且上下文很快就会变得混乱。 我一直在遇到同样的情况:项目可以运行,但存在容易被忽视的安全漏洞。 所以我创建了 Data Hogo——一个可以扫描你的代码库,并用通俗易懂的语言指出安全问题的工具。没有冗长的报告,只有哪里出错了,为什么重要,以及如何修复。 如果你想试用,可以扫描你的代码库,看看会发现什么。 只需几分钟,而且我很想知道大家会得到什么样的结果——即使什么也没发现。 在 <a href="https:&#x2F;&#x2F;www.datahogo.com" rel="nofollow">https:&#x2F;&#x2F;www.datahogo.com</a> 进行免费扫描。