引言OpenFiles 是我持续打磨的一款个人产品目前主要以桌面端应用的形式呈现。它旨在提供一站式的本地文件查看、编辑与管理体验现已支持 200 多种不同格式的文件并全面适配 Windows 和 macOS包括 Apple Silicon 与 Intel 架构。这个看似庞杂的项目实际上是我过去多年在文件处理、数据可视化、图像渲染以及 Web 全栈等多个技术领域实践经验的集大成者。尽管产品仍在不断迭代和完善中但它已经能够非常出色地满足我日常的文件处理需求让我彻底告别了为打开某种特定格式而四处寻找、下载臃肿专用软件的繁琐体验。感兴趣的开发者和用户可以通过官方网站或 GitHub 下载体验注macOS 版本暂未进行开发者签名若遇到系统安全拦截请在“系统设置 - 隐私与安全性”中放行。官网openfiles.pansysoft.app/GitHubpansysoft/openfiles.desktop本文将系统地回顾这个项目从萌芽到雏形再到如今通用化平台的迭代历程聊聊它的前世今生并分享我对该项目在 AI Agent 浪潮下的未来技术规划。启蒙阶段zfinder 与“文档即代码”故事的起点可以追溯到 2011 年。那时我刚刚开启软件工程师的职业生涯加入了一家具有浓厚极客文化、主营手游的日企。团队坚定地推行 Scrum 敏捷开发并创新性地将 Markdown 作为项目知识库的载体将所有文档与代码一同纳入 Git 版本控制。这种纯文本、结构化且极度轻量的工作流以及当时令人惊艳的 Mou 编辑器给初入职场的我留下了极深的印象。随后我回到国内并加入某互联网大厂深耕 Web 领域。正值公司研发团队全面拥抱 Git推动着从 SVN 到 Git 的浩大迁移随之而来的也是文档管理从传统的 Confluence 向 Git 仓库中 Markdown 文件的转移。这正是后来被业界广泛推崇的“文档即代码Docs as Code”理念。然而当时内部的 GitLab 对 Markdown 的解析支持相对羸弱难以呈现复杂的图表或动态内容。基于“打造一个支持高度定制化与复杂图表渲染的 Markdown 引擎”的初衷我开发了zfinder项目leungwensen/zfinder随着时间推移公司自研的富文本编辑器由在线 Markdown 编辑器演化而来逐渐取代了 Confluence文档也随之迁移至统一的线上平台。zfinder完成了它的阶段性使命停止了高频迭代被我归档到个人的技术实验室项目中但它为我后续处理复杂文件解析埋下了技术的种子。leungwensen/lab探索阶段openfiles.online 的 Web 实践在后续的职业生涯和创业经历中我越来越频繁地需要处理各种长尾格式的文档从不同编码的数据文件、思维导图到复杂的 RAW 图像格式。在大厂时这类需求往往可以通过公司采购的昂贵专业软件轻松解决但当回归到个人工作环境或创业初期时为零星需求购买全套正版软件显然不够经济。为了解决这个痛点我开发了迄今为止我个人项目中流量最大的在线应用openfiles.online目前主域名已迁移至 openfiles-online.pansysoft.app这个项目的契机非常简单当时我把 iPhone 里的 Live Photo.livp照片备份到了网盘但网盘原生并不支持这种格式的预览。于是我深入研究了 livp 的文件结构本质上是 HEIC 图片与 MOV 视频的封装开发了一个纯前端的 Live Photo 在线预览工具并支持将其拆解下载为视频或 JPG。受此启发我重拾了开发通用文件处理工具的初心将其正式封装并命名为openfiles.online。随着项目上线自然流量稳步增长我也借此机会将过去积累的技术栈如 WebAssembly、Canvas 可视化、前端音视频处理等在工程中落地。应用逐步扩展了对 XMind 思维导图、MIDI 音乐文件、各种相机 RAW 格式的支持。然而纯 Web 架构的局限性也日益凸显。用户开始提出更进阶的需求批量格式转换、加密压缩包解析、超大型数据文件处理、甚至大型 Office 文档的渲染。在浏览器沙盒环境中处理这些重型任务性能瓶颈受限于浏览器的内存限制和单线程模型处理几个 GB 的大文件极易导致页面崩溃。隐私合规若采用 B/S 架构将文件上传至服务器处理不仅违背了我坚持的“隐私优先Privacy-First”原则还会带来高昂的存储和算力成本。稳定性风险项目曾因域名配置和 SSL 证书的琐碎问题出现过宕机严重影响了用户体验。经过反复的技术选型和权衡我决定回归桌面端利用我最熟悉的 Web 技术栈构建一个全新的、Local-First 的桌面应用。这就催生了如今的openfiles.desktop。破局蜕变openfiles.desktop 的 Local-First 架构pansysoft/openfiles.desktop将技术路线切换至桌面端后整个项目的迭代速度迎来了质的飞跃当然这也得益于 Cursor 等 AI 编程助手的加持。在线版本对我而言使用频率其实并不高因为“恰好电脑没装软件又急需处理文件”的场景毕竟是低频的。但桌面版彻底改变了我的使用路径——它变成了我日常工作流的一部分。无论是快捷预览文件代码还是进行轻量级的文本编辑、图片转化我都直接在 openfiles.desktop 中完成。它成功帮我“瘦身”了系统卸载了一大批冗余的专业软件。在架构设计上桌面端也迎来了激进的重构在纯 Web 时代为了保证首屏加载速度我必须对每种格式的解析器进行极其细致的 Code Splitting代码分割和按需加载。而在桌面端摆脱了网络带宽和实时加载时间的束缚我将软件架构设计得更为松耦合。 如今每一种格式的处理器无论是查看、编辑还是转换在底层都是一个独立的应用实例。它们通过类似浏览器的 Tab 机制进行加载和生命周期管理不仅实现了进程级的沙盒隔离还支持多开互不干扰。这种良好的可扩展性让我得以轻松地将过往的独立实验项目如基于 WebGL 的 LowPoly 图像风格化、Web 钢琴合成器等无缝集成进来。这也使得目前应用支持的文件格式数量迅速突破了 200 种大关。在基础设施建设上我将在线版、桌面版的官网、API 服务以及软件的分发全面迁移到了 Cloudflare 体系上。Cloudflare 强大、稳定且极具性价比的 Serverless 基础设施让我能够免受运维琐事的干扰将精力 100% 聚焦于产品功能的打磨。在商业化基建上桌面端正式补全了账户系统目前已支持邮箱密码、Google (Gmail) 以及 GitHub 三种 OAuth 鉴权方式。这不仅为后续的用户行为分析和问题跟踪提供了数据支撑更为未来项目探索可持续的商业化路径奠定了基础。多年的从业经验告诉我只有具备清晰商业闭环的软件才能获得持久的生命力。OpenFiles 作为我倾注了大量心血的“亲骨肉”我自然希望它能走得更稳、更远。展望未来迈向桌面端的 AI Agent 中心对于 OpenFiles 的未来规划我有着清晰的优先级。首先核心承诺保持不变所有关于本地文件的预览、基础编辑和管理功能将永久免费且我会持续优化其性能和原生交互体验。作为一款 ToC 的工具类产品庞大而活跃的用户基数是产品的护城河也是一切商业化尝试的基石。其次探索高价值的 AI 赋能商业化我目前的技术关注点高度聚焦于 AI Agent 领域。审视当下的应用生态OpenFiles.desktop 凭借其对多格式文件的深度解析能力以及 Local-First 的特性拥有成为用户桌面端“最佳 AI Agent 入口”的天然优势。与其他完全依赖云端的 AI 服务不同OpenFiles 中的 AI Agent 直接操作用户本地的文件系统。这意味着它能在确保数据绝对隐私的前提下让用户利用 AI 处理敏感业务文件。同时生成的 AIGC 内容如分析报告、图表能直接沉淀在本地磁盘既避免了内容的碎片化又为用户省去了额外的云存储开销。在接下来的迭代中产品的进化方向将全面向 AI Agent 倾斜具体场景包括但不限于File Chat与文件对话用户可以唤起 Agent 深入阅读本地长文档或代码库一键生成内容摘要、结构化 Markdown 或思维导图。多模态内容生成利用本地算力或受控的云端 API一键生成图像、PPT、PDF 乃至音视频媒体内容。智能数据分析针对本地的结构化数据如.xlsx,.csv,.sqlite等Agent 可以充当数据分析师自动编写查询并生成可视化的数据报告与动态图表。自定义本地 Workflow允许高阶用户创建基于本地环境的私有 AI 应用程序这些程序自带完整的端到端服务且数据绝不出站。在商业模式上我们将采用对用户极其透明和公平的“按量计费Pay-as-you-go”模式。类似于 OpenRouter 或 Poe所有基础的本地软件功能完全免费只有当用户触发需要调用大模型LLM的高级 Agent 功能时才根据实际消耗的 Token 用量进行扣费。结语虽然前文倾注了不少笔墨讲述这款产品如何贯穿了我的职业生涯我也确实对它寄予厚望但坦率地说我也保持着一颗平常心。客观来看目前的 OpenFiles.desktop 仍处于起步阶段各项运营数据——无论是下载量、注册率还是用户反馈都还在冷启动的爬坡期。但我自诩为一个长期主义者构建一个“基于本地文件的全能 AI Agent 工具”是我解决自身痛点的真实诉求因此我会持续不断地去迭代它、使用它让它成为我最高效的数字助手。技术浪潮奔涌向前也许未来会有更惊艳、更完善的产品诞生并取代它但正如那句老话所言“功成不必在我功成必定有我。”能够在个人开发者的舞台上将自己对技术的理解和对产品的理念转化为实体这本身就已经是一段美妙的旅程。最后感谢您的耐心阅读。诚挚地邀请各位下载并试用 OpenFiles.desktop如果您在使用过程中有任何痛点、反馈或建议欢迎随时向我提出探讨