Skip to content

Commit 8310a86

Browse files
committed
docs: add ICP positioning, use case scenario, and comparison matrix to README
- Define primary ICP (solo devs using AI coding assistants) - Add 'Who is Indra for?' section - Add 'Real-World Use Case' section demonstrating branching + diffing - Add 'How Indra Compares' matrix vs other MCP memory servers - Add DAY_IN_THE_LIFE.md persona document Closes #3, closes #4
1 parent e568cce commit 8310a86

2 files changed

Lines changed: 126 additions & 0 deletions

File tree

DAY_IN_THE_LIFE.md

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
# Day in the Life: Marcus, Solo Developer with Claude Code
2+
3+
## The Persona
4+
5+
**Marcus Chen** is a 28-year-old freelance web developer in Portland, OR. He uses Claude Code as his daily pair programmer through his terminal. He works on 3-4 client projects simultaneously, building full-stack applications with React and Node.js.
6+
7+
## The Pain
8+
9+
It's Tuesday morning. Marcus opens his terminal to continue building an e-commerce checkout flow for a client. He starts a new Claude Code session:
10+
11+
> "Hey, let's continue on the checkout flow. Can you remind me what we decided about the payment provider?"
12+
13+
Claude doesn't know. It's a new session — the context is gone.
14+
15+
Marcus sighs and types out the full context again: "We're using Stripe, but the client wants to support Apple Pay. Last session we decided to use Stripe's Payment Element instead of individual components because..."
16+
17+
He does this **every single morning**. Re-explaining his tech stack, his coding conventions, his client's preferences, the architectural decisions they've already made. It's like working with a colleague who has amnesia.
18+
19+
Worse, last week Claude recommended using `express-validator` for input validation. Two days later, in a new session, it recommended `zod` — contradicting its own earlier advice without realizing it. Marcus caught it, but what about the times he didn't?
20+
21+
## The Discovery
22+
23+
Marcus sees a tweet: *"I gave my AI assistant a memory that persists across sessions. It remembers my preferences, my past decisions, and why I made them."*
24+
25+
The linked repo is `indra_db` — a local-first database that works as an MCP server for Claude Code. He installs it in 2 minutes:
26+
27+
```bash
28+
cargo install indra_db
29+
# Add to Claude Code's MCP config
30+
```
31+
32+
## The After
33+
34+
It's Wednesday morning. Marcus opens his terminal:
35+
36+
> "Let's continue on the checkout flow."
37+
38+
Claude searches its Indra memory, finds notes about the project, and responds:
39+
40+
> "Welcome back! Based on our previous sessions, we're building the checkout for the Greenleaf client using Stripe Payment Element (we chose this over individual components for Apple Pay support). Yesterday we finished the CartSummary component and were about to start on the shipping address form. You prefer using zod for validation with react-hook-form. Want to pick up there?"
41+
42+
No re-explanation needed.
43+
44+
When Marcus asks about validation libraries, Claude checks its memory and says: *"We've been using zod throughout this project — I recommended it on Feb 3rd because it pairs well with your TypeScript-first approach."* Consistency.
45+
46+
And when the client changes the spec mid-project, Marcus can see exactly how the project's understanding evolved:
47+
48+
```bash
49+
indra log
50+
# Feb 8: "Client wants gift cards — adding coupon/gift-card field to checkout"
51+
# Feb 6: "Shipping form done. Client confirmed US-only for now."
52+
# Feb 5: "Using Stripe Payment Element for Apple Pay support"
53+
# Feb 3: "New project: Greenleaf e-commerce. React + Node, zod, Tailwind"
54+
```
55+
56+
## The Outcome
57+
58+
Marcus saves **15-20 minutes per session** on context re-establishment. Over a month, that's 5+ hours of productivity gained. More importantly, his AI assistant makes *consistent* recommendations and builds on previous decisions instead of contradicting them.
59+
60+
He tells his developer friends: *"It's like the difference between working with a contractor who keeps notes and one who shows up fresh every day."*
61+
62+
---
63+
64+
**Primary ICP: Solo developers using AI coding assistants who work on multiple projects and lose context between sessions.**
65+
66+
Key value drivers:
67+
1. **Session persistence** — Agent remembers across conversations
68+
2. **Decision consistency** — No more contradictory recommendations
69+
3. **Context evolution** — See how understanding changed over time
70+
4. **Zero friction** — Local-first, installs in 2 minutes, works with existing tools

