get-claudia 1.42.2 → 1.42.4
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/bin/index.js +1 -1
- package/memory-daemon/claudia_memory/config.py +1 -0
- package/memory-daemon/claudia_memory/daemon/health.py +25 -0
- package/memory-daemon/claudia_memory/database.py +1 -1
- package/memory-daemon/claudia_memory/mcp/server.py +1683 -2035
- package/memory-daemon/claudia_memory/services/consolidate.py +85 -37
- package/memory-daemon/claudia_memory/services/recall.py +6 -4
- package/memory-daemon/scripts/install.ps1 +5 -1
- package/memory-daemon/scripts/install.sh +1 -1
- package/memory-daemon/tests/test_daemon_lifecycle.py +235 -0
- package/memory-daemon/tests/test_deep_recall.py +27 -0
- package/memory-daemon/tests/test_entity_lifecycle.py +521 -0
- package/memory-daemon/tests/test_graph_operations.py +1401 -0
- package/memory-daemon/tests/test_invalidated_filter.py +1 -0
- package/memory-daemon/tests/test_temporal_recall.py +1 -0
- package/memory-daemon/tests/test_validation_guards.py +166 -0
- package/memory-daemon/tests/{test_vault_sync.py → test_vault_operations.py} +253 -55
- package/package.json +1 -1
- package/template-v2/.claude/rules/claudia-principles.md +26 -170
- package/template-v2/.claude/skills/README.md +1 -2
- package/template-v2/.claude/skills/archetypes/_base-structure.md +111 -0
- package/template-v2/.claude/skills/archetypes/consultant.md +24 -562
- package/template-v2/.claude/skills/archetypes/creator.md +42 -685
- package/template-v2/.claude/skills/archetypes/executive.md +30 -602
- package/template-v2/.claude/skills/archetypes/founder.md +45 -684
- package/template-v2/.claude/skills/archetypes/solo.md +46 -587
- package/template-v2/.claude/skills/memory-manager.md +24 -470
- package/template-v2/.claude/skills/skill-index.json +0 -8
- package/template-v2/.claude/skills/structure-evolution.md +2 -2
- package/template-v2/.claude/skills/structure-generator.md +1 -1
- package/template-v2/.claude/skills/what-am-i-missing/SKILL.md +30 -7
- package/template-v2/CLAUDE.md +12 -106
- package/memory-daemon/tests/test_backup.py +0 -72
- package/memory-daemon/tests/test_corrections.py +0 -222
- package/memory-daemon/tests/test_entity_management.py +0 -336
- package/memory-daemon/tests/test_graph.py +0 -200
- package/memory-daemon/tests/test_graph_analytics.py +0 -633
- package/memory-daemon/tests/test_graph_retrieval.py +0 -746
- package/memory-daemon/tests/test_guards.py +0 -76
- package/memory-daemon/tests/test_health.py +0 -36
- package/memory-daemon/tests/test_relationship_guards.py +0 -79
- package/memory-daemon/tests/test_scheduler.py +0 -58
- package/memory-daemon/tests/test_startup.py +0 -62
- package/memory-daemon/tests/test_vault_sync_v2.py +0 -186
- package/template-v2/.claude/skills/accountability-check/SKILL.md +0 -149
package/bin/index.js
CHANGED
|
@@ -37,6 +37,7 @@ class MemoryConfig:
|
|
|
37
37
|
pattern_detection_interval_hours: int = 24
|
|
38
38
|
|
|
39
39
|
# Search settings
|
|
40
|
+
recency_half_life_days: int = 30
|
|
40
41
|
max_recall_results: int = 50
|
|
41
42
|
vector_weight: float = 0.50 # Weight for vector similarity in ranking
|
|
42
43
|
importance_weight: float = 0.25 # Weight for importance score
|
|
@@ -160,6 +160,31 @@ class HealthCheckHandler(BaseHTTPRequestHandler):
|
|
|
160
160
|
else:
|
|
161
161
|
self.send_error(404, "Not Found")
|
|
162
162
|
|
|
163
|
+
def do_POST(self):
|
|
164
|
+
"""Handle POST requests"""
|
|
165
|
+
if self.path == "/backup":
|
|
166
|
+
self._send_backup_response()
|
|
167
|
+
else:
|
|
168
|
+
self.send_error(405, "Method Not Allowed")
|
|
169
|
+
|
|
170
|
+
def _send_backup_response(self):
|
|
171
|
+
"""Trigger a database backup and return the path."""
|
|
172
|
+
try:
|
|
173
|
+
db = get_db()
|
|
174
|
+
path = db.backup()
|
|
175
|
+
self._send_json({"status": "ok", "path": str(path)})
|
|
176
|
+
except Exception as e:
|
|
177
|
+
logger.exception("Error triggering backup")
|
|
178
|
+
self._send_json({"status": "error", "message": str(e)}, code=500)
|
|
179
|
+
|
|
180
|
+
def _send_json(self, data: dict, code: int = 200):
|
|
181
|
+
"""Helper to send a JSON response."""
|
|
182
|
+
body = json.dumps(data).encode()
|
|
183
|
+
self.send_response(code)
|
|
184
|
+
self.send_header("Content-Type", "application/json")
|
|
185
|
+
self.end_headers()
|
|
186
|
+
self.wfile.write(body)
|
|
187
|
+
|
|
163
188
|
def _send_health_response(self):
|
|
164
189
|
"""Send basic health check response"""
|
|
165
190
|
health = {
|
|
@@ -49,7 +49,7 @@ class Database:
|
|
|
49
49
|
conn.execute("PRAGMA synchronous = NORMAL")
|
|
50
50
|
conn.execute("PRAGMA foreign_keys = ON")
|
|
51
51
|
# Recover any uncommitted WAL writes from a previous crashed daemon
|
|
52
|
-
conn.execute("PRAGMA wal_checkpoint(
|
|
52
|
+
conn.execute("PRAGMA wal_checkpoint(TRUNCATE)")
|
|
53
53
|
|
|
54
54
|
# Try to load sqlite-vec for vector search
|
|
55
55
|
# Priority: sqlite_vec Python package first (works on Python 3.13+),
|