Fix agents.json race condition on concurrent starts

Re-read agents.json immediately before writing in startAgent to avoid
one start overwriting another's entry. Also clean stale sockets before
starting new agents.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-07 13:54:54 +00:00
parent 36af68da90
commit 7ead9c86c5
3 changed files with 10 additions and 3 deletions

View File

@@ -197,7 +197,7 @@ export async function runOverseer(config: OverseerConfig) {
for (const name of knownAgents) {
if (!currentNames.has(name)) {
log(`Agent "${name}" died, cleaned up.`);
bot.say("#agents", `Agent "${name}" has died and been cleaned up.`);
bot.say(config.channel, `Agent "${name}" has died and been cleaned up.`);
}
}
knownAgents = currentNames;