爱意满满的作品展示区。
hashtome

WitNote 2.0.1:一次 macOS 原生重构,也把本地 AI 放回了自己的 Mac

  •  
  •   hashtome ·
    hooosberg · 1h 47m ago · 140 views

    大家好,我是 WitNote 的独立开发者。

    这是 WitNote 2.0.1 。对我来说,它不是一次普通更新,而是一次把自己第一个 Vibe Coding 项目推翻重做的记录。

    去年开始做 WitNote 时,我会写 Markdown ,也会大量使用 AI ,于是想做一个真正围绕写作的工具:不把文章复制进网页,而是在自己的文件夹里写作,让 Markdown 、本地文件和 AI 放在同一个工作流里。为了快速验证想法,第一版用了 Electron 。

    Electron 让我很快做出了能运行的产品,也让我第一次经历了开源、上架、审核、推广和有人付费。但真实用户出现以后,启动速度、内存、界面响应和 macOS 融合感的问题也一起出现了。“能用”和“真正好用”之间,还有很长一段距离。

    当 WitNote 越来越强调本地 AI ,我开始重新想:既然它主要给 Mac 用户使用,为什么不真正用 Swift 和 Apple Silicon 的 MLX 路线重做?于是大约两个月前,我决定从 Electron 转向 Swift 原生 macOS 。文件系统、Markdown 编辑器、窗口状态、模型运行、权限、沙盒、StoreKit ,几乎都要重新处理。

    这次重构里 Codex 也成了重要的开发搭档。我会先让它理解旧版功能,再一起讨论原生 macOS 应该怎么设计;它帮我写代码、查 Bug 、做重构,我负责判断哪些功能该留下,哪些应该删掉。Vibe Coding 并没有让产品自动变简单,却让我能一边做,一边更快理解架构、性能、权限和用户体验。

    2.0.1 留下了什么

    • Swift 原生 macOS 写作工作区:本地 Markdown 文件夹、编辑/预览分栏、Focus Mode 、Finder 打开文稿。
    • 随 App 内置 Qwen3 0.6B 4-bit 模型,通过随包的 Swift MLX runner 和 Metal library 在 Apple Silicon 上运行,不依赖 Python 或额外开发工具。
    • AI 是可预览、可拒绝的辅助动作:标题、语法、润色、摘要、选区解释/改写、结构检查、阅读摘录、双语翻译和写回前 Diff 。
    • PDF 、Word 、表格、图片、EPUB 预览与 Markdown 旁注、多格式导出。

    我最在意的是:用户选择的文件夹就是工作区,文章仍是普通 .md 文件,不被锁进私有格式。内置模型默认在本机推理,不把草稿默认交给第三方托管 AI ;但小模型有速度、内存和上下文边界,它不是万能 Agent ,也不宣称替代云端大模型。

    2.0.1 已通过 App Store 审核:https://apps.apple.com/app/id6756833873

    如果你是 Mac 用户、程序员或独立开发者,欢迎试试,也想听听内置 Qwen3 0.6B 的真实速度、Markdown 工作区和本地 AI 动作是否符合你的工作流。这个版本不是终点,而是 WitNote 真正开始长期维护的起点。

    送 50 个 WitNote Pro 一次性内购兑换码

    这是 App Store 的 IAP Offer Code,不是 App 下载码。兑换后用于解锁 WitNote Pro Lifetime ,一次性使用,有效期至 2026-09-30

    兑换方式:在 App Store 或 App 的兑换入口选择“兑换礼品卡或代码”,输入下面任意一个代码。用过后请回复代码编号,避免后来的人重复尝试;如果兑换失败,也请说明代码编号和系统环境。

    01  74R46J6E3RXRYMMJA3
    02  8FFYLXEAH7A63E8XM3
    03  JJRXENE4L4H4MN33MM
    04  FW868TKKMNJYF4AR48
    05  KLJPEXKKP3FNT4JXLL
    06  WLMY66LAWKF7AM8RLJ
    07  86FKFARNTPEELYY6J6
    08  AYTHN3LNXL7PF7KR8H
    09  T6PPWTXKTX4EEEXWXA
    10  M474X7YAXWE3WXL8TA
    11  7NEHPMF6MW668J3PXM
    12  RFPERJE6KNFHFPEK7A
    13  N34W6L34JTX8W7JT4W
    14  KW4KJLNHERFY76P3TP
    15  7WN6NWKM46K7867YXN
    16  F67MJNXP6RE4NTF83M
    17  RTKA48MRMFWHK8EM7R
    18  PALE3F4LXANE74RPX6
    19  JHKF76WXW888Y7M7WE
    20  WJ87A637PTNK3JKPY3
    21  XREWPF4F8LXP8P3LH8
    22  W6MMRAPAN6PHR46JE7
    23  FRXWKYYAJL8YEAAPJT
    24  E867A4FEK8E4RRHPEP
    25  FYELMAHKKLWAFJ74LE
    26  8PT483AET77JLNANX6
    27  AETMXXPL3JNJKY3744
    28  NYNA8EWTEH4HYKX6HW
    29  47E6R6WK8YXFMP7HMR
    30  KP4LRYYYJ3J6EXNNJM
    31  XP7AM7JXYNPN3XPYJY
    32  RA3EJLHMKWLYMKJN6Y
    33  JLJ4PTLRT63WWHK464
    34  W66YHARHEXLL7M886W
    35  HENXLRFYWRRYWRTAM7
    36  K3KLXEHNRL367P6NM7
    37  87LW4PE6M8LHNFXKWF
    38  HFTWYH6H473Y37XTN4
    39  RKH36MHNF8KAN7PW8Y
    40  P8Y8XANJWMHT4YK4PY
    41  F6T48KK4WWRJA7JW83
    42  4EXELRT3AJPRL4MT7K
    43  KRNXKKLRATTRWEKTTW
    44  E7PHTA4LKPJ8NE4XMJ
    45  JJKXXXX33MMPLREMLF
    46  A4WF3HFAJKPNP446FP
    47  6TYWPMKRH43JPJH8H6
    48  NHPL83PLNFEEHXYKNY
    49  863FN6XYAE8FW74YPA
    50  4PEFP3F46HXMKPNM88
    

    谢谢大家。如果你愿意试,欢迎把真实体验和不顺手的地方直接写在回复里。

    5 replies    2026-08-07 19:58:30 +08:00
    bao626
        1
    bao626  
       17 mins ago
    33 已,谢佬~先试用几天哈
    Shayan
        2
    Shayan  
       14 mins ago via iPhone
    47 已用,感谢
    nonozone
        3
    nonozone  
       10 mins ago
    感谢 39 已用。
    83f420984
        4
    83f420984  
       5 mins ago
    Markdown 开启编辑和预览快速滚动的时候感觉有点卡顿,看看能不能引用这个库进行优化?

    https://github.com/liyanan2004/MarkdownView
    nonozone
        5
    nonozone  
       5 mins ago
    首先反馈几个小 bug ,我加载了一个 以前用 typora 写的文件夹,可能里面文本有点多,点开目录的时候,有点卡,会卡住 。第二, 你看我的格式,明明 MD 没问题的,但是把第一段都识别成了标题,除非我再次回车一次才行。

    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2748 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 62ms · UTC 12:03 · PVG 20:03 · LAX 05:03 · JFK 08:03
    ♥ Do have faith in what you're doing.