Memory Research

basicmachines-co/basic-memory-skills/memory-research

作者 basicmachines-co6d2b1d426d0dacf020aef45f029768c9d8c1e5e5無授權條款24 個星標收錄於 2026年10月9日更新於 2026年10月9日儲存庫5 個月前更新

Research an external subject using web search, synthesize findings into a structured Basic Memory entity. Use when asked to research a company, person, technology, or topic — or when a bare name or URL is provided that implies a research request.

AI 產生的概覽

透過網路搜尋研究外部對象,並在取得使用者同意後建立結構化的 Basic Memory 實體。

功能
引導代理透過多次網路搜尋研究公司、人物、技術或主題,並先在 Basic Memory 中查詢是否已有相關筆記。它會產出包含類型、關鍵資訊、相關性與來源的結構化摘要,對不確定的資訊使用保留語句。取得使用者同意後,建立或更新包含概觀、觀察記錄與關聯的 Basic Memory 實體,並可附加使用者提供的背景資訊。
適用情境
適用於被要求研究、查詢或評估某個對象時,或僅提供名稱或網址且暗示研究需求時。適合用來建立或擴充包含外部實體的個人知識圖譜。
執行需求
需要網路搜尋存取權,以及提供 search_notes、write_note 與 edit_note 的 Basic Memory 工具組。未包含指令碼,僅為指示文件。

Memory Research

Research an external subject, synthesize what you find, and create a structured Basic Memory entity — with the user's approval.

When to Use

Explicit triggers:

  • "Research [subject]"
  • "Look up [subject]"
  • "What do you know about [subject]?"
  • "Evaluate [subject]"

Implicit triggers (also activate this skill):

  • A bare name: "Terraform"
  • A URL: "https://example.com"
  • A name with context: "Acme Corp — saw them at the conference"

Workflow

Step 1: Web Research

Search for current information across multiple sources. Aim for 3-5 searches to build a well-rounded picture:

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

What to gather by entity type:

Entity TypeKey Information
OrganizationWhat they do, products/services, stage (startup/growth/public), funding, leadership, headquarters, employee count, notable partnerships or contracts
PersonCurrent role, organization, background, expertise, notable work, public presence
TechnologyWhat it does, who maintains it, maturity, ecosystem, alternatives, adoption
Topic/DomainDefinition, current state, key players, trends, relevance to user's context

Step 2: Check Existing Knowledge

Before proposing a new entity, search Basic Memory:

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

Try name variations — full name, abbreviation, acronym, domain name.

If the entity already exists:

  • Report what you found in Basic Memory alongside your web research
  • Offer to update the existing note with new information
  • Use edit_note to append new observations or update outdated ones

If the entity doesn't exist, proceed to evaluation.

Step 3: Evaluate and Summarize

Present your findings in a structured summary. Include all relevant information organized by section:

markdown
## [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]

Evaluation Guidelines

Use hedging language. Web research is a snapshot, not ground truth:

  • "Appears to be", "Based on public information", "Estimated"
  • "As of [date]", "According to [source]"
  • Never state funding amounts, employee counts, or revenue as exact unless citing a primary source

Don't fabricate. If information isn't available, say so:

  • "Leadership information not publicly available"
  • "Funding details not disclosed"

Let the user define relevance. Don't impose a fixed evaluation framework. Instead, highlight facts and let the user draw conclusions. If the user has a specific evaluation rubric (strategic fit, buy/partner/compete, etc.), they'll tell you — apply it when asked.

Step 4: Propose Entity Creation

After presenting the summary, ask for approval:

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

If the user provided context with their request ("saw them at the conference"), include that context in the proposed entity.

Step 5: Create the Entity

After approval, create a structured note. Adapt the template to the entity type:

Organization
python
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]""")
Person
python
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]]""")
Technology
python
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]""")

Adapt these templates freely. The key elements are: note_type/tags parameters, an overview, structured details, observations with categories, and relations.

Step 6: Store Source Context

If the user provided context with their request, capture it in the entity:

python
# 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")

This context is often the most valuable part — it's the user's relationship to the entity, which web research can't provide.

Guidelines

  • Always web search. Don't rely on training data alone. Research should reflect current, verifiable information.
  • Search Basic Memory first. Check for existing entities before creating new ones. Update rather than duplicate.
  • Hedge uncertain information. Use qualifiers for estimates, unverified claims, and inferred details.
  • Store source URLs. Include the URLs you consulted, either in observations or a Sources section. This enables the user to verify and dig deeper.
  • Get approval before creating. Present your findings and let the user decide whether to create the entity and what to include.
  • Capture user context. If the user told you why they're researching (met at a conference, evaluating as a vendor, etc.), that context belongs in the entity.
  • Don't over-research. 3-5 web searches is usually enough. The goal is a useful knowledge graph entry, not an exhaustive report.
  • Link to existing knowledge. Relate the new entity to things already in the knowledge graph. Connections compound value.

來源與署名

來源:basicmachines-co/basic-memory-skills位於memory-research提交6d2b1d4

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架