被端口占用逼疯后,我用AI从零写了个本地服务管理器

被端口占用逼疯后,我用AI从零写了个本地服务管理器

文章目录

    • 前言
    • 一、订阅套餐十分钟搞定,但两个大坑千万别踩
      • 1. 套餐档位我选Medium,性价比拉满
      • 2. 第一个致命坑:API Key分两套,拿错直接白花钱
      • 3. 第二个隐蔽坑:两种协议Base URL完全分家
    • 二、没写需求文档,直接吐槽痛点丢给模型,效果超出预期
    • 三、提前定好代码规范,开循环自动迭代,我全程摸鱼
      • 1. 提前立好代码约束,规避垃圾代码
      • 2. 开启loop自动迭代,不用逐句投喂指令
    • 四、三轮迭代踩坑优化,逻辑bug它能自查,界面问题得靠人眼
      • 1. 首轮构建白屏,模型自主排查修复
      • 2. 扫描按钮点击无响应,补充交互状态
      • 3. 弹窗样式重叠,视觉问题只能人工指出
    • 五、真机实测,完美解决我全部痛点
      • 1. 目录主动扫描,项目信息精准识别
      • 2. 反向扫描系统进程,终端启动的服务无处躲藏
      • 3. 一键启停,端口快捷跳转浏览器
      • 4. 内置日志面板,完整留存终端输出
      • 5. 设置页细节人性化,规避用户误操作
    • 六、扒一遍源码,架构分层干净,拓展性极强
    • 七、代码总量&消耗账单,成本完全可控
    • 八、收尾总结,后续开源计划

P.S. 目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步,增强我国的AI竞争力。想要系统学习AI知识的朋友可以看看我精心打磨的教程 http://blog.csdn.net/jiangjunshow,教程通俗易懂,高中生都能看懂,还有各种段子风趣幽默,从深度学习基础原理到各领域实战应用都有讲解,我22年的AI积累全在里面了。注意,教程仅限真正想入门AI的朋友,否则看看零散的博文就够了。

前言

有没有兄弟跟我同款窘境?新项目启动直接报端口占用,敲lsof扒半天,揪出来一个藏了半个月的Java进程。

杀了怕线上调试服务崩,不杀我新项目跑不起来,两头为难,来回折腾十多分钟。

我一台Mac塞了全栈全套项目:Vue后台、SpringBoot接口、Go小工具、Python脚本服务堆一块儿,Nvm还装了七八个Node版本。

离谱到什么程度?哪个服务在跑、占哪个端口、项目该用哪个Node版本,我自己完全记不清,每次启动纯靠盲猜。

之前一直想整个本地服务管理器,扫进程、一键启停、实时看日志,光有想法懒得动手写,纯纯拖延症晚期。

试过别的模型,写两句就忘,直到订了火山方舟Agent Plan,上手doubao-seed-evolving,直接解放双手。

一、订阅套餐十分钟搞定,但两个大坑千万别踩

1. 套餐档位我选Medium,性价比拉满

月费49.9,每月十万AFP额度,每周三万五,个人开发造完全够用,额度预警一次都没弹过。

模型库特别全,除了Seed系列,GLM、DeepSeek、Kimi这些主流国产模型全都支持,不用来回切换平台。

2. 第一个致命坑:API Key分两套,拿错直接白花钱

很多人踩这雷,套餐自带专属Key,和按量计费的旧密钥不通用。

我当初差点复制旧Key配置,真配上了,套餐额度直接作废,所有消耗全走按量扣费,纯纯冤种行为。

3. 第二个隐蔽坑:两种协议Base URL完全分家

Anthropic协议填https://ark.cn-beijing.volces.com/api/plan,OpenAI协议后缀是/api/plan/v3。

但凡手滑写成普通的/api/v3,直接切回按量计费,后台账单悄咪咪涨,等发现的时候亏麻了。

文档里Claude Code、OpenCode各类工具接入步骤写得明明白白,照着抄就行,唯独密钥一定要核对套餐专属那串。

配置完把model指定doubao-seed-evolving,就能开工,这模型有个加分项:ID固定不变,官方每周自动迭代,接入配置不用改,1M超大上下文,单次输出上限256k,写完整项目毫无压力。

二、没写需求文档,直接吐槽痛点丢给模型,效果超出预期

我没整理规范需求,直接把开头一堆糟心事一股脑发过去,本以为它会上来直接敲代码。

结果人家先反问我,给三套方案让我选:迷你菜单栏小工具、轻量化简易面板、完整版桌面管理器,逐条对比优缺点。

果断选完整版,它主动推荐Tauri+Vue3技术栈,理由特别实在:安装包体积小、内存占用低,常驻后台不拖电脑性能,我本身写Vue,上手零门槛。

紧接着逐条确认七大核心功能,一点不自顾自瞎写:自动识别项目类型、读取对应语言版本、一键启停、扫描系统运行进程、日志收集、SQLite持久化、暗色界面。

这点真的好评,很多AI写代码自顾自加一堆没用功能,它会先对齐需求,避免做无用功。

三、提前定好代码规范,开循环自动迭代,我全程摸鱼

1. 提前立好代码约束,规避垃圾代码

先把我的编码规范喂进去:禁止上千行大类、禁止超大文件,Rust代码按职责拆分模块,参考我现有项目分层逻辑。

2. 开启loop自动迭代,不用逐句投喂指令

