mindpm 1.1.2 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -201
- package/README.md +168 -168
- package/dist/index.js +345 -2
- package/dist/ui/assets/index-CLK3PAFj.js +2 -0
- package/dist/ui/assets/index-D3uZo-NO.css +1 -0
- package/dist/ui/index.html +13 -0
- package/package.json +51 -49
package/README.md
CHANGED
|
@@ -1,168 +1,168 @@
|
|
|
1
|
-
# mindpm
|
|
2
|
-
|
|
3
|
-
**Persistent project memory for LLMs.** Never re-explain your project again.
|
|
4
|
-
|
|
5
|
-
mindpm is an MCP (Model Context Protocol) server that gives LLMs a SQLite-backed brain for your projects. It tracks tasks, decisions, architecture notes, and session context — so every new conversation picks up exactly where you left off.
|
|
6
|
-
|
|
7
|
-
## The Problem
|
|
8
|
-
|
|
9
|
-
Every new LLM chat starts from zero:
|
|
10
|
-
|
|
11
|
-
- *"Let me remind you about my project..."*
|
|
12
|
-
- *"Last time we decided to use Redis for..."*
|
|
13
|
-
- *"Where did we leave off?"*
|
|
14
|
-
|
|
15
|
-
## The Solution
|
|
16
|
-
|
|
17
|
-
mindpm persists your project state in a local SQLite database. The LLM reads and writes to it via MCP tools. No chat history needed. No memory features needed.
|
|
18
|
-
|
|
19
|
-
```
|
|
20
|
-
You: "What should I work on next?"
|
|
21
|
-
LLM: [queries mindpm] "Last session you finished the auth refactor.
|
|
22
|
-
You have 3 high-priority tasks: rate limiting, API docs, and
|
|
23
|
-
the webhook retry bug. Rate limiting is unblocked — start there."
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
## What It Tracks
|
|
27
|
-
|
|
28
|
-
- **Tasks** — status, priority, blockers, sub-tasks
|
|
29
|
-
- **Decisions** — what was decided, why, what alternatives were rejected
|
|
30
|
-
- **Notes** — architecture, bugs, ideas, research
|
|
31
|
-
- **Context** — key-value pairs (tech stack, conventions, config)
|
|
32
|
-
- **Sessions** — what was done, what's next
|
|
33
|
-
|
|
34
|
-
## Setup
|
|
35
|
-
|
|
36
|
-
### Install
|
|
37
|
-
|
|
38
|
-
```bash
|
|
39
|
-
npm install -g mindpm
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
Or run from source:
|
|
43
|
-
|
|
44
|
-
```bash
|
|
45
|
-
git clone https://github.com/umitkavala/mindpm.git
|
|
46
|
-
cd mindpm
|
|
47
|
-
npm install
|
|
48
|
-
npm run build
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
### Configure with Claude Code
|
|
52
|
-
|
|
53
|
-
Add to your MCP config (`~/.claude/claude_desktop_config.json` or similar):
|
|
54
|
-
|
|
55
|
-
```json
|
|
56
|
-
{
|
|
57
|
-
"mcpServers": {
|
|
58
|
-
"mindpm": {
|
|
59
|
-
"command": "mindpm",
|
|
60
|
-
"env": {
|
|
61
|
-
"MINDPM_DB_PATH": "~/.mindpm/memory.db"
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
If running from source, use the built file directly:
|
|
69
|
-
|
|
70
|
-
```json
|
|
71
|
-
{
|
|
72
|
-
"mcpServers": {
|
|
73
|
-
"mindpm": {
|
|
74
|
-
"command": "node",
|
|
75
|
-
"args": ["/path/to/mindpm/dist/index.js"],
|
|
76
|
-
"env": {
|
|
77
|
-
"MINDPM_DB_PATH": "~/.mindpm/memory.db"
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
### Start Using
|
|
85
|
-
|
|
86
|
-
That's it. The LLM now has access to mindpm tools. Just start talking about your projects.
|
|
87
|
-
|
|
88
|
-
## MCP Tools
|
|
89
|
-
|
|
90
|
-
### Projects
|
|
91
|
-
| Tool | Description |
|
|
92
|
-
|------|-------------|
|
|
93
|
-
| `create_project` | Create a new project |
|
|
94
|
-
| `list_projects` | List all projects |
|
|
95
|
-
| `get_project_status` | Full project overview |
|
|
96
|
-
|
|
97
|
-
### Tasks
|
|
98
|
-
| Tool | Description |
|
|
99
|
-
|------|-------------|
|
|
100
|
-
| `create_task` | Add a task |
|
|
101
|
-
| `update_task` | Update status, priority, etc. |
|
|
102
|
-
| `list_tasks` | List with filters |
|
|
103
|
-
| `get_task` | Full task detail with sub-tasks and notes |
|
|
104
|
-
| `get_next_tasks` | Smart: highest priority, unblocked |
|
|
105
|
-
|
|
106
|
-
### Decisions
|
|
107
|
-
| Tool | Description |
|
|
108
|
-
|------|-------------|
|
|
109
|
-
| `log_decision` | Record a decision with reasoning |
|
|
110
|
-
| `list_decisions` | Browse decision history |
|
|
111
|
-
|
|
112
|
-
### Notes & Context
|
|
113
|
-
| Tool | Description |
|
|
114
|
-
|------|-------------|
|
|
115
|
-
| `add_note` | Add a note (architecture, bug, idea, etc.) |
|
|
116
|
-
| `search_notes` | Full-text search |
|
|
117
|
-
| `set_context` | Store key-value context |
|
|
118
|
-
| `get_context` | Retrieve context |
|
|
119
|
-
|
|
120
|
-
### Sessions
|
|
121
|
-
| Tool | Description |
|
|
122
|
-
|------|-------------|
|
|
123
|
-
| `start_session` | Get full project context + last session's next steps |
|
|
124
|
-
| `end_session` | Record summary + what to do next time |
|
|
125
|
-
|
|
126
|
-
### Query
|
|
127
|
-
| Tool | Description |
|
|
128
|
-
|------|-------------|
|
|
129
|
-
| `query` | Read-only SQL against the database |
|
|
130
|
-
| `get_project_summary` | Tasks by status, blockers, recent activity |
|
|
131
|
-
| `get_blockers` | All blocked tasks with what's blocking them |
|
|
132
|
-
| `search` | Full-text search across everything |
|
|
133
|
-
|
|
134
|
-
## How It Works
|
|
135
|
-
|
|
136
|
-
```
|
|
137
|
-
┌─────────────┐ MCP ┌─────────┐ SQLite ┌──────────┐
|
|
138
|
-
│ Claude Code │ ◄──────────► │ mindpm │ ◄────────────► │ memory.db│
|
|
139
|
-
│ / Desktop │ tools │ server │ read/write │ │
|
|
140
|
-
└─────────────┘ └─────────┘ └──────────┘
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
1. You start a conversation and mention your project
|
|
144
|
-
2. The LLM calls `start_session` → gets full context
|
|
145
|
-
3. During the conversation, it creates tasks, logs decisions, adds notes
|
|
146
|
-
4. When you're done, it calls `end_session` → saves what's next
|
|
147
|
-
5. Next conversation: instant context, zero re-explanation
|
|
148
|
-
|
|
149
|
-
## Storage
|
|
150
|
-
|
|
151
|
-
Default: `~/.mindpm/memory.db`
|
|
152
|
-
|
|
153
|
-
Override with `MINDPM_DB_PATH` or `PROJECT_MEMORY_DB_PATH` environment variable.
|
|
154
|
-
|
|
155
|
-
Database and tables are created automatically on first run.
|
|
156
|
-
|
|
157
|
-
## Development
|
|
158
|
-
|
|
159
|
-
```bash
|
|
160
|
-
npm install
|
|
161
|
-
npm run build # Build with tsup
|
|
162
|
-
npm run typecheck # Type-check without emitting
|
|
163
|
-
npm run dev # Build in watch mode
|
|
164
|
-
```
|
|
165
|
-
|
|
166
|
-
## License
|
|
167
|
-
|
|
168
|
-
MIT
|
|
1
|
+
# mindpm
|
|
2
|
+
|
|
3
|
+
**Persistent project memory for LLMs.** Never re-explain your project again.
|
|
4
|
+
|
|
5
|
+
mindpm is an MCP (Model Context Protocol) server that gives LLMs a SQLite-backed brain for your projects. It tracks tasks, decisions, architecture notes, and session context — so every new conversation picks up exactly where you left off.
|
|
6
|
+
|
|
7
|
+
## The Problem
|
|
8
|
+
|
|
9
|
+
Every new LLM chat starts from zero:
|
|
10
|
+
|
|
11
|
+
- *"Let me remind you about my project..."*
|
|
12
|
+
- *"Last time we decided to use Redis for..."*
|
|
13
|
+
- *"Where did we leave off?"*
|
|
14
|
+
|
|
15
|
+
## The Solution
|
|
16
|
+
|
|
17
|
+
mindpm persists your project state in a local SQLite database. The LLM reads and writes to it via MCP tools. No chat history needed. No memory features needed.
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
You: "What should I work on next?"
|
|
21
|
+
LLM: [queries mindpm] "Last session you finished the auth refactor.
|
|
22
|
+
You have 3 high-priority tasks: rate limiting, API docs, and
|
|
23
|
+
the webhook retry bug. Rate limiting is unblocked — start there."
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## What It Tracks
|
|
27
|
+
|
|
28
|
+
- **Tasks** — status, priority, blockers, sub-tasks
|
|
29
|
+
- **Decisions** — what was decided, why, what alternatives were rejected
|
|
30
|
+
- **Notes** — architecture, bugs, ideas, research
|
|
31
|
+
- **Context** — key-value pairs (tech stack, conventions, config)
|
|
32
|
+
- **Sessions** — what was done, what's next
|
|
33
|
+
|
|
34
|
+
## Setup
|
|
35
|
+
|
|
36
|
+
### Install
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
npm install -g mindpm
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Or run from source:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
git clone https://github.com/umitkavala/mindpm.git
|
|
46
|
+
cd mindpm
|
|
47
|
+
npm install
|
|
48
|
+
npm run build
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### Configure with Claude Code
|
|
52
|
+
|
|
53
|
+
Add to your MCP config (`~/.claude/claude_desktop_config.json` or similar):
|
|
54
|
+
|
|
55
|
+
```json
|
|
56
|
+
{
|
|
57
|
+
"mcpServers": {
|
|
58
|
+
"mindpm": {
|
|
59
|
+
"command": "mindpm",
|
|
60
|
+
"env": {
|
|
61
|
+
"MINDPM_DB_PATH": "~/.mindpm/memory.db"
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
If running from source, use the built file directly:
|
|
69
|
+
|
|
70
|
+
```json
|
|
71
|
+
{
|
|
72
|
+
"mcpServers": {
|
|
73
|
+
"mindpm": {
|
|
74
|
+
"command": "node",
|
|
75
|
+
"args": ["/path/to/mindpm/dist/index.js"],
|
|
76
|
+
"env": {
|
|
77
|
+
"MINDPM_DB_PATH": "~/.mindpm/memory.db"
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Start Using
|
|
85
|
+
|
|
86
|
+
That's it. The LLM now has access to mindpm tools. Just start talking about your projects.
|
|
87
|
+
|
|
88
|
+
## MCP Tools
|
|
89
|
+
|
|
90
|
+
### Projects
|
|
91
|
+
| Tool | Description |
|
|
92
|
+
|------|-------------|
|
|
93
|
+
| `create_project` | Create a new project |
|
|
94
|
+
| `list_projects` | List all projects |
|
|
95
|
+
| `get_project_status` | Full project overview |
|
|
96
|
+
|
|
97
|
+
### Tasks
|
|
98
|
+
| Tool | Description |
|
|
99
|
+
|------|-------------|
|
|
100
|
+
| `create_task` | Add a task |
|
|
101
|
+
| `update_task` | Update status, priority, etc. |
|
|
102
|
+
| `list_tasks` | List with filters |
|
|
103
|
+
| `get_task` | Full task detail with sub-tasks and notes |
|
|
104
|
+
| `get_next_tasks` | Smart: highest priority, unblocked |
|
|
105
|
+
|
|
106
|
+
### Decisions
|
|
107
|
+
| Tool | Description |
|
|
108
|
+
|------|-------------|
|
|
109
|
+
| `log_decision` | Record a decision with reasoning |
|
|
110
|
+
| `list_decisions` | Browse decision history |
|
|
111
|
+
|
|
112
|
+
### Notes & Context
|
|
113
|
+
| Tool | Description |
|
|
114
|
+
|------|-------------|
|
|
115
|
+
| `add_note` | Add a note (architecture, bug, idea, etc.) |
|
|
116
|
+
| `search_notes` | Full-text search |
|
|
117
|
+
| `set_context` | Store key-value context |
|
|
118
|
+
| `get_context` | Retrieve context |
|
|
119
|
+
|
|
120
|
+
### Sessions
|
|
121
|
+
| Tool | Description |
|
|
122
|
+
|------|-------------|
|
|
123
|
+
| `start_session` | Get full project context + last session's next steps |
|
|
124
|
+
| `end_session` | Record summary + what to do next time |
|
|
125
|
+
|
|
126
|
+
### Query
|
|
127
|
+
| Tool | Description |
|
|
128
|
+
|------|-------------|
|
|
129
|
+
| `query` | Read-only SQL against the database |
|
|
130
|
+
| `get_project_summary` | Tasks by status, blockers, recent activity |
|
|
131
|
+
| `get_blockers` | All blocked tasks with what's blocking them |
|
|
132
|
+
| `search` | Full-text search across everything |
|
|
133
|
+
|
|
134
|
+
## How It Works
|
|
135
|
+
|
|
136
|
+
```
|
|
137
|
+
┌─────────────┐ MCP ┌─────────┐ SQLite ┌──────────┐
|
|
138
|
+
│ Claude Code │ ◄──────────► │ mindpm │ ◄────────────► │ memory.db│
|
|
139
|
+
│ / Desktop │ tools │ server │ read/write │ │
|
|
140
|
+
└─────────────┘ └─────────┘ └──────────┘
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
1. You start a conversation and mention your project
|
|
144
|
+
2. The LLM calls `start_session` → gets full context
|
|
145
|
+
3. During the conversation, it creates tasks, logs decisions, adds notes
|
|
146
|
+
4. When you're done, it calls `end_session` → saves what's next
|
|
147
|
+
5. Next conversation: instant context, zero re-explanation
|
|
148
|
+
|
|
149
|
+
## Storage
|
|
150
|
+
|
|
151
|
+
Default: `~/.mindpm/memory.db`
|
|
152
|
+
|
|
153
|
+
Override with `MINDPM_DB_PATH` or `PROJECT_MEMORY_DB_PATH` environment variable.
|
|
154
|
+
|
|
155
|
+
Database and tables are created automatically on first run.
|
|
156
|
+
|
|
157
|
+
## Development
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
npm install
|
|
161
|
+
npm run build # Build with tsup
|
|
162
|
+
npm run typecheck # Type-check without emitting
|
|
163
|
+
npm run dev # Build in watch mode
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
## License
|
|
167
|
+
|
|
168
|
+
MIT
|