{"id":13067,"plugin_id":"plugin_asdk_app_6a6318aaee888191a823829387f922a5","kind":"skill","collection_source":null,"comparison_source":null,"observed_at":"2026-09-30T23:02:55.907Z","digest":"e9d5eb0cd28e77e57edda770911b1f131296335f2fc56d6d2596855b1b08ecd1","against":null,"payload":{"description":"Produce a weekly performance report across all connected platforms.","included_files":[],"name":"kreel-weekly-report","skill_md_contents":"---\nname: kreel-weekly-report\ndescription: \"Produce a weekly performance report across all connected platforms.\"\n---\n\nInputs: `<week_of>`. Collect any missing value from the user, then substitute it wherever the placeholder appears below.\n\nIf more than one brand is reachable, call `list_brands` first and pass `brand` on every call.\n\nProduce the Kreel weekly performance report for the week of <week_of>.\n\n1. Call `get_brand_context` once. If it is not empty, write in the brand's voice and judge every metric against the brand's saved targets (target_roas, target_cpa, target_aov).\n2. Call `get_performance` with entity_type='account', platform='all', date_range={\"days\": 7}, compare_to_previous=True for the cross-platform channel breakdown. Each channel row carries a `vs_previous` block and `summary.vs_previous` carries blended MER - these are your week-over-week deltas. Do NOT call `compare` for period math: it compares subjects over one shared window, not this-week-vs-last-week.\n3. Call `get_performance` with entity_type='campaign' (limit 10, compare_to_previous=True) for the top movers, and `get_creatives` (platform='meta', date_range={\"days\": 7}) for the creative section.\n\nRender the report with these sections, in order:\n- Headline: the one-sentence takeaway.\n- Channel table: spend, revenue, ROAS, CPA, orders per channel, with week-over-week deltas from each row's `vs_previous`.\n- Creative: top and bottom performers; flag fatigue from each creative's `fatigue` block (rising frequency trend, or CTR/hook-rate trend down >20%).\n- Flags & risks: deliverability < 95%, learning-phase stalls, any metric off the brand's target.\n- One question the numbers raise.\n- Three numbered next actions.\n\nUse generic, standard thresholds where the brand has no target set. Be concise and specific; cite the numbers.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}