过年了,本该是躺着刷视频,打游戏的美好时光。然而作为一名合格的牛马程序员,怎么可能让自己闲着呢?这不,我趁着放假期间,用 opencode + MiniMax/Deepseek 鼓捣出了点小东西(绝对不是因为我除夕夜大街霸被揍破防了
DevSSH
作为一名致力于折磨自己,非要在奇怪设备上写代码的选手,远程开发是我的日常。我目前的非日常主役设备,Fydetab Duo虽然能在子系统用V SCode,但是由于图形加速还不完善,程序是在是卡顿到了影响使用,所以我之前就有致力于自己[参考 Devpod 开发一个快速在远程机器启动vscode的应用],奈何水平确实有限,完全理解代码都费劲。
但是!有了 opencode,我干不了可以让 Deepseek 和 MiniMax 来,除了让他们实现这个项目最基础的自动安装 VSCode Web 的要求,我甚至还实现了以我的水平很难实现的 ssh 配置文件解析,以及远端辅助程序自动部署的特性。
目前它还是一个 CLI 工具,目前还在进一步修改,加上简单的 Web UI 的过程中。
Recipes
这是我的私人软件仓库,如果说 DevSSH 是为了让自己打工更舒服,那 Recipes 就是为了让自己有东西可用。
作为一个有使用新颖工具,又希望所有工具都能通过统一的包管理器安装这一矛盾需求的人,最好的解决方式,就是自己打包了,好在 pixi 基于 conda 生态,工具链相当完整,得以让我利用重打包特性快速打包有可执行文件的项目。目前我的频道里已经有5个软件包,都是一些通用工具,后续再继续追加一些生物信息用的软件包。
当然,我个人毕竟不是学程序的,如果不是可执行文件重打包,而是直接编译的话,会碰到相当多我根本看不懂的编译问题,好在现在 opencode + minimaxi 甚至可以自动看日志来调整,这才有了频道上的 ffmpeg-rockchip 包,
webapp-picks
过年期间,我想做一个更完整的小项目,正巧,因为 chromebook 这种高度依赖 Webapp 的设备在国内基本不会有人用,其实比较缺少一个适合国内使用的 Webapp 应用收录站,于是我伙同 opencode,模仿 FydeOS 的应用商店弄了一个简单的应用收集站。
顺便在过程中学习了 git worktree 的使用,也实际评估下这种小项目的 API 用量,并实测过程中可能的坑。
目前来说,绝大部分内容都非常顺利,主要需要一个 browser-use 技能来解析参考项目(因为是动态网页,没法直接解析),其他的内容最多需要多强调两次,最终都还是能实现的。
唯一一个有挑战性的内容,来自我同时进行的两个布局上的修改,这两个布局的修改一个改了顶栏目,一个改了应用详情页面,从单独页面变成了对话框,两者都同时对项目的样式和布局做了调整,在两者的内容合并的时候并没有错误,但是运行时两者负责的内容都显示不正常了。
这种问题,如果资深的开发者,应该自己做一些调整就好了,但是可惜,我并没有那个前端技术,我并不能解决。同时我还手欠在 rebase 时drop 错 commit 了,于是,只好直接将两个功能按串行顺序重做(还好不是我这个牛马重写…
总结
说真的,过年期间这几个项目能搞出一点东西,AI功不可没。原来我需要理解-分解-再构筑,但是现在可以一知半解,大致知道在干嘛,就能搞出个能看的demo了。
然后,出真挚,期间遇到的问题说明,在正式的工作中,还是生成自己有完全 Debug 能力的代码比较好,否则如果无法在代码合并时做好审查,真发生了问题,可能就是完全解决不了的问题了… 所以,年后我这个纯牛马,还得好好学习赛博牛马的作品,就像当时围棋选手需要学习 alpha go 的棋谱来提升自己一样…