发完规范开loop指令,它自己生成九步开发计划,写完一轮自查一轮,不用我盯着终端一句一句催。

中间我基本该干嘛干嘛,偶尔瞟一眼终端进度,纯纯甩手掌柜体验。

四、三轮迭代踩坑优化,逻辑bug它能自查,界面问题得靠人眼

1. 首轮构建白屏,模型自主排查修复

前端构建完成打开直接黑屏,我简单提了一句异常,它回头自查,找出两处低级错误:h函数未从Vue导入、store在setup外部调用。

修复完自己列八项自检清单逐条核对,这套自查流程比修复bug本身更让我惊喜,省掉大量调试时间。

2. 扫描按钮点击无响应,补充交互状态

第二版界面出来,点扫描目录完全没反应,无报错无加载提示,跟卡死一样。

描述现象后,自动新增loading加载态、操作成功失败弹窗提示,顺带替换容易崩溃的组件,交互顺滑不少。

3. 弹窗样式重叠,视觉问题只能人工指出

最后一轮是界面样式bug,弹窗和列表互相遮挡,间距混乱。

AI没有可视化屏幕,这类视觉错位问题没法自主发现,只能我描述错位位置,调整后hover样式、间距、对齐全部规整。

总结一句:业务逻辑层bug它自己能兜底,UI视觉上的别扭,必须人工校验,这步省不掉。

五、真机实测,完美解决我全部痛点

1. 目录主动扫描,项目信息精准识别

设置页填入Vue项目本地路径,点击扫描,自动识别项目框架、Node版本22.12.0、占用端口18100、启动命令npm run dev,没有一处猜错。

2. 反向扫描系统进程,终端启动的服务无处躲藏

有个Java档案服务,之前终端后台启动,不在扫描目录里,用扫描运行中进程功能,遍历所有监听端口进程,反查工作目录直接抓取出来。

端口18881一键加入管理列表,不管IDE启动、终端后台挂着的进程,全部一网打尽,这就是我最开始想要的核心能力。

3. 一键启停,端口快捷跳转浏览器

启动停止响应速度快,列表状态实时同步,不用等待进程延迟刷新。端口数字做成可点击链接,点开直接跳转项目网页,细节拉满。

4. 内置日志面板,完整留存终端输出

通过工具启动的所有服务,日志实时采集,带精准时间戳,Vite编译输出完整留存,和终端运行观感一模一样,不用单独开终端看打印。

5. 设置页细节人性化,规避用户误操作

支持多目录配置、开机自启、进程崩溃自动重启,自定义Nvm、终端、编辑器本地路径。

列表移除项目弹出二次确认,还主动标注:仅移除列表,不会删除本地项目文件,这个提示我完全没提,它自动加上,非常贴心。

六、扒一遍源码,架构分层干净,拓展性极强

成品不是临时Demo,我长期使用,特意翻看代码结构,分层逻辑特别清晰。

  • commands层:只做参数转发,不掺杂业务逻辑
  • detectors文件夹:每种语言单独一个识别文件,新增语言直接新增文件,不改动原有代码
  • managers分层:进程管理、数据库、Nvm版本控制各自独立模块

几个巧思设计我看完直呼内行:

读取Node版本优先读取.nvmrc、.node-version、package.json engines,和我手动排查逻辑完全一致;

自动按dev、serve、start优先级识别启动脚本,不用人工配置;

启动进程前把Nvm全部Node版本bin目录注入PATH,彻底解决npm路径找不到的经典报错;

关闭进程先发TERM信号等待两秒,再强制杀死,杜绝孤儿进程残留占用端口;

打开本地目录适配系统API,Mac调用open、Windows调用explorer,绕开Tauri权限限制,老开发才懂的取巧方案。

七、代码总量&消耗账单,成本完全可控

写完让模型统计代码行数:Rust后端2004行,Vue+TS前端1343行,合计3347行,没有出现几千行的巨型文件,完全符合我提前约定的代码规范。

打包后安装包约5MB,轻量化不占硬盘。

整体token消耗四千九百多万,看着数字吓人,但49.9每月套餐额度完全扛得住,全程没触发额度预警。

收尾让它复盘全程,十几秒梳理完整开发流程:七大需求、三轮优化bug、整体架构拆分,百万上下文存住全天全部对话,不会丢失前期需求。

八、收尾总结,后续开源计划

现在这个工具常驻我的Mac菜单栏,再也不用反复敲lsof查端口,扫一眼就能看清所有运行服务。

从下午吐槽需求到晚上真机完整测试,一下午搞定,绝大多数时间模型自动循环开发,我该摸鱼摸鱼。

惦记大半年的自用工具,靠AI直接落地,日常开发启停项目全靠它,不是截完图就丢弃的一次性Demo。

下一步打算适配Windows真机,修复剩余小bug,整理干净后开源分享。

模型每周自动迭代,接口配置不用改动,下次开发工具,还能体验更新后的增强能力,期待后续表现。

P.S. 目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步,增强我国的AI竞争力。想要系统学习AI知识的朋友可以看看我精心打磨的教程 http://blog.csdn.net/jiangjunshow,教程通俗易懂,高中生都能看懂,还有各种段子风趣幽默,从深度学习基础原理到各领域实战应用都有讲解,我22年的AI积累全在里面了。注意,教程仅限真正想入门AI的朋友,否则看看零散的博文就够了。