朋友給我看了一款macOS獨占的菜單欄小工具,能列出本地開發(fā)端口。我是那幾十個用Linux(具體是Fedora KDE)當主力系統(tǒng)的人之一。我用OpenCode把它fork成了一個能用的KDE Plasma插件,叫Portmanteau。
這個問題我遇見過太多次:看到某個很酷的AI或開發(fā)者工具想試試,結(jié)果全是macOS獨占。幾年前這通常意味著算了,放棄。現(xiàn)在我傾向于想:"我應該能fork一個。"
![]()
這次的對象是Port Menu,一個簡單的macOS菜單欄應用,用來查看本地開發(fā)服務器。如果你白天要跑一堆Vite、Rails、Django、Flask、Next.js之類的服務器,核心需求很明顯:告訴我有哪些端口,哪個項目占用的,讓我能直接打開或殺掉,不用在終端標簽頁里翻來找去。
但又是macOS獨占。于是我做了任何有進取心的vibe coder都會做的事:開了個OpenCode會話,問了個風險很低的問題:
"這看起來是macOS獨占的。移植到Linux可行嗎?"
第一個回答帶著AI和agent特有的樂觀。端口掃描這個idea本身很可移植。Linux有ss、lsof、/proc//cwd、git、kill,所有原材料都有。
但應用本身不會是個普通的移植。原版是SwiftUI/AppKit菜單欄應用。KDE版本得做成Plasma插件。這意味著QML、Plasma打包、面板展示、彈出窗口,還有一整套不同的桌面集成接口。
折騰和追問之后,回答變得不那么光鮮,但更實用了。這其實不是移植,是用同樣idea做個KDE重新實現(xiàn):
項目形狀就此確定:Linux掃描器 + Plasma 6插件。
接下來我要了個計劃。然后用tk記錄下來。我真的很喜歡tk,推薦所有和agent協(xié)作的人都試試。
"能規(guī)劃一下步驟/工單嗎?我們用tk來創(chuàng)建epics/tasks之類的。"
我的agent提出了五個epics:
agent在這五個epics下創(chuàng)建了38個工單,加了依賴關(guān)系,tk直接給出了實現(xiàn)順序。這時候項目就從"探索性聊天"變成了"工作隊列"。
然后我提了個不負責任的請求:
"能實現(xiàn)這個嗎?理想情況下別停,直到所有工單都完成 :)"
agent把Linux版本做成了獨立的linux/目錄,原版macOS應用完全不動。這個形狀感覺是對的:保留idea,但別假裝SwiftUI應用會跟我們一起走。
核心組件是Python掃描器、JSON契約、Plasma插件。掃描器找出本地在監(jiān)聽什么,插件把它變成我能實際用的面板彈出窗口。
它還加了第一組操作:打開、復制URL、復制端口、殺掉。有些留下來了。復制端口沒有。
agent自己也關(guān)掉了所有工單。我不覺得"所有工單關(guān)閉"是
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.