README.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,13 @@ A content-addressed graph database for versioned thoughts. Think **git for knowl
55
[![Crates.io](https://img.shields.io/crates/v/indra_db.svg)](https://crates.io/crates/indra_db)
66
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
77

8+
## Who is Indra for?
9+
10+
**Solo developers using AI coding assistants** (Claude Code, Cursor, Copilot) who lose context between sessions. Your agent forgets your preferences, past decisions, and ongoing projects every time you start a new conversation. Indra gives your agent persistent, versioned memory — so it remembers what you've told it and builds on that knowledge over time.
11+
12+
> *"I told Claude my architecture preference three sessions ago. Now it's recommending the opposite and doesn't remember why."*
13+
> — Every developer using AI assistants
14+
815
## Why?
916

1017
Most agent memory systems are **state-based**: here's what I know *now*. But understanding isn't a snapshot—it's a trajectory. When an agent rewrites a note, it loses:
@@ -19,6 +26,55 @@ Most agent memory systems are **state-based**: here's what I know *now*. But und
1926
- **Graph semantics**: Thoughts as nodes, typed/weighted relationships as edges
2027
- **Semantic search**: Embeddings stored with nodes, vector similarity queries
2128

29+
## Real-World Use Case: Debug Why Your Agent Changed Its Mind
30+
31+
**Scenario:** Your AI coding assistant initially recommended "Use microservices" for a project, but two conversations later switched to "Use a monolith." Why?
32+
33+
**Without Indra:**
34+
- Prompt logs show final answers, not reasoning evolution
35+
- No way to compare intermediate states
36+
- Can't isolate which context shift caused the flip
37+
- Lost context between sessions means the agent doesn't even remember it changed
38+
39+
**With Indra:**
40+
```bash
41+
# Agent stores reasoning as versioned thoughts across conversations
42+
indra create "Team is building a new e-commerce platform. Recommending microservices for scalability." --id arch-rec
43+
44+
# Two sessions later, agent updates its recommendation
45+
indra update arch-rec "After learning team size is 3, recommending monolith-first for faster iteration."
46+
47+
# You can see exactly what changed and when
48+
indra log
49+
# commit 3f8a... "Update arch-rec"
50+
# commit a1b2... "Create arch-rec"
51+
52+
# Diff shows the reasoning shift
53+
indra diff a1b2 3f8a
54+
# Modified: arch-rec
55+
# - "...Recommending microservices for scalability."
56+
# + "...recommending monolith-first for faster iteration."
57+
58+
# Branch to explore the road not taken
59+
indra branch microservices-deep-dive
60+
indra checkout microservices-deep-dive
61+
indra create "If team grows to 8+, revisit microservices with these boundaries..."
62+
```
63+
64+
**Result:** Full transparency into agent decision-making → higher trust, easier debugging, and the ability to explore "what if" reasoning paths.
65+
66+
## How Indra Compares
67+
68+
| Feature | Indra | medha-mcp | git-notes-memory | Grigori |
69+
|---------|-------|-----------|------------------|---------|
70+
| **Branching** | ✅ Multi-branch exploration | ❌ Linear only | ❌ Linear only ||
71+
| **Diff/Compare** | ✅ Commit-level diffs ||||
72+
| **Semantic Search** | ✅ HF embeddings (local) ||||
73+
| **Graph Relations** | ✅ Typed + weighted edges ||||
74+
| **Single-File DB** | ✅ Portable `.indra` file | ❌ Repo-based | ❌ Repo-based ||
75+
| **3D Visualization** | ✅ PCA → WebGL (via IndraNet) ||||
76+
| **Offline-First** | ✅ Full local operation ||||
77+
2278
## Installation
2379

2480
### As a Rust library

0 commit comments

Comments
 (0)