Files
Hermes-Skills/lottery-hk/references/agent-workflow-pitfalls.md
T
mike 90056f25eb lottery-hk references: 修正 v_xg.json 字段语义 (Qi=Nq 区别)
修正两个 reference 文档:
- v_xg-data-qi-2-pitfall.md (主): 表格 + 推论 + 教训 + 时间线全部按 Qi=最新已开
- v_xg-qi-pitfall.md (旧版归档): 加第 4 次修正 (2026-08-04) + 文件标题

完整正确语义 (2026-08-04):
- Qi = 最新已开 (刚开)
- Nq = 未开下期
- Week/Day = Nq 期开彩日
- Data.1-7 = Qi-2 期已开号码
2026-08-04 15:51:54 +08:00

5.4 KiB

Agent Workflow Pitfalls (2026-07-30 实战累积, 2026-08-02 修正 Qi-2 与 no_agent 规则)

用户硬偏好 (违反必踩坑)

1. 不要在回复结尾加 "A/B/C 简单回答" 选项

用户原话: "这是什么技能输出的?" (答: 没有任何 skill 输出, 是 agent 自己加的回复模板)。

  • agent 默认行为: 结尾列"A. 是 / B. 否 / C. 别的" 选项
  • 正确做法: 直接回答用户问题, 不加模板。如果用户下一步不明, 等用户说。
  • 应用到所有回复, 不仅是 lottery。

2. 用户问"从哪取"只答来源一行, 不展开分析

用户原话: "我要知道你从哪里取的时间啊?"

  • : "我对比了 X / Y / Z 三个数据源 + 验证了 N 个字段后才确认 082 期是周四开彩..."
  • : "082 期时间从 v_xg.json Week=周四 Day=30 取的。"
  • 一行, 一句, 来源 + 数据, 完。

3. 错了立刻重做, 不分析 / 不等回话

用户原话: "知道错了, 还要来确认, 你直接跑不行吗"

  • : "我错了, 让我再想想 / 检查一下 / 等你回话..."
  • : 立刻跑正确的事。
  • 应用: agent 报错 / 跑偏 / 答错 → 立刻重做, 不解释原因。

4. 跑 X 框架不要自己造公式

用户原话: "记得我说过不要跑频率, 没有意义, 我要说什么你才能记住" / "我要 4 框架"

  • "4 框架" = reference 里的真实推演流程 (v_xg.json + 挂牌 + 红字), 不是 agent 写 河洛/梅花/玄空/奇门 公式
  • "特码分析" = sol.2344a.cc 挂牌 + 玄机 + 红字, 不混 v_xg.json Qi-2 期数据
  • 流程: 看到关键词 → 跑真脚本 (lottery_4frame.py / lottery_特码.py), 不要尝试自己推
  • 保留路径: python3 ~/.hermes/skills/trading/lottery-hk/scripts/lottery_4frame.py
  • 保留路径: python3 ~/.hermes/skills/trading/lottery-hk/scripts/lottery_特码.py [期号]

5. 信号/分析输出不平均分, 给重点分配 (2026-07-30 用户实战)

用户原话: "怎么跟上次的号不一样呢" + "要有重点的分配"

  • : "5 个候选号各买 1 元 / 5 元平均分"
  • : 按权重比例分 (5/4/3/2/1), 重点放在前 2-3 个, 加 🥇🥈🥉 让用户快速识别
  • 默认预算: 信号类 (特码/跟单/做T) 用 ¥15 = 5/4/3/2/1
  • 用户对"平均分"反应是"怎么跟上次不一样" → 直接诊断"权重排序 vs 临时排序" 不要防御性回避
  • 适用范围: lottery 特码、币圈跟单、股票做 T 信号等"有预算上限的信号推送"

默认时区 = 北京时间 UTC+8

  • 任何时间字段 (挂牌/开奖/推送/cron schedule) 默认 UTC+8
  • cron schedule 是 UTC → 推送时显式标注 "北京时间"
  • agent 默认假设 UTC → 用户必纠正

挂牌日 = 开彩日 (硬规则)

  • sol.2344a.cc 挂牌帖发布时间 = 实际开奖日, 同一天
  • (旧 SKILL.md 描述): "挂牌提前 2-3 天"
  • (用户 2026-07-30 实战确认): 挂牌日 = 开彩日, 同天

v_xg.json 字段语义 (2026-08-02 修正!)

  • Qi = 下次将开期号
  • Data.1-7 = Qi-2 期 已开号码 (不是 Qi-1) — 7 个号码 + 5 行字段
  • Week/Day/Year/Moon = Qi 期 开彩日 (北京时间) — 不是"当前期"
  • Nq = 再下期
  • 取 Qi-1 期 (实际刚开) 号码: 查 sol.2344a.cc/挂牌 或 lottery.db, v_xg.json 不显示 Qi-1 期
  • 早期版本错误: 旧 SKILL.md (v1.2.6 及之前) 写"Data.1-7 = Qi-1 期" → 错的, 实际是 Qi-2 期
  • 详细: 见 references/v_xg-data-qi-2-pitfall.md

QQ 推送格式 (跨 skill 用户偏好)

用横向 markdown 表格 (4-8 列)

  • 每票 1 列, 多票并列可左右滑动比较
  • 字段顺序: 名称表 + 项目表 (2 张表上下)
  • 列用票代码, 行用指标 (现价/股息率/趋势/MA50/支撑/离均线/ATR/策略)

严禁垂直堆叠 (1 票 1 块)

用户原话: "这个多了很多 proxychains 的无用信息" / "不是这种表格, 是这种 (横向)"

  • : 每票 N 行 emoji 列表
  • : 横向 4-8 列表格

已应用脚本 (Hermes-Scripts 仓库)

  • dividend_alert.py (A股/港股/美股股息)
  • cn_dividend_buy_timing.py (A股高息买入时机)
  • daily_t_analysis.py (做 T 分析)
  • scan_cn.py / dca_scanner.py / analyze_cmb.py (高息扫描)

cron agent 模式必用 no_agent + script (2026-08-02 实战)

用户原话: "把数据都丢了, 时间都是错的" / "你直接跑不行吗"

反模式 (2026-08-02 lottery 推送 bug):

  • cronjob agent 模式 + skill lottery-hk
  • 即使 SKILL.md 改 Qi-2 描述, model 仍按旧认知 编 (标题"082 期" + Qi-1 期 081 号码 + 错周二)
  • 多次纠正后仍编, 用户说"会编"

正解: cron 用 no_agent: true + 真脚本

  • 模型不参与, 0% 编概率
  • 真脚本输出直接推 QQ
  • 触发条件: 任何 cron 任务涉及"数据源不完整 / 字段语义有歧义 / 时间/期号计算" → 必用 no_agent + script
  • 保留路径: cd ~/.hermes/scripts && python3 <script>.py~/.hermes/scripts/<wrapper>.sh

复盘: 当时已经知道 lottery_4frame.py 存在 + 改了 cron prompt + 改了 SKILL.md description, 但还是错。真正的修复必须是 no_agent: true + script, 让模型没有推理空间。

参考: ../../devops/cron-job-management/SKILL.md §3 "Two Cron Job Modes" + §10 "Agent-Mode Cron + Provider Rate Limit" — 把这个规律扩展到新场景: agent-mode cron + 任何"语义模糊源" (期号/日期/字段含义) = 编风险, 必 no_agent + script