Skip to main content

HyperMemory CLI

Persistent memory graph for AI agents — store, recall, and connect knowledge across conversations.

HyperMemory gives AI assistants (Claude, Cursor, ChatGPT, custom agents) a long-term memory layer. The hm CLI is the primary interface for reading and writing to that memory, both for humans and for AI agents running shell commands.

Installation

pip install hypermemory-cli

Requires Python 3.10+.

Quick Start

# Authenticate (opens browser → GitHub OAuth)
hm login

# Store a fact
hm store person_alice "Alice, senior backend engineer at Acme" --type person

# Store a decision
hm store decision_jwt "We chose JWT over session cookies for auth" --type decision

# Connect them — describe WHY
hm relate --from person_alice --to decision_jwt --rel "Alice drove the JWT decision based on her scaling experience"

# Search by natural language
hm recall "authentication decisions"

# Traverse the graph
hm find person_alice --depth 2

# Check what you have
hm overview

Authentication

Browser login (recommended):

hm login

Opens your browser for GitHub-based OAuth. Tokens are saved to ~/.config/hypermemory/config.json and refresh automatically.

API key:

hm config --set-key hm_YOUR_API_KEY

Generate API keys at app.hypermemory.io/api-keys.

Environment variable:

export HYPERMEMORY_API_KEY=hm_YOUR_KEY
hm recall "recent decisions"

Commands

Memory Operations

Command Description
hm store KEY "desc" --type TYPE Create a new memory node
hm recall "query" Search memory by natural language or keywords
hm nodes KEY... Fetch full details for known exact node keys
hm update KEY --desc "new info" Update an existing node
hm forget KEY [--cascade] Delete a node (and optionally its edges)
hm relate --from A --to B --rel R Create a relationship between nodes
hm find KEY [--depth N] Traverse the graph from a starting node
hm relationships KEY List all edges connected to a node
hm ingest "text" [--context "label"] Auto-extract nodes from free-form text
hm hm_tokens '{"provider":"openai",...}' Submit a canonical token-usage report
hm overview Show graph stats and top nodes
hm export [--no-ontology] Export the full graph as JSON
hm skill list List current HyperMemory agent skills
hm skill get --variant general Retrieve the latest skill instructions
hm skill check --current-version X Check whether a skill update is available

Auth & Config

Command Description
hm login Authenticate via browser (OAuth 2.1 + PKCE)
hm logout Clear saved tokens
hm config Show current configuration
hm config --set-key KEY Save an API key
hm config --set-url URL Override the API endpoint
hm health Check server connectivity
hm version Print CLI version

Node Types

Every node requires a --type:

Type Use for
user The primary user (singleton user_profile node)
person People — teammates, contacts, users
organization Companies, teams, departments
component Software components, services, libraries
event Meetings, launches, incidents
decision Architecture choices, policy decisions
concept Ideas, patterns, abstract topics
artifact Documents, repos, configs, files
project Projects, initiatives, products
technology Languages, frameworks, tools, platforms
preference User preferences and settings
fact Verified facts, data points, measurements
skill Skills, expertise, capabilities

Relationships

Describe connections in plain language with --rel. Be specific about why the connection exists:

# BAD — bare verb, no context
hm relate --from component_api --to tech_redis --rel depends_on

# GOOD — explains why the connection exists
hm relate --from component_api --to tech_redis --rel "API depends on Redis for session caching and rate limiting"
hm relate --from person_alice --to decision_jwt --rel "Alice chose JWT because it supports stateless scaling"
hm relate --from project_app --to tech_sveltekit --rel "frontend built with SvelteKit for SSR and progressive enhancement"

The server automatically summarizes long labels into shorter searchable versions.

Key Format

Use descriptive, namespaced keys: {type}_{name}

person_alice          decision_jwt_auth       component_redis
pref_dark_mode        event_2025_launch       org_acme

AI Agent Integration

HyperMemory is designed to be used by AI agents as a persistent memory layer. The typical agent workflow:

  1. Start of conversation: hm overview + hm recall "relevant keywords" to load context
  2. When meaningful info appears: hm recall first to check for duplicates, then hm store new facts, decisions, or preferences
  3. As needed: hm update to correct information, hm forget to remove outdated info

The server automatically enriches stored nodes with structured data, edges, and hyperedges — agents just provide the key, description, and type.

Agents can retrieve current skill instructions directly:

hm skill list
hm skill get --variant general --raw
hm skill get --variant software-development --output hypermemory-skill.md
hm skill check --variant general --current-version 0.5.4

Available variants: general, openai, software-development, marketing, legal, cursor, cli, and project.

Pipe-Friendly Output

All data commands output JSON to stdout. Errors go to stderr. This makes hm composable with jq, scripts, and other tools:

# Count total nodes
hm overview | jq '.total_nodes'

# Get all decision keys
hm recall "decisions" | jq '.nodes[] | select(.node_type == "decision") | .key'

# Hydrate known keys with full details
hm nodes fact_a fact_b | jq '.nodes.fact_a.node'

# Export and filter
hm export | jq '.nodes | length'

# Backup
hm export > memory-backup-$(date +%F).json

Configuration

Config is stored at ~/.config/hypermemory/config.json. Auth priority:

  1. $HYPERMEMORY_API_KEY environment variable
  2. Config file (API key or OAuth tokens)
  3. Defaults (API URL only)

Links

  • Web app: app.hypermemory.io
  • API endpoint: https://api.hypermemory.io
  • Claude Connector: Add https://api.hypermemory.io/mcp as an MCP server in Claude Desktop

License

MIT

Release files for hypermemory-cli 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hypermemory-cli 2.0.0
File Size Uploaded
hypermemory_cli-2.0.0.tar.gz 30.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hypermemory-cli 2.0.0
File Interpreter ABI Platform
hypermemory_cli-2.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 54.0 kB

Release files / hypermemory_cli-2.0.0.tar.gz

Download URL hypermemory_cli-2.0.0.tar.gz
Size 30.8 kB
Tags Source
SHA-256 checksum
How to use checksums
23587935d06d1d223ede8a081e9fbbd20e2470dcb13e6bbbd88b0d67571be57d
BLAKE2b-256 checksum
How to use checksums
780fc556cfb4667496d28ee04f7acf7c094451dd3d932de1ea6210ab9d8ddc5e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / hypermemory_cli-2.0.0-py3-none-any.whl

Download URL hypermemory_cli-2.0.0-py3-none-any.whl
Size 23.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b2248a1cc0613ea48792fca3428bd3336acb666e2838620dbbaff09636ffd84e
BLAKE2b-256 checksum
How to use checksums
6f62d4d6c07db04baef4f03679a54c5b51d0067c7bbfb97cee8d4478d2662339
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release history Release notifications | RSS feed

This release

2.0.0 This release

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page