Newlearnerの自留地
65K subscribers
14.3K photos
45 videos
66 files
10.9K links
🆕 不定期推送 IT 相关资讯,欢迎关注!

👥 博客群&投稿群&交流群: @NewlearnerGroup

📩 投稿请私信 @newlearner_pm_bot

🔍 频道内容关键词索引 Bot: @newlearner_search_bot

* 未经授权或标注来源,不得转载本频道内容
Download Telegram
#Photos #GitHub情报 #Tools

🎞 NegativeCutter-135:Lightroom 135 胶片扫描自动裁剪插件

🔗GitHub

👉 Features

- 自动帧检测:识别胶片帧之间的间隙,无需手动标记
- 批量处理:同时处理多张照片,适合整卷胶片 Workflow
- 虚拟副本:为每帧创建独立虚拟副本,保留原始扫描文件
- 精确裁剪:基于图像分析生成像素级精确的裁剪框
- 边界清理:0.3% 微小内收,消除扫描脏边和 bleed

📷 上次聊到,自己买了一台 Olympus OM-1 胶片相机,并且拍了一卷 5219 电影卷送去冲洗。由于除碳和 ECN-2 的工艺比较麻烦,为了保证最终质量,索性上了一台哈苏 X5 扫描仪以获得最高后期宽容度。但冲扫店为了图省事,直接发来了 12 张 135mm 照片为一个合集的大文件,也就意味着他们后期去色罩也是一大张照片一起的,这让我感到很恼火

如果你想避免这种情况,最好找那些愿意拆分照片再分别去色罩的商家。一个更为现实的问题是,我如何快速把这个接近 1GB、含有 12 张照片的大图像进行切分?在咨询群友后,他给了我一份 JSX 脚本,现在看来就是 FilmCrop 项目的再开发。意外得还算好用,基本上把 6x2 的照片都拆分出来了,边框还需要再进行细致的调整

💡 最近偶然看到有网友分享了自己在用的 135mm 胶片裁剪脚本,刚好适配 Lightroom,于是和大家分享一下。开发者提供了一键安装脚本,根据 README 引导安装即可。使用起来也很方便,你可以选择让脚本自动检测帧,也可以指定裁剪帧数。项目采用 NumPy 和 Pillow 检测和处理图像,对于单列 135mm 胶片条来讲,效果还是不错的,但边缘依然需要再处理一下

👀 目前唯一的问题就是脚本并不支持 2 列或多列的大文件自动裁剪,依然会在最中间的位置寻找帧,从而导致输出结果混乱。针对这个问题,我也向开发者提出了 Issue,希望后续得到更好的优化和解决

* 实际上,胶片上扫描仪的时候,一般都是将一卷拆分成若干段(一段常见 6 张)再进行扫描,以上提到的裁剪是冲扫店日常需要处理的事情

📘 关联阅读:记一次奥林巴斯胶片相机的购买与使用(以 Olympus OM-1 及其配件为主)

频道:@NewlearnerChannel
6🥰1
#App #Github

⌨️ Raycast 2.0:键盘党最爱的 macOS 启动器,重写之后第一次跑上 Windows

官网 | 技术深度解析

Raycast 把整个应用底层从 Swift 原生重写为 Swift / C# / Rust / Node / React + TypeScript 的四层混合架构,换来了一份能同时跑在 macOS 与 Windows 的代码库,以及一次完整的产品现代化。

特点

- 跨平台同源:macOS 与 Windows 共用同一份 React 前端代码,但各自保留原生外壳(AppKit / WPF),保证系统调用与外观一致。
- Rust 文件索引:自研索引器在 Windows 上直接读取 NTFS Master File Table,整盘扫描可以在几秒内完成,不再依赖 Spotlight。
- AI Chat with Memory:新版 AI 会自动从历史对话中沉淀长期记忆,识别项目、偏好与目标,跨会话延续上下文。
- WebKit 文本渲染:Markdown、代码高亮、长对话滚动用 WebKit 渲染,复杂排版比 v1 的 TextKit 明显更顺。
- 多窗口产品形态:启动器、AI Chat、Notes、Settings 拆成独立窗口,每个窗口都是单独的原生面板浮在桌面上。
- 类型化 IPC:四个 runtime 之间通过自动生成的 typed stdio 协议通信,编译期就能捕捉跨层调用的接口错误。

⚙️ 机制

Raycast 2.0 的核心是一个明确分层的混合架构:底部的原生宿主负责窗口、输入法、托盘等系统集成;中层的 Web 前端用 React + TypeScript 渲染所有 UI;Node.js 后端承担业务逻辑、数据库与扩展运行时;性能敏感的部分(文件索引、数据层、云同步)下沉到 Rust。团队明确否定了 Electron 与早期 Tauri 方案——前者要在 macOS 上额外捆绑 Chromium,后者当时还不够成熟,无法满足他们对原生控制力的要求。

主要依赖:Swift / AppKit(macOS)、C# / .NET 8 / WPF(Windows)、React、TypeScript、Node.js、Rust、WebKit、WebView2。扩展 API 沿用 React + TypeScript,开发者只需 Web 技能即可上手。

代码质量:Raycast App 本体闭源,但扩展仓库 raycast/extensions 完全开源,是观察其工程实践最直接的窗口。团队在 WebKit 内部细节上做了大量工作——禁用 occlusion detection、用 requestAnimationFrame 同步绘制、覆写 NSWindow.setFrame 接入 Core Animation 防止抖动、预热 emoji 字体;在 Windows 端则单独处理 acrylic 模糊与白屏初始化问题。这种愿意啃原生底层细节的工程取向,让混合栈在体验上仍然贴近纯原生应用。

性能与代价:v1 闲置内存 200 ~ 300 MB,v2 上升到 350 ~ 450 MB(WebContent 120 ~ 200 MB、Node 150 ~ 200 MB、原生外壳约 40 MB)。团队承认这是真实的代价,但强调它是 "bounded and measurable",并把内存优化列为 beta 期间的持续工作。

🛣 路线图

官方在技术博客与 v2 公测说明里给出的方向:

内存与冷启动持续优化:把闲置占用压回更接近 v1 的水平,并为低频窗口设计 "grace periods" 减少冷启动延迟。

Windows 体验补齐:IME、可访问性、拖拽等原生细节继续打磨,覆盖更多 Windows 版本、显示器与硬件组合。

