2026-06-03 晚晚 · Round 1 闭环 ✅ · 高 ROI 3 件套 + A v2 wyhtb + live.html 5 色全部交付 · 5 commits · 159 → 262 tests

FE Skills 借进来
让 decision 输出从 数据汇总 升级到 PM-ready 投资底稿

satellite_agent 是"实时事件 → 主线评分 → 仓位信号"; FE Skills 是"深度尽调 → 质量打分 → 情景定价"。 两者互补。借 WYHTB + 证伪触发器5 层隔离 + 5 步报告语法Red Flags 自查 三件套, 0 schema 改动起 / 5-8 天就能拿到 PM 级输出。

来源7 skill + 6 共享指南 建议高 ROI 3 项 / 中 3 项 / 不做 4 项 插入Tier 1.2 LiteLLM 之后 当前等待拍板
0 · 互补关系

实时驱动遇上静态深度

我们和 FE Skills 不是对立关系也不是替代关系, 是两种时间尺度上的互补 — 我们处理的是周/月级的事件流, FE 处理的是季/年级的基本面深度研究。把 FE 的"先验设触发器 + 5 层叙事隔离 + 红旗自查"借过来, 正好填我们当前 alerts/decision 输出的几处真空。

我们 · satellite_agent

实时事件驱动监控

ingest → classify(规则 + LLM) → extract(金额 / 时间) → enrich(公司主线) → store。周期性输出 decision 周报 + debate 裁决 + alerts。

  • 事件源:RSS / JSONL / Text (SpaceNews 已闭环)
  • 4 主线 + 6 维度 ontology + word-boundary 中英文混匹配
  • EH-1 jobs 调度 + EH-3 飞书送达 (1 行 cron 表达完整链路)
  • P2 debate 接 LLM (Bull/Bear/Judge + multiplier 边车反哺)
  • 20 家公司种子库 / 80 aliases / 4 主线覆盖
FE Skills · Brett Caughran 2026-05

深度静态基本面研究

来自 SpaceX IPO Primer 抽出的方法学包。每个 skill 各管一个分析视角, 由 fe-primer-agent 串成 PM-ready 决策报告。配套 Excel 公式模板 + 5 个共享指南。

  • ramp-comprehensive · 分部尽调 + 单位经济 + 数据缺口
  • Focus Five 5 维评级 (A+ 到 F) + 趋势 + 触发条件
  • #1 驱动变量 3 层叙事 + 敏感度数学传导
  • 三层蛋糕管理层 9 维打分 (满分 45) + 控制权归因
  • WYHTB + 概率加权回报 + 强制证伪触发器 + 7 年模型
1 · 一览对比矩阵

7 skill + 6 共享指南 × 我们当前状态

下面两张表把 FE 的 13 个组件逐项映射到我们 agent 现状, 标出"我们有什么 / 缺什么 / 集成 ROI"。ROI 评级标准: ⭐⭐⭐ 高(下下下轮立即做)· ⭐⭐ 中(Round 2 考虑)· ⭐ 低(长期方向)· — 不做(明确边界)。

▎7 个核心 Skill

FE Skill 中文名 我们当前有什么 我们缺什么 ROI
ramp-comprehensive 业务分部尽调 companies 表扁平字段 (thread / products / customers / orders) 分部 (segment) 维度 / 单位经济 / 会计楔子 / 数据缺口 ⭐⭐⭐
fe-key-drivers Focus Five 五要素 公司 score 单一浮点 5 维评级 + 趋势 + 升/降级触发条件 ⭐⭐
fe-number-one-thing #1 驱动变量 thread + main_drivers 列表 (单层) 近期验证器 / 终值叙事 / 平台叙事 3 层 + 敏感度数学传导 ⭐⭐
management-evaluation 三层蛋糕 (无管理层字段) 信任 / 契合 / 执行 9 子维度 + 控制权归因
fe-scenarios 情景 + WYHTB valuation PE 3 档 + position_signals 加/减/持 WYHTB 假设清单 + 概率加权回报 + R/R + 入场价位阶梯 + 证伪触发器 ⭐⭐⭐
fe-seven-year-model 7 年财务模型 valuation.py 简单 PE 单年 7 年勾稽 + 资本开支平滑 + 二维敏感度热力图 ⭐⭐
fe-primer-agent 全流程编排 Agent EH-1 jobs (单 action 串) + debate orchestration 统一 State Object + skill chain 数据流约束

▎6 个共享指南

