LI

lindy-observability

A guide to monitoring Lindy AI agent task completion, credit consumption, and step failures via webhooks and metrics.

Install

mkdir -p .claude/skills/lindy-observability && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/9294" && unzip -o skill.zip -d .claude/skills/lindy-observability && rm skill.zip

Installs to .claude/skills/lindy-observability

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Monitor Lindy AI agent health, task success rates, and credit consumption.
74 charsno explicit “when” trigger
Advanced

Key capabilities

  • Monitor task completion rates
  • Configure alerts for failed tasks
  • Collect metrics via webhook callbacks
  • Visualize performance in dashboards

How it works

Observability is implemented by using Lindy's built-in task history or by configuring agents to send execution data to an external metrics endpoint via HTTP Request actions.

Inputs & outputs

You give it
Agent execution data
You get back
Performance metrics and failure alerts

When to use lindy-observability

  • Monitor agent task completion
  • Build dashboards for agent performance
  • Track credit consumption over time
  • Configure alerts for failed tasks

About this skill

Lindy Observability

Overview

Monitor Lindy AI agent execution health, task completion rates, step-level failures, trigger frequency, and credit consumption. Lindy provides built-in task history in the dashboard. External observability requires webhook callbacks, the Task Completed trigger, and application-side metrics collection.

Prerequisites

  • Lindy workspace with active agents
  • For external monitoring: webhook receiver + metrics stack (Prometheus/Grafana, Datadog)
  • For alerts: Slack or email integration configured

Key Observability Signals

SignalSourceWhy It Matters
Task completion rateTasks tab / callbackMeasures agent reliability
Task durationTask detail viewTracks performance over time
Step failure rateTask detail (red steps)Identifies broken actions
Credit consumptionBilling dashboardBudget tracking
Trigger frequencyTask count over timeDetects trigger storms
Agent error rateFailed tasks / total tasksOverall health indicator

Instructions

Step 1: Dashboard Monitoring (Built-In)

Lindy's Tasks tab provides per-agent monitoring:

  1. Open agent > Tasks tab
  2. Filter by status: Completed, Failed, In Progress
  3. For failed tasks: click to see which step failed and why
  4. Track patterns: same step failing? same time of day? same trigger type?

Step 2: Task Completed Trigger (Agent-to-Agent Monitoring)

Use Lindy's built-in Task Completed trigger to build an observability agent:

Monitoring Agent:
  Trigger: Task Completed (from Production Support Agent)
  Condition: "Go down this path if the task failed"
    → Action: Slack Send Channel Message to #ops-alerts
      Message: "Support Agent task failed: {{task.error}}"
  Condition: "Go down this path if task duration > 30 seconds"
    → Action: Slack Send Channel Message to #ops-alerts
      Message: "Support Agent slow: {{task.duration}}s"

Step 3: Webhook-Based Metrics Collection

Configure agents to call your metrics endpoint on task completion:

// metrics-collector.ts — Receive agent metrics via HTTP Request action
import express from 'express';
import { Counter, Histogram, Gauge } from 'prom-client';

const app = express();
app.use(express.json());

// Prometheus metrics
const taskCounter = new Counter({
  name: 'lindy_tasks_total',
  help: 'Total Lindy agent tasks',
  labelNames: ['agent', 'status'],
});

const taskDuration = new Histogram({
  name: 'lindy_task_duration_seconds',
  help: 'Lindy task execution duration',
  labelNames: ['agent'],
  buckets: [1, 2, 5, 10, 30, 60, 120],
});

const creditGauge = new Gauge({
  name: 'lindy_credits_consumed',
  help: 'Credits consumed per task',
  labelNames: ['agent'],
});

// Receive metrics from Lindy HTTP Request action
app.post('/lindy/metrics', (req, res) => {
  const auth = req.headers.authorization;
  if (auth !== `Bearer ${process.env.LINDY_WEBHOOK_SECRET}`) {
    return res.status(401).json({ error: 'Unauthorized' });
  }

  const { agent, status, duration, credits } = req.body;

  taskCounter.inc({ agent, status });
  taskDuration.observe({ agent }, duration);
  creditGauge.set({ agent }, credits);

  res.json({ recorded: true });
});

// Prometheus scrape endpoint
app.get('/metrics', async (req, res) => {
  res.set('Content-Type', 'text/plain');
  res.send(await register.metrics());
});

Lindy agent configuration: Add an HTTP Request action as the last step in each monitored agent:

  • URL: https://monitoring.yourapp.com/lindy/metrics

  • Method: POST

  • Body (Set Manually):

    {
      "agent": "support-bot",
      "status": "{{task.status}}",
      "duration": "{{task.duration}}",
      "credits": "{{task.credits}}"
    }
    

Step 4: Grafana Dashboard Panels

Key panels for a Lindy monitoring dashboard:

PanelMetricType
Task Success Raterate(lindy_tasks_total{status="completed"}[1h])Percentage gauge
Task Failuresrate(lindy_tasks_total{status="failed"}[1h])Counter
Duration p50/p95histogram_quantile(0.95, lindy_task_duration_seconds)Time series
Credit Burn Raterate(lindy_credits_consumed[1h])Counter
Active AgentsCount of agents with tasks in last 24hStat panel
Trigger FrequencyTasks per hour by agentBar chart

Step 5: Alert Rules

# Prometheus alert rules
groups:
  - name: lindy
    rules:
      - alert: LindyAgentHighFailureRate
        expr: rate(lindy_tasks_total{status="failed"}[30m]) > 0.1
        for: 10m
        labels:
          severity: warning
        annotations:
          summary: "Lindy agent {{ $labels.agent }} failure rate > 10%"

      - alert: LindyAgentDown
        expr: absent(lindy_tasks_total{agent="support-bot"}[1h])
        for: 30m
        labels:
          severity: critical
        annotations:
          summary: "No tasks from support-bot in 1 hour"

      - alert: LindyCreditsBurnRate
        expr: rate(lindy_credits_consumed[1h]) * 720 > 5000
        for: 15m
        labels:
          severity: warning
        annotations:
          summary: "Credit burn rate will exhaust monthly budget"

