mcpField
D
data-research

data-research

github.com/garrytan数据与数据库31.3k270 次安装今天更新
代码仓库

关于 data-research

data-research 是一项可配置技能,可将邮件、网页和 API 来源整理为结构化研究跟踪表,适用于定期数据收集。七阶段流程包含原始来源归档、去重,并将跟踪条目链接回来源。

主要功能

  1. 01七阶段研究流程
  2. 02通过 YAML 配方配置来源
  3. 03优先用正则分类与提取
  4. 04归档原始来源并建立反向链接
  5. 05更新跟踪表前进行去重

适用场景

  1. 01跟踪投资者更新中的指标
  2. 02整理费用与收据数据
  3. 03收集邮件中的公司动态
  4. 04设置定期数据收集

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/garrytan/gbrain --skill data-research

安装后在 Claude Code 中输入/data-research确认已加载。

详细介绍

数据研究

结构化研究流水线:搜索来源、提取结构化数据、归档原始内容、去重、更新规范追踪表,并为实体添加反向链接。

约定

这是一个适用于任何“邮件到结构化数据”流水线的 Skill。跟踪投资人更新、支出和公司指标之间的唯一区别在于搜索查询、提取模式和追踪页面格式。三者都使用同一套 7 阶段流水线,并通过参数化配方实现。

使用场景

  • 用户希望从邮件、网页或 API 来源跟踪结构化数据
  • 用户说“research”“track”“extract from email”“build a tracker”(研究、跟踪、从邮件提取、建立追踪表)
  • 用户提到投资人更新、捐赠、公司指标、文件申报
  • 用户希望设置定期数据收集(附带 cron 配方)

阶段

阶段 1:定义研究配方

根据对话上下文、近期 brain 活动、进行中的任务(ops/tasks.md)以及记忆文件推断研究目标。如果请求含糊,则根据用户近期的工作内容给出最可能的理解。只有在上下文确实不足时才询问澄清。可选项:

  • 选择内置配方:investor-updates、expense-tracker、company-updates
  • 自定义配方,包括:来源查询、分类规则、提取模式、追踪页面路径、追踪格式

配方是位于 ~/.gbrain/recipes/{name}.yaml 的 YAML 文件。若要新建配方,请复制一个内置配方文件并编辑其字段。

阶段 2:搜索来源

先查 brain(也许我们已经有这些数据)。然后:

  • 邮件:通过凭证网关进行分时段查询(按季度,若结果被截断则按月)
  • 网页:通过搜索获取公开文件、新闻稿、监管数据
  • API:配方所定义的任何结构化数据来源
  • 附件:PDF 提取、HTML 去除标签
阶段 3:分类

优先使用确定性方法(配方中的正则模式),再回退到大模型。 记录每一次大模型回退,以便未来改进正则(fail-improve 循环)。 根据配方的分类规则跳过营销邮件、新闻简报和噪声内容。

阶段 4:提取结构化数据

提取完整性规则:

  1. 立即保存原始来源(在任何提取之前)
  2. 先用确定性正则提取字段,大模型作为回退
  3. 汇总批量处理结果时:从已保存的文件重新读取
  4. 批量处理之后,不要信任大模型的工作记忆

这可以防止一个已知的幻觉问题:批量处理的金额若直接取自大模型工作记忆,会全部错误(13/13 错误),而已保存的文件则是正确的。

阶段 5:归档原始来源
  • 邮件正文、API 响应使用 put_raw_data
  • PDF 附件、文档使用 file_upload
  • 为存储中的大文件创建 .redirect.yaml 指针
  • 每条追踪记录都必须链接回其原始来源
阶段 6:去重

在加入追踪表之前:

  • 完全匹配(关键字段相同)→ 跳过
  • 模糊匹配(同一实体 + 日期 + 金额在容差范围内相近)→ 标记待审核
  • 同一实体 + 日期但金额不同 → 添加并附注(可能是更正)
阶段 7:更新规范追踪表 + 反向链接
  • 解析现有追踪页面(Markdown 表格)
  • 在正确的章节中追加新条目(按年/季度/实体分组)
  • 计算累计总额
  • 为每个提及的实体添加反向链接(人员 → people/ 页面,公司 → companies/ 页面)
  • 实体页面使用 enrichment 服务

内置配方

GBrain 附带三个示例配方(见 ~/.gbrain/recipes/):

  1. investor-updates:从投资人更新邮件中提取 MRR、ARR、增长、烧钱速度、跑道、员工人数
  2. expense-tracker:从收据邮件中提取金额、收款方、平台(订阅、服务、定期扣费)
  3. company-updates:从被投公司更新邮件中提取营收、用户数和关键指标

失败时如何处理

对于任何 gbrain 错误 code、退出码、[AGENT] 块或提示块,请遵循 Agent 操作员协议。本技能的具体情况如下:

  • 如果路径位于允许的根目录之外(远程调用方被限制在该范围内),file_upload 会被拒绝:请用户从 brain 主机上传,或以内联方式传入内容。
  • put_page / add_timeline_entry 返回 revision_conflict 或 write_pending 时:前者需重新读取并合并;后者需轮询 gbrain write-request <request_id>。
  • 提取来源触发限流(rate_limited)时:按提示的延迟时间退避,并保留游标;记录数据缺口,而不是猜测缺失的行。

反模式

  • 批量处理后依赖 LLM 的工作记忆来计算金额(应使用提取完整性规则)
  • 创建没有原始来源链接的跟踪条目
  • 不做去重直接运行(会导致条目被重复计算)
  • 在流水线代码中硬编码特定来源的模式(应使用 recipes)

输出格式

brain 页面位于 recipe 的 tracker_page 路径,使用 Markdown 表格:

### 2026

| Date | Company | MRR | ARR | Growth | Status |
|------|---------|-----|-----|--------|--------|
| 2026-04-01 | Example Co | $188K | $2.3M | +14.7% MoM | [Source](link) |

每个条目都链接到其原始来源。每个部分的底部给出累计汇总。

约定

引用 skills/conventions/quality.md 中关于引用和反向链接的规则。

评论

支持 Markdown