Files
Hermes-Skills/lottery-hk/SKILL.md
T
mike 1ce16515e1 lottery-hk SKILL: 进一步修 v_xg.json 字段语义残余
之前没替换到的旧描述:
- line 84: 'Qi: 当前期号(下次将开)' → 最新已开
- line 95: 实战描述错 → Qi 期已开 + Qi-2 期
- line 199: 例子 Week=周四 Day=30 (= 082 期开彩日) → 加 (= Nq=082 期开彩日)
- line 207: 'Week 字段是 Qi 期开彩日' → 是 Nq 期开彩日
- line 223 + 259: 'Qi = 下次将开期号' → 最新已开
- line 228: '取 Qi-1 期真开号码' → 取 Qi 期真开号码
- line 261: 'Week/Day = Qi 期开彩日' → Nq 期开彩日
2026-08-04 15:53:36 +08:00

329 lines
23 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.
---
name: lottery-hk
description: "香港六合开奖抓取与分析 (user B1EF5044 偏好, 文化娱乐参考不构成投注建议)。数据源: sol.2344a.cc (2026-07-29 替代 sol.0051.cc) + btc.tktk.app/data/v_xg.json + tktk.tktk4.cc。SQLite 存数据。**触发规则 (硬性)**: 用户问'特码'/'买码'/'今晚开什么'/'下期开什么'/'分析'/'玄学'/'六合分析' → **必须调 `python3 scripts/lottery_特码.py [期号]`** (纯挂牌 + 玄机诗 + 红字, 输出 Top 5 特码 + 重点金额分配)。**禁止**: (1) 跑 `lottery.py analyze` (5 期数据无意义, user 已确认); (2) 混 Qi-2 期已开号码当 Qi 期真开 (Data.1-7 是 Qi-2 期, 不是 Qi 期); (3) agent 自己写 4 框架 (河洛/梅花/玄空/奇门) 公式 (reference 没推演方法); (4) 编 4 框架数据。时区: 默认北京时间 UTC+8, 挂牌日=开彩日 (sol.2344a.cc 时间戳)。**v_xg.json 字段 (2026-08-04 修正)**: **Qi = 最新已开期号** (刚开), Nq=再下次, **Week/Day = Nq 期开彩日** (不是 Qi 期! 例 Qi=083 + Week=周二 Day=04 → 083 期是 8/1 周六, 084 期是 8/4 周二), **Data.1-7 = Qi-2 期已开号码 (不是 Qi-1!)** — 取 Qi 期真开号码要查 sol.2344a.cc/挂牌 或 lottery.db。推送格式: 横向 markdown 表格 (4-8 列, QQ 可左右滑动), 必须标 (北京时间), 不写刚开/最新, 不加 A/B/C 简单回答模板 (agent 自加, 用户不要)。用户问'从哪取'只答来源一行不展开。4 框架脚本: scripts/lottery_4frame.py (v_xg.json + 综合挂牌 + 六信红字 + 玄机诗 4 步自动跑)。详见 references/v_xg-data-qi-2-pitfall.md。"
version: 1.2.7
tags: [lottery, hk, 六合彩, analysis, sol-2344a, qdrant-memory]
---
# 香港六合开奖分析
**⏰ 时区规则(硬规则)**: 所有时间默认 **北京时间(UTC+8)**。v_xg.json 的 `Qi`=最新已开, `Nq`=未开下期, `Week`/`Day`/`Year`/`Moon`**Nq 期(未开下期)** 的开彩日。**挂牌日 ≈ 开彩日 (sol.2344a.cc 帖子时间戳 = 实际开奖日, 通常同天或 1-3 天前)**。任何"周几"都指北京时间;写 QQ 推送必须带"北京时间"字样或 +8 时区。
**⚠️ 历史版本错误** (已修正): 早期 SKILL.md 写"挂牌提前 2-3 天"是错的。**用户 2026-07-30 反复纠正后确认: 挂牌日 = 开彩日, 同一天**。
**🚨 用户硬偏好 (每次回复前必读, 违反必被纠正)**:
1. **直接说从哪取的, 不要分析/解释** — 答"082 是周几" → 一行答 "sol.2344a.cc 082 期挂牌 07-30 = 周四开彩 (北京时间 21:30)", **不展开** "为什么不是周三" / "Qi 字段语义" / 长篇对比。
2. **错了立刻重做, 不要"分析"或"等回话"** — 用户原话: "知道错了, 还要来确认, 你直接跑不行吗"。立刻跑正确的事。
3. **不要在回复结尾加 "A/B/C 简单回答" 模板** — 用户问 "这是什么技能输出的?" 才意识到是 agent 自加的模板, **没有任何 skill 输出这个**。直接回答用户问题。
4. **看到"4 框架"不要自己造公式** — "4 框架" 指 `references/analysis-example-073/074/075.md` 里 3 步推演流程 (v_xg.json + 挂牌 + 红字), **不是** agent 自己写 河洛/梅花/玄空/奇门 公式。**必跑** `python3 scripts/lottery_4frame.py`
5. **"特码分析" 必跑真脚本** — 看到 "特码"/"买码"/"今晚开什么" → **必跑** `python3 scripts/lottery_特码.py [期号]`, **不混** Qi 期已开号码。
6. **不要在回复里算时间** — agent 默认时间不准 (system prompt 时间可能旧), 要实时用 `date` 命令确认北京时间。
更多偏好见 `references/agent-workflow-pitfalls.md` (跨 skill 通用, 必读)。
**⏰ 沟通风格**: 用户要"直接说怎么取的,不要分析/解释"。回答"081 是周几"时,直接说"来源是 v_xg.json Week=周四" — 不分析"为什么不是周二"。
**📦 4 框架 (奇门/梅花/河洛/玄空) 的位置**:
- **真脚本**: `scripts/lottery_4frame.py` (4 步流程, 自动跑)
- **Reference**: `references/analysis-example-073/074/075.md` (073 真实推演示范: 3 步 v_xg+挂牌+红字)
- **不要**: agent 写 河洛/梅花/玄空/奇门 公式, reference 没推演方法, 拍脑袋推的没意义
- **Cron 直接调 `python3 lottery_4frame.py` 拿完整分析**, agent 不需要手动算
**⚠️ 4 框架 ≠ agent 自己造公式 (2026-07-30 实战)**: user 问"4 框架"时,**先 cat `references/analysis-example-073/074/075.md` 看实际推演流程**。073 example 是 3 步: (1) v_xg.json 五行统计 (2) 综合挂牌解读 (爆/出肖) (3) 六信红字。**不要**自己写 河洛洛书九宫 / 梅花起卦 / 玄空飞星盘 / 奇门遁甲 公式,这些 reference 没推演方法,agent 拍脑袋推的没意义。**改用 `lottery_4frame.py` 脚本跑。**
**5 期数据 (analyze 频率) 没意义**: `lottery.py analyze` 输出 5 期冷热号,数据量太少,user 已明确说"不要跑频率,没有意义"。`analyze` 只用作辅助核对,不是主要分析方法。
从天空彩票抓取香港六合彩开奖结果,提供数据分析。**数据存SQLite,不存图片。**
## 数据源
### 主站
- 主站: https://tktk.tktk4.cc/ww.htm(首页,含iframe开奖倒计时)
- **资料站**: https://sol.2344a.cc/(所有挂牌/解牌/玄机资料实际托管在此, 2026-07-29 已迁移)
- 综合挂牌: https://sol.2344a.cc/zongheguapai/ ← 首选挂牌数据源
- 六信红字: https://sol.2344a.cc/lxhz/
- 梅花诗/玄机: https://sol.2344a.cc/xuanjiziliao/
- 解牌: https://sol.2344a.cc/jiepai/
- 平碼平肖: https://sol.2344a.cc/pingxiaopingma/
- **ai.c8c.cc** (NOT sol.2344a.cc 替代): 六合站, 与 sol 系列无关
### 当前开奖JSON API
- **v_xg.json**: `https://btc.tktk.app/data/v_xg.json`(直接返回JSON,无需浏览器)
- **Qi 字段语义 (pitfall)**: Qi = **最新已开**期号 (刚开), Nq = 未开下期。**真开奖**要从 sol.2344a.cc 挂牌历史 / 数据库历史查
- **sol.2344a.cc 历史API**: `/e/api/api.php?get=sixlist&year=YYYY` 仍返回空 (历史AJAX失效)
### 开奖时间
- 每周二、四、六 21:30(北京时间)
- 49个号码,6个平码 + 1个特码
### tktk API架构(从public.js逆向)
tktk Vue.js应用的数据源URL模式: `https://btc.tktk.app/data/v_{cod}.json?{timestamp}`
| cod | 彩种 | 说明 |
|-----|------|------|
| xg | 香港六合 | 每周二/四/六 21:30 |
| 48am | 天天澳门彩 | 每天 22:14-22:40 |
| am | 新澳门六合 | 每天 21:14-21:40 |
| tw | 台湾六合 | 每天 20:28-20:58 |
| xjp | 新加坡六合 | 每天 18:35-18:55 |
| fckl8 | 快乐8 | 每天 21:25-21:40 |
JSON返回格式:
```json
{
"Data": {
"1": {"nim":"金","number":"34","color":"红","style":"red","sx":"鸡"},
"2": {...}, ... "7": {...}
},
"Time": "21点30分", "Day": "05", "Moon": "07", "Year": 2026,
"Qi": "071", "Nq": "072", "Week": "周日", "Auto": false
}
```
- `Data.1`-`Data.6`: 平码,`Data.7`: 特码
- `Qi`: **最新已开期号**(刚开), `Nq`: **未开下期期号**(下一个)
- `nim`: 五行,`sx`: 生肖,`color`: 波色(红/蓝/绿)
### ⚠️ 重要: v_xg.json 字段语义陷阱
### ⚠️ 重要: v_xg.json 字段语义陷阱
- **正确语义 (2026-08-04 修正)**:
- **Qi = 最新已开期号** (刚开)
- **Nq = 未开下期期号** (下一个)
- **Week/Day = Nq 期开彩日** (北京时间)
- **Data.1-7 = Qi-2 期已开号码** (不是 Qi-1)
- **7 号码 (Data.1-7)**: 真已开期号的号码(**Qi-2 期**(2026-08-02 修正, 不是 Qi-1) 的结果)
- **实战 (2026-07-29)**: cron 周二 14:00 (7/28 22:00) 跑, v_xg.json Qi=081 (= 081 期, 已开), 7 号码是 080 期 (Qi-2 期)
- **取下下期 / 周几等时间**: 拿 v_xg.json 即可(Qi 是最新已开期号, Nq 是再下次, Week/Day 是 Nq 期开彩日, 不是 Qi 期)
- **取 Qi 期真开号码**: v_xg.json 不显示 Qi 期号, 需查 sol.2344a.cc/挂牌 或 lottery.db (Qi 期已开,但 v_xg.json 只显示 Qi 期号, 不显示号码)
- **2026-08-04 实战**: Qi=083 (083 期 8/1 周六已开), Nq=084 (084 期 8/4 周二未开), Week=周二 Day=04 (= 084 期开彩日), Data.1-7 = 081 期号码 (Qi-2)
- 详见 `references/v_xg-data-qi-2-pitfall.md`
- **取 Qi 期 (实际刚开)**: v_xg.json 不显示, 查 sol.2344a.cc/挂牌 或 lottery.db
- **2026-08-02 修正**: Data.1-7 = Qi-2 期 (不是 Qi-1) — 详见 `references/v_xg-data-qi-2-pitfall.md`
## 数据存储
**SQLite数据库**: `~/.hermes/trading/lottery.db`
- `draws` 表: 开奖记录(期号、日期、6个号码+特码、生肖、五行、波色)
- `cold_data` 表: 冷数据(key-value,网页文本内容)
- `image_links` 表: 图片链接(类别、标题、URL、期号,不下载图片)
- **不存图片文件**,图片类只存URL链接
## 脚本用法
```bash
SCRIPT=~/.hermes/skills/trading/lottery-hk/scripts/lottery.py
python3 $SCRIPT add <期号> <号码> # 手动添加
python3 $SCRIPT add_full <期号> <号码> <生肖> # 手动添加(带生肖)
python3 $SCRIPT history [期数] # 查看历史
python3 $SCRIPT analyze # 分析(频率/热号/冷号/生肖/五行/波色)
python3 $SCRIPT zodiac # 生肖号码对照表
python3 $SCRIPT next # 下期开奖时间
python3 $SCRIPT import_json <文件> # 导入JSON历史数据
python3 $SCRIPT save_cold <key> <content> # 保存冷数据
python3 $SCRIPT get_cold <key> # 读取冷数据
python3 $SCRIPT save_image <类别> <标题> <URL> [期号] # 保存图片链接
python3 $SCRIPT list_images [类别> # 列出图片链接
```
### 4 框架分析 (scripts/lottery_4frame.py)
**v_xg.json + 挂牌 + 红字 + 玄机诗 4 步自动跑**(不靠 agent 推公式):
```bash
python3 ~/.hermes/skills/trading/lottery-hk/scripts/lottery_4frame.py
```
输出: 4 步流程完整分析 (Qi 期号 + 挂牌详情 + 红字 + 5 条玄机诗)
**不要** agent 自己写 河洛/梅花/玄空/奇门 公式 (reference 没推演方法)。
### 特码分析 (scripts/lottery_特码.py)
**纯挂牌分析**(不混 Qi 期数据,不跑频率):
```bash
python3 ~/.hermes/skills/trading/lottery-hk/scripts/lottery_特码.py [期号]
```
输出:
- Top 5 特码候选(按挂牌共识权重排序)
- 重点金额分配(默认 ¥15 = 5/4/3/2/1)
- 来源映射(挂牌链接 + 玄机诗)
**不要**:
- 不要混 Qi 期已开号码 (Qi 期已经开了, 不算 Nq 资料) — v_xg.json Data.1-7 实际是 Qi-2 期已开, 不是 Qi-1, 详见 references/v_xg-data-qi-2-pitfall.md
- 不要跑 `lottery.py analyze` (5 期数据无意义)
- 不要 agent 自己写 4 框架玄学公式 (河洛/梅花/玄空/奇门, reference 没推演方法)
## 生肖映射(网站实际映射,已验证)
网站的生肖表和标准12生肖轮转不同,用 mod 12 映射:
```
0=狗, 1=猪, 2=蛇, 3=马, 4=羊, 5=虎, 6=兔, 7=鼠, 8=牛, 9=猴, 10=鸡, 11=龙
```
071期验证: 34=鸡(34%12=10)✅, 46=鸡(46%12=10)✅, 17=虎(17%12=5)✅
## 冷数据 vs 热数据
**🧊 冷数据**(存cold_data表,不常变):
- 歷史、生肖表、日期、常識、全年、技巧、規律、策略
**🔥 热数据**(每期更新):
- 開獎、掛牌、解牌、綜掛、平碼平肖、玄机资料、论坛高手推荐等
## 参考资料
## 8. 资金分配偏好 (跨 skill, 2026-07-30)
**用户偏好**: 信号/分析结果要给**重点分配**, 不是平均分或全部平均。
- ❌ 错: "5 个候选号, 各买 1 元"
- ✅ 对: "5 个候选号, 按权重 5/4/3/2/1 元分配, 重点放在前 2-3 个"
- 默认预算: 信号类 (特码/跟单) 用 ¥15 = 5/4/3/2/1
- 排序时给 emoji (🥇🥈🥉) 让用户快速识别重点
适用范围: lottery 特码、币圈跟单、股票做 T 信号等任何"有预算上限的信号推送"。
## 注意事项
- 页面用Vue.js动态加载,非开奖时间段(21:14-21:40外)可能无数据
- 图库类页面(玄机图库、经典图库等)是图片,不抓取
- 网站有大量博彩广告,解析时需过滤
### 📌 082 期实战案例 (2026-07-29 凌晨, 用户多次纠正)
**事件流**:
1. cron `668dcf3ec54d lottery-draw-result` 14:00 UTC (= 北京 22:00) 跑
2. v_xg.json `Qi=081 (081 期 7/28 周二已开), Nq=082 (082 期 7/30 周四未开), Week=周四, Day=30 (= Nq=082 期开彩日 = 7/30 周四)`
3. agent 推: "081 期 = 7/30 周四 21:30 开彩" — **错**(实际 081 = 7/28 周二)
4. agent 推: "082 期 = 8/1 周六 21:30" — **错**(实际 082 = 7/30 周四)
5. 用户反复纠正"081 时间错 / 不要分析 / 你直接跑不行吗"
6. **真相**: 挂牌日 = 开彩日 (sol.2344a.cc 挂牌 07-28 13:35 = 081 周二开彩)
**坑 1 (v_xg.json 字段)**: `Week`/`Day`**Nq 期开彩日** (未开下期), 不是 Qi 期(已开)。
- Qi=081 → 081 周二开 (7/28 已开), Nq=082 → 082 周四开 (7/30 未开)
- Week=周四 → 081 错的,实际 Qi 081 期是周二,但 Week 字段是 **Nq=082 期开彩日** = 周四 — **这是 agent 多次误读的根本原因**
**坑 2 (挂牌日 vs 开彩日)**: sol.2344a.cc 挂牌帖的发布时间 ≠ 开彩日,实际是**同一天**(挂牌发出来当天就是开彩日)。**挂牌提前 2-3 天的旧描述是错的**。
**坑 3 (沟通)**: agent 答 "081 是周几" 时,反复用"为什么不是周二"的长篇分析 → 用户纠正"我说了,你不要分析,只说怎么取的就行了"。
**正确做法**:
- 用户问"081 是周几" → 一行答: "挂牌日 = 开彩日, sol.2344a.cc 07-28 13:35 挂牌 = 081 周二开彩 (北京时间 21:30)"
- **不展开** "为什么" / "不是周四" / "Qi 字段语义"
- 出错立刻认错,不要找理由
## 🚨 硬规则 (每次推送前自检)
1. **时区**: 所有时间默认 **北京时间 (UTC+8)**, 必须标"(北京时间)"后缀
2. **挂牌日 = 开彩日** (硬规则): sol.2344a.cc 挂牌帖时间戳 = 实际开奖日,**同天**。旧描述"挂牌提前 2-3 天"是错的。
3. **v_xg.json 字段** (2026-08-04 第三次修正):
- `Qi` = **最新已开期号** (刚开)
- `Data.1-7` = **Qi-2 期 已开号码 (不是 Qi-1!)** — 7 个
- `Week`/`Day`/`Year`/`Moon` = **Nq 期开彩日** (北京时间, **不是 Qi 期!**)
- `Nq` = 再下期
- 取 Qi 期开彩日: Nq 期开彩日 - 1 个开彩日 (周二/四/六规律), 或查 sol.2344a.cc 挂牌帖
- 取 Qi 期真开号码: 查 sol.2344a.cc/挂牌 或 lottery.db (v_xg.json 不显示 Qi 期号码)
- **取 Qi 期真开号码**: 查 sol.2344a.cc/挂牌 或 lottery.db (v_xg.json 不显示 Qi 期)
4. **推送格式**: 不写"刚开"/"最新" — 用具体期号+明确日期
5. **沟通**: 用户要直接说数据来源,不要长篇分析
6. **4 框架分析**: **直接调 `python3 scripts/lottery_4frame.py`**(4 步流程: v_xg.json + 综合挂牌 + 六信红字 + 玄机诗),**不要 agent 自己造公式**(reference 073 流程是 3 步推演,不是 4 框架玄学公式)。`lottery.py` 不支持 4 框架。
## 🚨 用户偏好 (2026-07-30 实战反复纠正, 必读)
1. **直接说从哪取的, 不要分析/解释** — 回答"081 是周几" → 一行答 "sol.2344a.cc 07-28 13:35 挂牌 = 081 周二开彩", **不展开** "为什么不是周四" / "Qi 字段语义" / 长篇对比
2. **出错立刻认错, 不要 "分析" 或 "等回话"** — 知道错了就立刻重做正确的事, 不要"让我再想想"/"让我检查一下"
3. **不要在回复结尾加 "A/B/C 简单回答" 选项** — 这是 agent 自己加的回复模板, **不是用户让的** (2026-07-30 user 指出 "这是什么技能输出的" — 实际没有这个 skill, 是我加的)
4. **看到 "4 框架" / "跑 X 框架" 关键词, 不要立刻自己推公式** — 先看 `references/analysis-example-073/074/075.md` 用 example 方法推演, 不是自己写
5. **挂错 / 跑错 / 答错不要重发分析, 立刻重做** — 用户说 "你直接跑不行吗" 意思是: **别说废话, 重做**
### Pitfalls (2026-07-29 更新)
- **sol.2344a.cc 全站 200 OK** (替代失效的 sol.0051.cc):
- https://sol.2344a.cc/zongheguapai/ ✅
- https://sol.2344a.cc/lxhz/ ✅
- https://sol.2344a.cc/xuanjiziliao/ ✅
- https://sol.2344a.cc/jiepai/ ✅
- https://sol.2344a.cc/pingxiaopingma/ ✅
- 挂牌帖含 "080期/081期" + 发布日期, 可索引历史
- **sol.2344a.cc "Cann't connect to DB!" 第三次故障形态 (2026-08-02)**:
- 状态: HTTP 200,但 curl 返回 `Cann't connect to DB!` 文本(不是 ERR_CONNECTION_REFUSED
- 受影响: sol.2344a.cc/* 全站 + btc.tktk.app/data/v_xg.json
- 后果: `lottery_4frame.py` 静默失败(exit 0,输出空)— 脚本未检测 DB 错误
- 降级: 仅依赖本地 SQLite draws 表
- **📌 v_xg.json 字段语义 (2026-08-02 修正, 重要!)**:
- `Qi` = **最新已开期号** (刚开)
- `Nq` = 再下期
- `Week`/`Day`/`Year`/`Moon` = **Nq 期开彩日** (北京时间, 不是 Qi 期)
- **`Data.1-7` = Qi-2 期已开号码** (不是 Qi-1!) — 7 个号码 + 5 行字段 (sx/nim/color/style/number)
- 取 Qi 期真开 (实际刚开) 号码: 查 sol.2344a.cc/挂牌 或 lottery.db, **v_xg.json 不显示 Qi 期**
- 实战案例 (2026-08-04 14:03 北京): Qi=083 (083 期 8/1 周六已开), Data.1-7=081 期号码 (Qi-2), 083 期真开号 v_xg.json 不显示 (只能查 sol.2344a.cc/挂牌)
- 详见 `references/v_xg-data-qi-2-pitfall.md`
- **挂牌日 = 开彩日** (用户 2026-07-30 实战确认, 同一天, 不是提前 2-3 天): sol.2344a.cc 挂牌发布时间 = 实际开奖日
- **取真 Qi 期号码**: 7 号码 = Data.1-7 是 Qi-2 期, Qi 期号 = v_xg.json Qi, **Qi 期号 + 号码** 查 sol.2344a.cc/挂牌 或 lottery.db; **Nq 期开彩日** = Week/Day
- **取真历史**: sol.2344a.cc 挂牌索引 或本地 SQLite draws 表
- **📌 推送格式偏好 (用户硬偏好, 2026-07-30 实战)**: QQ 推送用 **markdown 横向表格** (每票 1 列, 4-8 票可滑动比较)。**严禁** 1 票 1 块 (垂直堆叠), 用户说过"用列表方式显示 / 把所有表格都换成这样的"。
- 字段顺序: 名称表 + 项目表 (2 张表上下)
- 列用票代码, 行用指标 (现价/股息率/趋势/MA50/支撑/离均线/ATR/策略)
- 类似脚本: `daily_t_analysis.py` / `dividend_alert.py` / `cn_dividend_buy_timing.py` 全部已转横向表格
- **时间默认北京时间(用户硬规则, 2026-07-30)**: 任何日期时间 (挂牌/开奖/推送) 默认 UTC+8 北京时间;cron schedule UTC → 换算时也明确标"北京"
- **v_xg.json Week/Day 是 Nq 期开彩日** (北京时间周二/四/六 21:30, **不是 Qi 期, 是再下期**)
- **挂牌日 = 开彩日** (同天, 用户 2026-07-30 实战确认, 不是提前 2-3 天)
- **用户纠正"082 时间错"**: 因为 agent 没标"北京时间" + 没区分挂牌日和开奖日
- 沟通风格: 用户要"直接说怎么取的,不要分析/解释" — 错了立刻认错
- **v_xg.json 在 browser_navigate 下返回空白包装页**: skill文档说"直接返回JSON,无需浏览器"——但在 cron agent 模式下 terminal 被拦截,只能用 browser_navigate。此时 btc.tktk.app/data/v_xg.json 显示的是一个带 Pretty-print 复选框的包装页,JSON 内容不在 DOM 里。**临时方案**: 用 browser_snapshot(full=true) 尝试,或改用 tktk.tktk4.cc 首页的 Vue iframe 框架内的数据。
- **e/api/kj.php?xg 返回空页面**: 同样 Vue 包装,cron 模式无法获取实际开奖数据。
- **tktk.tktk4.cc 历史页 (history/) 返回 404**: 不是正确路径。
- **sol.2344a.cc 历史API仍失效**: `/e/api/api.php?get=sixlist&year=YYYY` 返回空数据(2026-07确认)。需要从挂牌帖文本提取历史期号
- **历史数据无批量API**: 目前没有可用的批量历史开奖数据API。**替代**: 从 sol.2344a.cc 挂牌列表按"期号/发布日期"索引
- **生肖表URL会过期**: sol.2344a.cc 的生肖表页面每年更新,旧URL会404。应先访问 https://sol.2344a.cc/sssx/ 列表页,找到最新年份的文章链接。
- **中文彩票站内容多为图片**: sol.2344a.cc 等网站的详细资料(公式、规律、技巧)嵌在图片中,curl/sed只能抓到文章标题索引,无法提取实际内容。需要用 browser 工具查看页面截图。
- **⚠️ "4 框架" ≠ agent 自己造公式 (2026-07-30 实战, 用户多次拒绝)**: 用户说"4 框架"指 **reference `analysis-example-073/074/075.md` 里的真实推演流程** (v_xg.json 五行统计 + 综合挂牌解读 + 六信红字), **不是 agent 自己写 河洛/梅花/玄空/奇门 公式**。用户原话: "记得我说过不要跑频率, 没有意义, 我要说什么你才能记住"。**看到"4 框架"必跑 `python3 scripts/lottery_4frame.py`** (已固化真脚本), 不要尝试自己推公式。
- **⚠️ 特码分析不混 Qi 期数据 (2026-07-30 实战)**: 用户原话: "不要参考 081 期的, 没有意义, 就用挂牌分析就行了"。分析 `082 期` 时, 只用 sol.2344a.cc 挂牌 + 玄机 + 红字, **不要混 `v_xg.json Data.1-7` (那是 081 期已开号码, 不算 082 资料)**。**特码分析必跑 `python3 scripts/lottery_te_ma.py`** (已固化真脚本)。
- **⚠️ 不要在回复结尾加 "A/B/C 简单回答" 选项 (2026-07-30 用户指出)**: 这是 agent 自己加的回复模板, **不是用户让的, 也不是任何 skill 输出的**。看到用户问"这是什么技能输出的"才意识到: agent 默认加了"简单回答 X"模板, 但用户没要求。**不要在回复结尾加这种模板**, 直接回答用户问题。
- **⚠️ 出错立刻重做, 不要"分析"或"等回话" (2026-07-30 用户原话)**: 用户说"知道错了, 还要来确认, 你直接跑不行吗"。错了立刻重做, 不要 "让我再想想" / "让我检查一下" / 重新分析原因。
- **⚠️ "从哪取"只答来源一行, 不展开 (2026-07-30 实战)**: 用户原话: "我要知道你从哪里取的时间啊?" — agent 不该展开"我对比了 X / Y / Z 三个数据源才确认" 的分析。**回答"082 时间从哪取的" → 直接答 "v_xg.json `Week=周四 Day=30`", 不展开**。
## 参考资料
- `references/zodiac-table.md`: 2026年完整生肖五行波色对照表(号码→生肖→五行→波色→分类)
- `references/draw-dates.md`: 2021-2023年搅珠日期(JS日历数据)
- `references/v_xg-qi-pitfall.md`: **v_xg.json Qi 字段语义陷阱实战**(2026-07-29 发现, Qi = 最新已开期号)
- `references/common-knowledge.md`: 生肖属性文章索引、关键概念
- `references/techniques.md`: 规律秘诀文章索引(出波、波色法等)
- `references/patterns.md`: 固定规律文章索引(日期定波、杀肖、出尾等)
- `references/strategies.md`: 买码建议文章索引(赢钱秘诀、七戒律等)
- `references/agent-workflow-pitfalls.md`: **2026-07-30 实战累积的用户硬偏好 + agent workflow 坑** (跨 skill 通用, 必读)
- 不要加 "A/B/C 简单回答" 模板
- "从哪取" 只答来源一行
- 错了立刻重做, 不分析
- 跑 4 框架/特码 必跑真脚本
- 推送用横向 markdown 表格
- cron agent 模式限制
- 4 位置保证 cron 读到硬规则
- `references/082-success-workflow.md`: **2026-07-30 082 期成功跑通的工作流** (反向参考, 跑通的不是只有坑, 复用成功路径)
## 定时任务
| 任务 | 时间(UTC) | 内容 |
|------|-----------|------|
| lottery-hot-data | 周二/四/六 11:30 (19:30北京) | 抓热数据+频率分析,推QQ |
| lottery-draw-result | 周二/四/六 14:00 (22:00北京) | 抓开奖结果入库,推QQ |
开奖时间: 21:30 北京时间 → 先抓热数据分析(19:30),开奖后抓结果(22:00)。
注意: draw-result cron 跑时 7 号码已在 sol.2344a.cc 历史挂牌文里 (挂牌日 ≈ 开彩日, 通常 1-3 天前发布), agent 应该同时查 v_xg.json (Qi 期号) + sol.2344a.cc 历史挂牌 (Qi 期真开).