Proactive Agents

Always-on agents that monitor conditions and act autonomously — without waiting for you to trigger a run. They watch your Knowledge Graph, memory, and external APIs, then start workflows or send notifications when something changes.


On-demand vs. Proactive

A regular workflow runs when you (or an API call) trigger it. A proactive agent runs a heartbeat loop on a configurable interval — every minute, every 5 minutes, every hour, or daily — and decides on its own whether to act based on what it observes.

This turns AgentLed into a monitoring layer. Instead of you checking dashboards, the agent checks them for you and only surfaces what matters.


Monitor Types

Each proactive agent defines one or more monitors. All monitors must pass (or any, depending on your conditionOperator) before the agent fires its actions.

Knowledge Graph List

Watch a Knowledge List for changes. Fire when new rows appear, when row count crosses a threshold, or when a specific field changes on any row.

Conditions: new_rows · row_count_above · row_count_below · field_changed

Knowledge Graph Insight

Fire when a new insight is written to the KG with at least a minimum impact score. Useful for acting on high-signal AI discoveries without polling.

Persistent Memory

Monitor a memory key and fire when its value crosses a threshold or changes. Combine with workflow-scope memory to build self-adjusting feedback loops.

Operators: == · != · > · < · changed · exists

Execution History

Fire based on patterns in past executions: no run in the last N hours, consecutive failures, or success rate dropping below a threshold.

Patterns: no_execution_since · consecutive_failures · success_rate_below

External API

Poll an external HTTP endpoint, extract a value with a JSONPath expression, and fire when that value meets a condition. No custom integration required.


Actions

When monitors pass, the agent runs one or more actions:

  • Start Workflow — Trigger a specific workflow with optional input. The monitor decides whether to act; the workflow decides how.
  • Notify — Send a message to Slack, email, or the in-app notification center without starting a full workflow.
  • Store Memory — Write a fact or counter to persistent memory. Useful for bookkeeping (e.g., tracking the last time the agent fired).

Configuration

{
  monitorInterval: "15m",       // 1m | 5m | 15m | 1h | 6h | 24h
  conditionOperator: "and",     // all monitors must pass; "or" = any one
  cooldownMs: 3600000,          // 1 hour between fires on same trigger
  maxActionsPerDay: 10,         // safety cap
  pauseOnConsecutiveErrors: 3,  // auto-pause after N failures

  monitors: [
    {
      type: "kg_list",
      listKey: "prospects",
      condition: "new_rows",
      threshold: 5
    }
  ],
  actions: [
    {
      type: "start_workflow",
      workflowId: "wf_enrich_and_score"
    },
    {
      type: "notify",
      channel: "slack",
      message: "{{monitors.0.newRowCount}} new prospects ready"
    }
  ]
}

Example Use Cases

Daily Lead Digest

Monitor the prospects list for new rows every 24 hours. When there are new entries, trigger the enrichment + scoring workflow and send a Slack summary with the top 10 by score.

Score Drop Alert

Monitor a workflow-memory key avg_score_last_run for values below 60. When it drops, notify the team and pause the outreach workflow until a human reviews.

Stale Pipeline Monitor

Use an execution_history monitor set to no_execution_since: 48h. If the deal-sourcing workflow hasn't run in two days, send an email and log the gap to persistent memory.


Safety Controls

  • Cooldown — Prevents the agent from firing twice on the same trigger within a configurable window.
  • Max actions per day — Hard cap on how many times the agent can fire actions in a 24-hour window.
  • Auto-pause on errors — After N consecutive failures, the agent pauses itself and notifies the workspace admin.

Next Steps