3作者: thehamkercat6 个月前
自从去年以来,他们为什么会这样(拼命地想把自己烧个精光)? 最新例子: 微软Office更名为“Microsoft 365 Copilot应用”(https://news.ycombinator.com/item?id=46496465) 不仅改名很荒谬,而且这个页面(office.com)看起来也充满了“氛围感”。
2作者: artpar6 个月前
我制作了这个工具,可以在移动设备上使用笔记本电脑的终端会话,而无需通过服务器传输数据。 使用方法:`tt start -p mypassword` → 获取一个 URL(二维码) → 在浏览器中打开 → 输入密码 → 连接成功。 它通过直接的 WebRTC 数据通道在你的机器和浏览器之间建立连接。 信令服务器是一个 Cloudflare Worker,它交换大约 2KB 的 sdp/ice 元数据后就会退出。密码永远不会被传输 - argon2id 在两端本地派生 256 位密钥。所有终端输入/输出在进入数据通道之前都会经过 nacl secretbox 加密。底层使用 DTLS 进行双重加密,但我希望即使在信令期间,中继也无法看到任何有用的信息。 使用 Go + pion/webrtc,大约 14k 行代码。浏览器端使用 xterm.js + webcrypto 进行 argon2id 加密。STUN 默认,TURN 用于对称 NAT。 我的用例:当我不坐在办公桌前时,通过手机检查 Claude 代码的运行情况。酒店 Wi-Fi,移动数据不稳定。花时间处理了 TURN 备用方案、带有重新连接的保活机制、断开连接期间的缓冲写入。PWA 可以在主屏幕上运行,并且在切换应用程序时也能正常工作。在 3G 网络下也能正常运行。 权衡:ICE 收集需要 2-5 秒才能连接。浏览器无法发起连接,需要在主机上使用 CLI。代码 24 小时后过期。 单个二进制文件,无依赖。支持守护进程模式,用于多个会话。使用竞争检测器进行测试,使用混沌测试模拟断开连接,模拟网络状况。加密和 WebRTC 的代码覆盖率约为 72%。 [https://github.com/artpar/terminal-tunnel](https://github.com/artpar/terminal-tunnel) PS:默认中继运行在我的 Cloudflare 免费套餐上,因此不提供任何保证。你可以自托管 Worker 或在本地运行 tt 中继。
5作者: tlar6 个月前
嗨,HN, 软件包仓库不需要搞得那么复杂。它们其实就是静态文件:元数据索引和软件包本身。然而,不知为何,自己搭建一个仓库却让人感觉需要专门的基础设施和对晦涩工具的深入了解。 repogen 是一个用于软件包仓库的 SSG(静态站点生成器)。将它指向你的 .deb/.rpm/.apk 文件,它就会生成静态结构,然后你上传到 S3 或任何 Web 托管服务上。搞定。每月只需 0.02 美元,就能为你的整个团队托管软件包。 它支持 Debian、RPM、Alpine、Pacman 和 Homebrew。具有增量模式,无需重新下载所有内容即可更新仓库。处理签名。虽然还是早期版本,但它确实有效。非常希望得到反馈!
3作者: nynrathod6 个月前
构建 Doo 是因为我厌倦了为每个 API 编写 200 行的身份验证样板代码。<p>示例(完整 API):<p>import std::Http::Server;<p>import std::Database;<p>struct User {<p><pre><code> id: Int @primary @auto, email: Str @email @unique, password: Str @hash, </code></pre> }<p>fn main() {<p><pre><code> let db = Database::postgres()?; let app = Server::new(&quot;:3000&quot;); app.auth(&quot;&#x2F;signup&quot;, &quot;&#x2F;login&quot;, User, db); app.crud(&quot;&#x2F;todos&quot;, Todo, db); &#x2F;&#x2F; Todo = 你定义的任何结构体 app.start(); } </code></pre> 结果:<p>- POST &#x2F;signup,带邮件验证 + 密码哈希(自动来自 @email, @hash)<p>- POST &#x2F;login,带 JWT<p>- 完整的 CRUD 端点,用于 GET, POST, GET&#x2F;:id, PUT&#x2F;:id, DELETE&#x2F;:id<p>- 编译为原生二进制文件<p>状态:Alpha v0.3.0。身份验证、CRUD、验证和 Postgres 正在运行。积极修复错误。<p><a href="https:&#x2F;&#x2F;github.com&#x2F;nynrathod&#x2F;doolang" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;nynrathod&#x2F;doolang</a><p>在生产中使用之前,您需要看到什么?
1作者: olek6 个月前
嘿! 我最近接触了 Leo Babauta 的“小确幸”概念——在身心俱疲或脑力耗尽的艰难时刻,通过简单、健康的方式来充电。<p>有几个原则引起了我的共鸣: • 保持小而偶尔(不要过分)。 • 用它们来充电,而不是逃避问题。 • 摆脱内疚感——这是一种自我意识,而不是软弱。 • 活在当下,享受这一刻。<p>以下是我的小确幸:<p><pre><code> 1. 边听舒缓的音乐边阅读 2. 冷的时候洗个热水澡,热的时候洗个冷水澡 3. 最喜欢的花生酱棒 4. 烤面包配花生酱和果冻 5. 在公园里散步或北欧式健走 6. 慢跑或骑自行车 7. 烹饪 8. 丰盛的燕麦粥(坚果、葡萄干、蜜枣、香料) 9. 躺在沙发上,闭上眼睛,抬起腿 10. 小睡一会儿 11. 深呼吸练习 12. 短时间的冥想 13. 桑拿 </code></pre> 我尝试选择那些安全且不易过度的项目。<p>你有哪些帮助你充电的小确幸呢?
1作者: tonyww6 个月前
大家好,我是 SentienceAPI 的独立创始人。过去几个月,我一直在构建一个专为 LLM 智能体设计的浏览器自动化运行时。<p>问题:构建可靠的 Web 智能体非常痛苦。本质上有两种糟糕的选择:<p>原始 DOM:转储 document.body.innerHTML 便宜/快速,但会淹没上下文窗口(10 万+ tokens),并且缺乏空间上下文(智能体尝试点击隐藏或屏幕外的元素)。 视觉模型(GPT-4o):发送截图很稳健,但速度慢(3-10 秒延迟)且昂贵(约 0.01 美元/步)。更糟糕的是,它们经常会产生坐标幻觉,导致按钮偏差 10 像素。<p>解决方案:语义几何 Sentience 是智能体的“视觉皮层”。它位于浏览器和您的 LLM 之间,将嘈杂的网站转化为干净、排名、坐标感知的 JSON。<p>工作原理(技术栈):<p>客户端(WASM):一个 Chrome 扩展程序注入一个 Rust/WASM 模块,该模块直接在浏览器进程中修剪 95% 的 DOM(脚本、跟踪像素、不可见的包装器)。它在 50 毫秒内处理 Shadow DOM、嵌套的 iframe(“帧拼接”)和计算样式(可见性/z-index)。<p>网关(Rust/Axum):修剪后的树被发送到 Rust 网关,该网关使用简单的视觉提示(例如 is_primary)应用启发式重要性评分。<p>大脑(ONNX):一个服务器端 ML 层(通过 ort 运行 ms-marco-MiniLM)根据用户目标(例如,“搜索鞋子”)对元素进行语义重新排序。<p>结果:您的智能体获得一个包含前 50 个最相关的可交互元素列表,其中包含精确的 (x,y) 坐标、重要性值和视觉提示,帮助 LLM 智能体做出决策。<p>性能:<p>成本:约 0.001 美元/步(而视觉模型为 0.01 美元+) 延迟:约 400 毫秒(而视觉模型为 5 秒+) 有效载荷:约 1400 tokens(而原始 HTML 为 10 万) 开发者体验(“酷”的东西):我讨厌调试文本日志,所以我构建了 Sentience Studio,一个“时光旅行调试器”。它将每一步(DOM 快照 + 截图)记录到 .jsonl 轨迹中。您可以像视频编辑器一样浏览时间线,准确地查看智能体看到了什么,以及它产生了什么幻觉。<p>链接:<p>文档和 SDK:<a href="https://www.sentienceapi.com/docs" rel="nofollow">https://www.sentienceapi.com/docs</a><p>GitHub (SDK): SDK Python: <a href="https://github.com/SentienceAPI/sentience-python" rel="nofollow">https://github.com/SentienceAPI/sentience-python</a><p>SDK TypeScript: <a href="https://github.com/SentienceAPI/sentience-ts" rel="nofollow">https://github.com/SentienceAPI/sentience-ts</a><p>Studio 演示:<a href="https://www.sentienceapi.com/docs/studio" rel="nofollow">https://www.sentienceapi.com/docs/studio</a><p>构建 Web 智能体:<a href="https://www.sentienceapi.com/docs/sdk/agent-quick-start" rel="nofollow">https://www.sentienceapi.com/docs/sdk/agent-quick-start</a><p>带有重要性标签的截图(金星): <a href="https://sentience-screenshots.sfo3.cdn.digitaloceanspaces.com/Screenshot" rel="nofollow">https://sentience-screenshots.sfo3.cdn.digitaloceanspaces.co...</a> 2026-01-06 at 7.19.41 AM.png<p><a href="https://sentience-screenshots.sfo3.cdn.digitaloceanspaces.com/Screenshot" rel="nofollow">https://sentience-screenshots.sfo3.cdn.digitaloceanspaces.co...</a> 2026-01-06 at 7.19.41 AM.png<p>我正在用 Rust 处理后端,用 Python/TypeScript 处理 SDK。该项目目前处于 beta 发布阶段,我非常欢迎大家对架构或排名逻辑提出反馈!
1作者: collinboler26 个月前
我开发这个工具是因为我在技术面试中很难“边思考边说”,即使我知道最优解。 我现在用它来练习表达我的想法,这是技术面试中一个非常重要的部分,而LeetCode没有涵盖这一点。 它与leetcode.com无缝集成,并在你的屏幕上显示一个小小的“橡皮鸭”。 LeetDuck 会自动配置为在开始时主动向你提问一个随机的行为问题,对运行和提交做出反应,并在你成功完成问题后询问你时间和空间复杂度。 请告诉我你们的想法!这真的是其他人也会使用的东西吗?
1作者: jfranchino6 个月前
这是一篇短小的技术文章,记录了一个个人项目。<p>目标是将一个基于雷达的在场检测系统隐藏在一个普通的手机充电器里。<p>重点不在于固件功能,而在于设计决策: - 物理限制 - 雷达方向 - 电气隔离 - 简单性优先于可配置性<p>这不是一个教程,也不是产品发布。 仅仅是记录在现实约束下所做的工程决策。<p>欢迎反馈。
1作者: cladamski796 个月前
我一直在“收集”阶段遇到困难。大多数应用程序在当时都感觉过于繁琐。即使是想出一个标题也足以打断思路。 我的应用程序 Ilseon (安卓) 解决了这个问题。它不是一个完整的 GTD 系统或项目管理工具。它是一个有针对性的任务管理器,旨在减少精神噪音,帮助用户一次专注于一件事。 Ilseon 的工作流程中包含 GTD 元素: * 快速收集 任务和想法可以几乎没有任何结构地被收集。在收集时,不需要标题、标签或项目。 * 语音收集,适用于双手不方便的时候 当打字不方便时(走路、开车),我会录制一个简短的语音备忘录。可选地,如果您添加 Gemini API 密钥,Ilseon 可以从转录文本中提取任务,但这完全是可选的,并且发生在收集之后,而不是期间。 * 一个想法收件箱 有一个单独的草稿本,用于尚未成为任务的想法。在回顾期间,这些想法可以被提升为任务或笔记,或者被丢弃。 * 完成后进行反思 完成不是终点。一个小的反思步骤鼓励回顾实际完成的事情。 * 本地优先存储 音频以标准的 .m4a 文件保存在本地文件夹中 (Recordings/ilseon/)。 我正在寻找对干净的收集流程感兴趣的人的反馈。您在使用当前的工具进行收集时是否遇到过摩擦,尤其是在您离开办公桌时? GitHub:[https://github.com/cladam/ilseon](https://github.com/cladam/ilseon) Play 商店:[https://play.google.com/store/apps/details?id=com.ilseon](https://play.google.com/store/apps/details?id=com.ilseon)