Skip to main content
Glama
taibu
by hhszzzz

太卜

开源、可自托管的 AI 命理术数平台

排盘交给代码,解读交给 AI

Release taibu-mcp taibu-core Next.js PostgreSQL Docker

中文 | English

在线体验 · 更新日志 · 自托管 · MCP 手册 · 报告问题


简介

太卜把传统命理术数做成可以复现、可以核对的工具,再让 AI 在工具结果上做解读。

  • 排盘由代码完成:taibu-core 实现 11 个体系的历法与排盘规则,输出规范文本与 canonical JSON,口径写在 ALGORITHM_RULES.md。模型不手算干支、卦象与星曜。

  • 解读由 AI 完成:普通对话、后台 Agent、协作成员与定时任务都使用同一组工具和 15 个解读方法。

  • 工具对外开放:同一套实现经 MCP、离线 Skill 与 npm 包提供给 Claude、Cursor、Cherry Studio 等任意 AI 客户端。

  • 完全自托管:Next.js + PostgreSQL + Redis 的 Docker Compose 栈,一个镜像同时运行 Web 与 worker。

Related MCP server: 命盘 Mingpan

功能

占术与排盘

体系

主要能力

八字

真太阳时、公历农历与四柱反推;十神、藏干、纳音、神煞、十二长生、干支刑冲合害;大运、流年、流月、流日;合盘;不知时辰时排三柱,或由 Agent 列候选时辰推算

紫微斗数

十二宫、三方四正、主辅杂曜、四化与自化、命主身主、小限、博士十二星;大限至流时运限;飞星与宫位详查

六爻

硬币、时间、数字与选卦起卦;明动暗动、世应、六亲六神、旺衰空破、伏神;互卦、错卦、综卦;应期线索;逐爻详查

梅花易数

年月日时、物数声数、字占、丈尺与方位起卦;体用生克、月令旺衰、应期线索

奇门遁甲

转盘与飞盘,拆补、茅山与节气均分局法;九宫、八门、九星、八神、值符值使、格局;宫位详查

大六壬

天地盘、四课三传、十二天将、遁干、神煞与课体;本命行年;课传详查

小六壬 · 太乙

小六壬起课与宫位落点;太乙九星观测与传统七十二局

塔罗

78 张完整牌面与逆位,9 种牌阵与自定义牌阵,星座与元素对应、生命数字

西方占星

本命盘与流运、七种宫制、自定义相位容许度、恒星黄道;单点详查

黄历择日

每日宜忌、方位、十二时辰吉凶、二十八星宿;按事项与多人生肖冲煞筛选吉日

其他

关系合盘(情侣、事业、亲子)、MBTI、面相与手相照片解读、周公解梦、日运与月运、年度报告

结果页只负责排盘与展示,解读统一交给 AI 对话;对话里可以 @ 引用任意命盘和记录。

AI 对话

  • 多模型、思考等级、附件(PDF、Word、Excel)、知识库检索与联网搜索;平台模型按 token 实际用量计费,也可以填自己的 API Key(BYOK),不计费。

  • 15 种内置图表与沙箱 HTML 可视化;引用回答片段继续追问;公开只读的对话分享链接。

  • 表达风格、用户画像、自定义指令与长期记忆;上下文用量显示在输入框里。

Agent

  • 持久执行:任务在后台 worker 中由 Pi Durable 运行,关掉页面、断网或重启服务都不丢进度。

  • 工作区:命盘随模型的查看自动显示、定位与高亮;排盘、详查、合盘与推算时辰的结果可以展开、固定与保存。

  • 计划与代码模式:先研究、经用户批准再执行;在沙箱中组合调用工具。低频工具按需加载,长对话可以 /compact。

  • 协作:分工汇总的协作成员与常驻的后台子分析,按体系专家、研究员、复核员或自定义角色分配工具、指令与模型。

  • 扩展:SKILL.md 技能、外部 MCP 连接器、经 Exa / Tavily 等 MCP 服务路由的联网搜索与读网页,外部工具调用前的确认策略可选。

  • 定时任务、生图与测评:定时把一轮任务追加到固定对话(内置「每日早报」);文生图;运行遥测与多模型测评排行。

Agent 的完整行为与边界见 Agent 手册。