iOS 与云同步深化:iOS App 共用同一份 Rust 数据层与同步 schema,未来会有更多功能在三端拉齐。

AI 能力扩展:以 Memory 为基础,继续围绕 AI Chat、AI Commands、Quick AI 增加上下文与工具调用能力。

Linux 仍未官方化:社区维护 raycast-linux 分支,HN 上有用户呼吁官方合作,但目前官方尚未承诺时间表。


🖊 作者背景

Raycast 由 Thomas Paul Mann(CEO)与 Petr Nikolaev(CTO)于 2020 年在伦敦联合创立。

Thomas Paul Mann:前 Facebook / Meta 工程师,毕业于德国 TH Aschaffenburg 应用技术大学,2020 年离开 Meta 后创办 Raycast,常驻伦敦。
Petr Nikolaev:联合创始人兼 CTO,与 Thomas 一起在伦敦带队。
团队:约 30 人,其中 75% 是工程师,团队完全分布在欧洲。
融资情况:累计融资 4780 万美元。

2020 年 10 月:种子轮 270 万美元,Accel 领投,Y Combinator 参与。
2021 年 11 月:A 轮 1500 万美元,Accel 与 Coatue 共同领投。
2024 年 9 月:B 轮 3000 万美元,用于把产品拓展到 Windows 与 iOS。
知名天使:GitHub CEO Thomas Dohmke、Shopify CEO Tobi Lütke、Vercel CEO Guillermo Rauch。

💰 定价

Raycast 主体免费可用,付费的 Raycast Pro 主要面向需要 AI、云同步与高级主题的用户。

Free:启动器、扩展、Clipboard、Snippets、Notes、窗口管理等核心功能全部可用。

Pro:年付 8 美元 / 月(96 美元 / 年)或月付 10 美元 / 月。包含无限基础 AI 对话(GPT-4o-mini、Claude Haiku 3.5、Llama 3.3)、AI Commands、AI Presets、自定义 Prompt、Quick AI、Cloud Sync 与自定义主题。

Advanced AI 加购:在 Pro 之上再加 8 美元 / 月(合计 16 美元 / 月),解锁 GPT-5、Claude 3.7 Sonnet、o3、o3-mini、Gemini 2.5 Pro 等前沿模型。

频道:@NewlearnerChannel
12👍3
#GitHub情报

HelloGitHub:面向入门爱好者的开源项目月刊,近日更新第 122 期

🔗官网 | GitHub | 投稿

✏️ 第 122 期 已经发布

FluentFlyout:更好看的 Windows 媒体控制弹窗
termshot:一条命令生成终端截图
Recordly:支持自动缩放和光标特效的屏幕录制工具
bleachbit:免费开源的磁盘清理工具
Kami:让 AI 生成的文档值得被打印出来
health-tick-release:macOS 菜单栏久坐提醒工具
whatcable:这根 USB-C 线到底能干啥
codeburn:AI 编程助手 Token 用量分析工具
open-design:Claude Design 的开源替代品
Clawdmeter:展示 Claude 用量的桌面小屏
agentmemory:AI 编程助手跨会话记忆系统

频道:@NewlearnerChannel
👍91🥰1
#RSS #AI #GitHub情报 #Tools

📰 邸报:把推荐算法重新接回 RSS

🔗GitHub | 项目介绍

⭐️ Features:

• 导入 OPML 或 RSS 地址
• 根据阅读行为自动学习偏好
• 支持 Docker Compose 部署
• SQLite 单文件存储
• 无需绑定 LLM API,可接入 embedding 服务或本地模型

RSS 的好处是信息源掌握在自己手里,坏处也是信息源容易古板、陈旧、机械的掌握在自己手里。订阅一多,每天几百篇未读文章堆在收件箱里,阅读很容易逐渐变成一种负担。平台推荐当然省心,但代价是信息分发权也一并交给了平台。邸报在两者之间找一个位置,让信源仍然由用户选择,但排序交给算法完成。导入 OPML、添加 RSS 地址之后,就可以在邸报中像普通阅读器一样浏览、收藏和标记文章。与传统 RSS 阅读器不同之处在于,邸报会根据阅读行为逐渐学习用户的偏好,再对订阅池中的内容重新排序。它不会引入新的信息来源,只是在你已经订阅的文章里,把可能更值得先看的内容浮上来。

这个思路非常合理。现在很多“AI 阅读”产品习惯让大模型直接吞掉整条信息流,逐篇总结、筛选和判断,不仅消耗大量 Token,也容易让阅读变成被模型加工过的二手信息。而邸报选择了另外一条路,通过行为数据、embedding 和排序,已经可以解决大部分需求,每篇推荐还会附带理由,不只是扔给用户一个无法理解的黑盒分数。

部署方面,邸报支持 Docker Compose,可以运行在 NAS、VPS 或本地电脑上。数据保存在 SQLite 文件中,备份基本就是复制粘贴。它不依赖中心化服务,也不强制绑定付费 API。接入硅基流动之类的 embedding provider,或者在本地跑一个小模型,就可以获得不错的推荐效果。

👀 开发者将邸报称作“外部嗅觉器官”,我很喜欢这个描述。RSS 阅读器流行于 2000 年前后,推荐算法在十多年前就已经被大规模验证,但直到今天,两者仍然很少被真正结合起来。邸报目前的完成度和推荐效果都需要更多真实使用来检验。如果你的 RSS 收件箱已经长期处于爆炸状态,又不愿意把阅读完全交给平台算法,邸报很值得试试看。

频道:@NewlearnerChannel
7👍3
#Photos #AI #GitHub情报

🎞 X5-Crop:轻量的 X5 扫描长 TIFF 自动裁切工具

🔗GitHub | Releases

👉 Features

- 兼容绝大部分胶片以及扫描格式:普通 135 / 135 双条片夹 / 半格 / 645 / 66 / 67
- 使用简单:有详细的文档说明,使用方式简洁到只需要双击和回车
- 批处理:一个脚本可以批量处理整个文件夹内的所有 TIFF 图;同时运行多个脚本可以同时处理多个文件夹里的图片,只要电脑内存和硬盘读写足够,上不封顶
- 安全可靠:不对原图作任何修改,输出的裁切图片也严格限制到只做裁切和水平/垂直校准,其余属性绝不修改
- 自动识别与人工审核:能自动识别横图与竖图,只裁切能够被可靠识别的图片,无法可靠识别的情况将会把原图复制粘贴到 needs_review 文件夹以方便人工处理

