INNER CODE UNIT · Python
api_agents_active
evolution-foundation/evo-nexus · dashboard/backend/app.py:960
def api_agents_active():
"""Return currently active agents from hook-generated status file."""
import json
status_file = WORKSPACE / ".claude" / "agent-status.json"
try:
if status_file.is_file():
data = json.loads(status_file.read_text())
# Filter entries older than 10 minutes (stale)
from datetime import datetime, timezone, timedelta
cutoff = datetime.now(timezone.utc) - timedelta(minutes=10)
active = []
for entry in data.get("active_agents", []):
try:
started = datetime.fromisoformat(entry["started_at"].replace("Z", "+00:00"))
if started > cutoff:
active.append(entry)
except (KeyError, ValueError):
pass