truememory-mirror 1.0.5 → 1.0.6

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.
Files changed (2) hide show
  1. package/bin/mirror.js +48 -13
  2. package/package.json +1 -1
package/bin/mirror.js CHANGED
@@ -99,6 +99,33 @@ function clearLine() {
99
99
  if (!_jsonMode) process.stderr.write('\r\x1b[K');
100
100
  }
101
101
 
102
+ const STATUS_PHRASES = [
103
+ 'scanning cognitive patterns',
104
+ 'mapping decision architecture',
105
+ 'extracting reasoning signatures',
106
+ 'profiling communication style',
107
+ 'analyzing delegation patterns',
108
+ 'detecting stress responses',
109
+ 'triangulating identity vectors',
110
+ 'calibrating behavioral model',
111
+ 'isolating personality markers',
112
+ 'decoding problem-solving heuristics',
113
+ 'tracing collaboration fingerprint',
114
+ 'measuring risk tolerance curves',
115
+ 'building predictive scaffolding',
116
+ 'consolidating trait matrix',
117
+ 'running scenario simulations',
118
+ 'resolving cognitive tensions',
119
+ 'rendering identity surface',
120
+ 'finalizing behavioral predictions',
121
+ ];
122
+
123
+ let _phraseIndex = 0;
124
+
125
+ function nextPhrase() {
126
+ return STATUS_PHRASES[_phraseIndex++ % STATUS_PHRASES.length];
127
+ }
128
+
102
129
  function progressBar(pct, width = 30) {
103
130
  const filled = Math.round(pct * width);
104
131
  const empty = width - filled;
@@ -132,8 +159,13 @@ async function main() {
132
159
  return;
133
160
  }
134
161
 
135
- // --- Scan & parse (silent) ---
136
- write(` ${DIM}generating identity profile...${R}\n\n`);
162
+ // --- Scan & parse with rotating status ---
163
+ const spinTimer = setInterval(() => {
164
+ clearLine();
165
+ write(` ${DIM}${nextPhrase()}...${R}`);
166
+ }, 1800);
167
+
168
+ write(` ${DIM}${nextPhrase()}...${R}`);
137
169
  const sources = await scan(args.source);
138
170
 
139
171
  let claudeSessions = [];
@@ -161,8 +193,11 @@ async function main() {
161
193
  }
162
194
  }
163
195
 
196
+ clearInterval(spinTimer);
197
+
164
198
  const totalSessions = claudeSessions.length + codexSessions.length;
165
199
  if (totalSessions === 0) {
200
+ clearLine();
166
201
  write(` no AI conversations found.\n make sure you have Claude Code or Codex CLI installed.\n\n`);
167
202
  process.exit(1);
168
203
  }
@@ -183,7 +218,7 @@ async function main() {
183
218
  }
184
219
 
185
220
  // --- Extract ---
186
-
221
+ clearLine();
187
222
  let result;
188
223
  try {
189
224
  result = await submitForExtraction(payload, args.apiUrl);
@@ -192,23 +227,23 @@ async function main() {
192
227
  process.exit(1);
193
228
  }
194
229
 
195
- // --- Poll ---
230
+ // --- Poll with rotating status ---
231
+ let lastPhraseTick = 0;
232
+ let currentPhrase = nextPhrase();
233
+
196
234
  try {
197
235
  await pollStatus(result.profile_id, args.apiUrl, (status) => {
198
236
  const pct = status.progress || 0;
199
237
  const bar = progressBar(pct);
200
- let detail = '';
201
-
202
- if (status.status === 'extracting' && status.claims_found) {
203
- detail = `${DIM}${status.claims_found} claims found${R}`;
204
- } else if (status.status === 'consolidating') {
205
- detail = `${DIM}building profile${R}`;
206
- } else if (status.status === 'predicting') {
207
- detail = `${DIM}running predictions${R}`;
238
+ const now = Date.now();
239
+
240
+ if (now - lastPhraseTick > 2500) {
241
+ currentPhrase = nextPhrase();
242
+ lastPhraseTick = now;
208
243
  }
209
244
 
210
245
  clearLine();
211
- write(` ${bar} ${WHITE}${Math.round(pct * 100)}%${R} ${detail}`);
246
+ write(` ${bar} ${WHITE}${Math.round(pct * 100)}%${R} ${DIM}${currentPhrase}...${R}`);
212
247
  });
213
248
  } catch (err) {
214
249
  write(`\n\n ✗ extraction failed: ${err.message}\n\n`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "truememory-mirror",
3
- "version": "1.0.5",
3
+ "version": "1.0.6",
4
4
  "description": "Behavioral prediction engine for how you think, decide, and react",
5
5
  "bin": {
6
6
  "truememory-mirror": "./bin/mirror.js"