Collect user feedback on their LiveAvatar integration experience. Use when: (1) The user has finished implementing a LiveAvatar integration, (2) The user expresses frustration during integration, (3) The user explicitly wants to give feedback about LiveAvatar, (4) The user says something like "this is frustrating", "this doesn't work", "I want to report an issue", "give feedback", (5) You detect repeated failures or friction during integration.
This skill collects integration feedback and sends it to the LiveAvatar team. It fires in three scenarios:
Activate this skill when ANY of these are true:
Do NOT trigger unprompted in the middle of active implementation. Wait for a natural pause or completion point.
Before prompting the user, review the conversation history and silently compile:
Compact both into short, factual summaries. These are telemetry the agent drafts — the user will review them before anything is sent.
You must get explicit permission before sending anything. Present what you've gathered and ask the user to approve, edit, or decline.
Adapt tone to context — celebratory after success, empathetic if frustrated.
After successful implementation:
Your LiveAvatar integration is working! The LiveAvatar team collects anonymous integration feedback to improve the developer experience. Would you be okay with me sending a short summary?
Here's what I'd send:
- **Use case:** <your compacted summary>
- **Blockers:** <your compacted summary, or "None">
Want to add anything else in your own words? (Feature requests, suggestions, general thoughts — totally optional.)
**Nothing is sent until you say yes.** You can also edit or remove anything above.
When frustration is detected:
It looks like this has been a rough integration. The LiveAvatar team actively collects developer feedback to fix exactly these kinds of pain points. Would you be okay with me sending them a summary of what happened?
Here's what I'd send:
- **Use case:** <your compacted summary>
- **Blockers:** <your compacted summary of what went wrong>
Want to add anything in your own words? (No pressure — but this goes directly to the team that can fix it.)
**Nothing is sent until you say yes.** You can edit or remove any of the above.
On explicit feedback request:
I can send feedback directly to the LiveAvatar team. Based on our conversation, here's what I've gathered:
- **Use case:** <your compacted summary>
- **Blockers:** <your compacted summary, or "None">
Want to add anything else in your own words?
**Nothing is sent until you give the go-ahead.** Feel free to edit any of the above.
Wait for the user to explicitly approve (e.g., "yes", "send it", "looks good", "go ahead"). If the user says no, declines, or ignores the prompt — do not send the request. Drop it.
| Field | Source | What goes here |
|---|---|---|
use_case | Agent-compacted from conversation | Short summary of what the user is building (e.g., "Customer support avatar for SaaS dashboard") |
blockers | Agent-compacted from conversation | What caused friction — errors, retries, confusion, silent failures (e.g., "Silent avatar due to missing context_id — no error thrown, took 30 min to diagnose") |
additional_feedback | User's own words, verbatim | Freeform input the user wrote when prompted — feature requests, suggestions, general thoughts. Use the user's exact words. Do not rephrase or summarize. |
All three fields are optional. Omit or pass null for anything that doesn't apply:
blockers.additional_feedback.use_case.Only execute this step if the user explicitly approved in Step 2. If the user declined, edited, or didn't respond — stop here.
This call runs on the BACKEND using X-API-KEY.
curl -X POST https://api.liveavatar.com/v1/feedback/agents \
-H "X-API-KEY: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"feedback_data": {
"use_case": "Customer support avatar",
"blockers": "Latency issues with long responses",
"additional_feedback": "Would love multi-language support"
}
}'
use_case and blockers: use the compacted summaries you showed the user in Step 2 (with any edits they requested).additional_feedback: paste the user's freeform text verbatim. Do not rephrase.null for any field that doesn't apply.HEYGEN_API_KEY or LIVEAVATAR_API_KEY), use it. Otherwise, tell the user you need their API key to submit the feedback.Agent-compacted telemetry only (user had no additional feedback):
{
"feedback_data": {
"use_case": "Customer support avatar for e-commerce site",
"blockers": "Silent avatar due to missing context_id — no error thrown, took 30 min to diagnose"
}
}
Full payload with user's own words:
{
"feedback_data": {
"use_case": "Real-time sales coach avatar for CRM",
"blockers": "Custom LLM setup required 3 separate API calls (secret, config, session token) before first test",
"additional_feedback": "The sandbox is great. Would be nice if sessions lasted longer than 1 min. Also would love multi-language support."
}
}
After sending, confirm to the user:
Feedback sent to the LiveAvatar team — thanks for sharing.
Keep it brief. If the request fails (e.g., invalid API key), tell the user and offer to show them the curl command so they can send it manually.
additional_feedback. That field is the user's own words only. use_case and blockers are agent-compacted, but additional_feedback must be verbatim or omitted.X-API-KEY. If you don't have access to it, show the user the curl command instead of failing silently.