账户、计费与管理

  • 邮箱密码、邮箱验证码、找回密码与 Linux.do 登录。

  • 美元钱包与订阅:按 5 小时、天、周、月或整期发放额度,兑换码、管理员加款、余额购买套餐;配置商户参数后开启易支付(支付宝、微信)。

  • 管理后台:公告、功能开关、计费、AI 服务(网关、模型、models.dev 目录补全)、Agent 扩展(MCP 服务、技能、角色、用户扩展权限)与日志中心(用量、Agent 任务、定时任务、部署日志)。

  • 管理员在侧栏看到当前版本,新版本发布后可以一键更新。

  • 社区、站内通知、记录与知识库;Web 适配桌面与手机,另有 Android / iOS 客户端(Capacitor)。

MCP、Skill 与 SDK

taibu-core 提供 26 个工具:11 个排盘工具与 15 个低频工具(详查、大运、四柱反推、运限、飞星、择日、合盘、推算时辰)。另有 15 个解读方法:每个体系一个默认方法,加上流派方法「盲派八字」、不需排盘的「周公解梦」,以及技法「推理时柱」与「验证前事」。

公共 MCP Server

{
  "mcpServers": {
    "taibu": {
      "type": "streamable-http",
      "url": "https://mcp.mingai.fun/mcp"
    }
  }
}

无需 OAuth、API Key 或会话 Header。服务实现 MCP 2026-07-28,同时接受 2025 年协议的无状态请求。客户端不能自行按需加载工具时,把地址换成 https://mcp.mingai.fun/mcp/core:只列 11 个排盘工具,其余工具经 tool_search / tool_call 使用,给模型看的工具说明约减少六成。

本地 stdio

{
  "mcpServers": {
    "taibu": {
      "command": "npx",
      "args": ["-y", "taibu-mcp"]
    }
  }
}

完全离线运行,只需要 Node.js。设 "env": { "TAIBU_MCP_TOOLS": "core" } 可得到与 /mcp/core 相同的精简列表,见 taibu-mcp。

Skill

skills/taibu-divination 是自包含的 Agent Skill:计算引擎已打包,只要求 Node.js 18+。把整个目录复制到客户端的技能目录(如 Claude Code 的 ~/.claude/skills/)即可,方法卡位于 methods/。

SDK

npm install taibu-core
import { calculateBazi, toBaziText } from 'taibu-core/bazi';
import { executeTool, renderToolResult } from 'taibu-core/mcp';

const chart = calculateBazi({ gender: 'male', birthYear: 1990, birthMonth: 1, birthDay: 15, birthHour: 9 });
console.log(toBaziText(chart));

const result = await executeTool('qimen', { year: 2026, month: 3, day: 19, hour: 21, timezone: 'Asia/Shanghai' });
console.log(renderToolResult('qimen', result).content[0].text);

各领域子路径、输出契约与算法口径见 taibu-core。

工具

功能

提问例子

bazi

八字排盘(公历/农历,神煞,天干五合,地支半合与三会,胎元与命宫;不知时辰时排三柱)

"我是 1990 年 5 月 15 日 15 点生,请帮我排盘"

bazi_pillars_resolve

四柱反推出生时间候选(1900–2100)

"我的八字是丙午庚寅丙辰癸巳,可能是哪天出生?"

bazi_dayun

大运、小运与流年(太岁标注)

"帮我看看接下来十年的大运"

bazi_relations

岁运刑冲合害详查(大运、流年、流月、流日叠加到原局)

"我 2027 年流年和原局有哪些刑冲合害?"

bazi_wuxing

五行旺衰详查(月令、通根、自坐、相邻生克、缺失五行;只列事实)

"看看我八字日主有没有根"

bazi_liunian_scan

流年扫描(逐年干支、所在大运、与原局和大运的关系,至多 30 年)

"扫一下我 2026 到 2035 年的流年"

bazi_hepan

八字合盘(两盘之间的干支关系、日主互见十神、年命纳音;只给事实不打分)

"我 1990 年 1 月 15 日 9 点生,她 1992 年 8 月 3 日 14 点生,我们合不合?"

bazi_hour_candidates

推算出生时辰(当天各时辰的候选与区分事实,可带往事年份比对)

"我 1995 年 1 月 9 日出生,不知道几点,能帮我推一下时辰吗?"

ziwei

紫微斗数排盘(命主身主、小限、博士十二星、三方四正)

"我是农历 1990 年四月初八生,请排紫微盘"

ziwei_horoscope

紫微运限(大限至流时,流年星曜)

"帮我看看 2026 年的紫微运限"

