news 2026/5/4 1:11:53

我的第一个开源项目:FileFinder —— 一个全由 AI 写的「文件管理工具」

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
我的第一个开源项目:FileFinder —— 一个全由 AI 写的「文件管理工具」

谨以此文纪念我的第一个 GitHub 开源项目FileFinder v2.0
是的,代码全是 AI 写的。但这并不妨碍它成为一个真正在解决问题的工具。


一切是怎么开始的

大概是前天晚上,我坐在电脑前,面对一盘散落在各种文件夹里的文件,陷入了沉思。

我需要批量搜索一批带有特定关键词的文件,按类型筛选,然后复制/剪切到另一个文件夹。说起来很简单,但 Windows 资源管理器的搜索……懂的都懂。第三方工具要么太重(Total Commander),要么要钱(Everything 其实挺好但只搜索不操作),要么功能太单一。

于是我想:要不自己写一个?

一开始我只是想写个小脚本,但写着写着,想法越来越多:

  • 能不能支持多个关键词同时搜索?
  • 能不能自动检测文件类型,然后勾选筛选?
  • 能不能加个文件预览?
  • 复制的时候如果有重名怎么办?

然后,我就找到了 AI 助手。我跟它说我要一个文件管理工具,功能 ABCDE……几轮对话下来,FileFinder v1.0诞生了。

第二天就出了 v2.0

第一版在 5 月 2 号发布的,功能挺基础的:选文件夹、搜关键词、筛选类型、复制/剪切。
但发完之后我自己用了一天,发现几个痛点:

  1. 不支持子文件夹——这在真实场景下基本没法用
  2. 没有文件预览——选了文件还得另外打开看内容
  3. 重名直接覆盖——不小心就丢了文件

于是第二天(就是今天),v2.0就出来了。

📦 批量选择文件

选一个文件夹,输入多个关键词(用逗号分隔),勾选「包含子文件夹」,再在横向滚动的类型列表里勾上想要的格式——点击搜索,符合条件的文件就都显示在列表里了。

支持 59 种文件类型的自动检测和筛选,不需要手动翻文件夹,不需要 Ctrl+A,一个个去找。

📂 批量复制 / 移动

选中文件后,点「复制」或「剪切」,指定目标文件夹,就能批量把一堆文件一次性整理到新位置。

⚡ 冲突处理

复制或移动时遇到同名文件?弹出一个对话框让你选择:覆盖 / 重命名 / 跳过。
支持「全部覆盖 / 全部重命名 / 全部跳过」的批量操作,不用一个个点。
重命名会自动生成file(1).txtfile(2).txt这种格式,不会乱掉。

👁️ 文件预览(辅助功能)

选中文件后,右侧可以直接预览内容——59 种纯文本格式直接显示(代码、日志、配置文件),.docx/.xlsx/.pptx用 ZIP+XML 解析提取文字,纯 Python 实现,零外部依赖。

📋 剪贴板操作

  • 复制文件路径到剪贴板(一行一个路径,纯文本)
  • 复制文件本体到剪贴板(相当于在资源管理器里 Ctrl+C,之后可以 Ctrl+V 粘贴到任意地方)

老实交代:代码全是 AI 写的

这个必须得承认——FileFinder 的每一行代码都是 AI 生成的。

我做的事情是:

  1. 提需求——告诉 AI 我想要什么功能、UI 怎么布局
  2. 审代码——每段代码我都会看,理解它的逻辑,确保没有明显的 bug 或安全问题
  3. 测试——反复使用,发现问题就反馈给 AI,让它修复
  4. 整合——把不同轮对话里生成的代码拼到一起

有人说 “AI 写的代码不算你的”。但我觉得,需求是我提的,逻辑是我把关的,测试是我做的,这个项目代表的思维方式是我的。

AI 只是帮我省去了写样板代码、查文档、调语法的功夫。它让一个「我有一个想法 → 把它实现出来」的过程,从几天缩短到了几小时。

这本身就是一件很酷的事情。

技术栈

FileFinder 的技术栈非常简单:

  • Python 3+tkinter(标准库,无需安装额外依赖)
  • 纯标准库实现(osshutiltkinterzipfilexml.etree.ElementTree
  • 跨平台支持(Windows / macOS / Linux)
  • 单文件,不到 600 行代码

是的,没有 PyQt,没有 Electron,没有那些花里胡哨的东西。就一个.py文件,双击就能跑。

对于一个开源项目来说,我觉得这种「零依赖 + 单文件」的交付方式非常友好——用户不需要配环境、装包、搞虚拟环境,有 Python 就能用。

开源地址

项目已开源到 GitHub,MIT 许可证,随便用,随便改,随便提 PR:

🔗github.com/moliushangxue/FileFinder

一些感想

说实在的,作为一个软件工程的学生,我平时写的最多的代码就是学校的实训作业,但是那个含金量懂的都懂,但真正「做一个属于自己的工具并开源出去」,这还是第一次。

在 GitHub 上创建仓库、写 README、写 CHANGELOG、选 LICENSE……这些看似简单的事情,真正做起来的时候还是有一种仪式感的。

当我把那个仓库设为公开的那一刻,心里是有点小激动的。虽然可能根本没人会 star,没人会 fork,但这个项目就在那里,是我的。

我会继续维护它。下一个版本计划加正则表达式搜索和撤销功能。但谁知道呢,也许未来还有更多有意思的方向。


如果你也觉得文件管理有点烦,不妨试试 FileFinder。也许它能帮你省几分钟时间。

那几分钟,可是你生命里回不来的几分钟。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/4 1:05:33

【物理应用】基于极限学习机的 DC-DC 转换器建模附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

作者头像 李华
网站建设 2026/5/4 1:03:39

9 种 RAG 架构,每位 AI 开发者必学:完整实战指南

每个 AI 开发者必须了解的 9 种 RAG 架构(附示例完整指南) 超越基础 RAG,构建可靠的生产级 AI 系统 你的聊天机器人自信地告诉客户:退货政策是 90 天。但实际上是 30 天。它还描述了一些你的产品根本不存在的功能。 这就是“演…

作者头像 李华
网站建设 2026/5/4 1:00:41

为AI智能体构建语义记忆系统:从向量检索到知识图谱的工程实践

1. 项目概述:为智能体构建一个“会做梦”的语义记忆系统如果你在开发AI智能体,尤其是基于Hermes Agent框架,并且正在为如何让智能体拥有长期、结构化、可关联的记忆而头疼,那么这个项目可能就是你要找的答案。neural-memory-adapt…

作者头像 李华
网站建设 2026/5/4 0:51:23

基于Astro与Tailwind CSS构建家庭协作餐食规划系统

1. 项目概述:一个为家庭协作烹饪而生的智能周度餐食规划系统如果你和我一样,家里有5口人,每天下班后还要面对“今晚吃什么”的灵魂拷问,以及随之而来的混乱采购和厨房分工问题,那你一定能理解一个高效、清晰的餐食规划…

作者头像 李华
网站建设 2026/5/4 0:49:08

揭秘 new 操作符:实例化背后的四部曲

🏗️ 揭秘 new 操作符:实例化背后的四部曲 在 JavaScript 中,当我们使用 new 创建一个对象时,浏览器引擎在后台默默执行了一系列复杂的操作。 理解这个过程,不仅能帮你写出更健壮的代码,更是理解原型链&am…

作者头像 李华