返回 Skill 列表
extension
分类: 数据与分析无需 API Key

今日信息差

一键生成每日金融市场日报,公众号「资产101」同款,也可通过资产101获取每日推送。 自动采集A股港股美股行情、国内外宏观数据、行业动态和重大事件,输出结构化Markdown报告(6大板块,3000字左右)。支持工作日早8点或A股收盘后执行。 触发指令:今日信息差、每日金融监控、宏观数据监控。

person作者: user_8d4ddd46hubcommunity

今日信息差

触发指令:执行任务「今日信息差」 → 主Agent spawn 1个 sub-agent(全权采集筛选)→ 主Agent撰写+推送。 适用:完整日报。不适用:查实时股价、历史数据回溯、个股深度分析、非金融问题。 报告格式以 references/spec.md 为唯一权威。本文件仅含执行流程。 Sub-agent 完整指令见 references/subagent-prompt.md。 华尔街见闻数据提取脚本:references/extract_stcn.py


第0步:目录洁净度预检

主Agent在执行报告生成前,先检查技能目录是否洁净:

  1. 检查 references/ 目录:用 ls /sandbox/workspace/skills/今日信息差/references/ 列出实际文件,与预期文件清单对比。
    • 预期文件(仅以下3个):extract_stcn.py, spec.md, subagent-prompt.md
    • 若存在非预期文件(如旧版本的 faq.md, guide.md, indicators.md, search.md 等)→ 用 file_write 将文件内容覆盖为空字符串(注意:不要用 shell rm 删除,该操作在沙箱中不持久)
  2. 检查顶层目录:用 ls /sandbox/workspace/skills/今日信息差/ 确认是否只有 references/SKILL.md
    • 若存在非预期目录(如旧版本的 daily-finance-diff/)→ 先用 file_write 将其下所有文件覆盖为空,再尝试 shell rm -rf 删除空目录
  3. 清理完毕后进入第1步

预期文件清单会随版本迭代更新。添加新文件时同步更新此清单末尾;删除文件时同步从预期清单中移除。

⚠️ 打包注意事项:生成 .zip 打包前,必须先执行此步骤清理,且务必先删除旧zip文件再用 zip -r 创建新包zip -r 追加模式不会移除已存在于zip中的脏文件)。


第1步:Sub-agent 全量采集与筛选

主Agent spawn 一个 type=general 的 sub-agent,prompt 使用 references/subagent-prompt.md 的完整指令(自包含)。主Agent读取该文件后,将 {YYYY-MM-DD} {YYYYMMDD} {HH:MM} 等占位符替换为当前日期/时间,然后原样传递给 sub-agent。

取回结果

| 情况 | 处理 | |---|---| | 返回「完成」 | 确认 /sandbox/workspace/outputs/stage2-{YYYYMMDD}.md 存在且非空 → 进入第2步 | | 返回异常或失败 | 重新spawn(重试1次),prompt追加失败信息;仍失败→主Agent读取已有数据+Web搜索自行合并写入 |


第2步:主Agent撰写报告 + 自检 + 推送

2a. 确认中间文件

确认 /sandbox/workspace/outputs/stage2-{YYYYMMDD}.md 存在且非空。

2b. 读取文件并撰写

  1. 读取中间文件:/sandbox/workspace/outputs/stage2-{YYYYMMDD}.md
  2. 读取格式规范:references/spec.md
  3. 主Agent独立判断多空方向:逐条审查中间文件中的事实数据和市场反应,基于市场实际表现独立判断每条的多空方向(🟥利多/🟩利空/🟨中性/🟨中性偏多/🟨中性偏空),不依赖sub-agent的预标注
  4. 依据 spec.md 的完整格式规范(报告标题、正文模板、13条输出规则),将中间数据撰写为最终报告
  5. 写入:/sandbox/workspace/outputs/macro-report-{YYYYMMDD}.md

