mcpField
M
memory-research

memory-research

github.com/basicmachines-co生产力23524 次安装28 周前更新
代码仓库

关于 memory-research

用于研究外部主题的技能:从网络收集信息、检查 Basic Memory,并在获准后整理为结构化实体。适用于人物、组织、技术和主题研究,并保留来源链接与用户提供的背景。

主要功能

  1. 01跨来源网络研究
  2. 02检查 Basic Memory 中的重复实体
  3. 03按实体类型整理摘要
  4. 04创建实体前征求批准
  5. 05记录来源与用户背景

适用场景

  1. 01研究公司或人物
  2. 02评估技术或主题
  3. 03更新现有 Basic Memory 笔记

安装

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

$npx skills add https://github.com/basicmachines-co/basic-memory-skills --skill memory-research

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

详细介绍

记忆研究

研究一个外部主题,综合你发现的内容,并在用户批准后创建一个结构化的 Basic Memory 实体。

何时使用

显式触发条件:

  • “研究 [主题]”
  • “查一下 [主题]”
  • “你对 [主题] 了解多少?”
  • “评估 [主题]”

隐式触发条件(也会激活此技能):

  • 一个单独的名称:“Terraform”
  • 一个 URL:“https://example.com”
  • 一个带上下文的名称:“Acme Corp — 在会议上见过他们”

工作流

第 1 步:网络研究

跨多个来源搜索当前信息。目标是进行 3-5 次搜索,以构建全面完整的图景:

[subject name] site
[subject name] overview
[subject name] news [current year]
[subject name] [relevant domain keywords]

按实体类型需要收集的信息:

实体类型关键信息
组织他们做什么、产品/服务、阶段(初创/成长/上市)、融资、领导层、总部、员工人数、重要合作伙伴关系或合同
人物当前职位、组织、背景、专业领域、重要工作、公共影响力
技术它的作用、维护者、成熟度、生态系统、替代方案、采用情况
主题/领域定义、当前状态、关键参与者、趋势、与用户上下文的相关性
第 2 步:检查现有知识

在提议新实体之前,搜索 Basic Memory:

search_notes(query="Acme Corp")
search_notes(query="acme")

尝试名称变体 — 全名、缩写、首字母缩略词、域名。

如果实体已存在:

  • 报告你在 Basic Memory 中找到的内容,并将其与你的网络研究并列呈现
  • 提议用新信息更新现有笔记
  • 使用 edit_note 追加新观察或更新过时内容

如果实体不存在,继续评估。

第 3 步:评估并总结

以结构化摘要呈现你的发现。按章节组织,包含所有相关信息:

## [Subject Name]

**Type:** [Organization / Person / Technology / Topic]

**Summary:** [2-4 sentences: what this is, why it matters, key distinguishing facts]

**Key Details:**
- [Organized by what's relevant for the entity type]
- [Stage, funding, leadership for orgs]
- [Role, expertise, affiliations for people]
- [Maturity, ecosystem, alternatives for tech]

**Relevance:** [Why this matters to the user — connection to their work, domain, or interests.
If no obvious connection: "No specific connection identified."]

**Sources:**
- [URLs of key sources consulted]
评估准则

使用留有余地的措辞。 网络研究只是快照,不是绝对真相:

  • “似乎是”、“根据公开信息”、“估计”
  • “截至 [日期]”、“根据 [来源]”
  • 除非引用一手来源,否则绝不要将融资金额、员工人数或收入陈述为精确数据

不要捏造。 如果信息不可用,就说明:

  • “领导层信息未公开”
  • “融资细节未披露”

让用户定义相关性。 不要强加固定的评估框架。相反,突出事实,让用户自行得出结论。如果用户有特定的评估标准(战略契合度、购买/合作/竞争等),他们会告诉你 — 在被要求时应用它。

第 4 步:提议创建实体

在呈现摘要后,请求批准:

Create Basic Memory entity for [Subject]?
  Location: [suggested-folder]/[entity-name].md
  Type: [entity type]

  [yes / no / modify]

如果用户在请求中提供了上下文(“在会议上见过他们”),请将该上下文包含在提议的实体中。

第 5 步:创建实体

批准后,创建结构化笔记。根据实体类型调整模板:

组织
write_note(
  title="Acme Corp",
  directory="organizations",
  note_type="organization",
  tags=["organization", "relevant-tags"],
  content="""# Acme Corp

## Overview
[2-3 sentence description from research]

## Products & Services
- [Key offerings discovered in research]

## Background
**Stage:** [Startup / Growth / Public]
**Headquarters:** [Location]
**Employees:** [Estimate, hedged]
**Leadership:** [Key people if found]
**Founded:** [Year if found]

## Observations
- [relevance] Why this entity matters in user's context
- [source] Researched on YYYY-MM-DD
- [additional observations from research findings]

## Relations
- [Link to related entities already in the knowledge graph]"""
)
人物
write_note(
  title="Jane Smith",
  directory="people",
  note_type="person",
  tags=["person", "relevant-tags"],
  content="""# Jane Smith

## Overview
[Current role and affiliation. Brief background.]

## Background
**Role:** [Title at Organization]
**Expertise:** [Key domains]
**Notable:** [Publications, talks, projects if found]

## Observations
- [role] Title at Organization
- [expertise] Key technical or domain expertise
- [source] Researched on YYYY-MM-DD

## Relations
- works_at [[Organization]]"""
)
技术
write_note(
  title="Technology Name",
  directory="concepts",
  note_type="concept",
  tags=["concept", "technology", "relevant-tags"],
  content="""# Technology Name

## Overview
[What it is and what problem it solves]

## Key Details
**Maintained by:** [Organization or community]
**Maturity:** [Experimental / Stable / Mature]
**License:** [If applicable]
**Alternatives:** [Comparable tools or approaches]

## Observations
- [definition] What this technology does in one sentence
- [maturity] Current state and adoption level
- [source] Researched on YYYY-MM-DD

## Relations
- [Link to related concepts, tools, or projects in the knowledge graph]"""
)

可自由调整这些模板。关键要素是:note_type/tags 参数、概览、结构化细节、带分类的观察,以及关系。

第 6 步:存储来源上下文

如果用户在请求中提供了上下文,请将其记录到实体中:

# User said: "Acme Corp — saw their demo at the conference last week"
edit_note(
  identifier="Acme Corp",
  operation="append",
  section="Observations",
  content="- [context] Saw their demo at conference, week of 2026-02-17"
)

这种上下文通常是最有价值的部分 — 它是用户与该实体的关系,而网络研究无法提供这一点。

指南

  • 始终进行网页搜索。 不要只依赖训练数据。研究应反映当前且可验证的信息。
  • 先搜索 Basic Memory。 创建新实体前,先检查是否已有相关实体。更新现有实体,而不是重复创建。
  • 对不确定的信息使用保留措辞。 对估算、未经证实的说法和推断出的细节使用限定语。
  • 保存来源 URL。 在观察记录或「来源」部分中包含你查阅的 URL,以便用户核实并深入了解。
  • 创建前先征求批准。 展示你的发现,让用户决定是否创建该实体以及要包含哪些内容。
  • 记录用户背景。 如果用户说明了研究原因(例如在会议上认识、正在评估供应商等),应将此背景纳入实体。
  • 不要过度研究。 通常进行 3-5 次网页搜索就足够了。目标是创建有用的知识图谱条目,而不是详尽的报告。
  • 关联现有知识。 将新实体与知识图谱中已有的内容关联起来。关联越多,价值越大。

评论

支持 Markdown