给软件开发者准备的优质简报,每日阅读 10分钟。
New accounts on HN more likely to use em-dashes
HN新账户使用EM破折号等符号的概率约为老账户的10倍
- 作者感觉近几个月HN被机器人账户淹没,明显特征包括发布无意义随机字符(如"13 60 well and t6ctctfuvuh7hguhuig8h88gd...")、纯数字("1662476506")或单个俄语字母("Аё"),以及大量平庸或离题的评论
- 通过抓取/newcomments和/noobcomments进行统计分析,新注册账户的评论中使用EM破折号、箭头等符号的比例为17.47%,老账户仅为1.83%,相差约10倍(p = 7e-20),统计显著性极高
- 新账户评论更频繁提及AI和LLM相关话题,占比18.67%,对比老账户的11.8%(p=0.0018)
- 样本量各约700条评论,虽然不算庞大但差异极其显著
- 作者已将数据和研究方法公开至GitHub供查证
Never buy a .online domain
永远不要购买 .online 域名
- 作者是二十多年的 .com 坚定支持者,此次为一个小浏览器应用购买 .online 域名,通过 Namecheap 促销免费获得,仅花费 0.20 美元 ICANN 费用
- 网站突遭 Google Safe Browsing 误报黑名单,Firefox 和 Chrome 均显示红色"不安全网站"警告页面,点击后返回 "site not found" 错误
- 域名被注册局 Radix 置于 serverHold 状态导致 DNS 停止解析,但作者未收到任何来自注册局、注册商或 Google 的通知邮件
- 陷入验证死循环:Google 要求通过 Google Search Console 验证域名所有权才能申请解封,但域名无法解析导致无法添加 DNS TXT 或 CNAME 记录完成验证
- 作者尝试多种申诉渠道均未成功,包括向 Google 报告误报、提交 Safe Search 审查请求、向 Radix 申请临时解封等
- 文章发布 40 分钟后网站从黑名单移除并恢复上线;作者最后提醒应坚持使用 .com 域名、尽早将域名加入 Google Search Console 并部署监控
Danish government agency to ditch Microsoft software (2025)
丹麦数字化部门宣布弃用微软软件推动数字主权独立
- 丹麦数字化部长卡罗琳·斯特格·奥尔森宣布,该部门超过半数员工将于下月从微软Office切换至LibreOffice,年底前完成全面开源软件过渡
- 此举旨在减少对美国科技公司的依赖,并避免Windows 10系统在今年10月停止支持后的维护成本;若过渡过于复杂,部门可能恢复使用微软产品
- 丹麦最大城市哥本哈根和奥胡斯此前已宣布弃用微软软件,理由包括成本担忧、市场垄断以及特朗普任期内美国与丹麦之间的地缘政治紧张关系
- LibreOffice由柏林非营利组织文档基金会开发,包含文字处理、电子表格、演示文稿、矢量图形、数据库和公式编辑等工具
- 德国石勒苏益格-荷尔斯泰因州本周也宣布将用LibreOffice替代微软Office工具(Word、Excel),用Open-Xchange替换Outlook,未来计划迁移至Linux操作系统
Pi – A minimal terminal coding harness
pi.dev:极简终端编程助手
- 安装命令
npm install -g @mariozechner/pi-coding-agent,定位为极简终端编程工具,核心保持精简,功能通过 TypeScript 扩展、技能、提示模板和主题扩展 - 支持 15+ 供应商数百种模型(Anthropic、OpenAI、Google、Azure、Mistral、xAI、Kimi、MiniMax、Ollama 等),支持 API 密钥或 OAuth 认证,可通过
/model或Ctrl+L切换模型 - 树状结构会话管理:支持分支导航、消息过滤、书签标记,可导出 HTML 或通过
/share分享至 GitHub Gist - 四种运行模式:交互式终端、Print/JSON 输出、RPC 协议(跨语言集成)、SDK 嵌入式调用
- 上下文工程:AGENTS.md 和 SYSTEM.md 项目级配置、自动压缩历史消息、按需加载技能、提示模板(
/name展开)、动态上下文注入 - 扩展与包系统:核心刻意不内置子代理、计划模式、MCP、待办事项、后台 bash 等功能,用户可通过 TypeScript 构建自定义扩展(路径保护、SSH 执行、沙箱、Doom 运行等),或通过 npm/git 安装共享包
Claude Code Remote Control
使用 Remote Control 从任意设备继续本地会话
- Remote Control 是研究预览功能,仅支持 Pro 和 Max 计划(不支持 Team、Enterprise 计划和 API 密钥),需先通过
/login完成认证并在项目目录运行过一次以接受工作区信任对话框 - 会话完全在本地机器运行,Claude 始终在本地执行,MCP 服务器、工具和项目配置保持可用,网页和移动端仅作为显示界面,会话在设备间同步,可从终端、浏览器或手机交替发送消息
- 启动方式:运行
claude remote-control命令新建独立会话,或在已有会话中输入/remote-control命令继续当前对话并继承对话历史;前者支持--verbose、--sandbox/--no-sandbox标志;可用/rename为会话命名 - 连接方式:在其他设备打开会话 URL、扫描二维码,或在 claude.ai/code 或 Claude 应用中通过会话列表查找(显示电脑图标和绿色在线标记)
- 安全机制:仅发起出站 HTTPS 请求,不打开入站端口,所有流量通过 Anthropic API 的 TLS 加密传输,使用多个短期单一用途凭证
- 使用限制:每个 Claude Code 实例仅支持一个远程会话,终端必须保持打开状态,网络中断约 10 分钟后会话超时退出;可通过
/config设置为所有会话自动启用 Remote Control
How we rebuilt Next.js with AI in one week
AI驱动一周重建Next.js:vinext的技术突破与实践
- Cloudflare基于Vite完全重新实现了Next.js API(非适配器包装),推出vinext作为替代方案,支持一键部署至Cloudflare Workers,项目仅耗约1,100美元API调用成本
- 性能显著提升:早期测试显示,使用Vite 8/Rolldown时生产构建速度快4.4倍(1.67秒 vs 7.38秒),客户端资源体积缩小57%(72.9 KB vs 168.9 KB)
- 完整覆盖Next.js 16的94% API,包括路由、服务端渲染、React Server Components流式渲染、服务器操作、缓存及中间件,提供迁移工具,现有Next.js项目可平滑迁移
- 已通过1,700+ Vitest单元测试与380个Playwright端到端测试(部分移植自Next.js官方测试套件),并获实际生产验证(如美国政府CIO.gov网站)
- 实验性功能流量感知预渲染(TPR) 利用Cloudflare区域分析数据,仅预渲染实际产生流量的热门页面,大幅减少构建时间,避免传统方案中全量预渲染的资源浪费
- 项目代码几乎完全由AI编写(人类负责架构设计、任务拆解与迭代指导),依托完善测试与质量门禁确保代码可靠性,标志着AI在复杂系统开发中的突破性应用
OpenAI, the US government and Persona built an identity surveillance machine
观察者:OpenAI、美国政府与Persona构建的身份监控机器
- 研究人员通过Shodan发现
openai-watchlistdb.withpersona.com专属基础设施,该服务于2023年11月就已上线,比OpenAI 2025年中期公开身份验证要求提前18个月 - Persona运营的FedRAMP授权政府平台
withpersona-gov.com可直接向FinCEN提交可疑活动报告(SAR),向加拿大FINTRAC提交可疑交易报告(STR),报告中标注情报项目代号(Project SHADOW、Project LEGION等) - 平台执行269项独立验证检查,包括
SelfieSuspiciousEntityDetection(基于面部特征标记"可疑实体")及将用户自拍照与政治人物数据库进行面部相似度评分(PEP筛查),维护13种追踪名单,人脸数据最长保留3年 - 政府平台在
/vite-dev/路径暴露53MB未受保护的TypeScript源代码地图文件,任何人可直接获取完整代码库、API端点、权限配置及筛查算法 - 用户无法了解验证标准、无申诉渠道、数据保留期限不透明——提交护照和自拍照后可能被无理由拒绝,且无法得知被标记原因或数据流向
- 新发现部署
onyx.withpersona-gov.com于2026年2月4日上线,与ICE价值420万美元的Fivecast ONYX surveillance同名,存在关联疑问
Large-Scale Online Deanonymization with LLMs
大规模在线去匿名化研究:LLM可从匿名帖子识别用户身份
- LLM代理能从少量在线评论推断用户居住地、职业和兴趣,进而通过网络搜索锁定真实身份,在Hacker News、Reddit、LinkedIn及Anthropic Interviewer数据集上均实现高精度识别,且可扩展至数万名候选人的规模
- 基准测试采用两种方法:一是跨平台匹配(利用非匿名LinkedIn账户与匿名Hacker News账户的关联,移除直接标识信息后测试重关联能力),二是账户分割(将Reddit用户历史按时间或社区分割后测试重关联)
- 技术路径为嵌入向量搜索定位100个最可能候选人,再用LLM推理验证选择最优匹配;HN-LinkedIn跨平台匹配能高精度重新识别大多数账户,Reddit实验中LLM嵌入结合推理显著优于Netflix Prize风格基线
- 对Anthropic Interviewer数据集进行真实攻击,手动验证确认125人中成功识别9人;候选池扩展至数万人时仍保持较高精确率,外推至1亿用户时Recall@90% Precision显示随模型升级有望扩展至整个平台
- 平台短期缓解措施包括强制API速率限制、检测自动抓取、限制批量数据导出;LLM提供商拒绝防护存在局限,攻击可分解为看似无害的子任务(档案摘要、嵌入计算、候选人排名)规避检测,开源模型可完全移除安全限制
- 个人防护建议:每条具体信息(城市、职业、参加的会议、小众爱好)都会缩小可能身份范围,多种信息组合形成唯一指纹,智能调查员能做的事LLM代理也能以更低成本实现
om
Om编程语言的核心特性与现状
- Om是一种新型极简连接式(concatenative)同象性(homoiconic)编程语言,语法仅由操作符、分隔符和操作数三个元素组成,任何UTF-8文本(无字节顺序标记)都定义一个有效的Om程序
- 采用前缀表示法,函数接收程序其余部分作为输入并返回程序作为输出,具有避免栈下溢、单遍读取解析求值、支持语言级事件处理等优势
- 使用独特的泛形类型系统(panmorphic typing),所有数据值均表示为操作数,通过统一不可变接口访问,实现无需显式定义数据类型的编程
- 作为C++头文件库实现,可嵌入任何C++或Objective-C++程序,支持通过添加新的操作和程序类来扩展语言功能
- 目前处于非常早期的概念验证阶段,缺少基本运算和文件操作,尚未达到实际生产可用性,且在1.0版本前语法和功能可能发生重大变化
Show HN: I ported Tree-sitter to Go
gotreesitter:纯 Go 实现的 tree-sitter 运行时
- 纯 Go 无 CGo 依赖:无需 C 工具链,支持任意平台交叉编译(包括 WASM),解决 CGo 导致的跨平台编译失败、CI 需要 C 工具链、go install 依赖 gcc、Race 检测和模糊测试跨边界问题
- 性能显著领先:采用相同解析表格式,现有语法无需重编译;增量单字节编辑 1.38μs(vs CGo 124μs,约 90 倍),无编辑重解析 8.6ns(vs 121μs,约 1.4 万倍),全解析 1.33ms(vs 2.06ms,约 1.5 倍)
- 语言支持广泛:205 种语法分析器,204 种 full(完整支持含外部扫描器),1 种 partial(norg 仅 DFA),涵盖主流编程语言,支持
grammars.DetectLanguage按文件名自动识别 - 功能全面兼容:支持 S-expression 查询语法(含谓词
#eq?、#match?、#any-of?等)、增量解析、语法高亮、符号标记;Query API 支持结构量词、字段匹配、流式游标 - 自研架构实现:表驱动 LR(1) 解析器(支持 GLR 歧义处理)、cursor-based 子树复用、arena 分配器、DFA 词法分析器、外部扫描器虚拟机、查询引擎、高亮器和标记器;支持外部语法 blob 加载、运行时语法集限制、缓存调优及空闲回收