amplitude
Use when listing or checking Amplitude Experiment feature flags, turning a flag on or off (kill switch, rollout), shipping code that is gated behind a new…
Skill by tirupati17
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/tirupati17-amplitude
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: data
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/amplitude
What's inside
- Skill name
amplitude- Description
- Use when listing or checking Amplitude Experiment feature flags, turning a flag on or off (kill switch, rollout), shipping code that is gated behind a new flag, or pulling event totals or unique users for the last N days from Amplitude Analytics.
- License
- MIT
- Instructions
- 85 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Amplitude: feature flags and event totals ## Credentials `cpm creds setup amplitude` asks for each one and says where it lives: | Name | Where to get it | |---|---| | `AMPLITUDE_API_KEY` | Settings > Projects > the project > General. Also in the app. | | `AMPLITUDE_SECRET_KEY` | Same page. Server-side only. Used with the API key for the Dashboard REST API (`events`). | | `AMPLITUDE_MANAGEMENT_KEY` | Optional unless you use flags. Experiment > **Management API** > create key (some org layouts put it under Settings > Organization > API keys). A different key from the two above; neither works in the other's place. | | `AMPLITUDE_REGION` | Optional: `us` (default) or `eu`. Must match where the project lives; a mismatch fails as 401, not as a region error. | ## Commands ```bash cpm amplitude flags [--grep text] [--all] # key, ON/off, rollout, variants, segments, deployments cpm amplitude create <key> --project-id <id> --deployment-id <id> [--commit] cpm amplitude flag <key> --off # dry run: current state and the PATCH cpm amplitude flag <key> --on --commit # changes `enabled` only cpm amplitude rollout <key> --percent 100 [--commit] # simple on/off rollout; verified readback cpm amplitude target <key> --property beta_tester [--value true] [--remove] [--commit] cpm amplitude target --property beta_tester # which flags carry that segment cpm amplitude events # event types with this week's totals cpm amplitude events --event app_opened --days 30 [--metric uniques] [--daily] ``` `flag` only flips `enabled`; rollout, variants and targeting stay as they are. Use `create` for a new disabled boolean flag. It looks the key up to find the numeric id, then patches `/api/1/flags/<id>`. `create` makes a new boolean flag safely disabled. It creates without deployments, sets OFF and 0%, reads that state back, then attaches the requested deployments and verifies again. It never edits an existing flag. Use `rollout` only for an untargeted, single `on` variant attached to a deployment. It refuses experiments and segments, checks concurrent edits, and verifies the result. Use the dashboard for targeting and multivariate experiments. `flag --on` alone does not increase a new flag's 0% rollout. The management API's deployment list may contain ID strings or objects; normalize both before checking it. Do not mistake a formatter failure for a failed create: look up the existing key before retrying. The flag detail endpoint is the final verification, not the POST response. `target` gives one group a feature first: it adds a segment `gp:<property> is <value> -> on` in front of the base rollout, named after the property so a rerun replaces it. If the flag is off at 0% it switches it on (nobody else is affected); if it is off with a base rollout above 0% it refuses, because switching it on would release to that share of everyone. ## Traps - **A targeting property has to be in the fetch.** Remote evaluation matches on the user properties sent with the Experiment fetch; the Analytics profile lags ingestion, so an app that only calls identify can miss its own segment for its first sessions. Put the property on the Experiment user and refetch when it changes. - **A gate with no flag in the dashboard is not off, it is the code's fallback.** If the fallback is `true` the feature is live for everyone with no kill switch; if `false` it is dead for everyone. And debug builds that force flags on hide both cases. Create the flag in the same change that ships the gate, then check it here with `flags --grep`. - **ON is not enough.** A flag reaches an app only if it is ON, rolled out above 0% (or matched by a segment), and attached to the deployment whose key that app uses. `flags` marks `! no deployment` and `! 0% rollout`. - **A kill switch should remove the gate, not only the feature.** If a flag turns off a paywall but the content locks read a different condition, users are left locked out with no way to pay. - **Numeric companions.** A boolean "quota enabled" beside a numeric limit where 0 means unlimited does nothing until the number is set too. Check both. - **Changes are not instant.** Apps see a flip on their next flag fetch: local evaluation SDKs poll, remote evaluation often only at launch. - **`events` returns 400 for an event name Amplitude never received**, shown as "no such event". Usually a typo, a renamed event on one platform only, or an event sent only from debug builds. Event names are a cross-platform contract. - **Uniques do not add up.** A 30-day unique count is de-duplicated over the range; summing daily uniques overcounts. `events --metric uniques` prints Amplitude's own range figure. - **Rate limits are tight** on smaller plans: queries run one at a time and 429s are retried with Retry-After. Do not loop dozens of events per minute. - **Create returns 400 for an empty description.** Supply a meaningful description; the toolkit defaults to a nonempty label when none is given.
From tirupati17/cpm, MIT.
More from tirupati17/cpm
- 0.565score
google-ads
tirupati17
Use when checking or changing Google Ads from the terminal (campaign spend, clicks and conversions, pausing or enabling a campaign, changing a daily budget…
SkillAFreshness: AClaude Code +9 - 0.565score
appstore-release
tirupati17
Use when shipping an iOS app to App Store review (archive, upload, attach the build, write What's New, submit), updating localized descriptions, keywords or…
SkillAFreshness: AClaude Code +9 - 0.565score
gcp
tirupati17
Use when a tool needs a Google Cloud service account (Google Play publishing, RevenueCat purchase validation, Firebase, any Google API), when checking which…
SkillAFreshness: AClaude Code +9 - 0.565score
onesignal
tirupati17
Use when sending a push notification to a specific user, a list of users, a segment or everyone; when checking how many devices can receive push or whether…
SkillAFreshness: AClaude Code +9 - 0.565score
play-release
tirupati17
Use when publishing an Android app to Google Play (upload an AAB to internal, alpha, beta or production, staged rollout), when changing the Play listing text…
SkillAFreshness: AClaude Code +9 - 0.565score
revenuecat
tirupati17
Use when checking subscription metrics (MRR, revenue, active subscriptions, trials), looking up why a specific user does or does not have Pro, granting…
SkillAFreshness: AClaude Code +9 - 0.560score
cpm-learn
tirupati17
Use right after finishing a task that took real effort against an external service or API (a store console, billing, ads, analytics, push, cloud) and that is…
SkillAFreshness: AClaude Code +9 - 0.560score
service-task
tirupati17
One sentence an agent can match against a request.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 11, 2026 (18 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/tirupati17/cpm
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from tirupati17
- 0.565score
google-ads
tirupati17
Use when checking or changing Google Ads from the terminal (campaign spend, clicks and conversions, pausing or enabling a campaign, changing a daily budget…
SkillAFreshness: AClaude Code +9 - 0.565score
appstore-release
tirupati17
Use when shipping an iOS app to App Store review (archive, upload, attach the build, write What's New, submit), updating localized descriptions, keywords or…
SkillAFreshness: AClaude Code +9 - 0.565score
gcp
tirupati17
Use when a tool needs a Google Cloud service account (Google Play publishing, RevenueCat purchase validation, Firebase, any Google API), when checking which…
SkillAFreshness: AClaude Code +9 - 0.565score
onesignal
tirupati17
Use when sending a push notification to a specific user, a list of users, a segment or everyone; when checking how many devices can receive push or whether…
SkillAFreshness: AClaude Code +9 - 0.565score
play-release
tirupati17
Use when publishing an Android app to Google Play (upload an AAB to internal, alpha, beta or production, staged rollout), when changing the Play listing text…
SkillAFreshness: AClaude Code +9 - 0.565score
revenuecat
tirupati17
Use when checking subscription metrics (MRR, revenue, active subscriptions, trials), looking up why a specific user does or does not have Pro, granting…
SkillAFreshness: AClaude Code +9
Cite this page
amplitude skill. Agent Mart. https://agentmart.dev/skills/tirupati17-amplitude (last updated 2026-10-24)