作为一名冲扫店主,处理哈苏 X5 扫描出来的长 TIFF 是一个高频的场景,不过手动裁切是一件费时费力且枯燥疲惫的事。市面上有着各种各样的裁切工具,在亲自尝试过能找到的所有之后,却总是觉得不能完美地解决自己的痛点:偏手动的效率低下,自动的却常常无法正确识别;又或者是掺杂了许多我完全不需要的花里胡哨功能,裁切的入口太深且不能批处理,反而拉低了效率。

💻 为了解决自己的(还有许多与我类似处境的人)的痛点,我只得自己动手,拿起 Codex 学习做一个 Vibe Coder。用 AI 写代码的过程出乎意料的充满乐趣。最初我以为只是一个非常简单的项目,一天之内就能解决。但是反复的调试验证以及扩充测试样本的过程中,我却发现了这是一件比想象中复杂的事。一开始我只是认为写一个脚本,捕捉到长图中两张图片中间黑色间隔的像素,就能很快很好的完成自动的裁切。但验证的结果却很快告诉我没这么容易:欠曝的图片,叠片,不稳定的片距,片头和片尾。

🤔 这些情况混杂在一起造成了非常糟糕的结果:我甚至需要在自动裁切的产出里去挑选真正可用的图片,很难说这到底是在增加效率还是降低效率。于是在几周的迭代和重构里,我加入了除了间隔检测之外的内容判断、几何修正等等各种 Policy。我也从一名初学者,开始逐渐变得有那么一点点 Coder 的思考方式了。做出来的项目也越来越准确和顺手,让我这个创造者有点自豪,也非常开心帮助到了除了我自己以外的其他人。

💡 现在脚本还有一些不足:比如对于 135 之外的格式没有足够的优化识别参数,对于叠片或者片距不稳定之类的高难度场景只能让脚本临时加 Bleed 或者让人工审核,效率仍然不够高:一张长图的分析裁切需要 10 秒。在这分享出来,也是希望得到更多的反馈让我能够优化和改进,非常欢迎在 GitHub 上提 Issue!至于是否做软件级的封装仍在犹豫中,这一点也需要用户的反馈。

📘 关联阅读: NegativeCutter-135 | Lightroom 135 胶片扫描自动裁剪插件

频道:@NewlearnerChannel
9🤝1
#Android #GitHub情报 #APP

📱 Pixel-Tailor-CN:一组面向国内 Pixel 用户的开源工具集

🔗官网 | Github

用「一个工具只解决一个问题」的方式,补齐原生 Android 在来电、短信、网速、定位上的本地化短板。

为不完美的体验,做精细的缝补:在不破坏系统完整性、不上传任何数据的前提下,把国产 ROM 才有的「顺手」搬回原生 Pixel。

特点
- 单一职责:五个独立 App 各管一摊。Pixel Telo 拦来电、Pixel Text 理短信、Pixel Meter 显网速、Pixel Geo 看方位、Pixel Snooze 跳闹钟,不做臃肿全家桶。
- VPN 网速不再翻倍:Pixel Meter 直接读取物理网卡、过滤 tun0 等虚拟接口,解决开代理后状态栏网速虚高一倍的老毛病,这也是整个系列最受欢迎的功能。
- 端侧大模型识骚扰:Pixel Text 内置 TensorFlow Lite 模型在本地识别骚扰短信,并用本地规则把验证码、12306 票务、银行动账、快递通知转成 Material You 卡片,验证码一键复制。
- 系统级来电拦截:Pixel Telo 基于 CallScreeningService 与 Directory Provider,把骚扰拦截和号码标记直接做进系统拨号器,本地查询 100 毫秒内出结果。
- 隐私零上传:短信解析、号码识别、闹钟判断全部在设备本地完成,除 MMS 下载、号码库更新等必要请求外不联网。
- 纯正 Material You:全系采用 Jetpack Compose 与 Material 3 动态取色,视觉上与 Pixel 原生系统无缝融合。

⚙️ 机制

整个系列共享一套现代 Android 技术底座:Kotlin + Jetpack Compose + Material 3,统一走 MVVM / MVI + Clean Architecture,用 Koin 做依赖注入,Room、DataStore、SharedPreferences 负责本地存储,Coroutines + Flow 处理异步。各 App 的差异主要在系统能力的接入点:Pixel Meter 靠 TrafficStats + ConnectivityManager 拿到单一可信的流量数据源,Pixel Telo 接 CallScreeningService,Pixel Text 跑 TensorFlow Lite 端侧推理,Pixel Snooze 用 NotificationListenerService,而 Pixel Geo 用 Kotlin Multiplatform 实现了 Android / iOS 双端共享。

主要依赖:Kotlin、Jetpack Compose、Material 3、Koin、Room、Coroutines / Flow、Retrofit + OkHttp(Pixel Telo)、TensorFlow Lite(Pixel Text)、Kotlin Multiplatform(Pixel Geo)。

👨🏻‍💻 使用场景

裸刷 Pixel 的国内用户:刚从国产 ROM 换到原生系统,发现没有骚扰拦截、短信验证码不卡片化、网速显示不准——装上原点系列就能逐项补回,且不用 root。

重度代理 / VPN 用户:长期挂着 VPN 的开发者或外贸从业者,用 Pixel Meter 看到的才是真实物理网卡速度,不再被翻倍的数字误导。

被骚扰短信和验证码困扰的人:Pixel Text 把银行动账、快递、12306 票务自动归类成卡片,端侧模型把营销骚扰短信单独拢进一个会话。

打工人调休党:Pixel Snooze 接入 NateScarlet/holiday-cn 调休日历,法定节假日、大小周、上 x 休 y 都能配,休息日自动跳过工作日闹钟,又不动系统时钟。

户外与测绘爱好者:Pixel Geo 输出未经偏移的 WGS-84 原始坐标和真北方向,适合徒步、探洞这类对方位精度有要求的场景。

🛣 路线图

- 悬浮窗精准定位
- 网速低于阈值自动隐藏
- 设置界面重构
- 多语言与多端

🖊 作者背景

Mystery00(Mystery0 M):独立开发者

技术方向:Android 开发者 / Go 语言爱好者 / 原生 Android 生态探索者,自述「热衷于在移动端与高效后端服务之间架起桥梁」。

