Skip to content

v1.5.0 - Resource Exhaustion Monitoring

Choose a tag to compare

@blackms blackms released this 27 Jan 23:20
· 77 commits to main since this release

What's New

🛡️ Resource Exhaustion Monitoring

Detect and prevent runaway agents consuming excessive resources without producing meaningful deliverables.

  • Per-Agent Tracking: Track files accessed, API calls, subtasks spawned, tokens consumed
  • Phase Progression: normal → warning → intervention → termination
  • Configurable Thresholds: Set limits for each resource type
  • Pause/Resume Control: Automatically pause agents exceeding thresholds
  • Deliverable Checkpoints: Reset time-based tracking when agents produce results
  • Slack Notifications: Alert on warnings, interventions, and terminations
  • Prometheus Metrics: Full observability with counters, gauges, histograms

🎯 Semantic Drift Detection

Detect when task descriptions are semantically similar to ancestors (from v1.5.0-beta).

  • Embedding-based Similarity: Uses OpenAI or Ollama embeddings
  • Configurable Thresholds: threshold (block/warn) and warningThreshold (warn only)
  • Task Relationships: Track parent_of, derived_from, depends_on, supersedes

Configuration

{
  "resourceExhaustion": {
    "enabled": true,
    "thresholds": {
      "maxFilesAccessed": 50,
      "maxApiCalls": 100,
      "maxSubtasksSpawned": 20,
      "maxTimeWithoutDeliverableMs": 1800000,
      "maxTokensConsumed": 500000
    },
    "warningThresholdPercent": 0.7,
    "autoTerminate": false,
    "pauseOnIntervention": true
  }
}

New REST API Endpoints

  • GET /api/v1/agents/:id/resources - Get agent resource metrics
  • POST /api/v1/agents/:id/deliverable - Record deliverable checkpoint
  • POST /api/v1/agents/:id/pause - Pause an agent
  • POST /api/v1/agents/:id/resume - Resume a paused agent
  • GET /api/v1/system/resources - Resource exhaustion summary

Stats

  • 41 MCP tools (added 8 Identity tools, 3 Task drift tools)
  • 11 specialized agents
  • 6 LLM providers
  • 70 new unit tests for resource exhaustion (100% line coverage)

Full Changelog

v1.4.0...v1.5.0