thr is a small local CLI for saving explicit memories and recalling them later by meaning or text. It is built for agent workflows: stable JSON output, offline semantic search, and installable skills for Codex, OpenCode, and Claude Code.
Install
curl -fsSL https://raw.githubusercontent.com/Chadi00/thr/master/install.sh | bashThe installer downloads the latest macOS or Linux release and verifies signed checksums before installing. Prefer manual verification? See MANUAL_INSTALL.md.
Quick Start
thr add "This project prefers small PRs with tests" thr ask "how should I structure this PR?" thr search "small PRs" thr list
thr ask performs semantic recall over your saved memories. It does not call an LLM or generate an answer.
Agents
Install the thr skill for your coding agent:
thr setup codex thr setup opencode thr setup claude-code
After that, an agent can retrieve durable project facts with thr ask --json or thr search --json, then maintain memories with thr add, thr edit, and thr forget.
Features
- Local first: memories live in your own SQLite database.
- Semantic and text recall: use
askfor meaning,searchfor exact or fuzzy text. - Agent ready: JSON output and packaged skills make it easy for agents to use safely.
- Offline by default: the embedding model and ONNX Runtime are bundled with the release.
- Explicit memory:
thrstores only what you save.
CLI
thr add <text> Save a memory thr add - Save stdin thr list List memories and ids thr show <id> Print one memory thr ask <question> Retrieve semantically similar memories thr search <query> Search memories by text thr edit <id> <text> Replace a memory thr forget <id> Delete a memory thr stats Show database path and count thr index Rebuild semantic embeddings thr prefetch Prepare the model cache thr setup <agent> Install an agent skill
Useful flags:
thr --db ./thr.db ... THR_DB=./thr.db thr list thr ask --json "repo conventions" thr search -n 5 "release notes"
Data
| Data | Default |
|---|---|
| Memories | ~/.thr/thr.db |
| Model cache | ~/.thr/models |
| Install prefix | ~/.local |
Memories are stored as local plaintext SQLite. The default data directories are created with private filesystem permissions, but the database is not encrypted at rest.
thr has no telemetry. Release archives include the embedding model and runtime needed for offline semantic search.
Platform
Prebuilt releases support macOS arm64/x86_64 and glibc Linux arm64/x86_64.
Windows and Alpine/musl Linux are not supported yet.



