共享指南 我们当前有什么 我们缺什么 ROI
output_style_guide render_*_view 已有 md 模板 5 层隔离 (事实/计算/假设/研判/证伪) + 5 步报告语法 (answer → math → contradiction → what to watch → how it breaks) ⭐⭐⭐
universal_red_flags alerts 看事件信号 11 条红旗自查 (分析师 6 条 + 公司 5 条) ⭐⭐
source_and_reconciliation_rules events 有 source / url 7 层证据等级 + 冲突对账机制 ⭐⭐
quality_rubric (无) 1-5 分量规 (PM-ready → unusable)
chart_library live.html SVG 自渲染 标准化图表清单
excel_model_blueprint (无 Excel) 11 sheet + 字体颜色纪律 + 6 合规检查
完整对照表与 SKILL 引用见 FE-SKILLS-INTEGRATION.md §1
2 · ROI 三档采用建议

高 ROI 3 项 ✅ 全部交付 · 中 ROI 3 项 Round 2 · 4 项明确不做

2026-06-03 晚晚更新 · Round 1 闭环:高 ROI 三件套 C (9566bda) → A V1 (906478e) → B (b55d474) → A v2 (e239e44) → live.html 5 色 (8580b54) **全部 ✅**,5 commits / +103 tests (159 → 262)。下面 §3 详细方案是 2026-06-03 早期版本写的设计,**实施已基本对齐**(B 反方矛盾段降级到 risks 软占位被 A v2 wyhtb_bear 升级覆盖)。详见 FE-SKILLS-INTEGRATION.md §4 / §6 同步更新版。

高 ROI · 立刻做

FE 集成 Round 1

5-8 天 · 与 EH-3 飞书天然配套 · 0 schema 改动起步
  • A
    WYHTB + 证伪触发器
    thesis_state 加 triggers JSON, 每次 ingest 后跑触发器检查, 命中即推飞书。事前主动 vs 现在的事后被动告警
  • B
    5 层隔离 + 5 步报告语法
    render 函数加 contradiction (反方矛盾) + how it breaks (距离触发的距离) 两段。零 schema, 立刻可做
  • C
    Red Flags 自查
    新 quality_checks.py 模块, 11 条规则。decide() 跑完后扫一遍, markdown 末尾标"本期触发 N 条红旗"
中 ROI · Round 2

schema 改动 或外部数据

10-14 天 · 价值大但需要梳理数据
  • D
    公司分部 (segment) 维度
    companies 加 segments JSON。P1 扩 20→30 时一并改, 避免二次迁移。例: 海格 = 导航终端 + 北斗模块 + 通信芯片
  • E
    3 层叙事 + 敏感度数学传导
    main_drivers 扩成"近期验证器 / 终值叙事 / 平台叙事"3 层 + sentiment Δ → 隐含估值 Δ 公式
  • F
    数据来源 Ledger + 冲突对账
    新 event_conflicts 表, 同笔订单两渠道金额差 > 20% 标 conflict, decision 标"高冲突待核"
不做 · 明确边界

避免 反向同化

实时驱动本质不应被静态深度稀释
  • G
    Focus Five 5 维评级
    手工录入或 LLM 生成成本高, 与"事件驱动周期"时间尺度不匹配。或只在 thread 层做, 不在公司层
  • H
    三层蛋糕管理层评估
    A 股管理层数据来源稀缺, 且与我们"产业事件驱动"主线无关
  • I
    完整 7 年财务模型 + Excel
    valuation.py 的 PE 法够用。真要做时只做二维敏感度热力图, 不引 Excel 工作流
  • J
    SpaceX 单标的过度对齐
    FE 案例用 SpaceX 是写作者刚做完 IPO, 我们标的是 A 股卫星互联网。框架借, 案例不借
3 · 高 ROI 三件套详细方案

A / B / C 各 1 张卡 · 含 schema diff + 模块设计 + 验收

下面是 Round 1 三件套的具体落地方案 — 每张卡列出"现状 → 任务 → 关键代码 → 验收"。可独立验收, 但**推荐按 A → C → B 顺序**(A 是基础, C 是 self-audit, B 是把前两件成果可视化)。

A
高 ROI · 与 EH-3 飞书天然配套

WYHTB + 证伪触发器

把我们当前"事件命中风险维度才告警"的事后被动模式, 升级到"先设硬阈值 + 每次 ingest 后跑触发器检查"的事前主动模式。触发器命中直接挂到现有 /alerts 端点 + 走 EH-3 飞书推送。

工期
3-4 天
Schema
+3 字段
阻塞
现状
  • alerts事后被动 — 看到事件命中风险维度才告警
  • thesis_state 表只有 score / statement, 无"看牛/看熊条件清单"
  • 无任何"如果 X 跌破 Y → 减仓 Z%"的事前硬阈值
