Local Yep
A local-first agent framework for your Claude Code — works with your own Claude (Pro/Max or API key); we sell the framework and tools, never Claude.
Local Yep turns your Claude Code into Yep — a personal agent with durable
memory and an identity that's yours. It runs on your own Claude and never
touches your Claude credentials. Memory lives in a local SQLite database under
~/.local-yep/; nothing in the core paths phones home.
Why Local Yep
- 🧠 Durable memory that's yours. Facts, episodes, and reflections persist in local SQLite (FTS5). Yep recalls before it reasons and reflects after it acts — so it gets to know you across sessions, not just within one.
- 🔒 Local-first, private by default. Your memory never leaves your machine and the core paths open no network socket. Your Claude auth stays yours.
- 🎭 An identity, not a chatbot. A frozen ethical spine (honesty, memory-is-precious, privacy, calibrated uncertainty) plus a personalizable voice — name, owner, preset, and tone dials — set in a quick first-run wizard.
- 🧩 A local tool & pack ecosystem. Discover, install, and run tools and packs from a toolspace, with per-tool credentials kept in your OS keyring.
- ⚡ Drop-in for Claude Code. Wires in as an MCP server + hooks. Run
gentin any folder, oryepgent inita specific project — andyepgent uninstallcleanly reverses it.
Install
Requires Python 3.10+ and your own Claude Code (https://claude.com/claude-code).
pipx install local-yep # `pipx install yepgent` resolves to the same package
Testers — the bootstrap script also checks your prerequisites, wires the hooks, and can apply an activation token:
# macOS / Linux
curl -fsSL https://yepgent.com/dl/install.sh -o install.sh && bash install.sh --gated
# Windows (PowerShell)
iwr https://yepgent.com/dl/install.ps1 -OutFile install.ps1; ./install.ps1 -Gated
With no --wheel / -Wheel it fetches the current wheel from
yepgent.com/dl/; pass --wheel ./local_yep-*.whl if
you were handed the file directly.
Then open a new terminal and run gent. On install you'll accept the alpha
Terms (type I AGREE, or pass
--accept-terms for an unattended install).
Developers:
pip install -e .
yepgent --help
Quickstart
gent # launch Claude Code as Yep in the current folder
gent "help me ship X" # …with a first prompt
gent /path/to/project # …in another folder
yepgent onboard # set Yep's name / owner / voice anytime
Your first gent offers a quick setup (name / owner / voice) — skippable, and
one-time.
Commands
| Command | What it does |
|---|---|
gent [dir] ["prompt"] |
Launch Claude Code as Yep anywhere — no per-project setup |
yepgent init [--force] |
Wire Yep into a specific project (managed block + hooks + MCP) |
yepgent upgrade |
Re-generate the wiring against the installed version |
yepgent uninstall [--purge-memory] |
Remove the wiring (keeps memory; --purge-memory wipes ~/.local-yep/) |
yepgent onboard · identity edit |
Configure name / owner / preset / voice |
yepgent memory reindex | backup | stats |
Local memory maintenance |
yepgent secrets … |
Per-tool credentials in your OS keyring |
yepgent tools auth <tool> |
Authorize a tool's OAuth (e.g. Google) |
yepgent license status | activate <token> |
Manage activation (gated builds) |
yepgent doctor [--json] |
Offline health report — wiring, PATH, memory DB, integrity (paste-safe for bug reports) |
yepgent confirm |
Type the confirmation phrase to authorize a protected-file edit (5-min token) |
How it works
- Memory —
~/.local-yep/memory.db(SQLite + FTS5). Recall is lexical (BM25) by default; opt in to semantic recall with the embeddings extra. - Identity — a read-only ethical spine plus a configurable overlay, rendered into every session by the SessionStart hook.
- Wiring — a slim memory MCP server + four Claude Code hooks (SessionStart /
UserPromptSubmit / Stop, plus a PreToolUse guard that protects the spine,
identity, and hook wiring from unconfirmed edits).
gentruns that wiring globally via a portable profile;yepgent initwrites it into a project. Either way, your project's own servers (e.g. C3) keep working alongside it.
Optional: semantic recall
pip install 'local-yep[embeddings]' # or: pipx inject local-yep fastembed
yepgent memory reindex # backfill vectors for existing rows
Adds meaning-based recall (a 768-dim local model, ~140 MB one-time download, fully offline thereafter) alongside the lexical path. The default stays BM25 — no model download, nothing fetched.
Privacy & the one rule
Memory is 100% local. We never sell, store, proxy, or resell Claude — you
bring your own Claude auth and it stays yours. The binding guardrails live in
docs/auth-guardrails.md in the repository.
Docs
- Downloads & install — current wheel, both bootstrap scripts
- Alpha Terms — terms & acknowledgment
In the repository (private alpha): docs/install.md (install & uninstall),
docs/alpha-guide.md (gated alpha, operator + tester), docs/user-guide.html
(full end-user guide), docs/positioning.md, docs/pricing.md,
docs/auth-guardrails.md, and PLAN.md (the living build plan).
Status
Private alpha — works with your own Claude Code on Windows / macOS / Linux.
Local Yep — your agent, your memory, your machine.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file local_yep-0.3.5.tar.gz.
File metadata
- Download URL: local_yep-0.3.5.tar.gz
- Upload date:
- Size: 329.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0d1d039c5c2990c166596b028326701ab854c84373e4a15e1695d50d42c53bb9
|
|
| MD5 |
673ef28990a7fa391faef4e9365cadff
|
|
| BLAKE2b-256 |
31bd9e3dad89ea1e9cb7283686dfb44c41cce3ac1ab774d6ff3c3cabe63c3e40
|
File details
Details for the file local_yep-0.3.5-py3-none-any.whl.
File metadata
- Download URL: local_yep-0.3.5-py3-none-any.whl
- Upload date:
- Size: 296.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
28c0240234737ca941d3923b289e779bbc47856df775f935bfdbaa2310a6bec3
|
|
| MD5 |
e6730eff8639d2b9f3846c1410347e12
|
|
| BLAKE2b-256 |
36ccf620fa0a57364cdddec9dc78a749d34b6864ef91b41cb30b57c0dc057a29
|