Step 6: Evals (Built-In Quality Monitoring)

Use Lindy Evals to catch quality regressions:

  1. Click the test tube icon below any agent step

  2. Define scoring criteria (LLM-as-judge):

    Score 1 (pass) if the response is professional, accurate, and under 200 words.
    Score 0 (fail) if the response contains hallucinations or exceeds 200 words.
    
  3. Run evals against historical task data

  4. Track scores over time to detect quality drift

Note: Eval runs consume credits but do NOT execute real actions (safe simulation).

Observability Maturity Levels

LevelWhat You MonitorHow
L0NothingManual dashboard checks
L1Task failuresTask Completed trigger + Slack alerts
L2Success rate + durationHTTP Request action + Prometheus
L3Credit burn + qualityEvals + Grafana dashboards
L4Automated remediationMonitoring agent auto-restarts failed agents

Error Handling

IssueCauseSolution
Metrics endpoint downMonitoring server crashedAlert on scrape failures
Task Completed not firingMonitoring agent pausedCheck monitoring agent is active
Credit burn alert false positiveLegitimate traffic spikeTune alert threshold
Eval scores droppingPrompt drift or model changeReview recent prompt/model changes

Resources

Next Steps

Proceed to lindy-incident-runbook for incident response procedures.

When not to use it

  • When monitoring requirements are limited to basic dashboard checks
  • When the agent environment is too small to justify external metrics

Prerequisites

Lindy workspace with active agentsWebhook receiver and metrics stackSlack or email integration for alerts

Limitations

  • External monitoring requires a separate metrics stack
  • Eval runs consume credits

How it compares

It provides a tiered maturity model for observability, ranging from built-in dashboard checks to automated remediation agents.

Compared to similar skills

lindy-observability side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
lindy-observability (this skill)027dCautionAdvanced
distributed-tracing52moNo flagsIntermediate
service-mesh-observability52moNo flagsAdvanced
observability-engineer124moNo flagsAdvanced

Try saying

Example prompts that trigger this skill in your AI assistant.

More by jeremylongshore

View all by jeremylongshore

analyzing-logs

jeremylongshore

Analyze application logs to detect performance issues, identify error patterns, and improve stability by extracting key insights.

14123

ollama-setup

jeremylongshore

Configure auto-configure Ollama when user needs local LLM deployment, free AI alternatives, or wants to eliminate hosted API costs. Trigger phrases: "install ollama", "local AI", "free LLM", "self-hosted AI", "replace OpenAI", "no API costs". Use when appropriate context detected. Trigger with relevant phrases based on skill purpose.

1167

backtesting-trading-strategies

jeremylongshore

Backtest crypto and traditional trading strategies against historical data. Calculates performance metrics (Sharpe, Sortino, max drawdown), generates equity curves, and optimizes strategy parameters. Use when user wants to test a trading strategy, validate signals, or compare approaches. Trigger with phrases like "backtest strategy", "test trading strategy", "historical performance", "simulate trades", "optimize parameters", or "validate signals".

1071

generating-database-seed-data

jeremylongshore

Process this skill enables AI assistant to generate realistic test data and database seed scripts for development and testing environments. it uses faker libraries to create realistic data, maintains relational integrity, and allows configurable data volumes. u... Use when working with databases or data models. Trigger with phrases like 'database', 'query', or 'schema'.

1033

cursor-codebase-indexing

jeremylongshore

Execute set up and optimize Cursor codebase indexing. Triggers on "cursor index setup", "codebase indexing", "index codebase", "cursor semantic search". Use when working with cursor codebase indexing functionality. Trigger with phrases like "cursor codebase indexing", "cursor indexing", "cursor".

885

testing-mobile-apps

jeremylongshore

Execute mobile app testing on iOS and Android devices/simulators. Use when performing specialized testing. Trigger with phrases like "test mobile app", "run iOS tests", or "validate Android functionality".

810

You might also like

distributed-tracing

wshobson

Implement distributed tracing with Jaeger and Tempo to track requests across microservices and identify performance bottlenecks. Use when debugging microservices, analyzing request flows, or implementing observability for distributed systems.

577

service-mesh-observability

wshobson

Implement comprehensive observability for service meshes including distributed tracing, metrics, and visualization. Use when setting up mesh monitoring, debugging latency issues, or implementing SLOs for service communication.

574

observability-engineer

sickn33

Build production-ready monitoring, logging, and tracing systems. Implements comprehensive observability strategies, SLI/SLO management, and incident response workflows. Use PROACTIVELY for monitoring infrastructure, performance optimization, or production reliability.

1242

prometheus-configuration

wshobson

Set up Prometheus for comprehensive metric collection, storage, and monitoring of infrastructure and applications. Use when implementing metrics collection, setting up monitoring infrastructure, or configuring alerting systems.

645

langfuse

davila7

Expert in Langfuse - the open-source LLM observability platform. Covers tracing, prompt management, evaluation, datasets, and integration with LangChain, LlamaIndex, and OpenAI. Essential for debugging, monitoring, and improving LLM applications in production. Use when: langfuse, llm observability, llm tracing, prompt management, llm evaluation.

743

slo-implementation

wshobson

Define and implement Service Level Indicators (SLIs) and Service Level Objectives (SLOs) with error budgets and alerting. Use when establishing reliability targets, implementing SRE practices, or measuring service performance.

338

Search skills

Search the agent skills registry