技能栈:Kotlin(Jetpack Compose)、Go、Java,并涉猎 DevOps(Docker / K3s)。

其他作品:TurboIMS(为 Pixel 开启 VoLTE / VoWiFi)、XhuTimetable(西瓜课表)、WhatAnime(动漫识图找番)、go-jasypt、telegram-channel-publisher。

频道:@NewlearnerChannel
👍2711
#macOS #iOS #APP #GitHub情报

📦 Pastel:macOS 中强大的 IPA 下载工具

🔗GitHub | Releases

👉 Features

- 在不同地区的 App Store 里搜索和查看 App
- 根据 Apple 账户地区自动选择对应商店
- 获取 App 的历史版本 ID ,并下载对应版本 IPA
- 下载完成后可以在 App 内预览 IPA 的图标
- 直接通过 AirDrop 发送到 iPhone / iPad
- 支持简体中文、繁体中文、日语、韩语、泰语

🧑🏻‍💻 自从 iOS 和 App Store 问世以来,大家就在为了获取和安装 IPA 与 Apple 斗智斗勇。无论是越狱、降级还是进行其他骚操作,都离不开 IPA 这个安装包格式。随着 iOS、iPadOS 和 macOS 软件大融合,终于有人带来了好用的一站式 IPA 获取和安装工具

💡 初次使用需要在「设置 > Apple 账户」里添加账号,登录后会识别 Apple 账户所属地区,并在切换地区时自动选择对应商店。云集了 Apple、Timbrd、Agsy、Bilin 下载源的版本 ID 信息,方便你快速找到对应的版本 ID。下载完成后,可以直接看到已下载的 IPA 文件,并预览 App Icon ,便于筛选无广告 Icon

👀 很多人为了 Bug 等原因需要降级(点名 Telegram)如果你想要将旧版 IPA 导入 iOS,在 macOS 下载好后进行 AirDrop 即可(需要 iOS 18+)。最后,Pastel 需要 macOS 26+ 并且无 Windows 支持计划,看目前 Golden Gate 的状况,秋季正式版应该可以直接冲了(Big Sur 后再次让我能记住名字的 macOS 版本)

📘 关联阅读:Asspp - 轻松管理多个 App Store 账户

频道:@NewlearnerChannel
20
#macOS #GitHub情报 #AI

🧠 RegionSpoof:在国行 Mac 上开启完整 Apple 智能(适用于 macOS 27)

🔗GitHub

相较于用「电子围栏」限制死的 iOS系统,macOS 相对更加开放,也给了我们国行 Mac 使用 Apple Intelligence 的机会。此前 已经介绍对应的解决方案,但 macOS 27 发布后就不再适用,且已经有一段时间不曾更新。近期冲浪的时候看到了另一套方案,和大家分享

👉 Features

- 使用极简内核扩展 kext 修改设备区域码
- 提供一件安装 / 卸载脚本
- 可启用完整的 Apple Intelligence 端侧 + Private Cloud Compute 云端全功能

💡 原理

和之前的项目都有一些不同,RegionSpoof 引入了一个第三方 kext,而不是着手修改合规文件。这几乎从源头使得全系统进程将电脑识别为美版,完美解决了 macOS 27 的 eligibilityd 基于 SwiftData 实时重算的问题

通过开机自启和添加守护进程,能够带来很不错的体验

💻 前置条件

在运行脚本前,我们需要做以下准备工作:

① SIP 关闭 + Permissive 安全模式 + 允许第三方 kext
② AMFI 必须保持开启
③ kext 首次加载需在「系统设置 → 隐私与安全性」里点 Allow 后重启
④ Apple 账户和 macOS 系统语言设置为 Apple Intelligence 支持区域

具体的步骤详见 README,有朋友反馈无法关闭 SIP,是因为 27 引入了一个 bug。为了避免我们需要:要在更新前把系统的安全性等级恢复成 Full Security 再更新,这样更新后才能调整安全等级

同时,关闭 SIP 后通过 App Store 安装的 iOS / iPadOS 软件就无法使用了,需要大家进行取舍后再决定。总之,欢迎有需求的朋友们进行尝试和反馈!

📘 关联阅读:

1️⃣ enableAppleAI:更适合中国宝宝的国行 Mac 开启 Apple Intelligence 方案
2️⃣ 巧用两个开源项目,让你的国行 Mac 使用 Apple Intelligence
3️⃣ 巧用开源项目 misakaX,让你的国行 iPhone 使用 Apple Intelligence

频道:@NewlearnerChannel
8👍3
#GitHub情报 #macOS #APP

⌨️ LockIME:可以锁定键盘输入源的 macOS 工具

🔗GitHub | Releases

👉 Features

- 实时锁定 / 切换选择的输入法
- 支持根据不同的 App 锁定 / 切换不同的输入法
- 全局切换快捷键(快速取消、激活锁定)
- 可根据 URL 切换锁定的输入法
- 支持 9 种语言
- 可进行配置备份,可通过 Sparkle 自动更新
- 提供 URL Scheme,自动化玩法多样

🧑🏻‍💻 虽然是前不久刚刚开源的项目,但开发者更新和维护的速度非常快。LockIME 被开发用于一些令人不快的场景:譬如 macOS 有时候会自动切换某个输入法,譬如使用不同软件或网页时需要频繁变更语言。它和同样开源的 Input Source Pro 解决的核心问题一致,但又有一些自己的想法

💡 LockIME 专注于 App 和网页两大场景,并提供了「锁定」和「切换」两种动作。简单来说,你可以将某个 App / 网页和某种语言锁死,也可以选择打开某个 App / 网页时切换一次输入法,后续的切换由你来手动决定。此外,URL Scheme 的出现可以帮助你配合脚本或快捷指令一起使用,带来更加复杂和精细化的自定义

👀 不过,对于日常需要切换几种语言的朋友来讲(尤其是 IM 软件),这样的软件还不能够做到随用随切。在 macOS 上,无论是地球键还是 Ctrl + 空格,都在给你选择而非确定解。面对这种情况,我们会更建议大家使用 Karabiner-Elements 这样的第三方软件完成映射

📘 关联阅读:Input Source Pro 正式开源,助你自动切换 macOS 输入法

频道:@NewlearnerChannel
9
#iOS #Privacy #GitHub情报

