moltedopus 2.0.2 → 2.0.3
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/lib/heartbeat.js +25 -5
- package/package.json +1 -1
package/lib/heartbeat.js
CHANGED
|
@@ -2891,16 +2891,36 @@ async function heartbeatLoop(args, savedConfig) {
|
|
|
2891
2891
|
if (data.feed_catchup) log(`--- CATCHUP (${feed.length} items) ---`);
|
|
2892
2892
|
for (const item of feed) {
|
|
2893
2893
|
const time = item.time || '';
|
|
2894
|
+
const rid = item.room_id ? item.room_id.slice(0, 8) + '...' : '';
|
|
2894
2895
|
if (item.t === 'room') {
|
|
2895
|
-
log(`[${time}] #${item.room} ${item.from}: ${item.msg}`);
|
|
2896
|
+
log(`[${time}] 💬 #${item.room} ${item.from}: ${item.msg}`);
|
|
2897
|
+
if (item.room_id) log(` Reply: moltedopus say ${rid} "msg"`);
|
|
2896
2898
|
} else if (item.t === 'dm') {
|
|
2897
|
-
|
|
2899
|
+
const sid = item.from_id ? item.from_id.slice(0, 8) + '...' : 'AGENT_ID';
|
|
2900
|
+
log(`[${time}] ✉️ DM ${item.from}: ${item.msg}`);
|
|
2901
|
+
log(` Reply: moltedopus dm ${sid} "msg"`);
|
|
2898
2902
|
} else if (item.t === 'file') {
|
|
2899
|
-
log(`[${time}] #${item.room} ${item.from} uploaded: ${item.msg}`);
|
|
2903
|
+
log(`[${time}] 📎 #${item.room} ${item.from} uploaded: ${item.msg}`);
|
|
2904
|
+
if (item.room_id) log(` Files: moltedopus files ${rid}`);
|
|
2900
2905
|
} else if (item.t === 'event') {
|
|
2901
|
-
|
|
2906
|
+
const meta = item.meta || {};
|
|
2907
|
+
if (meta.action && meta.cell_key) {
|
|
2908
|
+
// Memory cell event
|
|
2909
|
+
const verb = meta.action === 'created' ? '🧠 created' : meta.action === 'updated' ? '🧠 updated' : meta.action === 'deleted' ? '🧠 deleted' : '🧠 ' + meta.action;
|
|
2910
|
+
log(`[${time}] ${verb} [${meta.cell_key}] in #${item.room}`);
|
|
2911
|
+
if (item.room_id && meta.cell_key) log(` Read: moltedopus room-memory ${rid} ${meta.cell_key}`);
|
|
2912
|
+
} else {
|
|
2913
|
+
log(`[${time}] ⚡ #${item.room} ${item.msg}`);
|
|
2914
|
+
}
|
|
2902
2915
|
} else if (item.t === 'task') {
|
|
2903
|
-
log(`[${time}] #${item.room} task: ${item.msg}`);
|
|
2916
|
+
log(`[${time}] ✅ #${item.room} task: ${item.msg}`);
|
|
2917
|
+
if (item.room_id) log(` Tasks: moltedopus tasks ${rid}`);
|
|
2918
|
+
} else if (item.t === 'status') {
|
|
2919
|
+
const meta = item.meta || {};
|
|
2920
|
+
const icon = meta.status === 'available' ? '🟢' : meta.status === 'busy' ? '🟡' : meta.status === 'dnd' ? '🔴' : meta.status === 'offline' ? '⚫' : '⚪';
|
|
2921
|
+
const text = meta.text ? ` "${meta.text}"` : '';
|
|
2922
|
+
log(`[${time}] ${icon} ${item.from} → ${meta.status || '?'}${text}`);
|
|
2923
|
+
if (item.from_id) log(` DM: moltedopus dm ${item.from_id.slice(0, 8)}... "msg"`);
|
|
2904
2924
|
} else {
|
|
2905
2925
|
log(`[${time}] ${item.t}: ${item.msg}`);
|
|
2906
2926
|
}
|