get-claudia 1.55.3 → 1.55.5

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/CHANGELOG.md CHANGED
@@ -2,6 +2,15 @@
2
2
 
3
3
  All notable changes to Claudia will be documented in this file.
4
4
 
5
+ ## 1.55.5 (2026-03-15)
6
+
7
+ - **Consolidation alert in briefing** -- When legacy hash databases exist but haven't been merged yet, the session briefing surfaces a pending consolidation alert with memory counts. Claudia will ask the user if they want to consolidate rather than silently noting version numbers.
8
+ - **Consolidation notice overwrites installer release notes** -- After a successful merge, the whats-new file shows what actually happened (merged N memories from M databases) instead of generic changelog text.
9
+
10
+ ## 1.55.4 (2026-03-15)
11
+
12
+ - **Installer URL** -- Banner now shows claudia.aiadopters.club instead of the GitHub URL.
13
+
5
14
  ## 1.55.3 (2026-03-15)
6
15
 
7
16
  - **Installer polish** -- Memory System step shows memory count from claudia.db when available instead of raw file count. DB scan shows totals ("4 databases to consolidate (2,118 memories, 319 entities)") and fixes "1 memories" grammar. MCP Config no longer warns about multiple stdio servers (they work fine now).
package/bin/index.js CHANGED
@@ -69,7 +69,7 @@ function confirm(question) {
69
69
  // Compact portrait-only banner
70
70
  function getBanner(version) {
71
71
  if (!isTTY) {
72
- return `\n CLAUDIA v${version}\n by Kamil Banc · github.com/kbanc85/claudia\n Research in AI that learns how you work\n`;
72
+ return `\n CLAUDIA v${version}\n by Kamil Banc · claudia.aiadopters.club\n Research in AI that learns how you work\n`;
73
73
  }
74
74
  const b = colors.cyan;
75
75
  const y = colors.yellow;
@@ -85,7 +85,7 @@ ${y}██${w}██${r} ${w}██${r} ${w}██${y}██${r}
85
85
  ${w}██${r} ${w}██${r}
86
86
 
87
87
  ${colors.boldYellow}CLAUDIA${colors.reset} ${colors.yellow}v${version}${colors.reset}
88
- ${colors.boldCyan}by Kamil Banc${colors.reset} ${colors.cyan}· github.com/kbanc85/claudia${colors.reset}
88
+ ${colors.boldCyan}by Kamil Banc${colors.reset} ${colors.cyan}· claudia.aiadopters.club${colors.reset}
89
89
  ${colors.white}Research in AI that learns how you work${colors.reset}
90
90
  `;
91
91
  }
@@ -303,9 +303,8 @@ def _write_consolidation_notice(merged_count: int, sources_count: int) -> None:
303
303
  context_dir = Path(workspace_path) / "context"
304
304
  whats_new = context_dir / "whats-new.md"
305
305
 
306
- # Don't overwrite if installer already wrote one
307
- if whats_new.exists():
308
- return
306
+ # Overwrite installer's generic release notes with consolidation-specific notice
307
+ # The consolidation result is more actionable than changelog text
309
308
 
310
309
  if not context_dir.exists():
311
310
  return # Not a Claudia workspace
@@ -3176,6 +3176,46 @@ def _build_briefing() -> str:
3176
3176
  lines = []
3177
3177
  lines.append("# Session Briefing\n")
3178
3178
 
3179
+ # 0. Pending database consolidation alert
3180
+ try:
3181
+ unified_row = db.execute(
3182
+ "SELECT value FROM _meta WHERE key = 'unified_db'", fetch=True
3183
+ )
3184
+ is_unified = unified_row and unified_row[0]["value"] == "true" if unified_row else False
3185
+
3186
+ if not is_unified:
3187
+ import re
3188
+ from pathlib import Path
3189
+ memory_dir = Path(get_config().db_path).parent
3190
+ if memory_dir.exists():
3191
+ hash_pattern = re.compile(r"^[0-9a-f]{12}\.db$")
3192
+ hash_dbs = [f for f in memory_dir.iterdir() if hash_pattern.match(f.name)]
3193
+ if hash_dbs:
3194
+ # Quick count of total memories across hash DBs
3195
+ import sqlite3 as _sql3
3196
+ total_mem = 0
3197
+ dbs_with_data = 0
3198
+ for hdb in hash_dbs:
3199
+ try:
3200
+ conn = _sql3.connect(f"file:{hdb}?mode=ro", uri=True, timeout=2)
3201
+ row = conn.execute("SELECT COUNT(*) FROM memories").fetchone()
3202
+ cnt = row[0] if row else 0
3203
+ conn.close()
3204
+ if cnt > 0:
3205
+ total_mem += cnt
3206
+ dbs_with_data += 1
3207
+ except Exception:
3208
+ pass
3209
+ if dbs_with_data > 0:
3210
+ lines.append(
3211
+ f"**⚠️ PENDING CONSOLIDATION:** {dbs_with_data} legacy database{'s' if dbs_with_data != 1 else ''} "
3212
+ f"with {total_mem:,} memories found. These need to be merged into claudia.db. "
3213
+ f"Ask the user if they want to consolidate now (restart the daemon to trigger auto-merge, "
3214
+ f"or run `python -m claudia_memory --merge-databases` manually)."
3215
+ )
3216
+ except Exception as e:
3217
+ logger.debug(f"Briefing consolidation check failed: {e}")
3218
+
3179
3219
  # 1. Active commitments count + stale count
3180
3220
  try:
3181
3221
  total_row = db.execute(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "get-claudia",
3
- "version": "1.55.3",
3
+ "version": "1.55.5",
4
4
  "description": "An AI assistant who learns how you work.",
5
5
  "keywords": [
6
6
  "claudia",