fleet-memory/hindsight
Nicolò Boschi d3302c95b9
feat: HindsightEmbedded python SDK (#293)
* feat: HindsightEmbedded python SDK

* feat: HindsightEmbedded python SDK

* fixes

* improve

* ci

* improvemnts

* fix test

* fix test

* fix: update tests to use Pydantic model attributes instead of dict access

- Fixed test_server_integration.py to access Pydantic model attributes directly
- Changed dict-style access (response["field"]) to attribute access (response.field)
- Fixed .get() calls on Pydantic models
- Updated recall() calls to access .results attribute
- Updated reflect() calls to access .text attribute
- Fixed test_list_banks to use namespace API instead of deleted default_api
- Fixed attribute shadowing in HindsightClient wrapper (renamed _*_api to _*_namespace)

* fix: add list() method to BanksAPI namespace

* fix: remove leftover async cleanup code from test_list_banks

* docs: remove Advanced Configuration section from embed.md
2026-02-04 14:41:19 +01:00
..
hindsight feat: HindsightEmbedded python SDK (#293) 2026-02-04 14:41:19 +01:00
tests feat: HindsightEmbedded python SDK (#293) 2026-02-04 14:41:19 +01:00
pyproject.toml feat: HindsightEmbedded python SDK (#293) 2026-02-04 14:41:19 +01:00
README.md ci: check compatibility with python 3.11, 3.12 and 3.13 (#35) 2025-12-16 14:28:45 +01:00

hindsight-all

All-in-one package for Hindsight - Agent Memory That Works Like Human Memory

Quick Start

from hindsight import start_server, HindsightClient

# Start server with embedded PostgreSQL
server = start_server(
    llm_provider="groq",
    llm_api_key="your-api-key",
    llm_model="openai/gpt-oss-120b"
)

# Create client
client = HindsightClient(base_url=server.url)

# Store memories
client.put(agent_id="assistant", content="User prefers Python for data analysis")

# Search memories
results = client.search(agent_id="assistant", query="programming preferences")

# Generate contextual response
response = client.think(agent_id="assistant", query="What languages should I recommend?")

# Stop server when done
server.stop()

Using Context Manager

from hindsight import HindsightServer, HindsightClient

with HindsightServer(llm_provider="groq", llm_api_key="...") as server:
    client = HindsightClient(base_url=server.url)
    # ... use client ...
# Server automatically stops

Installation

pip install hindsight-all