You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
96 lines
1.8 KiB
96 lines
1.8 KiB
|
1 month ago
|
# Chinese Almanac (黄历) Skill
|
||
|
|
|
||
|
|
## 功能说明
|
||
|
|
|
||
|
|
使用 Tavily AI Search API 查询中国传统黄历信息,提供:
|
||
|
|
- ✅ 每日宜忌查询
|
||
|
|
- ✅ 农历日期转换
|
||
|
|
- ✅ 冲煞信息
|
||
|
|
- ✅ 抗反爬虫保护(通过 Tavily API)
|
||
|
|
|
||
|
|
## 架构
|
||
|
|
|
||
|
|
```
|
||
|
|
用户查询 → Tavily API → 权威黄历网站 → 解析结果 → 返回给用户
|
||
|
|
```
|
||
|
|
|
||
|
|
**优势:**
|
||
|
|
- Tavily API 处理反爬虫,避免直接访问被阻止
|
||
|
|
- AI 优化搜索结果,提取准确信息
|
||
|
|
- 内置 fallback 数据,API 失败时仍有基础信息
|
||
|
|
|
||
|
|
## 配置
|
||
|
|
|
||
|
|
编辑 `/root/.openclaw-life/openclaw.json`:
|
||
|
|
|
||
|
|
```json
|
||
|
|
{
|
||
|
|
"skills": {
|
||
|
|
"entries": {
|
||
|
|
"chinese-almanac": {
|
||
|
|
"enabled": true,
|
||
|
|
"config": {
|
||
|
|
"tavily_api_key": "tvly-dev-xxx"
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
## 使用方式
|
||
|
|
|
||
|
|
### Telegram 命令
|
||
|
|
```
|
||
|
|
/almanac # 查询明天黄历
|
||
|
|
/almanac 2026-02-24 # 查询指定日期
|
||
|
|
```
|
||
|
|
|
||
|
|
### 自然语言查询
|
||
|
|
```
|
||
|
|
明天黄历如何?
|
||
|
|
2 月 24 日适合搬家吗?
|
||
|
|
查询后天宜忌
|
||
|
|
```
|
||
|
|
|
||
|
|
### 编程接口
|
||
|
|
```javascript
|
||
|
|
const { queryAlmanac, formatAlmanac } = require('./almanac.js');
|
||
|
|
|
||
|
|
const result = await queryAlmanac('2026-02-24');
|
||
|
|
console.log(formatAlmanac(result));
|
||
|
|
```
|
||
|
|
|
||
|
|
## 返回数据格式
|
||
|
|
|
||
|
|
```json
|
||
|
|
{
|
||
|
|
"success": true,
|
||
|
|
"date": "2026-02-24",
|
||
|
|
"lunarDate": "农历正月初八",
|
||
|
|
"weekday": "星期二",
|
||
|
|
"yi": ["开市", "交易", "入宅", "移徙"],
|
||
|
|
"ji": ["嫁娶", "栽种", "安葬"],
|
||
|
|
"chong": "冲鸡 煞西"
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
## Fallback 机制
|
||
|
|
|
||
|
|
当 Tavily API 不可用时,自动使用传统历法推算的基础数据:
|
||
|
|
- 农历日期(基于公历计算)
|
||
|
|
- 基础宜忌(传统吉日规律)
|
||
|
|
- 冲煞信息(干支纪年)
|
||
|
|
|
||
|
|
## 依赖
|
||
|
|
|
||
|
|
- Tavily API Key (已配置)
|
||
|
|
- Node.js fetch API (内置)
|
||
|
|
|
||
|
|
## 测试
|
||
|
|
|
||
|
|
```bash
|
||
|
|
cd /root/.openclaw/workspace/skills/chinese-almanac
|
||
|
|
node almanac.js
|
||
|
|
```
|