Skip to main content

🗃️ stash

PyPI License Python

External memory for AI agents - a lightweight RLM (Recursive Language Model) that any Clawdbot can use.

Store persistent key-value data, load large files into searchable contexts, and manage agent memory - all without consuming precious tokens.

Features

  • Key-value storage - stash set/get for persistent data
  • Context loading - Load large files without eating tokens
  • Fast search - Full-text search with FTS5, plus regex
  • Chunking - Split large contexts into manageable pieces
  • Memory helpers - Quick remember/recall for agent notes
  • Zero dependencies - Pure Python, just sqlite3 (built-in)
  • Portable - Single SQLite database, easy to sync/backup

Installation

pip install stash-rlm

Or install from source:

git clone https://github.com/klodshannon/stash.git
cd stash
pip install -e .

Quick Start

# Store things persistently
stash set api:openai "sk-12345..."
stash get api:openai

# Load large files into context (doesn't eat tokens!)
stash load server.log --as logs
stash peek logs 0:50              # View lines 0-50
stash search "ERROR" --in logs    # Search within context

# Quick memory for agent notes
stash remember "Hunter prefers concise answers" --tag prefs
stash recall prefs
stash recall                      # List all memories

# Manage entries
stash list
stash stats
stash forget logs

Commands

Key-Value Storage

stash set <key> <value>     # Store a value
stash set config - < file   # Store from stdin
stash get <key>             # Retrieve a value
stash get <key> --json      # Output as JSON

Context Management

stash load <file> [--as <id>]    # Load file into context
stash peek <id> [range]          # View slice (e.g., "10:20")
stash peek <id> 100 -n           # 20 lines from 100, numbered
stash search <pattern> --in <id> # Search within context
stash search <pattern>           # Search all entries

Memory Helpers

stash remember "note" [--tag <tag>]  # Store a memory
stash recall [tag]                   # Recall memories

Management

stash list [--type <type>]    # List entries
stash stats                   # Storage statistics
stash forget <key>            # Delete entry
stash version                 # Show version
stash export -o backup.json   # Export to JSON
stash import backup.json      # Import from JSON
stash ctx-list                # List contexts
stash ctx-info <id>           # Context details
stash ctx-rm <id>             # Remove context

Use Cases

For Clawdbots / AI Agents

# Store frequently needed data
stash set user:tz "America/Chicago"
stash set user:name "Hunter"

# Load documentation for reference
stash load ~/project/README.md --as docs
stash search "API" --in docs

# Remember things between sessions
stash remember "Project uses FastAPI, not Flask"
stash remember "Deploy target is Railway" --tag deploy

Context Window Management

# Load a huge log file
stash load production.log --as prod

# Search instead of loading entire file
stash search "OutOfMemory" --in prod

# Peek at relevant sections
stash peek prod 1000:1050

Knowledge Base

# Build up knowledge over time
stash remember "User prefers dark mode" --tag ui
stash remember "Always use TypeScript" --tag code
stash remember "Meetings are Tue/Thu 10am" --tag schedule

# Recall by topic
stash recall code
stash recall schedule

Storage

Data is stored in a SQLite database at:

  • Linux/macOS: ~/.local/share/stash/stash.db
  • Or set STASH_HOME environment variable
  • Or use --db <path> flag

The database is fully portable - copy it to sync between machines.

Comparison with Aleph

Feature stash Aleph
Installation pip install MCP server
Dependencies None (pure Python) MCP, various
Storage SQLite In-memory
Persistence ✅ Survives restarts ❌ Session only
Python sandbox ❌ ✅
Sub-queries ❌ ✅
Use case Simple persistent memory Complex analysis

stash is for simple, persistent storage. Aleph is for complex analysis sessions.

License

MIT - Built by Klod at Shannon Labs.

Metadata

Release files for stash-rlm 0.1.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 stash-rlm 0.1.4
File Size Uploaded
stash_rlm-0.1.4.tar.gz 14.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for stash-rlm 0.1.4
File Interpreter ABI Platform
stash_rlm-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 29.0 kB

Release files / stash_rlm-0.1.4.tar.gz

Download URL stash_rlm-0.1.4.tar.gz
Size 14.7 kB
Tags Source
SHA-256 checksum
How to use checksums
a1ef79ef2a625a0820a195815f925c6530067902f732f160c6d7504accfc2ecf
BLAKE2b-256 checksum
How to use checksums
54ba2c73fbecf8e68bb006dc28f9e71735c66858b5c37546e1db27e2ed3d48f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.2

Release files / stash_rlm-0.1.4-py3-none-any.whl

Download URL stash_rlm-0.1.4-py3-none-any.whl
Size 14.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9a21104fda5fe8e608f9c8f26cd857366e96770fe0984e18a1533178b723305b
BLAKE2b-256 checksum
How to use checksums
5560838d130a4dbe5eec52b13ce3ee2b59d9fd12cd32fb8e28e50aa61b77be77
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.2

Release history Release notifications | RSS feed

This release

0.1.4 This release

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.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