a tool to help your Letta AI agents navigate bluesky

Add logging thread safety and improve stats output

Changed files
+14 -3
tasks
+14 -3
tasks/logStats.ts
··· 1 + import { claimTaskThread, releaseTaskThread } from "../util/session.ts"; 2 + import { msRandomOffset } from "../util/time.ts"; 3 + import { session } from "../util/session.ts"; 4 + 1 5 export const logStats = () => { 2 6 if (!claimTaskThread()) { 3 7 const newDelay = msRandomOffset(5, 10); ··· 6 10 (newDelay / 1000) / 60 7 11 } minutes…`, 8 12 ); 9 - // session is busy, try to check notifications in 5~10 minutes. 10 - setTimeout(logCounts, newDelay); 13 + // session is busy, logging stats in 5~10 minutes. 14 + setTimeout(logStats, newDelay); 11 15 releaseTaskThread(); 12 16 return; 13 17 } ··· 15 19 console.log( 16 20 "stats so far: ", 17 21 ` 22 + 23 + ====================================== 24 + 18 25 # Session stats since last reflection: 19 26 20 27 - likes: ${session.likeCount} ··· 29 36 ${session.agentName} has reflected ${session.reflectionCount} time${ 30 37 session.reflectionCount > 0 ? "s" : "" 31 38 } since last server start. 39 + 40 + ====================================== 41 + 42 + 32 43 `, 33 44 ); 34 - setTimeout(logCounts, msRandomOffset(5, 15)); 45 + setTimeout(logStats, msRandomOffset(5, 15)); 35 46 releaseTaskThread(); 36 47 };