fix: improve respawn action log visibility and retention

- Loosen filter to show AI check verdicts, detection confirmations
- Increase history from 20 to 50 entries
- Increase display height from 100px to 150px
- Fix subagents panel toggle icon (down when open)
- Increase subagents panel height when expanded

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
arkon
2026-01-25 20:43:30 +01:00
co-authored by Claude Opus 4.5
parent 28fd933252
commit ddc55b7697
4 changed files with 16 additions and 12 deletions
+1 -1
View File
@@ -21,7 +21,7 @@ When user says "COM": 1) Increment version in BOTH `package.json` AND `CLAUDE.md
Claudeman is a Claude Code session manager with a web interface and autonomous Ralph Loop. It spawns Claude CLI processes via PTY, streams output in real-time via SSE, and supports scheduled/timed runs.
**Version**: 0.1364 (must match `package.json`)
**Version**: 0.1365 (must match `package.json`)
**Tech Stack**: TypeScript (ES2022/NodeNext, strict mode), Node.js, Fastify, Server-Sent Events, node-pty
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "claudeman",
"version": "0.1364",
"version": "0.1365",
"description": "The missing control plane for Claude Code - run 20 autonomous agents with real-time monitoring and session persistence",
"type": "module",
"main": "dist/index.js",
+13 -9
View File
@@ -2282,20 +2282,24 @@ class ClaudemanApp {
// ========== Countdown Timer Display Methods ==========
addActionLogEntry(sessionId, action) {
// Filter to important actions only
// Skip: timer starts/cancels, detection updates, ai-check status
// Keep: command (sent to console), plan-check (with action), step (completions)
if (action.type === 'timer' || action.type === 'timer-cancel') return;
if (action.type === 'detection') return;
if (action.type === 'ai-check') return;
if (action.type === 'plan-check' && !action.detail.includes('sending')) return;
if (action.type === 'step' && !action.detail.includes('completed')) return;
// Filter to important actions - keep more for visibility
// Skip: timer starts (but keep cancels with reason), routine detection spam
if (action.type === 'timer') return;
// Keep timer-cancel only if it has a meaningful reason
if (action.type === 'timer-cancel' && !action.detail) return;
// Keep detection only for completion/silence confirmed events
if (action.type === 'detection' && !action.detail.includes('confirmed') && !action.detail.includes('Completion')) return;
// Keep ai-check only for verdicts (IDLE, WORKING) and errors
if (action.type === 'ai-check' && action.detail.includes('Spawning')) return;
// Keep plan-check for verdicts and actions
if (action.type === 'plan-check' && action.detail.includes('Spawning')) return;
if (!this.respawnActionLogs[sessionId]) {
this.respawnActionLogs[sessionId] = [];
}
this.respawnActionLogs[sessionId].unshift(action);
if (this.respawnActionLogs[sessionId].length > 20) {
// Keep more history (50 entries instead of 20)
if (this.respawnActionLogs[sessionId].length > 50) {
this.respawnActionLogs[sessionId].pop();
}
}
+1 -1
View File
@@ -521,7 +521,7 @@ body {
.respawn-action-log {
flex: 1;
max-height: 100px;
max-height: 150px;
overflow-y: auto;
font-size: 0.7rem;
opacity: 0.9;