🔍 Loupe:看看你的 iPhone 暴露了哪些信息

🔗GitHub | App Store

⭐️ Features:

• 展示 iOS / iPadOS 公开 API 暴露的真实设备信号
• 将信号分为 Passive、Needs Permission 和 Advanced 三类
• 覆盖语言地区、时区、屏幕、电池、联系人、照片、定位等信息
• 演示 canOpenURL 探测、Keychain 重装后持久化等进阶识别方式
• 数据默认只在本机展示,不上传、不同步,除非用户主动导出
• Swift 开发,源码 MIT 许可,免费开源

很多时候我们讨论隐私和追踪,会自然想到姓名、邮箱、手机号、精确定位这些显性的个人信息,但现实更麻烦的地方在于,App 并不一定需要知道你是谁,也能通过一堆看似零散的信号把你重新认出来。Loupe 则把普通 App 可以通过公开 API 看到的设备信息摊开给你看。

Loupe 会读取真实设备上的公开 API 返回值,并把这些信号按照获取成本分成三类。Passive 是不需要任何弹窗授权就能看到的信息,比如地区、时区、屏幕、电池等;Needs Permission 是联系人、照片、位置、日历这类需要系统弹窗确认的内容;Advanced 则是更偏技巧性的侧信道,比如通过 canOpenURL 推测你装了哪些 App,或者利用 Keychain 在卸载重装后仍然保留某些状态。

Loupe 把一个原本偏研究、偏安全工程的话题做成了普通用户也能理解的概念。很多隐私科普最大的问题是太容易停留在恐吓式表达上:App 在追踪你、平台在画像你、广告商很可怕。但具体怎么发生,则过于抽象,用户往往感知不到。Loupe 能让用户意识到单个信号可能没什么,但一组合起来,就足够形成稳定的识别线索。

🤔 当然,Loupe 不会也无法帮你一键阻止所有追踪,也不能替代系统权限管理、浏览器防指纹或网络层隐私工具。如果你一直觉得 iOS 的权限弹窗已经足够保护隐私,Loupe 很适合拿来重新校准一下这种安全感。

频道:@NewlearnerChannel
6👍2
#macOS #APP #AI #GitHub情报

🗣 Type4Me:AI 驱动的 macOS 语音输入法

🔗GitHub | Releases

👉 Features

- 内置本地识别引擎,支持多家云端引擎厂商
- 支持流式识别、边说边出字,说完无需等待、快速输入
- 内置润色、Prompt 优化、翻译功能,可自定义添加任意处理模版
- 支持主流厂商 API 接入;文本处理支持使用 Ollama 接本地模型
- 支持热词、映射词
- 存储所有历史识别记录,支持导出 CSV
- 通过配套 Skill,打造只属于你的输入法

🧠 步入 AI 大爆炸时代,常常觉得打字速度跟不上脑子里天马行空的想法。各大厂商在加紧布局智能对话助手的同时,也有诸如 Typeless 这样的工具崭露头角,更有许多人为它配备了 DJI Mic 以便随时随地对话输入

💡 但每个人都有他自己的想法和说话习惯,Type4Me 就是为了高自由度和自定义度而打造的新语音输入法。它支持本地模型,也可以接入云端大模型,同时能够根据你的需要进行高度自定义,使用起来比较流畅。无论是生成结果 AI 再润色,还是支持历史导出,都紧贴当下 AI 时代需求

👀 当然了,有的朋友不想折腾太多,想要开箱即用,最后再介绍几个商业项目。Typeless 不再赘述,近期看到国人开发的同类项目 Voilà,需要一次性买断(支持一个月试用)。此外,许多网友反馈豆包输入法也不错,大家可以根据自己的需求进行试用

📘 关联阅读:

1️⃣ Typeless:用 AI 重新定义语音听写
2️⃣ MemoAI:好用的语音转文字工具
3️⃣ 精准转写:利用 Whisper 处理音视频转文字不完全指南

频道:@NewlearnerChannel
9👍1
#GitHub情报

HelloGitHub:面向入门爱好者的开源项目月刊,近日更新第 123 期

🔗官网 | GitHub | 投稿

✏️ 第 123 期 已经发布

PaperTodo:极简的 Windows 桌面便签工具
SpeedyNote:为低成本设备优化的跨平台手写笔记应用
gopass:专为团队设计的命令行密码管理器
r2-web:纯前端的在线文件管理平台
tolaria:基于 Git 的本地 Markdown 知识库工具
winpodx:把 Windows 应用“嵌”进 Linux 桌面的工具
Atoll:把 MacBook 刘海变成灵动岛的应用
MacTools:住在菜单栏里的 macOS 工具集合
CapsWriter-Offline:超低延迟的离线语音输入工具
micro-radar:放在桌上的迷你航班雷达
optocamzero:树莓派自制的口袋数码相机

频道:@NewlearnerChannel
👍8
#GitHub情报 #APP #Tools #macOS

📩 接读者来稿,TA 向我们推荐了自己开发的 macOS 窗口卷帘工具

🪟 WindowShade:把经典 Mac OS 的窗口卷帘带回 macOS

🔗GitHub | 演示视频

👉 Features

• 支持 ⌃⌘C 折叠 / 展开当前窗口
• 支持双击窗口标题栏,将窗口内容原地卷起
• 折叠后保留一条标题栏式卷帘条,不把窗口送进 Dock
• 菜单栏显示已折叠窗口数量,并可快速恢复
• 支持 ⌃⌘1 到 ⌃⌘9 展开对应窗口
• 支持原貌卷帘和标准标题栏两种样式
• 支持悬停预览、卷帘条整理、置顶、半透明和音效设置
• 针对快速预览、便笺、微信、Adobe 全家桶等应用做了兼容处理

💡 WindowShade 想解决的是一个很小但很真实的问题:有时你只是想临时看一眼后面的窗口,不想关闭、不想隐藏应用,也不想把窗口最小化到 Dock 再找回来。

它的做法是用 Accessibility API 找到当前窗口,用 ScreenCaptureKit 截取窗口顶部,再生成一条 AppKit 覆盖层作为“卷帘条”。真实窗口会被移到屏幕外、隐藏或最小化,但在用户看来,这个窗口只是被原地卷起来了。

