fleet-memory/hindsight-embed/README.md
Nicolò Boschi e6511e7d77
feat: refactor hindsight-embed architecture (#66)
* feat: refactor hindsight-embed architecture

* feat: refactor hindsight-embed architecture

* refactor deamin

* refactor deamin

* refactor deamin

* refactor deamin
2025-12-22 22:02:40 +01:00

4.4 KiB

hindsight-embed

Hindsight embedded CLI - local memory operations with automatic daemon management.

This package provides a simple CLI for storing and recalling memories using Hindsight's memory engine. It automatically manages a background daemon for fast operations - no manual server setup required.

How It Works

hindsight-embed uses a background daemon architecture for optimal performance:

  1. First command: Automatically starts a local daemon (first run downloads dependencies and loads ML models - can take 1-3 minutes)
  2. Subsequent commands: Near-instant responses (~1-2s) since daemon is already running
  3. Auto-shutdown: Daemon automatically exits after 5 minutes of inactivity

The daemon runs on localhost:8889 and uses an embedded PostgreSQL database (pg0) - everything stays local on your machine.

Installation

pip install hindsight-embed
# or with uvx (no install needed)
uvx hindsight-embed --help

Quick Start

# Interactive setup (recommended)
hindsight-embed configure

# Or set your LLM API key manually
export OPENAI_API_KEY=sk-...

# Store a memory (bank_id = "default")
hindsight-embed memory retain default "User prefers dark mode"

# Recall memories
hindsight-embed memory recall default "What are user preferences?"

Commands

configure

Interactive setup wizard:

hindsight-embed configure

This will:

  • Let you choose an LLM provider (OpenAI, Groq, Google, Ollama)
  • Configure your API key
  • Set the model and memory bank ID
  • Start the daemon with your configuration

memory retain

Store a memory:

hindsight-embed memory retain default "User prefers dark mode"
hindsight-embed memory retain default "Meeting on Monday" --context work
hindsight-embed memory retain myproject "API uses JWT authentication"

memory recall

Search memories:

hindsight-embed memory recall default "user preferences"
hindsight-embed memory recall default "upcoming events"

Use -o json for JSON output:

hindsight-embed memory recall default "user preferences" -o json

memory reflect

Get contextual answers that synthesize multiple memories:

hindsight-embed memory reflect default "How should I set up the dev environment?"

bank list

List all memory banks:

hindsight-embed bank list

daemon

Manage the background daemon:

hindsight-embed daemon status    # Check if daemon is running
hindsight-embed daemon start     # Start the daemon
hindsight-embed daemon stop      # Stop the daemon
hindsight-embed daemon logs      # View last 50 lines of logs
hindsight-embed daemon logs -f   # Follow logs in real-time
hindsight-embed daemon logs -n 100  # View last 100 lines

Configuration

Interactive Setup

Run hindsight-embed configure for a guided setup that saves to ~/.hindsight/embed.

Environment Variables

Variable Description Default
HINDSIGHT_EMBED_LLM_API_KEY LLM API key (or use OPENAI_API_KEY) Required
HINDSIGHT_EMBED_LLM_PROVIDER LLM provider (openai, groq, google, ollama) openai
HINDSIGHT_EMBED_LLM_MODEL LLM model gpt-4o-mini
HINDSIGHT_EMBED_BANK_ID Memory bank ID default

Files

Path Description
~/.hindsight/embed Configuration file
~/.hindsight/config.env Alternative config file location
~/.hindsight/daemon.log Daemon logs
~/.hindsight/daemon.lock Daemon lock file (PID)

Use with AI Coding Assistants

This CLI is designed to work with AI coding assistants like Claude Code, Cursor, and Windsurf. Install the Hindsight skill:

curl -fsSL https://hindsight.vectorize.io/get-skill | bash

This will configure the LLM provider and install the skill to your assistant's skills directory.

Troubleshooting

Daemon won't start:

# Check logs for errors
hindsight-embed daemon logs

# Stop any stuck daemon and restart
hindsight-embed daemon stop
hindsight-embed daemon start

Slow first command: This is expected - the first command needs to download dependencies, start the daemon, and load ML models. First run can take 1-3 minutes depending on network speed. Subsequent commands will be fast (~1-2s).

Change configuration:

# Re-run configure (automatically restarts daemon)
hindsight-embed configure

License

Apache 2.0