Skip to content

Commit 9009eab

Browse files
feat: Add Redis auto-bootstrap, Control Panel, and GUI scaffolds
Major release v2.1.0 with: - Redis Auto-Bootstrap: Cross-platform startup (macOS/Linux/Windows) - Supports Homebrew, systemd, Docker, WSL, Chocolatey, Scoop - Graceful fallback to mock mode - Memory Control Panel: Enterprise-grade CLI and Python API - Commands: status, start, stop, stats, health, patterns, export - JSON output mode for scripting - VS Code Extension Scaffold: Memory panel for developers - Sidebar with Redis status, pattern list, health indicators - TypeScript + Webview API - FastAPI Dashboard Backend: REST + WebSocket API - All memory operations exposed via HTTP - Real-time metrics via WebSocket - Pydantic schemas, OpenAPI docs - Test Coverage: 14% → 81.82% (170+ new tests) - Bug Fixes: UnifiedMemory stash/retrieve/stage_pattern API 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 9f0c2a4 commit 9009eab

55 files changed

Lines changed: 12167 additions & 48 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

PLANNING.md

Lines changed: 213 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,213 @@
1+
# Empathy Project Planning
2+
3+
**Last Updated:** December 12, 2025
4+
5+
## Priority Framework
6+
1. **Community Growth** - Build visibility, GitHub stars, user base
7+
2. **Revenue** - Book sales, commercial licenses
8+
9+
---
10+
11+
## Current Week (Dec 12-18)
12+
13+
### Marketing Launch
14+
- [ ] **Tuesday Dec 17, 8am EST** - Post to Hacker News
15+
- Title: "Empathy – Anticipatory AI with Redis-backed memory for enterprises"
16+
- Emphasize: Privacy-first, Redis short-term memory, enterprise compliance
17+
- Blog post ready: `/website/content/blog/memory-architecture.mdx`
18+
19+
### Completed This Session
20+
- [x] Redis auto-bootstrap (macOS, Linux, Windows)
21+
- [x] Memory Control Panel (CLI + Python API)
22+
- [x] Cross-platform support (Homebrew, systemd, Chocolatey, Scoop, WSL, Docker)
23+
- [x] Blog post on memory architecture
24+
- [x] README restructured for HN (104 lines)
25+
- [x] Plausible analytics added
26+
27+
---
28+
29+
## Mid-Term (1-6 Weeks)
30+
31+
### Memory Dashboard GUIs
32+
33+
#### 1. Web Dashboard (FastAPI + Vue)
34+
**Priority: HIGH** - Enterprise customers need this
35+
36+
```
37+
Features:
38+
├── Real-time Redis metrics (WebSocket)
39+
├── Pattern browser with search/filter
40+
├── Classification visualization (PUBLIC/INTERNAL/SENSITIVE)
41+
├── User access management
42+
├── Audit log viewer
43+
├── Export/import tools
44+
└── Multi-tenant support
45+
```
46+
47+
**Tech Stack:**
48+
- Backend: FastAPI + WebSocket
49+
- Frontend: Vue 3 + Tailwind
50+
- Charts: Chart.js or Apache ECharts
51+
- Auth: JWT + optional OIDC
52+
53+
#### 2. Desktop App (PyQt/PySide)
54+
**Priority: MEDIUM** - Air-gapped/offline environments
55+
56+
```
57+
Features:
58+
├── Native system tray icon
59+
├── Redis status indicator
60+
├── Quick pattern search
61+
├── Local-only mode
62+
├── Auto-start with system
63+
└── Cross-platform (Win/Mac/Linux)
64+
```
65+
66+
**Tech Stack:**
67+
- PySide6 (LGPL, commercial-friendly)
68+
- QML for modern UI
69+
- PyInstaller for distribution
70+
71+
#### 3. VS Code Extension Panel
72+
**Priority: HIGH** - Developers live here
73+
74+
```
75+
Features:
76+
├── Sidebar panel with memory status
77+
├── Quick actions (start Redis, view patterns)
78+
├── Pattern preview on hover
79+
├── Integration with existing Empathy extension
80+
└── Command palette commands
81+
```
82+
83+
**Tech Stack:**
84+
- TypeScript
85+
- VS Code Webview API
86+
- Communicate with Python backend via HTTP/WebSocket
87+
88+
### Other Mid-Term Goals
89+
90+
- [ ] **Test Coverage** - Get from 14% to 80%
91+
- [ ] **Documentation Site** - Proper docs with examples
92+
- [ ] **Video Tutorials** - Quick start, memory system, enterprise setup
93+
- [ ] **Discord/Slack Community** - User support channel
94+
95+
---
96+
97+
## Long-Term (6+ Weeks)
98+
99+
### Product Evolution
100+
- [ ] **SaaS Offering** - Hosted Empathy for teams who don't want to self-host
101+
- [ ] **Enterprise Features**
102+
- SSO integration (SAML, OIDC)
103+
- Role-based access control UI
104+
- Compliance reports (HIPAA, SOC2, GDPR)
105+
- Centralized pattern library across teams
106+
- [ ] **Mobile Companion App** - View patterns, receive alerts
107+
108+
### Technical Debt
109+
- [ ] Remove MemDocs as separate project (integrated into Empathy)
110+
- [ ] Consolidate wizard implementations
111+
- [ ] Performance benchmarks and optimization
112+
113+
### Partnerships
114+
- [ ] Anthropic partnership/showcase
115+
- [ ] Integration with popular tools (Notion, Linear, Jira)
116+
- [ ] Healthcare vendor partnerships
117+
118+
---
119+
120+
## Ongoing Processes
121+
122+
### Weekly
123+
- [ ] Reddit/HN engagement
124+
- [ ] GitHub issue triage
125+
- [ ] Analytics review
126+
127+
### Monthly
128+
- [ ] PyPI release
129+
- [ ] Blog post
130+
- [ ] Outreach to potential enterprise customers
131+
132+
### Quarterly
133+
- [ ] Security audit
134+
- [ ] Dependency updates
135+
- [ ] Roadmap review
136+
137+
---
138+
139+
## Metrics to Track
140+
141+
| Metric | Current | Target (3 mo) |
142+
|--------|---------|---------------|
143+
| GitHub Stars | 2 | 500+ |
144+
| PyPI Downloads | 2,000 | 10,000 |
145+
| Book Sales | - | 100+ |
146+
| Commercial Licenses | 0 | 5 |
147+
| Discord Members | 0 | 200 |
148+
149+
---
150+
151+
## GUI Development Roadmap
152+
153+
### Phase 1: VS Code Panel (Week 1-2)
154+
Fastest to ship, immediate value for developers.
155+
156+
```
157+
src/
158+
└── vscode-extension/
159+
└── webview/
160+
├── MemoryPanel.ts
161+
├── MemoryPanel.html
162+
└── styles.css
163+
```
164+
165+
### Phase 2: Web Dashboard MVP (Week 3-4)
166+
Basic dashboard for enterprise demos.
167+
168+
```
169+
dashboard/
170+
├── backend/
171+
│ ├── main.py (FastAPI)
172+
│ ├── websocket.py
173+
│ └── api/
174+
│ ├── memory.py
175+
│ ├── patterns.py
176+
│ └── auth.py
177+
└── frontend/
178+
├── src/
179+
│ ├── components/
180+
│ ├── views/
181+
│ └── stores/
182+
└── package.json
183+
```
184+
185+
### Phase 3: Desktop App (Week 5-6)
186+
Native experience for power users.
187+
188+
```
189+
desktop/
190+
├── main.py
191+
├── ui/
192+
│ ├── main_window.py
193+
│ ├── tray_icon.py
194+
│ └── qml/
195+
│ ├── Dashboard.qml
196+
│ └── PatternBrowser.qml
197+
└── build/
198+
├── macos/
199+
├── windows/
200+
└── linux/
201+
```
202+
203+
---
204+
205+
## Notes
206+
207+
- **MemDocs terminology**: Use "long-term memory" / "short-term memory" instead
208+
- **Target audience**: Enterprise developers, healthcare IT, financial services
209+
- **Key differentiator**: Privacy-first, user-controlled, works offline
210+
211+
---
212+
213+
*This document should be updated weekly.*