👀 这个项目更像是把经典 Mac OS 时代的 WindowShade,用现代 macOS 能接受的方式重新做了一遍。它不是完整窗口管理器,而是补上“展开”和“离开桌面”之间的中间态:窗口内容先退场,标题、位置和恢复入口还留在原处。

频道:@NewlearnerChannel
13
#AI #Tools #GitHub情报

🧠 Tolaria:更 Git-first 的 Obsidian 替代品

🔗Web | GitHub

⭐️ Features:

• MD + YAML 本地保存,无私有格式
• Git-first
• 支持块编辑器
• 原生支持多种 AI agent
• 无账号、无订阅、无云依赖,离线可用
• 支持 macOS / Windows / Linux,开源

和大火的 Obsidian 一样,Tolaria 也是一个本地文件优先的笔记软件。每条笔记都是 Markdown 文件,用 YAML frontmatter 存结构信息,Wikilinks、关系、白板、媒体预览这些能力也都在熟悉的 PKM 语境里。两者的区别在于 Obsidian 更像一个高度可扩展的个人知识工作台,很多能力依赖插件补齐,用户也很容易陷入到无限的美化和插件折腾的怪圈里;Tolaria 则固定了一系列的笔记工具如块编辑、Slash Command、Git 提交、历史浏览和推送同步,用户开箱就能用到这些核心能力,并且原生集成 AI agent。

在同步功能上,Tolaria 把每个 vault 当成 Git 仓库,在应用内即可提交、推送、查看历史,以及对单篇笔记浏览版本变化。这个设计可能偏极客,但是对于接触过 Git 的用户可能非常有用,因为知识库本来就应该是可以溯源的。

🤔 虽然 Tolaria 经常被拿出来同 Obsidian 对比,但 Tolaria 不一定是给所有 Obsidian 用户的替代品。如果已经深度依赖 Obsidian 的插件生态、移动端体验和长期打磨出的工作流,Tolaria 目前肯定不能直接替换。可以把 Tolaria 看作是 AI 时代里被打上 Mod 的 Obsidian,Git 同步和 AI 接入更原生、更少折腾。当然目前 Tolaria 还处于早期且迭代非常积极的开发阶段,功能可能频繁变化,也可能有 bug,使用时应当注意备份。

频道:@NewlearnerChannel
7🥰1
#Windows #Tools #GitHub情报 #Translate

📘 STranslate:Windows 上目前最像 Bob 的翻译工具

🔗Web | GitHub

⭐️ Features:

• 支持输入翻译、划词翻译、截图翻译、静默 OCR
• 可同时接入多个翻译服务,方便对比结果
• 内置微信 OCR,也支持 PaddleOCR 等离线识别
• 支持 TTS、生词本、历史记录、全局快捷键和插件扩展
• WPF 开发,开源免费

我在 macOS 上用 Bob 很多年了,不得不说 Bob 的使用非常方便,对于翻译这种需要尽量克制的任务我一直认为 Bob 这类弹窗式 App 要比浏览器的翻译插件要好很多。因为工作原因不得不换到 Windows 平台,才发现这边虽然类似产品不少,但真正顺手的并不多。之前找过 Pot 之类 Bob-like 工具,用下来总觉得差点意思:要么是基于 Electron,体感上总有点笨重;要么就是项目已经年久失修,功能还在,细节和维护却跟不上。最后惊喜找到 STranslate,我认为它就是目前 Windows 平台最好的 Bob 替代品。

当然,STranslate 也确实没有 Bob 精致。Bob 在 macOS 上那种原生感、细部动效、界面克制程度,依然是这类工具里的标杆;而 STranslate 更像一个很强、很实用、很接地气的 Windows 工具,功能堆得很满,也更偏效率优先,而不是审美优先。好在它至少不是那种“看起来什么都有,实际哪都卡一下”的壳子货。用 WPF 做这件事,本身就比一票 Electron 翻译工具更让我有好感。

🤔 如果你长期待在 macOS,用过 Bob,大概率会理解我说的这种“戒断感”;而如果你刚好又被迫切到 Windows,STranslate 基本是少数能把这种落差补回来的工具之一。它未必有 Bob 那么优雅,但在 Windows 这边,能做到这一步已经很不容易了。

📘 关联阅读:

1️⃣ TTime:功能强大的多平台翻译与OCR工具
2️⃣ Bob 1.0.0 正式版发布

频道:@NewlearnerChannel
12
#APPLE #iOS #macOS #GitHub情报 #AI

📍巧用两款开源工具,为你的 iPhone 修改定位

随着 WWDC 上推出全新 Apple Intelligence 和 New Siri,许多使用外版 iPhone 的朋友发现新系统加入了「电子围栏」。具体来讲,就是通过检测定位判定能否使用 Siri 的完整功能。为此,大家又想了一些办法来面对这种情况

1️⃣ Apple WLOC

🔗GitHub | Releases

👉 Features

- 提供代理软件订阅模块和快捷指令,简单方便
- 地图直接选点,无需填写经纬度
- 下次 Apple 定位触发时自动生效
- 支持 Apple Maps、高德

Apple WLOC 通过修改 Apple 网络定位服务(Wi-Fi / 基站)返回的坐标,实现 iOS 网络定位虚拟定位。能够看到这条推送的大家,想必多少都了解过代理软件,所以用起来应该是没有太大门槛的。只需跟着 README 操作即可,iOS 26 / 27 的用户需要额外注意操作步骤,以便提高虚拟定位的成功率

项目的设计基本上做到了绕开「电子围栏」,能够解锁外区的 Apple Intelligence、Siri、Apple Watch 相关功能,还能让国行 iPhone 添加海外 eSIM。建议大家使用备用机进行体验,因为一直保持虚拟定位,会影响到导航、闪购等日常活动

2️⃣ VirtualLocation

🔗GitHub | Releases

👉 Features

- 使用 macOS 为 iOS 虚拟定位
- 支持普通模式(DVT)和代理模式(MITM)两种方案
- 支持地图直接选点

VirtualLocation 本身没有 Apple WLOC 那么强的针对性,仅仅是在你恰好有一台 Mac 的前提下,实现 iPhone 定位的修改。你可以通过 USB 利用 Apple 的 DVT(Developer Tools)协议直接向 iOS 设备注入定位;也可以在 Mac 上启动 HTTP / HTTPS 代理,对 iPhone 的 WiFi 定位请求进行中间人劫持,篡改定位响应