ziwei_flying_star

紫微飞星(飞化、自化、四化落宫)

"分析一下我命宫的飞星"

ziwei_palace

紫微宫位详查(星曜四化、三方四正、夹宫、宫干飞化与运限叠加)

"看看我命宫的三方四正"

liuyao

六爻起卦与分析(含互卦、错卦、综卦)

"我想占今年的事业运,请帮我起卦"

liuyao_line

六爻逐爻详查(纳甲、旺衰、空亡、回头生克与变爻)

"六爻里官鬼那一爻的旺衰如何?"

meihua

梅花易数(年月日时、物数声数、字占、丈尺、方位、报数)

"现在起一卦,看这次合作能不能成"

tarot

塔罗抽牌(9 种牌阵,78 张牌面,逆位,星座与元素对应)

"请为我抽一张塔罗牌,看看近期的感情"

almanac

黄历(方位、十二时辰吉凶、二十八星宿)

"今天的黄历怎么样?适合搬家吗?"

almanac_select

择日(区间内按事项筛宜忌、避开多人生肖冲煞,至多 92 天)

"帮我挑下个月适合结婚的日子,我们属马和属鸡"

astrology

西方占星命盘与流运(三巨头、本命主星、重大流运)

"帮我看一下这段时间的占星流运重点"

astrology_point

占星单点详查(落座、传统尊贵、相位与流运触发)

"看看我的金星落在哪、和谁有相位"

qimen

奇门遁甲排盘(九宫、八门、九星、八神、值符值使)

"用奇门看一下今天谈合作是否顺利"

qimen_palace

奇门宫位详查(天地盘、星门神、旺衰、生克与格局)

"奇门里值符落哪一宫?"

taiyi

太乙九星观测与七十二局

"用太乙看一下这个项目的推进情况"

daliuren

大六壬排盘(四课三传、天地盘、天将)

"用大六壬看一下这件事的结果"

daliuren_lessons

大六壬课传详查(四课上下、三传递生递克、神将与类神)

"细看这课的三传和神将生克"

xiaoliuren

小六壬占测

"用小六壬看一下今天出行顺不顺"

快速开始

本地运行

需要 Docker(含 Compose v2)、Node.js 24 与 pnpm 10。

git clone https://github.com/hhszzzz/taibu.git
cd taibu
pnpm install
pnpm local:update   # 首次:生成配置,构建镜像,启动 db、redis、web、worker、mailpit

浏览器打开 http://127.0.0.1:3080,注册邮件在 Mailpit(http://127.0.0.1:8025)里查看;实际端口以 pnpm local:status 为准。随机生成的密钥和端口保存在 .taibu-local/taibu-v2/,不要公开或提交。

pnpm local:up       # 复用已有镜像启动
pnpm local:status   # 端口与健康状态
pnpm local:logs     # 跟随日志(凭据已脱敏)
pnpm selfhost down --project taibu-v2   # 停止,保留数据卷

注册后把自己设为管理员,再在「设置 → AI 服务」添加网关与模型,步骤见 自托管手册。

生产部署

生产使用 deploy/compose.base.yml + deploy/compose.prod.yml,镜像由 CI 发布在 ghcr.io/hhszzzz/taibu,主机只拉取不构建:

# /opt/taibu/source 是仓库,/opt/taibu/env/ 保存 compose.env 与按容器拆分的私有配置
EDGE_MODE=host deploy/deploy.sh v1.0.1   # 宿主已有 Caddy / Nginx 时
deploy/deploy.sh v1.0.1                  # 由本栈的 Caddy 接管 80/443

脚本会先备份数据库,再执行数据库初始化与迁移,成功后滚动更新并检查健康,失败自动回退。环境变量以 .env.example 为准,邮件、备份、计费与一键更新见 自托管手册,旧部署升级见 升级说明。

架构

浏览器 / App ──► Caddy ──► web(Next.js:页面、API、SSE)
                              │
            ┌─────────────────┼──────────────────┐
            ▼                 ▼                  ▼
  PostgreSQL 17 + pgvector   Redis 8          文件卷
  业务数据 · RLS · 任务     限流 · 缓存 · BullMQ   附件 · 生成图片
            ▲                 ▲                  ▲
            └──────── worker(Agent、文档解析、邮件、定时与维护任务)

taibu-core ──► Web 与 Agent 进程内调用 · taibu-mcp(stdio)· taibu-mcp-server(HTTP)· Skill