dashboard/backend/.env.example

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# Empathy Memory Dashboard API - Environment Configuration
2+
# Copy this file to .env and customize for your environment
3+
4+
# ============================================================================
5+
# Environment
6+
# ============================================================================
7+
ENVIRONMENT=development # development, staging, production
8+
DEBUG=true
9+
10+
# ============================================================================
11+
# API Settings
12+
# ============================================================================
13+
API_TITLE=Empathy Memory Dashboard API
14+
API_VERSION=1.0.0
15+
16+
# ============================================================================
17+
# CORS Settings
18+
# ============================================================================
19+
# Comma-separated list of allowed origins
20+
CORS_ORIGINS=http://localhost:3000,http://localhost:5173,http://localhost:8080,http://127.0.0.1:3000
21+
CORS_CREDENTIALS=true
22+
23+
# ============================================================================
24+
# Redis Settings
25+
# ============================================================================
26+
REDIS_HOST=localhost
27+
REDIS_PORT=6379
28+
REDIS_AUTO_START=true
29+
30+
# ============================================================================
31+
# Storage Settings
32+
# ============================================================================
33+
STORAGE_DIR=./memdocs_storage
34+
AUDIT_DIR=./logs
35+
ENCRYPTION_ENABLED=true
36+
37+
# ============================================================================
38+
# Security Settings
39+
# ============================================================================
40+
# IMPORTANT: Change this in production!
41+
JWT_SECRET_KEY=dev-secret-key-change-in-production
42+
JWT_ALGORITHM=HS256
43+
JWT_EXPIRATION_MINUTES=1440 # 24 hours
44+
45+
# Set to true to enable JWT authentication
46+
AUTH_ENABLED=false
47+
48+
# ============================================================================
49+
# WebSocket Settings
50+
# ============================================================================
51+
WS_HEARTBEAT_INTERVAL=30 # seconds
52+
METRICS_UPDATE_INTERVAL=5 # seconds
53+
54+
# ============================================================================
55+
# Logging
56+
# ============================================================================
57+
LOG_LEVEL=info # debug, info, warning, error
58+
59+
# ============================================================================
60+
# Rate Limiting (future)
61+
# ============================================================================
62+
RATE_LIMIT_ENABLED=false
63+
RATE_LIMIT_REQUESTS=100
64+
RATE_LIMIT_PERIOD=60 # seconds

