从 git clone 到双击运行:WorkBuddy 接住了一个硬核命盘仓库

从 GitHub 拉下一个零依赖的八字·紫微排盘引擎,原版是命令行加 Skill,普通人用不了。我让 WorkBuddy 给它包了层「双击就跑」的壳,补齐 150 城经度与输入容错。过程中发现:AI 编程真正值钱的不是写算法,而是把开发者玩具变成人能用的东西。
一、我为什么拉一个命盘仓库
先说清楚:我拉这个仓库不是因为迷信。是它解决了一个市面上工具普遍没解决好的问题。
市面上的排盘软件一抓一大把,但它们大多只给你一张盘。盘排出来之后怎么读、两套系统(八字和紫微)怎么互相校准、哪些结论是机械的、哪些必须你自己判断——这些"后半程"的事,它们不管。
这个叫 bazi-ziwei 的 GitHub 仓库(作者 tangyishun9846)不一样。它是一套排盘引擎 + 分析方法论:scripts/chart.py 零依赖、纯标准库,输出四柱、五行分布、大运、农历(含闰月)、紫微十二宫全盘、三层四化、大限,以及按节气切分的十二流月;配套的 SKILL.md 和 references/ 把"怎么读一张盘"写成了一套可执行的流程——定结构、回测验运、分层定位、落到具体时间窗口和动作。
更让我在意的是它的工程底子:32 个测试分两类,节气时刻按 Meeus《天文算法》算,精度约 ±15 分钟,开发时还跟专业排盘软件(文墨天机专业版)逐项比对过。一个传统文化题材的项目,做到这个严谨度,少见。
二、原版的尴尬:它是给开发者用的
但原版有个绕不开的问题——它是给开发者用的,不是给普通人用的。
它的入口是两个命令行脚本,外加一个 Claude Skill。要用起来,你得:会装/会找 Python、看得懂 --datetime "1990-08-15 14:30" --gender M --longitude 120 这种参数、还得知道"经度"是干嘛的(真太阳时校正,差 15 度就是一小时,足以把时柱整根换掉)。
换句话说,原作者把它当成"一个可以 import 的排盘库 + 一个喂给 Claude 的方法论"。这完全合理——人家本来就是这么设计的。但这就把一大群想"双击看看自己命盘"的人挡在门外了。
【插图 01 · 01-beforeafter.png】
三、让 WorkBuddy 接手:从 git clone 到双击运行
我干的事很简单:把这个"开发者玩具"变成"我妈都能双击用"的东西。我让 WorkBuddy 接手,它主要做了三件事。
第一件,找 Python 环境。 脚本开头先找托管版 Python,找不到就退回系统版,再找不到才报错——不让你在"明明装了却跑不起来"的玄学里耗着。这一步不性感,但决定了"双击之后是出结果还是弹个红错"。
第二件,把"经度"这件事从用户脑子里拿掉。 它内置了一张 150 来个城市/地区的经度表:直辖市、全部地级市、主要县级市,外加省级回退。你直接填"温州""浙江温州""温州市"都能对上;极少数没收录的,填经度数字就行;拿不准就输 ?,当场把整张表打出来。出生时间里的全角冒号、一位数的小时、流年写"2027年"——全帮你容错掉。
第三件,写了一份人话操作说明 + 菜单式交互。 不用记任何命令、不用敲任何参数。双击 排盘.command,终端窗口弹出来,按提示一行行回答问题,直接回车就是默认值。菜单就三个选项:单张命盘、一生曲线、退出。
【插图 02 · 02-threejobs.png】
四、真正有意思的:AI 编程到底干了啥
把整个过程摊开看,有个反直觉的点:WorkBuddy 没有重写排盘算法。 那套算法是别人写的、测过的、跟专业软件对过的。它真正做的,是三样"不性感但决定能不能用"的活——
- glue(粘合):把环境差异、路径差异、Python 版本差异都兜住;
- UX(体验):把一串参数变成"回答问题",把"经度"变成"城市名";
- 边界处理:全角字符、空值默认、城市名匹配、报错而不是崩。
这恰恰是很多人对"AI 写代码"的误解来源。大家以为 AI 编程 = 让 AI 造一个从零到一的算法。但真实世界里更常见的场景是:一个能跑的东西,离"一个人能用"还差着一层壳。这层壳没有技术含量上的高潮,却决定了软件到底有没有价值。
五、一个巧妙的呼应
写到这里,我发现这个引擎自己的信条,和"好的 AI 使用方式"居然是同一套东西。
它的方法论里反复强调:命盘描述结构,不描述结局——大运流年说的是外部条件怎么变,不是"你会怎样";分歧要说出来,不要抹平——从格与不从、两套系统结论不同,这些歧义真实存在,指出来比给虚假的确定更有价值;回测优先于前测——先拿过去验证假设,再谈未来。
而一个 AI agent(比如 WorkBuddy)干的也是同样的事:它负责搭好结构(环境、容错、交互),但绝不假装能替你下结论——就像这个工具拒绝替你判断"喜用五行"一样,定错喜忌,整张评分表的符号全翻转。Agent 给你的是脚手架和素材,不是判决书。
好的命理分析要克制,好的 AI 使用也要克制。底层是同一种诚实:把结构说清楚,把结论的权杖交还给人。
【插图 03 · 03-rigor.png】
六、你可以怎么玩
仓库本身是 MIT 协议,GitHub 上搜 bazi-ziwei 就能拿到。想自己跑,终端里一句:
python3 scripts/chart.py --datetime "1990-08-15 14:30" --gender M --longitude 120 --year 2026
想双击就用,把仓库整个目录留着、双击里面的 排盘.command 即可(首次右键"打开"一次放行)。
最后再补一句项目自己的免责声明,也是我认同的边界:命理是自我理解与时机判断的框架,不是科学,不构成任何专业建议。如果生活里的事有现实解法,那件事本身值得被处理——盘只是个辅助视角。
我这次做的那层"双击壳",连同这份手记,也一并归档在 文稿 / Gnomon / misc / bazi-ziwei 里,随时可以重跑、可以改。