👀 可以看到,除了之前频道介绍过的 AnyGo,有越来越多的开源软件能够用于绕开 Apple 繁琐的地区政策。很多人觉得「电子围栏」做得有些过火,但未来这样的事会变得司空见惯

📘 关联阅读:

1️⃣ 巧用开源项目 misakaX,让你的国行 iPhone 使用 Apple Intelligence
2️⃣ 用修改定位法,为 AirPods Pro 3 开启听力测试功能
3️⃣ 聊聊近期热门的 misaka26 与相关漏洞
4️⃣ RegionSpoof:在国行 Mac 上开启完整 Apple 智能(适用于 macOS 27)

频道:@NewlearnerChannel
13👍5
#Music #GitHub情报 #Web

💽 介绍两个「劣迹艺人」音乐在线网站

最近宋冬野推出新专辑《再想想》,引发了不小的讨论。这位曾经吸毒的艺人因抱怨在国内被禁演之后,时隔多年专辑还能上架网易云,实属不容易。不过,今天介绍的这两位「劣迹艺人」就不像宋冬野这么幸运,TA 们的歌曲已经在国内流媒体平台悉数下架

1️⃣ 李志音乐播放器

🔗GitHub | Web

南京人李志因为民谣而为人们熟知,但他的野心不止于此。多场 Live 中他不断变化曲目的编排,融合了声光电、弦乐、爵士,影响了后来的一众乐队;他还在南京创办了 Livehouse 和演出生态,从欧拉到 1701,越来越多的人走进现场、感受演出文化

2019 年,因为一些复杂的原因,李志的歌曲在国内不能正常收听。时至今日,即便在国外的 Spotify、Apple Music 上,依然有些歌曲是灰色的:比如专辑《F》中的《女神》、专辑《梵高先生》中的《广场》,还有 2010 年的跨年 Live 合集《我们也爱南京》

这个在线的李志播放器,参考了 Apple Music 的 UI 布局,几乎整理了全部李志参与演唱的歌曲,便于大家随时便捷地收听。目前用下来体验还不错,加载也很快速,唯一的小问题是底部专辑栏缺少一个电脑端的左右切换按钮,对于没有触控板的人来讲不是很友好

* 读者推荐了自己开发的另一个同类项目:我爱南京,一并补充

2️⃣ my little airport

🔗GitHub | Web

不同于上面的播放器,这个网页是对乐队 my little airport(小飞机)的音乐作品的一次大盘点。即便小飞机在外区 Spotify、Apple Music 上能够很轻松听到,但网页中还是整理了许多线上 Live、限定盘、合辑以及非官方的作品,让人眼界大开

my little airport 在国内的坠机是源于几场香港运动,感兴趣的朋友可以自行查询(基本上可以说林生祥也是这样被封禁的)。我最初接触 my little airport 应该是 23 年秋冬,看到了博主早见的介绍,当年她去参加了小飞机在香港的演唱会,很有感悟。初听并不感觉顺耳,后来越品越有滋味,几乎可以说,小飞机是没有代餐的

24 年暑期忙得焦头烂额的时候,有时会听《暑夜》,也第一次看 Fuji Rock 的线上直播。那时 Shigeru 向我分享他珍藏的全套小飞机演出海报,大为震惊,后来他去了香港、看了小飞机。25 年终于有心情想要一看究竟,但小飞机并没有照常开演唱会,而是发布了 24 年的现场 Live 专《今晚可能好大風》

朋友有张《SABINA 之淚》的 CD,闲暇之余聚到一起有时会聆听。24 年去郑州看赵雷,在一家唱片店看到了一套小飞机的 CD,可惜并不单卖。正想着规划未来去香港旅行,顺便买一些小飞机的碟的时候,我在武汉一家老唱片店遇到了《只因当时太紧张》的国内发行 CD(口袋唱片,不保真)。总之,买来把玩一下

👀 即便「劣迹」斑斑、难登「大雅」之堂,这些艺人依然为我们的生活带来了一些鲜活的、难以磨灭的青春记忆。在社交媒体为了「听歌不看人」还是「看人再听歌」吵到不可开交之时,祝你们听歌愉快

频道:@NewlearnerChannel
👍137👾1
#Privacy #GitHub情报 #AI #Web

🔍 用两个网页项目,分析你的浏览器环境暴露了哪些隐私信息

网络隐私一直是大家争执不休的话题,有人为了保护自己的隐私想尽了一切办法,而另一些人坚信没有真正的隐私可言。今天要介绍的两个项目,能够一定程度上帮助你了解,我们日常使用的浏览器能够被获取到哪些信息

1️⃣ taken.

🔗Web

为了追踪并提取用户信息,网站使用了一系列技术,并将它们打造成美观的可视化网页,taken. 就是其中之一。一旦你点击进去,网页就会显示(以下测试浏览器为 Chrome):

① 你的 IP 地址
② 你所在地区的时间 / 时区
③ 你所使用的浏览器和屏幕分辨率
④ 你使用的设备处理器
⑤ 你的电池电量及充放电情况(Firefox 已移除 API)
⑥ 你的浏览器使用语言 / 字体
⑦ 你对于 Cookie 的使用情况
⑧ 你浏览 / 离开该网页的时长

开发者表示,绝大多数网页都能够读取这些信息,但他们从来没有告知过用户。对一般用户,可能觉得这些信息无伤大雅,但它们往往能够判断你到底身处什么区域、说什么语言,从而能模糊地判断国别

对于那些不想让一点隐私信息或个人习惯被互联网捕捉的人们,往往会选择他们认为靠谱的浏览器。此前 DuckDuckGo 和 Firefox 得到了很多人的认可,而如今各种「指纹浏览器」成为了人们的新欢。指纹浏览器(反检测浏览器)是一种通过伪装硬件参数、隔离运行环境来防止账号被追踪关联的工具,能为每个账号提供独立的 Cookie 和指纹信息

👀 本人对此了解甚少,欢迎使用指纹浏览器的朋友进行测试 / 推荐,并反馈下对隐私保护是否有效

2️⃣ isChinaUser

🔗GitHub | Web

这个项目的出现,完全是因为前段时间 Claude 针对中国用户大量封号,相关人士表示他们检测了中国用户特征,并会在后续撤回相关的算法。正因为不知道算法内容,大家开始从浏览器着手,排查可能的特征点