任务拆解
  1. thesis_state 表加 wyhtb_bull / wyhtb_bear / triggers JSON
  2. triggers.py: TriggerCheck 协议 + 3 个内置 (sentiment_below / order_concentration / event_drop)
  3. update_thesis_scores 跑完后调 check_triggers → 写 alerts
  4. decision 输出加 wyhtb_status (各 thread 牛/熊条件已满足 N/M)
  5. 测试: test_triggers.py 覆盖 3 内置 + 自定义注册 + 命中走 alerts
关键代码 sketch
TriggerCheck = Callable[
  [sqlite3.Connection, dict],
  Optional[dict]
]

CHECKS: dict[str, TriggerCheck] = {}

def register_check(name, fn): ...

@register_check("thread_sentiment_below")
def _below(conn, params):
  """params: {thread, threshold, weeks}"""
  ...

def check_triggers(conn, *, end_date=None):
  """返回触发的 alert 列表"""
  ...
验收
  • 跑一周 SpaceNews 触发至少 1 次 trigger
  • decision 输出能看到"已触发 N / 设了 M 条"
  • 飞书推送收到触发器的 alert 卡片
  • test 覆盖 ≥ 8 个 (3 内置 + 自定义 + 命中 + 未命中 + 多 thread + 边界)
B
高 ROI · 零 schema · 立刻可做

5 层隔离 + 5 步报告语法

FE 的报告语法要求每段 answer-first → math → contradiction → what to watch → how it breaks 5 步走, 输出严格区分 5 层 (事实 / 计算 / 假设 / 研判 / 证伪)。我们当前 decision 缺 contradictionhow it breaks 两段。

工期
1-2 天
Schema
0 改动
依赖
A 的 triggers
现状
  • render_ceo_view / render_investor_view 当前有: 主驱动 + 战略建议 + 评分表 + next_indicators
  • 缺 contradiction (为什么显而易见的多头可能错)
  • 缺 how it breaks (具体哪些数据触发器会推翻研判)
  • JSON 输出无 layer 标记, 前端无法区分事实/研判/证伪
任务拆解
  1. render_*_view 末尾加 "反方矛盾" 段 (从 thesis_state.wyhtb_bear 渲染)
  2. render_*_view 末尾加 "如何崩塌" 段 (从 thesis_state.triggers 渲染距离)
  3. JSON 输出加 layer 字段: fact / calc / assumption / judgment / falsification
  4. live.html 渲染 layer 不同颜色 (gray / blue / yellow / orange / red)
5 步语法
def render_ceo_view_v2(report):
  # 1. answer-first
  # 2. math (thread_scores 表 + 数学传导)
  # 3. contradiction (来自 wyhtb_bear)
  # 4. what to watch (next_indicators, 已有)
  # 5. how it breaks (来自 triggers 距离)
  ...

# JSON 加 layer 字段
{"main_drivers": [
  {"layer": "fact", ...}
],
 "strategy_recommendations": [
  {"layer": "judgment", ...}
 ],
 "falsification": {
  "layer": "falsification",
  "triggers_distance": [...]
 }}
验收
  • decision markdown 包含"反方矛盾"和"如何崩塌"两段
  • JSON 每段有 layer 字段, 取值在 5 层枚举内
  • live.html 5 层颜色区分明显
  • 飞书卡片渲染时也保持 5 步结构 (markdown 复用)
C
高 ROI · 新模块 · 给 decision 加 self-audit

Red Flags 11 条自查

FE 的 11 条红旗 (分析师 6 + 公司 5) 是经验级 self-audit 清单。我们当前 alerts 只看事件信号, 不看分析方法本身的红旗。新 quality_checks.py 模块, 每次 decide() 跑完后扫一遍, 在 markdown 末尾标"本期触发 N 条 red flag"。

工期
1-2 天
Schema
0 改动
价值
输出公信力
现状
  • alerts 看事件信号 (RISK dimension / thesis 削弱)
  • 不看"分析方法本身的红旗" — 例: 用 PE 估值一个亏损公司 / 单客户依赖度 > 70% / 估值戏法只改 multiplier
11 条红旗
  1. 分析师 6 条: 无效 KPI / 估值戏法 / 脱离常识概率 / 纸面 EBITDA / 亏损企业 EPS / 无视控制权
  2. 公司 5 条: 小马拉大车 / 致命大客户依赖 / 非正常资本密集 / 独裁控制权 / 空中楼阁
  3. 每条返回 {flag, severity: high|med|low, evidence}
  4. decide() 末尾调 quality_checks(report), 挂到 report.quality_flags