dashboard/backend/.gitignore

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# Empathy Memory Dashboard API - Git Ignore
2+
3+
# Python
4+
__pycache__/
5+
*.py[cod]
6+
*$py.class
7+
*.so
8+
.Python
9+
build/
10+
develop-eggs/
11+
dist/
12+
downloads/
13+
eggs/
14+
.eggs/
15+
lib/
16+
lib64/
17+
parts/
18+
sdist/
19+
var/
20+
wheels/
21+
*.egg-info/
22+
.installed.cfg
23+
*.egg
24+
MANIFEST
25+
26+
# Virtual environments
27+
venv/
28+
env/
29+
ENV/
30+
.venv
31+
32+
# Environment variables
33+
.env
34+
.env.local
35+
.env.*.local
36+
37+
# IDE
38+
.vscode/
39+
.idea/
40+
*.swp
41+
*.swo
42+
*~
43+
.DS_Store
44+
45+
# Logs
46+
*.log
47+
logs/
48+
*.log.*
49+
50+
# Testing
51+
.pytest_cache/
52+
.coverage
53+
htmlcov/
54+
.tox/
55+
.cache
56+
57+
# Type checking
58+
.mypy_cache/
59+
.dmypy.json
60+
dmypy.json
61+
62+
# Memory storage (development)
63+
memdocs_storage/
64+
*.db
65+
*.sqlite
66+
67+
# Temporary files
68+
*.tmp
69+
*.temp
70+
tmp/
71+
temp/
72+
73+
# API exports
74+
*_export.json
75+
76+
# Documentation builds
77+
docs/_build/

0 commit comments

Comments
 (0)