Skip to main content

hyperstack-langgraph

The Agent Provenance Graph for AI agents — the only memory layer where agents can prove what they knew, trace why they knew it, and coordinate without an LLM in the loop. $0 per operation at any scale.

Timestamped facts. Auditable decisions. Deterministic trust. Build agents you can trust at $0/operation.

Knowledge graph memory for LangGraph agents. Developer-controlled, zero LLM cost, time-travel debugging.

Install

pip install hyperstack-langgraph langchain-core langgraph

Current version: v1.5.3

Quick Start (3 lines)

from hyperstack_langgraph import create_memory_agent
from langchain_openai import ChatOpenAI

agent = create_memory_agent(ChatOpenAI(model="gpt-4o"))

That's it. Your agent now has persistent knowledge graph memory. It will:

  • Search memory at the start of every conversation
  • Store important facts when decisions are made (with user confirmation)
  • Traverse the graph to answer "what depends on X?" or "who decided Y?"

Environment Variables

export HYPERSTACK_API_KEY=hs_your_key    # Get free at cascadeai.dev/hyperstack
export HYPERSTACK_WORKSPACE=default
export OPENAI_API_KEY=sk-...             # For your LLM

Usage: Add Memory Tools to Existing Agent

from hyperstack_langgraph import create_hyperstack_tools
from langgraph.prebuilt import create_react_agent
from langchain_openai import ChatOpenAI

# Create memory tools
memory_tools = create_hyperstack_tools()

# Add to your existing tools
my_tools = [my_calculator, my_web_search] + memory_tools

# Create agent with memory
agent = create_react_agent(ChatOpenAI(model="gpt-4o"), my_tools)

# Use it
result = agent.invoke(
    {"messages": [{"role": "user", "content": "What do we know about our auth setup?"}]},
    config={"configurable": {"thread_id": "session-1"}}
)

Usage: Full Agent with Session Memory

from hyperstack_langgraph import create_memory_agent
from langchain_openai import ChatOpenAI
from langgraph.checkpoint.memory import MemorySaver

agent = create_memory_agent(
    ChatOpenAI(model="gpt-4o"),
    checkpointer=MemorySaver(),  # Session memory (optional)
)

config = {"configurable": {"thread_id": "project-alpha"}}

# First message — agent searches HyperStack for context
agent.invoke({"messages": [{"role": "user", "content": "Let's work on the auth system"}]}, config)

# Agent remembers within session (MemorySaver) AND across sessions (HyperStack)
agent.invoke({"messages": [{"role": "user", "content": "We decided to use Clerk"}]}, config)

Usage: Direct API Client

Use HyperStackClient (not HyperStackMemory).

from hyperstack_langgraph import HyperStackClient

client = HyperStackClient()

# Store
client.store("use-clerk", "Use Clerk for Auth", "Chose Clerk over Auth0",
             card_type="decision", keywords=["clerk", "auth"],
             links=[{"target": "alice", "relation": "decided"}])

# Search
client.search("authentication")

# Get
client.get("use-clerk")

# Graph traversal
client.graph("use-clerk", depth=2)

# Blockers / impact
client.blockers("deploy-prod")
client.impact("use-clerk")

# Time-travel (reconstruct at timestamp)
client.graph("use-clerk", depth=2, at="2026-02-01T00:00:00Z")

# Report success/failure (updates utility scores on edges)
client.feedback(card_slugs=["use-clerk", "auth-api"], outcome="success")

# Ingest conversation transcript
client.auto_remember("We decided to use Clerk. Alice owns auth.")

# Memory hub: working / semantic / episodic
cards = client.hs_memory(surface="semantic")

# Batch store
client.bulk_store([{"slug": "p1", "title": "Project A", "body": "..."}, ...])

# Agentic routing (deterministic, no LLM)
can_do = client.can("auth-api", action="deploy")
steps = client.plan("auth-api", goal="add 2FA")

REST API

Always use X-API-Key, never Authorization: Bearer:

curl -X POST "https://hyperstack-cloud.vercel.app/api/cards" \
  -H "X-API-Key: hs_your_key" \
  -H "Content-Type: application/json" \
  -d '{"slug":"use-clerk","title":"Use Clerk","body":"Auth decision"}'

Card Fields

Field Description
confidence 0.0–1.0
truthStratum draft | hypothesis | confirmed
verifiedBy e.g. "human:deeq"
verifiedAt Auto-set server-side
memoryType working | semantic | episodic
ttl Working memory expiry
sourceAgent Auto-stamped after identify()

Tools Provided

Tool Description
hyperstack_search Search memory for relevant context
hyperstack_store Save a fact, decision, preference, or person
hyperstack_graph Traverse knowledge graph (impact, blockers, decision trails)
hyperstack_list List all stored memories
hyperstack_delete Remove outdated memories

Backend Features

  • Conflict detection — structural, no LLM, auto-detects contradicting cards
  • Staleness cascade — upstream changes mark dependents stale
  • Three memory surfaces — working (TTL), semantic (permanent), episodic (30-day decay)
  • Decision replay — reconstruct agent state at decision time + hindsight detection
  • Time-travel — graph() with at= timestamp
  • Self-hosting — Docker + HYPERSTACK_BASE_URL env var

Why HyperStack?

  • Provenance tracking — timestamped facts, auditable decisions
  • Decision replay — reconstruct what agents knew at decision time
  • Deterministic trust — no LLM in the loop for coordination
  • $0 per operation — Mem0/Zep charge ~$0.002 per op; HyperStack: $0
  • 30-second setup — No Neo4j, no Docker, no OpenSearch. One API key, done.

Pricing

Plan Cards Price
Free 50 $0 — ALL features including graph
Pro 500+ $29/mo
Team 500, 5 API keys $59/mo
Business 2,000, 20 members $149/mo

Get a free API key at cascadeai.dev/hyperstack

License

MIT

Metadata

Release files for hyperstack-langgraph 1.5.4

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

Source distribution (sdist)

Source distribution for hyperstack-langgraph 1.5.4
File Size Uploaded
hyperstack_langgraph-1.5.4.tar.gz 17.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hyperstack-langgraph 1.5.4
File Interpreter ABI Platform
hyperstack_langgraph-1.5.4-py3-none-any.whl Python 3 none any Details

Total release size: 31.4 kB

Release files / hyperstack_langgraph-1.5.4.tar.gz

Download URL hyperstack_langgraph-1.5.4.tar.gz
Size 17.0 kB
Tags Source
SHA-256 checksum
How to use checksums
43085fd956590f04ffe36143684ca41924bf0cc9a203dd68824fa8501594080a
BLAKE2b-256 checksum
How to use checksums
4106b23326f8482dec2ca22781fde6516fac76ea976770e3e23e031374e6dad6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / hyperstack_langgraph-1.5.4-py3-none-any.whl

Download URL hyperstack_langgraph-1.5.4-py3-none-any.whl
Size 14.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
70d0b3fb9f1dcfaa59cb43fe5529b431feaed396319261e7cc4a52beae6c2d45
BLAKE2b-256 checksum
How to use checksums
040fd1b495bcc48c5fa737e833ad00564bc23e970bac7ae46c10938930402b98
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release history Release notifications | RSS feed

This release

1.5.4 This release

2 release files

1.5.3

2 release files

1.5.2

2 release files

1.5.1

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.0

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