Metadata-Version: 2.4
Name: deja-cli
Version: 0.1.2
Summary: Local-first persistent memory CLI for coding agents
Author-email: Mike <mike@bigtreeproduction.com>
License: MIT
License-File: LICENSE
Keywords: agent,claude,cli,developer-tools,llm,memory
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Classifier: Topic :: Utilities
Requires-Python: >=3.12
Requires-Dist: aiosqlite>=0.20
Requires-Dist: anthropic>=0.34
Requires-Dist: apscheduler<4.0,>=3.10
Requires-Dist: fastapi>=0.115
Requires-Dist: httpx>=0.27
Requires-Dist: mcp>=1.26.0
Requires-Dist: pydantic-settings>=2.4
Requires-Dist: pydantic>=2.0
Requires-Dist: python-ulid>=2.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: typer>=0.12
Requires-Dist: uvicorn[standard]>=0.30
Requires-Dist: watchdog>=4.0
Description-Content-Type: text/markdown

# deja

Local-first persistent memory CLI for coding agents. Memories accumulate across sessions, deduplicate automatically, and stay on your machine.

## Install

```bash
uv tool install deja-cli
```

## Quick Start

```bash
deja init                        # first-time setup
deja setup claude-code           # inject memory instructions into Claude Code
```

## Core Commands

**Save a memory:**
```bash
deja save "Always use explicit error handling over try/catch" --type preference
deja save "Auth tokens stored in localStorage, not cookies" --type decision --project myapp
deja save "Prisma migrations fail silently if DB_URL has wrong port" --type gotcha --project myapp
```

**Load at session start:**
```bash
deja load --project myapp --context "what you're working on"
```

**Search mid-session:**
```bash
deja search "authentication" --project myapp
```

**Extract memories from a session:**
```bash
deja save-session --project myapp
```

## Memory Types

| Type | When to use |
|---|---|
| `preference` | How you like to code — style, tools, habits |
| `pattern` | Reusable solution that applies across contexts |
| `decision` | Non-obvious architectural choice with reasoning |
| `gotcha` | Bug, trap, or non-obvious issue to avoid |
| `progress` | Current state of in-progress work |
| `procedure` | Ordered steps for a recurring task |

## Setup for Coding Agents

```bash
deja setup claude-code     # Claude Code — global config + recall hooks
deja setup gemini-cli      # Gemini CLI
deja setup codex           # Codex CLI
deja setup cursor          # Cursor
```

## MCP Server

```bash
claude mcp add --scope user deja -- ~/.local/bin/deja-mcp
```

Registers `memory_load`, `memory_save`, and `memory_search` as native tools in every Claude Code session.
