当我开始做越来越多Ai工具,真正麻烦的事情反而不是写代码

当我开始做越来越多Ai工具,真正麻烦的事情反而不是写代码

2026-10-02 16:36:14 0点赞 0收藏 0评论
当我开始做越来越多Ai工具,真正麻烦的事情反而不是写代码

以前我做 Python 小工具,通常有一个很简单的流程:

写一个 .py 文件,运行。

不好用了就改。

再后来工具越来越多,事情开始变得不太一样。

一个目录里可能放着文件处理脚本,另一个目录里放着自动化程序,还有几个小项目带着 Web 界面。为了避免依赖冲突,有的项目用了虚拟环境,有的项目单独指定了 Python 版本。

到了这个阶段,我发现一个很有意思的问题:

Python 写工具已经越来越容易了,但“管理这些工具”却没有变得更容易。

尤其是在 AI 开始参与编程之后,这个问题更加明显。

现在让 AI 帮忙生成一个几十行、几百行的 Python 程序,并不算什么难事。真正麻烦的是,这些程序写完以后放在哪里、怎么启动、怎么区分运行环境,以及一个月以后我还能不能快速找到它。

于是我开始认真考虑一个问题:

如果电脑里有几十个自己做的小工具,它们应该以什么方式存在?

一、脚本和应用,其实是两种东西

我以前很喜欢把所有东西都直接放在项目目录里。

例如:

projects/ ├── rename_files/ ├── image_tool/ ├── excel_helper/ ├── crawler/ ├── local_web/ └── pdf_tools/

对于刚开始开发的人,这种方式完全没问题。

但当项目数量增加以后,“项目目录”并不等于“应用列表”。

因为我真正关心的通常不是:

这个项目的源码放在哪?

而是:

我今天要处理 Excel,应该打开哪个工具?

我要运行上次那个文件整理程序,它叫什么?

这个项目到底使用哪个 Python 环境?

这就是我后来开始把“项目”和“应用”分开考虑的原因。

项目是给开发看的。

应用是给使用看的。

源码目录、虚拟环境、依赖文件这些东西,对于开发过程很重要,但对于每天点击一下就要使用的小工具来说,它们其实都属于实现细节。

一个成熟一点的桌面工作流,应该允许我直接面对“应用”,而不是每次都面对“项目目录”。


二、AI 编程之后,这个问题反而更明显了

AI 编程工具带来的最大变化之一,并不是让程序员少写几行代码。

而是让很多原本“懒得做”的工具,现在值得做了。

以前我可能会想:

“这个事情一个月才做一次,专门写个工具好像没必要。”

现在可能几句话就生成了:

def rename_files(folder, prefix): for index, path in enumerate(folder.iterdir(), start=1): if path.is_file(): new_name = f"{prefix}_{index}{path.suffix}" path.rename(folder / new_name)

代码本身并不复杂。

真正让我头疼的,是它下一步怎么办。

如果只是运行一次,终端里执行一下就结束了。

但如果我准备以后反复使用,那么它实际上已经不是一个临时脚本,而是一个“小应用”。

于是我的工作流开始从:

想需求 → 写代码 → 运行一次

慢慢变成:

想需求 → AI 辅助开发 → 调试 → 变成可重复使用的应用

这时候应用管理就成为开发链路里缺失的一环。


三、我更希望 Python 环境是“应用的属性”,而不是“用户的负担”

Python 有一个非常优秀、同时又很容易让新用户困惑的地方:

环境。

开发者当然知道虚拟环境是什么,也知道为什么不同项目需要隔离。

但如果一个人只是想运行一个自己做的工具,他真正关心的问题通常只有一句:

能不能直接打开?

假设电脑上有三个项目:

Tool A -> requests==2.x Tool B -> requests==3.x Tool C -> pandas + openpyxl

让它们全部共用一个全局 Python,迟早会遇到依赖问题。

所以我做桌面应用管理时,一个比较重要的思路就是:

环境应该跟着应用走。

可以把应用理解成一个简单的数据结构:

