skills/sales-chameleon/SKILL.md
Chameleon platform help — product tours, tooltips, microsurveys, launchers, HelpBar, interactive demos, A/B testing, Copilot AI, Ranger AI agent, automations. Use when product tours aren't showing or elements aren't targeting, users skip onboarding and activation is low, microsurvey response rates are low, not sure how to set up Chameleon tours or launchers, need to integrate Chameleon with Segment or analytics tools, or comparing Chameleon vs Pendo vs Appcues vs Whatfix. Do NOT use for push notifications (use /sales-push-notification) or email marketing automation (use /sales-email-marketing).
npx skillsauth add sales-skills/sales sales-chameleonInstall 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.
If references/learnings.md exists, read it first for accumulated platform knowledge.
What do you need help with?
What plan are you on?
What's the context?
Skip-ahead rule: if the user's prompt already contains enough context, skip to Step 2.
| Problem domain | Route to |
|---|---|
| In-app messaging strategy (not Chameleon-specific) | /sales-in-app-messaging [your question] |
| NPS/CSAT/VoC program design | /sales-customer-feedback [your question] |
| Push notifications | /sales-push-notification [your question] |
| Email marketing automation | /sales-email-marketing [your question] |
| Connecting Chameleon to CRM/tools | /sales-integration [your question] |
| Comparing DAP tools broadly | /sales-in-app-messaging [your question] |
When routing, provide the exact command: "This is a {problem domain} question — run: /sales-{skill} {user's original question}"
Read references/platform-guide.md for the full platform reference — modules, pricing, integrations, data model, workflows.
Answer the user's question using only the relevant section. Don't dump the full reference.
For API questions, also read references/chameleon-api-reference.md.
Focus on the user's specific situation. Key decision points:
chmln.identify() only for users who should see experiences./sales-in-app-messaging for Braze/Iterable alternatives.If you discover a gotcha, workaround, or tip not covered in references/learnings.md, append it there.
Best-effort from research — review these, especially items about plan-gated features and integration gotchas that may be outdated.
chmln.identify(), even if they never see an experience. One Capterra reviewer was charged for 5,000 MTUs during beta with only 2 people testing. Filter carefully.data-* attributes. The Debugger tool helps diagnose missing elements./sales-in-app-messaging — In-app messaging strategy across all platforms (Braze, Pendo, Appcues, Whatfix, Chameleon). Install: npx skills add sales-skills/sales --skill sales-in-app-messaging/sales-pendo — Pendo platform help (product analytics, guides, session replay, NPS). Install: npx skills add sales-skills/sales --skill sales-pendo/sales-whatfix — Whatfix platform help (enterprise DAP, Flows, Smart Tips, Mirror sandbox). Install: npx skills add sales-skills/sales --skill sales-whatfix/sales-customer-feedback — Customer feedback, NPS, CSAT, VoC strategy. Install: npx skills add sales-skills/sales --skill sales-customer-feedback/sales-integration — Connect sales tools with webhooks, Zapier, native integrations. Install: npx skills add sales-skills/sales --skill sales-integration/sales-do — Not sure which skill to use? The router matches any sales objective to the right skill. Install: npx skills add sales-skills/sales --skill sales-doUser says: "I built a product tour in Chameleon but some users don't see it. How do I debug this?"
Skill does: Walks through the Debugger tool (browser console commands), verifying segment targeting, checking display limits, confirming chmln.identify() is passing required properties, and testing element targeting selectors.
Result: Systematic debugging checklist — segment match, display rules, element presence, SDK initialization
User says: "We're evaluating Chameleon vs Pendo for onboarding our SaaS users. Which one?" Skill does: Compares Chameleon (deeper tour/tooltip customization, lower entry price, web-only) vs Pendo (retroactive analytics, mobile support, Resource Center, higher starting price). Asks about mobile needs, analytics requirements, and budget. Result: Decision framework based on mobile need, analytics depth, budget, and team technical capability
User says: "How do I run an NPS survey inside our app using Chameleon microsurveys?" Skill does: Explains microsurvey creation (NPS template), targeting (e.g., users with 30+ days tenure), rate limiting, response collection via API or webhook, and connecting responses to analytics tools via Segment. Result: NPS microsurvey setup with targeting, throttling, and data pipeline to analytics
Symptom: Tour step shows error or doesn't display because the target element can't be found
Cause: CSS selector changed (UI redesign, SPA route change), element not rendered yet, or element behind a lazy-loaded component
Solution: 1) Open Chameleon Debugger in browser console. 2) Check if the element exists on the page when the tour triggers. 3) Switch to stable data-chameleon attributes instead of class selectors. 4) For SPAs, use URL matching + element wait conditions. 5) Test on the exact page/state where the tour should appear.
Symptom: Installed Chameleon but can't see the builder overlay in your app
Cause: Script not loaded, domain not approved, ad blocker, or wrong environment
Solution: 1) Verify the Chameleon snippet is loading (check Network tab for fast.chameleon.io). 2) Approve your domain in Chameleon dashboard (Settings → Domains). 3) Disable ad blockers. 4) Ensure you're on a domain that matches your approved list, not localhost unless approved.
Symptom: Being charged for more MTUs than expected active users
Cause: chmln.identify() is called for every user who touches the app, including inactive, test, or bot users
Solution: 1) Only call chmln.identify() for users who should see experiences. 2) Filter out internal/test users before identify. 3) Use Chameleon's user cleanup or contact support to purge inactive profiles. 4) Monitor MTU count in dashboard and set alerts.
tools
UpViral platform help — viral referral marketing and list-building platform (by Emarky) for viral sweepstakes, giveaway/reward campaigns, pre-launch waiting lists, and milestone referral programs, with REST API (app.upviral.com/api/v1/), callback-URL webhooks, PHP SDK, fraud detection (IP-based suspicious-referral flagging), A/B testing, smart leaderboards, unlockable incentives, and 30+ native ESP/CRM integrations (Mailchimp, ActiveCampaign, ConvertKit, AWeber, HubSpot, Klaviyo, Intercom) plus Zapier/Make/Pipedream/Integrately/Pabbly. Use when UpViral campaigns aren't tracking referral points correctly, deciding between Starter $79/mo annual (10K leads, 1 brand, NO API) vs Business $119/mo (25K, 2 brands, API + webhooks unlocked) vs Premium $319/mo (100K, 5 brands, dedicated account manager), the API returns errors because you're on the Starter tier where API/webhooks are gated, building an UpViral→CRM or UpViral→data-warehouse pipeline with add_contact / get_leads / get_leads_points / add_points / get_custom_fields / lists methods (uvapikey + uvmethod form-encoded POST), interpreting fraud flags where same-IP referrals get marked suspicious and you must manually activate/delete/blacklist, setting up the Callback URL (webhook) to fire on reward-unlock events, Zapier New Lead / New Reward Unlocked triggers not firing, ClickFunnels/Shopify/funnel-builder integration breaking, the drag-and-drop page builder showing broken widgets or limited customization, the setup feeling long and complicated for your first campaign, or picking UpViral over Viral Loops / KickoffLabs / Vyper / Prefinery / Gleam / KingSumo / ShortStack for a viral campaign. Do NOT use for general newsletter audience growth strategy across all platforms (use /sales-audience-growth), newsletter monetization (use /sales-newsletter), KickoffLabs-specific help (use /sales-kickofflabs), no-code merge-tag newsletter referrals (use /sales-referralkit), SparkLoop paid recommendations (use /sales-sparkloop), or full-stack multi-level Level-1/2/3 referral/affiliate tracking (use /sales-referralhero).
development
ReferralHero platform help — full-stack referral, affiliate, waitlist, contest, and NPS platform with subscriber API, webhooks, Zapier, Mailchimp/Kit/AWeber/Klaviyo/ActiveCampaign/SendLane connectors, coupon codes, multi-level referral tracking (Level 1/2/3), anti-fraud, and 5,000 calls/hour rate limit. Use when ReferralHero campaigns aren't tracking referrals correctly, deciding between PRO $199/mo (10K members, includes API + webhooks) and PREMIUM $399/mo (50K members, adds ReCaptcha + SMS verification), authentication is failing with no_token or X-API-Key header is being ignored, multi-level referral counts (Level 2/3) aren't appearing for downline subscribers, coupon group endpoints return 404 or coupon arrays max out, hitting the 5,000 calls/hour soft limit and getting too_many_calls 429s, the Mailchimp/Kit native integration is double-adding subscribers, webhook payloads aren't firing on confirmation events, importing Stripe customer IDs through transaction tracking, generating reward fulfillment when subscribers cross milestone thresholds (promote/unlock_promoted_reward), comparing ReferralHero against SparkLoop/ReferralKit/Viral Loops/GrowSurf/KickoffLabs for referral marketing, or routing referral data via add_bulk_transactions (500-transaction batch limit). Do NOT use for general newsletter audience growth strategy (use /sales-audience-growth), general newsletter monetization (use /sales-newsletter), no-code newsletter-only referral with merge-tag insertion (use /sales-referralkit), SparkLoop's paid recommendations or partner network (use /sales-sparkloop), or affiliate program strategy across many platforms (use /sales-affiliate-program).
tools
KickoffLabs platform help — viral marketing platform for pre-launch waitlists, bonus-entry giveaways, milestone-reward referral programs, leaderboard giveaways, and email opt-in bribes with REST API v1 + v2, server-side webhooks (in/out), KOL.js JavaScript library, AnyForm script for custom pages, fraud detection (duplicate_ip / bounced / duplidate_email flags), SMS verification add-on, native ESP integrations (Klaviyo, Mailchimp, ActiveCampaign, Brevo), website builders (Webflow, Wix, Squarespace, Weebly), Shopify, Facebook Audiences, Slack, Zapier. Use when KickoffLabs viral campaigns aren't tracking referrals correctly, deciding between Hobby $13/mo annual (500 leads/mo no A/B no reward emails) vs Premium $48/mo (2.5K + A/B + reward emails + tracking pixels) vs Business $99/mo (10K + custom email templates + custom domains + advanced reporting + 3 team) vs Enterprise $202/mo (25K + 5 team + SMS included), API key getting rejected because you embedded it in client-side JavaScript instead of server-side, can't decide whether to use v1 /subscribe vs v2 /tags/:TAG_ID/lead for lead creation, webhook payloads firing with `__fraudulent` flag and you need to interpret the duplicate_ip/bounced/duplidate_email reason codes (yes, duplidate is spelled that way in their docs), AnyForm script not posting to KickoffLabs vs native API endpoint, leaderboard endpoint returning more than 50 leads is not allowed, social_id (kid in share URLs) attribution chain breaking between v1 and v2, contest score vs lead count metrics in the webhook payload are confusing, SMS Verification only available on Premium+ as $50/mo add-on (Enterprise includes), per-month lead cap auto-upgrades at $8 per 1000 overage leads, picking between KickoffLabs and Viral Loops / UpViral / Prefinery / ReferralCandy / Voucherify for viral campaign type fit, or rate limit per tier (10-100 calls/minute) is hitting on bulk imports. Do NOT use for general newsletter audience growth strategy (use /sales-audience-growth), general newsletter monetization (use /sales-newsletter), no-code merge-tag-only newsletter referrals (use /sales-referralkit), SparkLoop paid recommendations + partner network (use /sales-sparkloop), or full-stack referral/affiliate with multi-level Level-1/2/3 tracking (use /sales-referralhero).
development
Routes any sales, marketing, ad, or GTM objective to the right specialized skill and outputs the install command for that skill plus a ready-to-paste prompt packed with the user's context. Asks clarifying questions when the objective is ambiguous, then hands back a copy-paste-runnable next step. Covers prospecting, outbound cadences, deals, proposals, forecasting, deliverability, enrichment, intent, content, coaching, CRO, SEO, launch directories, newsletters, email/SMS/push marketing, chatbots, influencer marketing, social media, employee advocacy, media relations, reviews, data hygiene, B2B advertising, retargeting, affiliate, loyalty, digital products, memberships, webinars, checkout, and platform-specific help. Use when the user has a sales or marketing question and isn't sure which skill to use, or wants a multi-skill sequence with a batch install command. Do NOT use to solve problems directly — this skill only routes.