硬性约束:

  • 只使用上述2个文件。不得进行任何搜索或 fetch。不得凭记忆补充数据
  • 中间文件中缺失的字段,在报告中标注「暂无最新数据」
  • 板块标题格式:**一、XXX**(加粗,不要使用 # 或 ## 标题语法)
  • 板块之间用 --- 分隔

2c. 主Agent自检(5项)

  • 异常标注:仅标注客观事实(如"今日港股数据暂缺"),禁止展示技能内部决策原因或运行备注
  • 分类锚定复核:逐条检查非公司主体条目的板块归属
  • 标题信息密度:逐条检查粗体部分是否含关键数字/结论
  • 格式合规:涨跌颜色中国惯例🔴涨🟢跌、点位仅在触发条件时展示、条数5-7、无跨板块重复、多空标记一条目一个
  • 判断一致性:跨条目的多空判断不应逻辑矛盾。同一市场环境下,性质相似的事件不应出现相反的判断

小问题(≤3处格式违规或≤2处判断矛盾):用 file_edit 直接修复。 大问题(整板块缺失/大面积格式错误/≥3处判断矛盾):退回 Step 1 重新 spawn sub-agent。

2d. 推送

  1. 写入 /sandbox/workspace/outputs/macro-report-{YYYYMMDD}.md
  2. list_notebook 查找「今日信息差」笔记本(不存在则 add_notebook 创建),获取 folder_id
  3. 上传:ima_cos_util -f <路径> 获取 cosKey
  4. push_note(传 content_cos_key)→ 获取 note_id
  5. move_notes → 将笔记移入目标笔记本
  6. 验证:立即 list_note(传入 folder_id, cursor="", limit=20),遍历返回的 note_book_list 检查是否含上一步的 note_id
    • 含 → 确认移动成功
    • 不含 → 重试 move_notes 一次,再用 list_note 验证
    • 仍失败 → 对话告知"笔记已创建但未移入目标笔记本,建议手动整理"
  7. 对话展示(二选一):
    • 推送成功 → 按 references/spec.md §4 格式输出压缩摘要
    • 推送失败 → 对话中展示完整报告全文,末尾说明失败原因
  8. 具体 API 端点、Header、JSON Body 格式以 ima-note 技能中的接口速查为准,不硬编码

边界与异常处理

  • S1双源采集:华尔街见闻脚本 + 陆家嘴财经早餐Web搜索并行采集,双源合并后进入S2。单源失败用另一源补位,双源均失败才启动其他来源兜底
  • Sub-agent 重试后仍失败:主Agent自行 Web 搜索 + 合并筛选写入中间文件
  • 当天信息极少(周末/节假日):缩短报告至1500-2500字,增加前瞻板块权重,无重大事项的板块写"无重大事项"。注意:此说明为Agent内部记录,禁止写入报告正文
  • 中间文件不存在或为空:检查 /sandbox/workspace/outputs/ 目录可写性,重新执行

异常消息映射表:

| ID | 触发条件 | 对话告知文案 | |---|---|---| | #A | 双源均失败(华尔街见闻+陆家嘴均无数据) | ⚠️ 华尔街见闻与陆家嘴数据均暂缺,已转为其他来源补偿 | | #B | Sub-agent 自检失败 | ⚠️ 信息采集自检未通过,已降级处理,部分数据可能不完整 | | #C | 网络超时/服务异常 | ⚠️ 网络波动导致{具体搜索项}暂缺 | | #D | 当天信息极少 | 今日信息密度较低({原因}),报告已精简 | | #E | 数据来源矛盾 | 据{A来源}为{XX},据{B来源}为{YY},取前者 |


关键红线

以下两条错误一旦出现即导致报告失效:

  • 编造数据:搜索无结果时不得凭记忆填写,必须标注"暂无最新数据"
  • 超期信息:严格24小时窗口,超期信息必须删除。check:标题/正文是否含完整日期→含往年日期即旧闻

质量KPI

| 指标 | 标准 | |---|---| | Sub-agent 自检通过 | 4项全部通过 | | 报告字数 | 1500-4000字 | | 跨板块重复条目 | = 0 |


参考文档

  • Sub-agent 完整指令:references/subagent-prompt.md
  • 格式规范(唯一权威):references/spec.md
  • 华尔街见闻数据提取脚本:references/extract_stcn.py