新模块设计
ANALYST_FLAGS = {}  # 6 条
COMPANY_FLAGS = {}  # 5 条

def _check_loss_company_eps(report):
  """公司 last_quarter_revenue < 0
  但 valuation 用 PE → red flag"""
  ...

def _check_customer_concentration(report):
  """top-1 公司订单 > 70%
  → 致命大客户依赖"""
  ...

def quality_checks(report) -> list[dict]:
  """跑所有 flag, severity 排序"""
  ...
验收
  • 灌 8 条 samples + decide() → quality_flags 非空
  • 每条触发的 flag 有 evidence 字符串
  • markdown 输出末尾"⚠️ 本期触发 N 条 red flag" + 列表
  • test 至少覆盖 6 条规则 (3 分析师 + 3 公司)
4 · 推荐执行顺序

FE 集成 插入 NEXT-STEPS §3 哪里?

不打乱现有路线图。推荐 Tier 1.2 LiteLLM 之后(1-2 天) → FE 集成 Round 1 (A + B + C)(5-8 天) → 然后 P1 扩 20→30 时合并 segment schema 改造 → Round 2 (D + E + F) 进入路线。

P0 演示前端
✅ a39d5a1
P1 公司卡片扩容
✅ 1dac338
P2 debate LLM
✅ 8a6b4bc
P3 SpaceNews RSS
✅ 573e5d9
收尾 3 小活
✅ 70e8d65
EH-1 jobs 调度
✅ 09b586c
EH-3 飞书送达
✅ fd57ba8
Tier 1.2 LiteLLM
1-2 天
FE Round 1 (A+B+C)
5-8 天 · 当前推荐
P1 扩 20→30 + segment
7-10 天 · 合并 D 改造
FE Round 2 (E + F)
5-7 天
5 · 不做 · 明确边界

避免 FE 反向同化我们的实时驱动本质

下面 4 项是 FE 包里有但我们明确不做的, 写下来是为了防止后续被"FE 也有这个"的论据带歪。我们的核心定位是"事件驱动实时监控", FE 的"静态深度研究"应被借鉴方法学, 不应被全盘接管。

不做 G

Focus Five 5 维评级

评级需手工录入或 LLM 生成, 自动化成本高。我们的 thesis 是 周期/事件驱动, FE 的 Focus Five 是 长周期质量, 时间尺度不匹配。例外:只对 4 主线做 thread 维度评级, 不对 20 家公司逐个打分。

不做 H

三层蛋糕管理层评估

A 股标的的管理层数据(持股 / 利益绑定 / 控制权)来源稀缺, 且与我们 产业事件驱动主线无关。即使做了, 也只能产出"溢价 / 中性 / 折价"3 档定性, 对周报 decision 没有 actionable 影响。

不做 I

完整 7 年财务模型 + Excel

valuation.py 的 PE 法 + market_model.py 的 2025-2031 × 3 情景已经够用。真要做时 只做二维敏感度热力图(net_margin × pe_base 网格 → HTML 矩阵), 不引 Excel 工作流。Python + SQLite + REST 的栈不应被 Excel 污染。

不做 J

SpaceX 单标的过度对齐

FE 案例用 SpaceX 是写作者(Brett Caughran)刚做完 IPO 的副产品。我们标的是 A 股卫星互联网产业链, 行业结构 / 监管环境 / 估值锚都不同。框架借, 案例不借 — 不直接套 SpaceX 的"7 条 WYHTB"到中国卫通。

6 · 等用户拍板

下一步选哪条?

三选一 · 由你定

下面三个选项是当前可推进的下一步, 按优先级排。等你拍板后, 我会直接开干 + 像之前一样按"3 件小活 → 1 个大 feature → push → 问下一步"的节奏推进。

推荐

① Tier 1.2 LiteLLM → 再 FE Round 1

先 1-2 天搞定 LiteLLM 路由 (顺便拿到 token tracking 为 EH-1 follow-up 铺路), 再起 FE Round 1 三件套 (5-8 天)

激进

② 直接起 FE Round 1

跳过 LiteLLM, 直接 5-8 天做完 A + B + C 三件套。Tier 1.2 留作后续, 反正现有 llm.py 双客户端已经够用

保守

③ 把 FE Round 1 写进 NEXT-STEPS 排期, 不立即做

当前 FE 文档存档 + 排期, 不立即开发。先做 NEXT-STEPS §3.1 已有的 Tier 1.2 + P1 扩 30, 等下下下轮再做 FE Round 1