app = { "name": "Excel Helper", "entry": "main.py", "runtime": "python", "isolated_env": True, "homepage": https://pybox.site, }

这里最重要的其实不是 homepage。

而是最后那个字段之前的几个属性:

应用叫什么、从哪里启动、使用什么运行方式,以及它自己的环境。

一旦这些信息被统一管理,就可以把“运行一个 Python 项目”变成“启动一个应用”。

这也是我在做 PyBox 时反复思考的一件事情。


四、为什么我没有把它做成另一个 IDE

一开始很容易掉进一个误区:

既然有 AI,那是不是应该重新做一个更强的 IDE?

但我后来觉得,这未必是最值得解决的问题。

现在已经有大量成熟的编辑器和 IDE,也有越来越多 AI 编程工具。

真正缺少的,反而是 IDE 之外的那一层:

代码已经写完以后呢?

所以我更倾向于把开发和运行拆开。

研发阶段,可以让 AI 帮助创建和修改 Python 项目。

例如:

“创建一个批量整理图片的工具, 支持按日期移动文件,并增加撤销功能。”

AI 负责把需求变成代码。

开发者负责判断需求和结果。

项目完成以后,再把它登记成一个应用。

之后使用它,不需要再次打开开发环境。

这是一种很轻量的工作流,但我觉得非常适合个人工具。


五、我现在越来越喜欢“桌面工作台”这个概念

以前我的电脑更像是一个文件仓库:

文件夹里是源码,源码旁边是虚拟环境,桌面上还有几个快捷方式,浏览器收藏夹里又放着几个 Web 工具。

它们分别都能工作。

问题是,它们彼此之间没有统一的入口。

所以后来我开始尝试把这些东西放进一个桌面工作台。

大致可以理解成:

┌──────────────┐ │ 研发中心 │ │ AI + Python │ └──────┬───────┘ │ ▼ ┌──────────────┐ ┌──────────────┐ │ 应用商店 │ ──> │ 我的应用 │ └──────────────┘ └──────┬───────┘ │ ▼ 本地运行环境

研发解决“怎么做”。

应用列表解决“怎么用”。

商店解决“怎么分享”。

这三个部分其实是连续的,而不是三个孤立的功能。


六、网页应用也应该有一个位置

另外一个让我比较纠结的问题,是 Python 桌面工具和网页应用应该怎么共存。

实际上现在很多 AI 生成的小项目,本身就是 Web UI。

例如一个简单的数据处理工具,后端可能是 Python,前端可能是 HTML + JavaScript,最后通过浏览器访问。

如果应用管理器只支持 .exe,显然太局限。

如果只支持 Python,也一样。

所以我现在更倾向于把“应用”理解成一种抽象概念,而不是某一种技术。

一个应用可以是:

Python 项目 自动化脚本 网页应用 本地工具

只要它能够被统一描述,就应该有机会被统一管理。

例如一个非常简单的应用描述:

name: Data Cleaner type: web entry: app.py runtime: python url: http://127.0.0.1:8000

这样一来,用户根本不需要特别关心它到底是 Flask、FastAPI 还是别的东西。

打开应用就行。


七、做着做着,我又加了一块“办公”

这其实是比较自然发生的一件事。

因为很多所谓“办公需求”,本质上就是轻量的软件任务。

整理文本、生成文件、处理表格、批量操作、本地自动化,这些事情以前通常需要:

Excel + Word + 浏览器 + Python + 一堆脚本。

现在 AI 参与以后,很多任务都可以被组合起来。

所以后来在桌面工作台里又加入了办公助手。

它背后的逻辑并不复杂:

AI 不应该只是一个聊天窗口,也可以成为桌面任务的一部分。

这也是我比较认同的一个方向。

未来个人软件可能不会越来越“大”,反而可能越来越碎片化。

一个工具只解决一个问题,但每个人都可以拥有很多这样的工具。


八、真正值得解决的,不是“怎么生成代码”,而是“代码生成以后”

这是我做这类软件以后最大的一个感受。

AI 已经让“从零写一个小程序”这件事越来越低成本。

但开发流程并没有因此结束。

代码生成之后,还有:

创建环境 ↓ 安装依赖 ↓ 调试 ↓ 运行 ↓ 再次运行 ↓ 管理 ↓ 更新 ↓ 分享

如果每个小工具都重复处理这些事情,那么 AI 节省下来的时间,很快又会被管理成本吃掉。

因此我现在更关注的是后半段。

如何让一个 AI 生成的小项目真正成为一个可以长期使用的桌面应用。

这也是为什么我最后做出来的东西并没有停留在“AI 写代码”这一层。

我把它继续往后延伸到了:

开发 → 运行 → 管理 → 分享

整个链路。


九、PyBox 更像一个实验,而不是一个终点

我现在做的这个项目叫 PyBox。

它运行在 Windows 桌面上,核心思路就是把 AI 辅助开发、Python 应用运行、本地应用管理和应用分享放进同一个工作台里。

它当然不是要解决所有软件开发问题。

我更愿意把它看成一种尝试:

当 AI 让创建软件变得越来越容易以后,我们是否需要一种新的方式来管理这些软件?

目前它已经可以管理本地 Python 应用、自动化脚本和网页应用,也可以通过研发中心辅助创建和修改 Python 项目,再登记到应用列表中。

另外还有应用同步、分享、独立运行环境、快捷方式以及部分应用的 EXE 打包能力。

项目本身还在持续调整。

对我来说,比“做出了多少功能”更重要的是验证一个工作流:

需求 ↓ AI 辅助开发 ↓ Python 项目 ↓ 应用登记 ↓ 独立运行 ↓ 长期使用 ↓ 需要时继续修改

如果这个循环能够跑通,那么 AI 生成的软件就不再只是一次性的代码片段,而是真正能够沉淀到个人电脑里的工具。

这可能也是桌面软件在 AI 时代一个挺有意思的方向。


最后

我以前觉得,程序员最重要的能力是把代码写出来。

现在反而觉得,代码只是开始。

当写一个小程序的成本越来越低,我们迟早都会遇到一个新的问题:

电脑里有那么多自己做出来的软件之后,怎么把它们真正用起来?

也许答案不是再打开一个编辑器。

而是给这些代码一个真正属于“应用”的位置。

这也是我现在正在做的事情。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
0
扫一下,分享更方便,购买更轻松