skills/meta-ads-analyzer/SKILL.md
Provides expert-level analysis and diagnosis for Meta Ads campaigns. Use this skill to interpret performance data, identify root causes of issues, and generate actionable recommendations, with a special focus on correctly handling the 'Breakdown Effect'.
npx skillsauth add garrettroi/open-manus meta-ads-analyzerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
[!DANGER] CRITICAL: FAILURE TO FOLLOW THE RULES IN THIS DOCUMENT WILL RESULT IN TASK FAILURE.
[!IMPORTANT] SCOPE: These rules in the skill apply to EVERY tool calling, especially for tools like
file,messageand parameter likebreif. Compliance is required at all times, not just in the final deliverable.
These are the most common failure points. They are not guidelines; they are absolute requirements.
"Accounts Center accounts". The words "people" and "person" are forbidden in these contexts.Common failure point: When defining
Reach, you MUST use the exact wording from Section 2: "The number of Accounts Center accounts that saw your ads at least once." Do NOT paraphrase as "unique users", "people", or "viewers".
"Clicks (all)" or "Link clicks". NEVER use the word "clicks" alone, especially when presenting numerical values from the API. See Section 2 for detailed definitions.Standardized display name from the glossary in Section 2.Total, Overall, or Average to standard metric names (e.g.,~~ Total Impressions,Total clicks(all)~~). If you need to express an aggregate sum, rephrase the sentence instead , but NEVER place any prefix directly before the metric name. This rule applies to ALL metrics, not just those listed in Section 2.Video views or Video View Rate. Use the specific metric from the glossary, such as 3-second video plays.currency field from the ad account context. For example, if the API returns spend: 150.50 and the account currency is USD, report it as $150.50.null for this."N/A" for "Cost per result" and "Results" — do NOT compute these metrics.null for metrics that cannot be computed or are unavailable. Additionally, presenting fabricated numbers destroys trust and leads to incorrect business decisions.null, display "Data not available" or "N/A" — do NOT report the raw null value.This section is the single source of truth for all metrics. When referring to any metric, you MUST use the exact standardized display name from the table below—do NOT invent alternative names, abbreviate, or reword them (e.g., "3-second video plays", NOT "video views" or "3-second video play"). When mentioning these metrics' definitions, you MUST use the exact definitions below verbatim. Do NOT paraphrase, expand, or add any interpretation of your own. Pay attention to capitalization—use sentence case (e.g., "Messaging conversations started", NOT "Messaging Conversations Started").
| Raw metric name | Standardized display name | Definition |
| :--- | :--- | :--- |
| impressions | Impressions | The number of times your ads were on screen. |
| reach | Reach | The number of Accounts Center accounts that saw your ads at least once. Reach is different from impressions, which may include multiple views of your ads by the same Accounts Center accounts. |
| clicks | Clicks (all) | The number of clicks, taps or swipes on your ads. |
| inline_link_clicks | Link clicks | The number of clicks on links within the ad that led to advertiser-specified destinations, on or off Meta technologies. |
| video_thruplay_watched_actions | ThruPlays | The number of times your video was played to completion, or for at least 15 seconds. |
| video_views | 3-second video plays | The number of times your video played for at least 3 seconds, or for nearly its total length if it's shorter than 3 seconds. For each impression of a video, video plays are counted separately and exclude any time spent replaying the video. |
| spend | Amount spent | The approximate total amount of money you've spent on your campaign, ad set or ad during its schedule. |
| purchase_roas | Purchase ROAS (return on ad spend) | The total return on ad spend (ROAS) from purchases. This is based on approximate Shop sales that occurred on Meta technologies, such as Shops, Marketplace, Pages or Messenger as well as information received from one or more of your connected Meta Business Tools and attributed to your ads. |
| cpm | CPM (cost per 1,000 impressions) | The average cost for 1,000 impressions. |
| cpc | CPC (all) | The average cost for each click (all). |
| ctr | CTR (all) | The percentage of impressions where a click (all) occurred out of the total number of impressions. |
| cost_per_result | Cost per result | The average cost per result from your ads. |
| inline_link_click_ctr | CTR (link click-through rate) | The percentage of times Accounts Center accounts saw your ads and performed a link click. |
| cost_per_inline_link_click | CPC (cost per link click) | The average cost for each link click. |
| actions:onsite_conversion.messaging_conversation_started_7d | Messaging conversations started (MCS) | The number of times a messaging conversation was started with your business after at least 7 days of inactivity, attributed to your ads. |
| cost_per_action_type | Cost per 3-second video play | The average cost of each 3-second video play.|
| unique_video_continuous_2_sec_watched_actions | Unique 2-second continuous video plays | The number of Accounts Center accounts that performed a 2-second continuous video view. |
| video_continuous_2_sec_watched_actions | 2-second continuous video plays | The number of times your video was played for 2 continuous seconds or more. 2-second continuous video plays will have at least 50% of the video pixels in view. |
| cost_per_2_sec_continuous_video_view | Cost per 2-second continuous video play | The average cost for each 2-second continuous video play. |
| video_30_sec_watched_actions | 30-second video views | The number of times your video played for at least 30 seconds, or for nearly its total length if it's shorter than 30 seconds. For each impression of a video, we'll count video views separately and exclude any time spent replaying the video. |
| quality_ranking | Quality ranking | A ranking of your ad's perceived quality. Quality is measured using feedback on your ads and the post-click experience. Your ad is ranked against ads that competed for the same audience. |
| conversion_rate_ranking | Conversion rate ranking | A ranking of your ad's expected conversion rate. Your ad is ranked against ads with your optimization goal that competed for the same audience. |
| engagement_rate_ranking | Engagement rate ranking | A ranking of your ad's expected engagement rate. Engagement includes all clicks, likes, comments and shares. Your ad is ranked against ads that competed for the same audience. |
Reference documents: Start by reading references/breakdown_effect.md.
get_recommendations API, or explicitly state why you are diverging.Use this skill to analyze and diagnose Meta Ads campaign performance, including interpreting data, identifying root causes, generating recommendations, and understanding budget allocation.
development
# Voice Sanitizer This skill cleans up text before it is sent to the Text-to-Speech (TTS) engine. It removes technical jargon, code blocks, and long URLs to ensure the agent sounds natural and conversational in voice chat. ## Usage To sanitize text for speech, run the following command in the terminal: ```bash python3 /app/skills/voice_sanitizer/sanitizer.py "Your long, technical text with `code` and https://links.com/long-url" ``` ### Example Output ```text Your long, technical text with a
tools
Professional AI video production workflow. Use when creating videos, short films, commercials, or any video content using AI generation tools.
tools
Secure API key access from the centralized vault. Fetch keys on-demand without storing them in environment variables.
testing
# Task Board — Persistent Task Tracking for Open Manus This skill provides a shared task board backed by Redis. Harmony uses it to track delegated work across all agents, and agents use it to report progress and completion. ## When to Use - **Harmony**: Use this whenever you delegate a task to an agent. Add the task to the board, then check the board periodically to follow up. - **Worker Agents**: Use this to update your task status or mark tasks as complete. ## Commands ### Add a new task