Files
Jyotisha/README.md
T
732642856 7d06dddd3e docs: 新增 README.md + requirements.txt + 升级 .gitignore
- README.md: 完整项目文档(快速安装/22子命令使用示例/目录结构/Skill安装方法)
- requirements.txt: Python 依赖清单(核心依赖 pyswisseph)
- .gitignore: 升级为完整版(Python/IDE/macOS/数据库/日志)
2026-04-25 00:51:12 +08:00

329 lines
12 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🪐 Jyotish Vedic Astrology Engine
**印度占星(Jyotish)专业解盘与推运系统 v3.7.1**
基于 Swiss Ephemeris 天文计算库的完整吠陀占星引擎,覆盖从排盘计算到精确推运应期预测的全链路能力。
## ✨ 核心特性
- **🧮 统一计算引擎**:22 个 CLI 子命令,一条命令完成全链路分析
- **🔮 全自动综合解盘**`full-reading` 一键串联 13 个计算模块
- **📐 BPHS 十六分盘**D2-D60 全部 16 种分盘精确计算
- **👁️ 精确相位系统**:度数级 Drishti 相位分析(tight/moderate/loose
- **📿 Jaimini 完整系统**Chara Karaka + Chara Dasha + Karakamsha
- **🌟 高级 Nakshatra**Tara Bala + Sub-Lord KP 系统
- **🚪 Argala 门闩系统**:行星干预 + Virodha 反干预
- **🎂 Tajika 年运盘**Muntha + YearLord + Mudda Dasha + Tri-Pataka
- **💑 合盘分析**Ashta Koota 36 分制 + Mangal Dosha
- **💪 Shadbala 六重力量**:完整的 Parashara 系统评估
- **🎯 Ashtakavarga 八分法**BPHS 完整表(SAV=337
- **✅ R1-R10 数学验证** + **P1-P12 行星审计管线**
## 📋 系统要求
- **Python**: 3.11+
- **核心依赖**: `pyswisseph`Swiss Ephemeris 天文计算库)
- **可选依赖**: `requests`(名人数据查询)、`pandas`(批量数据处理)
## 🚀 快速安装
### 1. 克隆仓库
```bash
git clone git@github.com:732642856/yinduzhanxing.git
cd yinduzhanxing
```
### 2. 安装 Python 依赖
```bash
pip install -r requirements.txt
```
### 3. 验证安装
```bash
python3 scripts/jyotish_engine.py chart --year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 --lat 36.6 --lon 114.5 --tz 8
```
如果输出包含行星位置 JSON,说明安装成功。
## 🎯 使用方法
### 三种输入路径
| 路径 | 适用场景 | 操作 |
|------|---------|------|
| **路径 A** | 有精确出生信息(日期+时间+地点) | 直接调用 `full-reading` |
| **路径 B** | 有 PDF/文字星盘报告 | 提取数据后分析(无需重新排盘) |
| **路径 C** | 出生时间不明确 | 互动式矫正 → 确认后走路径 A |
### 路径 A:精准出生信息(推荐)
```bash
# 一键全链路计算(13 模块自动串行)
python3 scripts/jyotish_engine.py full-reading \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8
# 输出包含:
# chart + dasha + yoga + varga_full + aspects + jaimini +
# nakshatra_adv + argala + tajika + shadbala + ashtakavarga +
# validation + audit
```
### 单模块调用
```bash
# 基础星盘计算
python3 scripts/jyotish_engine.py chart \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8 --validate
# Vimshottari 大运时间线
python3 scripts/jyotish_engine.py dasha \
--moon-lon 326.5 --birthdate REDACTED_DATE --today 2026-04-25
# Yoga 格局识别
python3 scripts/jyotish_engine.py yoga \
--ascendant Leo --planets 'Sun:Aries:9,Moon:Aquarius:7,...'
# 十六分盘计算
python3 scripts/jyotish_engine.py varga-full \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8 --divisions D9,D60
# 精确相位分析
python3 scripts/jyotish_engine.py aspects \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8
# Jaimini 系统(Chara Karaka + Chara Dasha + Karakamsha
python3 scripts/jyotish_engine.py jaimini \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8 --mode all
# 高级 NakshatraTara Bala + Sub-Lord
python3 scripts/jyotish_engine.py nakshatra-adv \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8 --mode all
# Argala 门闩分析
python3 scripts/jyotish_engine.py argala \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8
# Tajika 年运盘
python3 scripts/jyotish_engine.py tajika \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8 --age 33
# Shadbala 六重力量
python3 scripts/jyotish_engine.py shadbala \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8
# Ashtakavarga 八分法
python3 scripts/jyotish_engine.py ashtakavarga \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8
# 合盘分析(Ashta Koota 36 分制)
python3 scripts/jyotish_engine.py synastry \
--moon1 310.89 --moon2 45.5 --mars1 90.43 --mars2 120.3
# 事件预测
python3 scripts/jyotish_engine.py predict \
--chart '<JSON>' --event-type marriage
# 名人案例查询
python3 scripts/jyotish_engine.py celebrity --name Einstein
# R1-R10 数学验证
python3 scripts/jyotish_engine.py validate \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8
# P1-P12 行星审计
python3 scripts/jyotish_engine.py audit \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8
# 行星过境查询
python3 scripts/jyotish_engine.py transit --year 2026 --month 7
# MD → HTML 报告生成(羊皮纸主题)
python3 scripts/jyotish_engine.py report ./report_folder \
--name "名字" --lagna "Leo" --lang cn
```
### 全部 22 个子命令速查
| 子命令 | 功能 | 核心参数 |
|--------|------|----------|
| **`full-reading`** | ⭐ 全自动综合解盘(13 模块) | `--year/month/day/hour/minute/lat/lon/tz` |
| `chart` | 完整星盘计算 | `--year/month/day/hour/minute/lat/lon/tz` |
| `dasha` | Vimshottari 大运时间线 | `--moon-lon --birthdate --today` |
| `yoga` | Yoga 格局识别 | `--ascendant --planets` |
| `predict` | 三层验证法事件预测 | `--chart --event-type` |
| `varga` | 分盘计算(D9/D10 | `--year/month/day/hour/minute/lat/lon/tz` |
| `varga-full` | BPHS 十六分盘(D2-D60 | `--divisions D9,D60` |
| `aspects` | 度数精确相位(Drishti) | 出生信息 |
| `jaimini` | Jaimini 完整系统 | `--mode all` |
| `nakshatra-adv` | 高级 Nakshatra 分析 | `--mode all` |
| `argala` | Argala 门闩系统 | 出生信息 |
| `tajika` | Tajika 年运盘 | `--age 33` |
| `synastry` | 合盘分析 | `--moon1/2 --mars1/2` |
| `shadbala` | 六重力量计算 | 出生信息 |
| `ashtakavarga` | 八分法(SAV=337 | 出生信息 |
| `validate` | R1-R10 数学验证 | 出生信息 |
| `audit` | P1-P12 行星审计 | 出生信息 |
| `celebrity` | 名人案例查询 | `--name` |
| `db-stats` | 数据库统计 | 无 |
| `transit` | 行星过境查询 | `--year --month` |
| `memory` | Hermes 记忆系统 | `--action store/search` |
| `report` | MD→HTML 报告 | 文件夹路径 |
## 📁 目录结构
```
yinduzhanxing/
├── README.md # 本文件
├── CHANGELOG.md # 版本更新日志
├── SKILL.md # WorkBuddy Skill 配置文件
├── requirements.txt # Python 依赖
├── .gitignore # Git 忽略规则
├── scripts/ # 计算引擎(19 个 Python 文件)
│ ├── jyotish_engine.py # ⭐ 统一 CLI 入口(22 子命令)
│ ├── varga.py # BPHS 十六分盘
│ ├── aspects.py # 精确相位系统
│ ├── jaimini.py # Jaimini 系统
│ ├── nakshatra_advanced.py # 高级 Nakshatra
│ ├── argala.py # Argala 门闩
│ ├── tajika.py # Tajika 年运盘
│ ├── synastry.py # 合盘分析
│ ├── shadbala.py # Shadbala 六重力量
│ ├── ashtakavarga.py # Ashtakavarga 八分法
│ ├── event_prediction_model.py # 事件预测规则引擎
│ ├── validate.py # R1-R10 数学验证
│ ├── dasha_calculator.py # Dasha 计算
│ ├── dasha_calculator_enhanced.py # 增强版 Dasha
│ ├── dasha_analyzer.py # Dasha 分析器
│ ├── hermes_bridge.py # Hermes 桥接层
│ ├── hermes_memory_core.py # Hermes 记忆核心
│ ├── report_builder.py # MD→HTML 报告生成
│ └── example.py # 示例脚本
├── references/ # 知识库(74 个 Markdown 文件)
│ ├── ai-reading-workflow-prompt.md # ⭐ AI 解盘工作流 v3.0
│ ├── pdf-chart-reading-guide.md # PDF 星盘读取指南
│ ├── birth-time-rectification-advanced.md # 出生时间矫正
│ ├── jaimini-complete-system.md # Jaimini 完整体系
│ ├── kp-astrology-complete-system.md # KP 占星体系
│ ├── ... (详见 SKILL.md 参考资料)
└── assets/ # 模板文件
├── birth_time_rectification_template.md # 矫正信息收集模板
├── chart_analysis_template.md # 星盘分析模板
├── event_timing_template.md # 事件时机模板
└── timing-prediction-template.md # 推运应期模板
```
## 🔧 作为 WorkBuddy Skill 使用
本项目是一个标准的 WorkBuddy Skill,可以直接安装到 WorkBuddy 中:
### 方法 1:手动安装
```bash
# 将仓库克隆到 WorkBuddy skills 目录
git clone git@github.com:732642856/yinduzhanxing.git \
~/.workbuddy/skills/jyotish-vedic-astrology
```
安装后,在 WorkBuddy 对话中提到任何印度占星相关关键词(如"印度占星"、"Jyotish"、"解盘"、"推运"等),Skill 即自动激活。
### 方法 2:Skill 市场安装(即将支持)
通过 WorkBuddy 的 Skill 市场搜索 `jyotish-vedic-astrology` 一键安装。
### Skill 触发词
以下关键词可触发 Skill
- 印度占星、吠陀占星、Jyotish、印占
- 解盘、推运、星盘分析、排盘、计算星盘
- Dasha、Transit、Nakshatra、Yoga
- 出生时间矫正、生时矫正
- Shadbala、Ashtakavarga、Drishti、Jaimini
- 合盘、婚姻匹配、年运盘
- 以及更多(详见 SKILL.md
## 🧪 验证与测试
```bash
# 运行 full-reading 验证(一楠星盘)
python3 scripts/jyotish_engine.py full-reading \
--year REDACTED_YEAR --month 4 --day 17 --hour 14 --minute 45 \
--lat 36.6 --lon 114.5 --tz 8
# 预期输出:12 modules computed, 0 errors
```
## 📊 数据源
引擎自动读取以下外部数据(如存在):
| 数据源 | 路径 | 说明 |
|--------|------|------|
| 验证数据库 | `~/WorkBuddy/Claw/vedic_astrology_validation.db` | 15,840 条案例 |
| 名人 CSV | `~/WorkBuddy/Claw/vedastro_data/PersonList-15k.csv` | 15,807 条 AA 级数据 |
| 过境配置 | `~/WorkBuddy/Claw/月运过境配置-2026-2028.json` | 36 个月行星位置 |
> 💡 数据源为可选依赖,不影响基础星盘计算功能。
## 🛠️ 技术架构
```
输入层:出生信息 / PDF星盘 / 互动矫正
路由层:自动识别三条路径(A/B/C)
计算层:Swiss Ephemeris + Lahiri Ayanamsa 恒星黄道
├── chart(星盘计算)
├── dasha(大运时间线)
├── yoga(格局识别)
├── varga-full(十六分盘)
├── aspects(精确相位)
├── jaiminiJaimini 系统)
├── nakshatra-adv(高级 Nakshatra
├── argala(门闩分析)
├── tajika(年运盘)
├── shadbala(六重力量)
├── ashtakavarga(八分法)
├── validate(数学验证)
└── audit(行星审计)
输出层:JSON 数据 → AI 解读 → HTML 报告
```
## 📜 版本历史
详见 [CHANGELOG.md](./CHANGELOG.md)。
- **v3.7.1** (2026-04-25)`full-reading` 全自动综合解盘 + 三条入口路径路由
- **v3.7.0** (2026-04-25)7 大新模块(分盘/相位/Jaimini/Nakshatra/Argala/Tajika/合盘)
- **v3.6.0** (2026-04-24):报告生成器 + R2b 校验 + P3/P8/冲突仲裁
- **v3.5.0** (2026-04-24)BPHS 完整表校准 + R1-R10 验证 + P1-P12 审计
## 📄 许可证
本项目仅供学习与研究使用。
## 🙏 致谢
- [Swiss Ephemeris](https://www.astro.com/swisseph/) — 天文计算核心
- KN Rao 学派框架 — 方法论参考
- CNWU16/vedic-astro-skills — 报告生成器灵感
- BPHSBrihat Parashara Hora Shastra)— 经典理论来源