Hypabase Memory

Persistent memory for agents. Stores preferences, decisions, facts, and events as a connected knowledge graph. Recalled by who, what, when, or why.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "Hypabase Memory" with this command: npx skills add harshidwasekar/hypabase-memory

Hypabase Memory

Persistent memory for agents. Stores preferences, decisions, facts, and events as a connected knowledge graph. Recalled by who, what, when, or why.

Setup

Add the MCP server to your OpenClaw config (~/.openclaw/openclaw.json):

{
  "mcpServers": {
    "hypabase-memory": {
      "command": "uvx",
      "args": ["--from", "hypabase", "hypabase-memory"],
      "env": { "HYPABASE_DB_PATH": "hypabase.db" }
    }
  }
}

uvx handles all Python dependencies automatically. Requires uv.

Quick start

Store a memory — one verb, roles for the participants:

remember(penman='(prefers :subject Alice :object Python :memory_type semantic)')

Recall it:

recall(entity="Alice")                              # everything about Alice
recall(entity="Alice", action="assign", role="subject")  # what Alice assigned
recall(entity=["Alice", "Bob"])                     # memories involving both
recall(mood="planned")                              # all plans

When to Remember

Store a memory when the user:

  • Makes a decision or states a preference
  • Shares a fact about themselves, their team, or a project
  • Assigns a task or delegates work
  • Describes an event, meeting, or outcome
  • Explains a procedure or workflow

PENMAN Notation

Every memory is a verb with participants in role slots:

(verb :role "entity" :role "entity" ...)

Examples:

(prefers :subject Alice :object Python :memory_type semantic)

(assigned :subject Alice :object "billing task" :recipient Bob
 :instrument Jira :locus Monday :tense past :memory_type episodic)

(has :subject "quick sort" :attribute "time complexity"
 :value "O(n log n)" :memory_type semantic)

Multiple atoms in a single call:

(deployed :subject Alice :object API :locus Monday :tense past)
(reviewed :subject Bob :object API :locus Tuesday :tense past)

One action per memory. When a sentence contains multiple actions, decompose into separate atoms. Shared entities link them in the graph.

"Alice told Bob to migrate the database":

(told :subject Alice :recipient Bob :object "database migration" :tense past)
(migrate :subject Bob :object database :mood planned)

Any role slot can hold a nested atom:

(believes :subject Alice :object (is :subject deadline :value Friday))

Entity Naming

Same string after lowercasing = same entity. Different strings = different entities until consolidate() merges them.

  • Pick one canonical name per entity and reuse it.
  • Use full descriptive names: "machine learning" not "ML", "JavaScript" not "JS".
  • Call consolidate() periodically to merge similar names via semantic similarity.

Tools

remember(penman, source?, confidence?)

Store memories as PENMAN atoms.

  • penman (required): One or more PENMAN atoms.
  • source (optional): Provenance source. Default: "memory".
  • confidence (optional): 0.0–1.0. Default: 1.0.

recall(entity?, action?, role?, memory_type?, mood?, negated?, since?, before?, limit?, min_strength?)

Query memories. At least one parameter required.

  • entity: Name or list of names.
  • action: Filter by verb.
  • role: Filter by role (subject/object/instrument/recipient/source/locus/attribute/value).
  • memory_type: episodic / semantic / procedural.
  • mood: actual / planned / uncertain / normative / conditional.
  • negated: true = only negated, false = only positive.
  • since / before: ISO date strings.
  • limit: Max results (default: 10).
  • min_strength: Minimum memory strength threshold.

consolidate(entity?)

Merge similar entities and compress repeated memories.

forget(older_than_days?, min_strength?, entity?)

Expire old or low-strength memories (soft delete).

Reference

Roles

Eight roles. Fill in what applies, skip what doesn't.

PENMAN roleRecall roleMeaningExample
:subjectsubjectWho or what it's aboutAlice
:objectobjectWhat is acted onthe proposal
:instrumentinstrumentTool, method, or meansSlack
:recipientrecipientWho receives or benefitsBob
:originsourceWhere it came fromthe old system
:locuslocusWhere, when, or contextsprint review
:attributeattributeA named propertytime complexity
:valuevalueThe specific valueO(n log n)

Memory types

TypeUse forDecay rate
episodicEvents, meetings, conversationsFast
semanticFacts, preferences, definitionsSlow
proceduralHow-to, workflows, processesSlowest

Moods

MoodWhen to use
actualSomething that happened or is true (default)
plannedSomething intended to happen
uncertainSomething that might be true
normativeSomething that should or shouldn't be
conditionalSomething that depends on a condition

Modifiers

ModifierValuesDefault
:tensepast, present, future--
:negatedtrue, falsefalse
:importance0.0 to 1.0--
:causeNested atom: why it happened--
:purposeNested atom: what for--
:conditionNested atom: if/when/unless--

Environment variables

  • HYPABASE_DB_PATH -- SQLite database path (default: hypabase.db)
  • HYPABASE_EMBEDDER -- Embedder for semantic search:
    • fastembed (default) -- BAAI/bge-small-en-v1.5 via ONNX
    • openai -- text-embedding-3-small (requires OPENAI_API_KEY)
    • sentence-transformers -- all-MiniLM-L6-v2
    • none -- disable embeddings

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Research

"""Micro-Expression Recognition & Analysis Tool | 微观情绪识别分析工具"""

Professional discernment of subtle cues! It performs detailed analysis and recognition of facial micro-expressions, outputs precise emotional state reports,...

Registry SourceRecently Updated
Research

媒体广告流量分析

查询广告投放流量分布与趋势的数据分析技能。支持按行业、地域、媒体(OTT/移动端)、目标受众等多维度分析广告曝光数据,适用于媒体策略评估、竞品投放监测、行业广告趋势研究等场景。

Registry SourceRecently Updated
Research

Wikipedia Publisher

Draft, review, de-risk, and publish Wikipedia or Wikidata content with a bias toward policy-safe workflow. Use when creating or editing encyclopedia articles...

Registry SourceRecently Updated
350Profile unavailable
Research

Cg Paper Writing

Academic paper writing skill for 3D vision, computer graphics, CAD, and 3D understanding. Covers NeRF, 3D Gaussian Splatting, multi-view stereo, SLAM, point...

Registry SourceRecently Updated
390Profile unavailable