From lindy-pack
Guides building first Lindy AI agent: webhook trigger receives payload, LLM summarizes it, Slack posts notification. Test via curl. For Lindy beginners and setup verification.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin lindy-packThis skill is limited to using the following tools:
Build a minimal Lindy AI agent: **Webhook Received** trigger -> LLM processing ->
Sets up Lindy AI inbound webhook triggers, outbound HTTP requests, and async callbacks for event-driven agent integrations.
Mandates invoking relevant skills via tools before any response in coding sessions. Covers access, priorities, and adaptations for Claude Code, Copilot CLI, Gemini CLI.
Share bugs, ideas, or general feedback.
Build a minimal Lindy AI agent: Webhook Received trigger -> LLM processing -> Slack notification. Demonstrates the three core building blocks every Lindy agent uses: Trigger, Agent Step (prompt + model + skills), and Action.
lindy-install-auth setupWhen I send a webhook, summarize the message and post it to Slack
https://public.lindy.ai/api/v1/webhooks/<unique-id>
#general (or test channel)Summarize the webhook payload in one sentence.
Payload: {{webhook_received.request.body}}
Open Settings > Prompt:
You are a webhook summarizer. When you receive a webhook payload,
extract the key information and create a concise one-sentence summary.
Be factual and specific. Do not add opinions or speculation.
curl -X POST "https://public.lindy.ai/api/v1/webhooks/YOUR_ID" \
-H "Authorization: Bearer YOUR_SECRET" \
-H "Content-Type: application/json" \
-d '{
"event": "order.created",
"customer": "Jane Doe",
"amount": 149.99,
"items": ["Widget Pro", "Adapter Cable"]
}'
Expected Slack message:
Jane Doe placed a $149.99 order for Widget Pro and Adapter Cable.
Navigate to the Tasks tab in your agent view. Confirm status shows Completed. Click into the task to see each step's input/output for debugging.
| Component | Purpose | Hello World Value |
|---|---|---|
| Prompt | Core behavioral instructions | "Summarize webhook payloads" |
| Model | AI engine powering decisions | Default (GPT-4 / Claude / Gemini) |
| Skills | Available actions & tools | Slack Send Channel Message |
| Exit Conditions | When the task is "done" | Message sent successfully |
| Variable | Contents |
|---|---|
{{webhook_received.request.body}} | Full JSON payload |
{{webhook_received.request.headers}} | HTTP request headers |
{{webhook_received.request.query}} | URL query parameters |
| Mode | Behavior | Credit Cost |
|---|---|---|
| Auto | Agent determines value from context | Standard |
| AI Prompt | Natural language instructions generate content | Standard |
| Set Manually | Exact value, no AI processing | Lower |
Replace the Slack action with Gmail Send Email:
"Summary: {{webhook_received.request.body.event}}""Summarize this event: {{webhook_received.request.body}}"| Issue | Cause | Solution |
|---|---|---|
| Webhook returns 401 | Missing Authorization header | Add Bearer <secret> header |
| Slack message not sent | Channel not authorized | Re-authorize Slack in Lindy |
| Task shows "Failed" | Action misconfigured | Check field references in step config |
| No task created | Agent not active | Publish/activate the agent |
| Empty summary | Payload not reaching LLM | Verify {{webhook_received.request.body}} reference |
~1-3 credits per invocation on basic models. Free tier (400 credits/month) supports ~130-400 test runs per month.
Proceed to lindy-core-workflow-a for a full multi-step agent workflow.