组件

说明

Web

Next.js 16 模块化单体(standalone),React 19、Tailwind CSS 4、Base UI

认证

Better Auth,独立的 identity schema 与连接角色

数据

Kysely ScopedDb:每个事务设置角色与身份,PostgreSQL RLS 隔离用户数据

后台

同一镜像的 worker:Pi Durable 执行 Agent,BullMQ 处理定时、邮件与维护任务

数据库定义

database/ 保存当前 SQL 与编号迁移,db:init 自动迁移、补齐与收敛

发布

推送 v* 标签后 CI 构建镜像并创建 GitHub Release

模块边界与数据权限见 项目架构。

仓库结构

src/                 Next.js 应用:页面、API 路由、组件与业务模块
packages/core/       taibu-core:算法、工具定义、方法与规范输出(MIT)
packages/mcp/        taibu-mcp:本地 stdio MCP Server(MIT)
packages/mcp-server/ taibu-mcp-server:公共 HTTP MCP Server(MIT)
skills/              taibu-divination Skill 与方法卡源文件
database/            PostgreSQL 当前定义、角色初始化与编号迁移
deploy/              Compose、Caddy、备份、部署与更新脚本
scripts/             构建、数据库工具、自托管、发布与测试
docs/                手册、工程规范与升级说明
android/ ios/        Capacitor 客户端

开发

pnpm test                         # 单元、路由、协议与守卫测试(自动构建所需的包)
pnpm test -- src/tests/chat-route.test.ts   # 只跑指定文件
pnpm lint && pnpm typecheck
pnpm test:db                      # 在临时 PostgreSQL 中验证 SQL、RLS 与并发
pnpm exec playwright install --only-shell chromium   # 首次运行浏览器测试前
pnpm verify                       # 完整验收:构建、全部测试、数据库、认证与浏览器(需要 Docker 与本地栈)

开发约定见 AGENTS.md 与 工程与设计规范,测试分层见 测试与验收。提交使用 Conventional Commits。

文档

文档

内容

自托管手册

本地栈、数据库、邮件、计费、发布、部署与备份

升级说明

从旧部署升级到 1.0.0,以及之后的版本更新

项目架构

运行组成、模块边界、数据权限与计费

Agent 手册

Agent 的任务、工具、扩展、协作、定时任务与计费

MCP 手册

MCP 客户端配置、协议行为、工具与自部署

taibu-core · 算法规则

SDK 用法、输出契约与算法口径

工程与设计规范

代码、组件、前后端、数据安全、测试与文档规范

版本

应用版本以根目录 package.json 为准,遵循 x.y.z:x 是重大架构变更,y 是功能新增,z 是问题修复。npm 包各自维护版本,当前为 taibu-core、taibu-mcp、taibu-mcp-server 4.0.0。发布流程见 自托管手册。

贡献

欢迎提交 Issue 与 Pull Request。提交前请阅读 AGENTS.md,并在 PR 中写明改了什么、为什么改、如何验证。

许可证

本仓库采用混合许可证:

  • packages/core、packages/mcp、packages/mcp-server 采用 MIT,允许商用、再分发与二次开发,需保留版权与许可声明;

  • 其余 Web、服务端、部署与运行时代码采用 AGPL-3.0-only:不禁止商用,但修改后对外提供网络服务时须开放相应源码。

第三方组件的许可见 licenses/ 与 THIRD_PARTY_NOTICES.md。


太卜 · 用 AI 解读命运,用科技传承文化

Made with ❤️ by hhszzzz

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      Provides five Chinese metaphysics engines (BaZi, QMDJ, ZWDS, Feng Shui, I Ching) as MCP tools for analysis and forecasting.
      6
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      Provides traditional Chinese astrology (Bazi, Ziwei) and divination (Liuyao, Meihua, Qimen, etc.) calculations as MCP tools for AI assistants.
      18
      266 npm
      131
      Apache 2.0
    • A
      license
      A
      quality
      C
      maintenance
      Provides Chinese metaphysical tools (bazi, qimen, five elements) as MCP tools for AI agents to give personalized advice on timing, compatibility, and daily energy.
      5
      82 npm
      2
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Provides 35 MCP tools for Chinese metaphysical divination, including BaZi, ZiWei, QiMen, and daily fortune subscriptions, enabling AI agents to perform complex fortune-telling and calendar predictions.
      MIT