isChinaUser 从语言信息、时区信息、设备特征、字体信息、网络特征等多方面着手,对「是否是中国用户」做了一个综合判断并显示结果。开发者表示,想要避免被判断为中国用户,可以从下面几个方面着手:

① 修改浏览器语言,避免含有中文
② 修改操作系统语言,避免含有中文
③ 修改操作系统时区,选中国相邻的国家和地区
④ 使用纯英文操作系统,避免系统字体库有特定中文字体,如仿宋、等线等
⑤ 避免无法显示某些特殊 Emoji

🤔 但归根到底,SaaS 和数字化的普及,让服务提供方有了很大的权力,这也是玩家反对索尼放弃实体游戏的原因,可惜的是数字化和联网趋势不可阻挡。曾经厌恶各种盗版行为,但后来发现很多情况下只能不得已为之。大量服务和平台并未和内地接轨,即便付费我们皆是「非法移民」,几款条例、一些算法就足以再次把我们拒之门外

* 隔壁群友推荐两个同类网站,在此补充:网站 ① | 网站 ②

📘 关联阅读:Loupe - 看看你的 iPhone 暴露了哪些信息

频道:@NewlearnerChannel
👍93
#Books #Translate #GitHub情报 #Tools

📚 文译:将被语言阻隔的作品,带到读者的语言中

🔗GitHub | Releases

👉 Features

- 将多语言 EPUB、FB2 或 TXT 小说翻译成中文
- 尽量保留 EPUB 原排版、图片、目录和跳转
- 引入多角度一致性机制
- 一站式完成预扫、分析、翻译、可选润色、章末审校、标点规范化和 EPUB 导出
- 默认调用 DeekSeek

📖 村上春树新作长篇小说《夏帆》本月发售,因为一些众所周知的原因,许多日本文学作品已经暂缓出版。没有了官方中译,各路人马开始大展身手。有传记作家坚持人工翻译,拒绝科技和 AI;也有开源爱好者琢磨怎么尽可能稳定地翻译长篇小说,并最终用 DeepSeek 完成了《夏帆》的翻译,在社交媒体收获许多好评

💡 本项目「文译」就是完成《夏帆》中译所用的项目,开发者结合译制工作实际情况,加入了一致性机制、断点翻译、审校等多项功能。如今借助 AI,我们能够快速完成很多此前很难想象的长文翻译工作。具体的成果,大家可以自行评判并决定是否进行阅读

👀 即便对于 AI 介入严肃的文艺领域还有很多不信任和排斥,我也不能不承认,在这样特殊的情况下,AI 润色翻译小说确实有着高效、不俗的表现。同理,针对一些外文小语种的影视作品字幕翻译,也能够用类似的方式迅速完成。但这并不能够取代「古法」手工译制的字幕组在我心中的地位,只能说是一种备用选项。AI 对于翻译的冲击确实很大,但「人味」恰恰是文字表达中最宝贵的东西

📘 关联阅读:

1️⃣ Belin Doc:保留原文排版的 AI 文档翻译
2️⃣ 介绍两个开源的视频翻译 / 字幕添加 AI 项目

频道:@NewlearnerChannel
11
#App #Github

🚦 Traffic Light:Claude 红绿灯

用一个淘宝红绿灯玩具,把 Claude Code 的运行状态搬到桌面上。把屏幕里的「正在工作 / 等你确认 / 空闲」变成桌面上一盏真实亮起的红绿灯。

特点

- 物理状态提示:绿灯慢闪代表正在干活、红灯快闪代表在等你授权或选择、黄灯常亮代表空闲、会话结束全部熄灭,不用一直盯着终端。
- 零依赖:电脑端脚本只用 Python 标准库,不需要 pip 装任何第三方包,git clone 下来就能跑。
- 完整硬件教程:README 附带开发板和红绿灯玩具的淘宝购买链接、引脚接线表,以及从面包板测试到焊接、穿线、固定的十步图文过程。
- 事件精准映射:细分到 PermissionRequest、AskUserQuestion、Elicitation、Stop 等具体 hook 事件,而不是笼统的「开始 / 结束」两态。
- 优雅降级:没接硬件或串口被占用时,桥接脚本始终静默返回成功,绝不阻塞 Claude Code 本身的运行。

⚙️ 机制

整套系统是一条从软件事件到实体灯光的单向链路:Claude Code 触发 Hooks,调用本地 Python 脚本;脚本通过 Unix 域套接字把状态发给一个常驻守护进程,由它独占 USB 串口;守护进程再以 115200 波特率把 working / waiting / idle / off 这类文本命令写给 ESP32-C3。

固件收到命令后驱动红、黄、绿三颗 LED。守护进程用 flock 文件锁保证单实例,套接字权限设为 0600,避免多个 Claude Code 会话争抢同一个串口。

主要依赖:电脑端是纯 Python 标准库(socket、termios、fcntl),固件是 Arduino / C++,硬件是 ESP32-C3 SuperMini 加三颗串了 220Ω 电阻的 LED,采用共阳极接法(GPIO 输出 LOW 点亮)。代码体量很小但工程细节到位:单实例锁、串口自动重连、硬件缺席时的降级处理都考虑到了,install_claude_hooks.py 还会先备份再合并 ~/.claude/settings.json,不会覆盖用户已有的 hook 配置。

👨🏻‍💻 使用场景

- 挂机跑长任务:让 Claude Code 后台执行耗时的 agent 任务时,不必反复切回终端,绿灯闪就是在干活,红灯闪才需要回来授权。
- 一心多用:一边开会或处理别的事,余光瞥见红灯亮起再回来确认,避免任务卡在权限弹窗上空等半天。
- 硬件入门练手:想上手 ESP32 和焊接的新手,这是一个目标明确、成本低于百元的第一个项目,从选料到烧录都有现成文档。
- 桌面仪式感:给命令行工作流加一个会亮的实体反馈,是不少人做这类小物件的直接动机。

🖊 作者背景

K(@KURANADO2
- 坐标:中国上海
- 技术栈:以 Java 为主,也写过 kpw(Rust 命令行密码管理器)、macos_install(Shell 自动化)等个人项目
- 背景:据作者在 V2EX 自述,此前从未接触过硬件,是在小红书刷到别人做的 Claude Code 红绿灯后,通过和 AI 对话学习基本原理,才第一次动手焊接完成这个作品。

频道:@NewlearnerChannel
👍12👀1