Agent skill

Gplay Iap Setup

by hanamizuki in hanamizuki/solopreneur

In-app products, subscriptions, base plans, and offers setup for Google Play monetization, including bulk-localizing subscription display names, descriptions, and benefits across all locales.

MITAuto-check passedMobile

Install Gplay Iap Setup

skills CLI
$ npx skills add hanamizuki/solopreneur --skill gplay-iap-setup -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install hanamizuki/solopreneur gplay-iap-setup --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/hanamizuki/solopreneur.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/android-dev/gplay-iap-setup .claude/skills/gplay-iap-setup && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
gplay-iap-setup
GitHub stars
152
Token cost
~3.9k tokens
SKILL.md length
742 words
Files
2
Skills in repo
31
Repo updated
First seen
Licence
MIT

At a glance

In-app products, subscriptions, base plans, and offers setup for Google Play monetization, including bulk-localizing subscription display names, descriptions, and benefits across all locales.

  • Works in 9 steps: Use clear product IDs - e.g.,… → Prefer the new monetization API - Use… → Localize descriptions - Provide listings… → …
  • Configuring in-app purchases
  • SKILL.md covers Two APIs: Legacy vs New…, Critical: Product IDs Are…, One-Time Products (New… and Legacy In-App Products (IAP), plus 3 more sections
  • Calls jq

What it does

Gplay Iap Setup is an agent skill from hanamizuki/solopreneur. In-app products, subscriptions, base plans, and offers setup for Google Play monetization, including bulk-localizing subscription display names, descriptions, and benefits across all locales. Use when configuring in-app purchases or subscription products.

Its SKILL.md is about 3.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `_VENDOR.md`).

It sits in Mobile. It works with Android. The repository describes itself as: Skills and agents for solopreneurs — ship, review, debug, and think through problems with AI. The licence is MIT.

When your agent uses it

  • Configuring in-app purchases
  • Subscription products

Example prompts

  • “/gplay-iap-setup”

Workflow steps

9 steps, taken from the first numbered list in SKILL.md.

  1. Use clear product IDs - e.g., premium_monthly, not prod_001. IDs are permanent and cannot be reused after deletion.
  2. Prefer the new monetization API - Use gplay onetimeproducts for new products, not gplay iap.
  3. Localize descriptions - Provide listings for all supported languages.
  4. Set up regional pricing - Use PPP pricing (see gplay-ppp-pricing skill) instead of same price everywhere.
  5. Activate after creation - New OTP products start in DRAFT. Use gplay purchase-options batch-update-states to activate.
  6. Discover commands - Run gplay --help to see all command groups. Purchase option management is under gplay purchase-options, not under…
  7. Test thoroughly - Use test accounts and test product IDs.
  8. Monitor conversions - Track which products/offers perform best.
  9. Update prices carefully - Price changes affect existing subscribers.

What it can do on your machine

Read from SKILL.md and the folder at commit f43f001. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • jq

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Gplay Iap Setup loads about 3.9k tokens when it runs. Until then it costs about 68 tokens; SKILL.md has 742 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~68
When it runs · the whole SKILL.md, loaded when a task matches
~3.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from hanamizuki/solopreneur at commit f43f001, republished under its MIT licence (© hanamizuki). 742 words, ~3,936 tokens.

Download SKILL.mdSave it as .claude/skills/gplay-iap-setup/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
gplay-iap-setup
description
In-app products, subscriptions, base plans, and offers setup for Google Play monetization, including bulk-localizing subscription display names, descriptions, and benefits across all locales. Use when configuring in-app purchases or subscription products.

In-App Purchase Setup for Google Play

Use this skill when you need to set up monetization for your Android app.

Two APIs: Legacy vs New Monetization

Google Play has two APIs for one-time products:

Legacy (gplay iap)New Monetization (gplay onetimeproducts)
APIinappproductsmonetization.onetimeproducts
Price formatpriceMicros/currencyunits/nanos/currencyCode
StructureFlat prices mappurchaseOptions with regionalPricingAndAvailabilityConfigs
Statesactive/inactiveDRAFT → ACTIVE (requires explicit activation)
Regional pricing--auto-convert-prices flag--regions-version required

Prefer the new monetization API (gplay onetimeproducts) for new products. It supports purchase options, better regional pricing control, and is the actively developed API.

Use the legacy API (gplay iap) only for managing existing legacy products.

Never mix the two APIs for the same product. A product created via gplay iap create cannot be managed via gplay onetimeproducts and vice versa.

Critical: Product IDs Are Permanent

Google Play permanently reserves product IDs after deletion. If you create premium_unlock and later delete it, the ID premium_unlock can never be reused — not even with a different API. Choose product IDs carefully.

This means:

  • Do NOT create a "test" product with a good ID and then delete it
  • Do NOT create via the legacy API and then try to recreate via the new API
  • If you burn an ID, you must choose a new one (e.g., premium_unlock_v2)

One-Time Products (New Monetization API)

List products
bash
gplay onetimeproducts list --package com.example.app
Create product

--regions-version is required — the create command uses PATCH with allowMissing=true internally:

bash
gplay onetimeproducts create \
  --package com.example.app \
  --product-id premium_unlock \
  --json @product.json \
  --regions-version "2025/03"
product.json (new monetization format)
json
{
  "productId": "premium_unlock",
  "listings": [
    { "languageCode": "en-US", "title": "Premium Unlock", "description": "Unlock all premium features" },
    { "languageCode": "es-ES", "title": "Desbloqueo Premium", "description": "Desbloquea todas las funciones premium" }
  ],
  "purchaseOptions": [
    {
      "buyOption": { "legacyCompatible": true },
      "newRegionsConfig": {
        "availability": "AVAILABLE",
        "usdPrice": { "currencyCode": "USD", "units": "9", "nanos": 990000000 },
        "eurPrice": { "currencyCode": "EUR", "units": "9", "nanos": 990000000 }
      },
      "regionalPricingAndAvailabilityConfigs": [
        { "regionCode": "US", "availability": "AVAILABLE", "price": { "currencyCode": "USD", "units": "9", "nanos": 990000000 } },
        { "regionCode": "GB", "availability": "AVAILABLE", "price": { "currencyCode": "GBP", "units": "7", "nanos": 990000000 } },
        { "regionCode": "IN", "availability": "AVAILABLE", "price": { "currencyCode": "INR", "units": "249", "nanos": 990000000 } }
      ]
    }
  ]
}
Activate the purchase option

New products start in DRAFT state. You must activate before users can purchase:

bash
gplay purchase-options batch-update-states \
  --package com.example.app \
  --product-id premium_unlock \
  --json '{"requests":[{"activatePurchaseOptionRequest":{"packageName":"com.example.app","productId":"premium_unlock","purchaseOptionId":"default"}}]}'
Update product
bash
gplay onetimeproducts patch \
  --package com.example.app \
  --product-id premium_unlock \
  --json @product-updated.json \
  --regions-version "2025/03" \
  --update-mask "purchaseOptions"
Get product
bash
gplay onetimeproducts get --package com.example.app --product-id premium_unlock
Delete product
bash
gplay onetimeproducts delete \
  --package com.example.app \
  --product-id premium_unlock \
  --confirm
Batch operations
bash
# Get multiple products
gplay onetimeproducts batch-get \
  --package com.example.app \
  --product-ids "premium_unlock,coins_100"

# Update multiple products (regionsVersion goes inside JSON)
gplay onetimeproducts batch-update \
  --package com.example.app \
  --json @products-batch.json

Legacy In-App Products (IAP)

Use only for managing existing legacy products.

List products
bash
gplay iap list --package com.example.app
Create product

iap create has no --sku flag — the SKU/productId lives in the JSON body:

bash
gplay iap create \
  --package com.example.app \
  --json @product.json
product.json (legacy format)
json
{
  "sku": "premium_upgrade",
  "status": "active",
  "purchaseType": "managedUser",
  "defaultPrice": {
    "priceMicros": "990000",
    "currency": "USD"
  },
  "prices": {
    "US": { "priceMicros": "990000", "currency": "USD" },
    "GB": { "priceMicros": "799000", "currency": "GBP" }
  },
  "listings": {
    "en-US": { "title": "Premium Upgrade", "description": "Unlock all premium features" },
    "es-ES": { "title": "Actualización Premium", "description": "Desbloquea todas las funciones premium" }
  }
}
Update / Batch / Delete
bash
# Update
gplay iap update --package com.example.app --sku premium_upgrade --json @product-updated.json

# Batch update
gplay iap batch-update --package com.example.app --json @products.json

# Batch get
gplay iap batch-get --package com.example.app --skus "premium,coins_100,coins_500"

# Delete (permanent — ID cannot be reused)
gplay iap delete --package com.example.app --sku premium_upgrade --confirm

Subscriptions

List subscriptions
bash
gplay subscriptions list --package com.example.app
Create subscription
bash
gplay subscriptions create \
  --package com.example.app \
  --json @subscription.json
subscription.json

Subscriptions use the units/nanos/currencyCode price format:

json
{
  "productId": "premium_monthly",
  "basePlans": [
    {
      "basePlanId": "monthly",
      "state": "ACTIVE",
      "regionalConfigs": [
        {
          "regionCode": "US",
          "newSubscriberAvailability": true,
          "price": { "currencyCode": "USD", "units": "4", "nanos": 990000000 }
        }
      ],
      "autoRenewingBasePlanType": {
        "billingPeriodDuration": "P1M"
      }
    },
    {
      "basePlanId": "yearly",
      "state": "ACTIVE",
      "regionalConfigs": [
        {
          "regionCode": "US",
          "newSubscriberAvailability": true,
          "price": { "currencyCode": "USD", "units": "49", "nanos": 990000000 }
        }
      ],
      "autoRenewingBasePlanType": {
        "billingPeriodDuration": "P1Y"
      }
    }
  ],
  "listings": [
    { "languageCode": "en-US", "title": "Premium Subscription", "description": "Get all premium features" }
  ]
}
Bulk-localize subscriptions across locales

Subscription listings are an array of per-locale objects (not an object keyed by locale). Each entry uses languageCode, title, benefits (array, max 4), and description. One subscriptions update call sets every locale atomically — use --update-mask listings so base plans and pricing are left untouched.

1. Discover the locales your app already ships (cover at least these):

bash
EDIT_ID=$(gplay edits create --package com.example.app | jq -r '.id')
gplay listings list --package com.example.app --edit "$EDIT_ID" --output table

2. Build a listings-only JSON file (subscription-listings.json):

json
{
  "listings": [
    { "languageCode": "en-US", "title": "Premium Monthly", "benefits": ["Unlimited access", "No ads"], "description": "Premium access to all features." },
    { "languageCode": "de-DE", "title": "Premium Monatlich", "benefits": ["Unbegrenzter Zugang", "Keine Werbung"], "description": "Premium-Zugang zu allen Funktionen." },
    { "languageCode": "es-ES", "title": "Premium Mensual", "benefits": ["Acceso ilimitado", "Sin anuncios"], "description": "Acceso premium a todas las funciones." },
    { "languageCode": "ja-JP", "title": "プレミアム月額", "benefits": ["無制限アクセス", "広告なし"], "description": "すべての機能にプレミアムアクセス。" }
  ]
}

3. Apply to one subscription:

bash
gplay subscriptions update \
  --package com.example.app \
  --product-id premium_monthly \
  --json @subscription-listings.json \
  --update-mask listings

4. Loop over every subscription in the app:

bash
PACKAGE="com.example.app"
gplay subscriptions list --package "$PACKAGE" --paginate \
  | jq -r '.[].productId' \
  | while read -r PRODUCT_ID; do
      gplay subscriptions update \
        --package "$PACKAGE" \
        --product-id "$PRODUCT_ID" \
        --json @subscription-listings.json \
        --update-mask listings
    done

Verify with gplay subscriptions get --package com.example.app --product-id premium_monthly --pretty and confirm every languageCode appears in the listings array. Constraints: title max 55 chars, description max 80 chars, benefits max 4 items. When the user gives a single display name, reuse it for all locales; when they give per-locale translations, use each locale's own text.

Show full SKILL.md (300 more words)Show less

Base Plans

Base plans define the billing period and price for subscriptions.

Activate base plan
bash
gplay baseplans activate \
  --package com.example.app \
  --product-id premium_monthly \
  --base-plan-id monthly
Deactivate base plan
bash
gplay baseplans deactivate \
  --package com.example.app \
  --product-id premium_monthly \
  --base-plan-id monthly
Migrate prices
bash
gplay baseplans migrate-prices \
  --package com.example.app \
  --product-id premium_monthly \
  --base-plan-id monthly \
  --json @migration.json

Subscription Offers

Offers provide discounts, free trials, or introductory pricing.

List offers
bash
gplay offers list \
  --package com.example.app \
  --product-id premium_monthly \
  --base-plan-id monthly
Create offer
bash
gplay offers create \
  --package com.example.app \
  --product-id premium_monthly \
  --base-plan-id monthly \
  --json @offer.json
offer.json (Free trial)
json
{
  "offerId": "trial_7day",
  "state": "ACTIVE",
  "phases": [
    {
      "duration": "P7D",
      "pricingType": "FREE_TRIAL"
    }
  ],
  "regionalConfigs": [
    {
      "regionCode": "US"
    }
  ]
}
offer.json (Introductory price)
json
{
  "offerId": "intro_50_off",
  "state": "ACTIVE",
  "phases": [
    {
      "duration": "P1M",
      "pricingType": "SINGLE_PAYMENT",
      "price": {
        "priceMicros": "2490000",
        "currency": "USD"
      }
    }
  ]
}
Activate/Deactivate offer
bash
# Activate
gplay offers activate \
  --package com.example.app \
  --product-id premium_monthly \
  --base-plan-id monthly \
  --offer-id trial_7day

# Deactivate
gplay offers deactivate \
  --package com.example.app \
  --product-id premium_monthly \
  --base-plan-id monthly \
  --offer-id trial_7day

OTP Purchase Option Offers

Manage offers on one-time product purchase options:

bash
# List offers
gplay otp-offers list --package com.example.app --product-id premium_unlock --purchase-option-id default

# Activate offer
gplay otp-offers activate --package com.example.app --product-id premium_unlock --purchase-option-id default --offer-id promo_50off

# Deactivate offer
gplay otp-offers deactivate --package com.example.app --product-id premium_unlock --purchase-option-id default --offer-id promo_50off

Regional Pricing

Convert prices
bash
gplay pricing convert \
  --package com.example.app \
  --json @price-request.json
price-request.json (ConvertRegionPricesRequest)

The body is a single base price as Money — units is the whole-currency amount as a string, nanos is the fractional part (990000000 = .99):

json
{
  "price": {
    "currencyCode": "USD",
    "units": "9",
    "nanos": 990000000
  }
}

The response returns converted prices for all supported regions plus a regionVersion you can pass as --regions-version to subscriptions, base plans, offers, and one-time product commands.

Common Monetization Patterns

bash
# 1. Create product
gplay onetimeproducts create \
  --package com.example.app \
  --product-id premium_unlock \
  --json @premium.json \
  --regions-version "2025/03"

# 2. Activate purchase option
gplay purchase-options batch-update-states \
  --package com.example.app \
  --product-id premium_unlock \
  --json '{"requests":[{"activatePurchaseOptionRequest":{"packageName":"com.example.app","productId":"premium_unlock","purchaseOptionId":"default"}}]}'

# 3. Verify
gplay onetimeproducts get --package com.example.app --product-id premium_unlock
Pattern 2: Subscription with Free Trial
bash
# 1. Create subscription
gplay subscriptions create \
  --package com.example.app \
  --json @sub.json

# 2. Create free trial offer
gplay offers create \
  --package com.example.app \
  --product-id premium \
  --base-plan-id monthly \
  --json @trial.json
Pattern 3: Multi-Tier Subscription
json
{
  "productId": "premium",
  "basePlans": [
    {
      "basePlanId": "basic_monthly",
      "regionalConfigs": [{ "regionCode": "US", "newSubscriberAvailability": true, "price": { "currencyCode": "USD", "units": "2", "nanos": 990000000 } }],
      "autoRenewingBasePlanType": { "billingPeriodDuration": "P1M" }
    },
    {
      "basePlanId": "premium_monthly",
      "regionalConfigs": [{ "regionCode": "US", "newSubscriberAvailability": true, "price": { "currencyCode": "USD", "units": "4", "nanos": 990000000 } }],
      "autoRenewingBasePlanType": { "billingPeriodDuration": "P1M" }
    },
    {
      "basePlanId": "premium_yearly",
      "regionalConfigs": [{ "regionCode": "US", "newSubscriberAvailability": true, "price": { "currencyCode": "USD", "units": "49", "nanos": 990000000 } }],
      "autoRenewingBasePlanType": { "billingPeriodDuration": "P1Y" }
    }
  ]
}

Testing

Use test purchases

In your app code, use test product IDs:

  • android.test.purchased
  • android.test.canceled
  • android.test.refunded
  • android.test.item_unavailable
License testing

Add test accounts in Play Console: Settings → License Testing → Add license testers

Best Practices

  1. Use clear product IDs - e.g., premium_monthly, not prod_001. IDs are permanent and cannot be reused after deletion.
  2. Prefer the new monetization API - Use gplay onetimeproducts for new products, not gplay iap.
  3. Localize descriptions - Provide listings for all supported languages.
  4. Set up regional pricing - Use PPP pricing (see gplay-ppp-pricing skill) instead of same price everywhere.
  5. Activate after creation - New OTP products start in DRAFT. Use gplay purchase-options batch-update-states to activate.
  6. Discover commands - Run gplay --help to see all command groups. Purchase option management is under gplay purchase-options, not under gplay onetimeproducts.
  7. Test thoroughly - Use test accounts and test product IDs.
  8. Monitor conversions - Track which products/offers perform best.
  9. Update prices carefully - Price changes affect existing subscribers.

Billing Periods

  • P1W - 1 week
  • P1M - 1 month
  • P3M - 3 months
  • P6M - 6 months
  • P1Y - 1 year

© hanamizuki, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/android-dev/gplay-iap-setup of hanamizuki/solopreneur.

  • SKILL.md
  • _VENDOR.md

Open the folder on GitHubat commit f43f001

Compare with similar skills

Gplay Iap Setup next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Gplay Iap Setup compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Gplay Iap Setup this skillhanamizuki/solopreneur152—~3.9kAutomated safety check: PassMIT
Compose Multiplatform Patternsmonta-app/ocpp-emulator1805 repos~2kAutomated safety check: PassApache-2.0
Phone HarnessShawnPana/phone-harness3.2k—~4.3kAutomated safety check: PassMIT
Stylesarindamxd/camerax-android1324 repos~2.3kAutomated safety check: PassApache-2.0
Verified Emailarindamxd/camerax-android1324 repos~4.7kAutomated safety check: PassApache-2.0
Argent Metro Debuggerbbplayer-app/BBPlayer1.2k—~3.4kAutomated safety check: PassMIT

Similar skills

  • Compose Multiplatform Patterns

    monta-app/ocpp-emulator

    Compose Multiplatform and Jetpack Compose patterns for KMP projects — state management, navigation, theming, performance, and platform-specific UI.

    180 GitHub starsUsed in 5 repos~2k tokens
    MobileAuto-check passed
  • Phone Harness

    ShawnPana/phone-harness

    Control the user's phone — an iPhone through the Mac's iPhone Mirroring window, an Android over adb, or a rented cloud Android: open apps, tap, type, swipe, read the screen.

    3.2k GitHub stars~4.3k tokensUpdated yesterday
    MobileAuto-check passed
  • Styles

    arindamxd/camerax-android

    A skill your agent uses to integrate the Jetpack Compose Styles API into an Android project.

    132 GitHub starsUsed in 4 repos~2.3k tokens
    MobileAuto-check passed
  • Verified Email

    arindamxd/camerax-android

    Provides a complete workflow for implementing verified email retrieval on Android Credential Manager API.

    132 GitHub starsUsed in 4 repos~4.7k tokens
    MobileAuto-check passed
  • Argent Metro Debugger

    bbplayer-app/BBPlayer

    Debug a JS runtime via CDP using argent debugger tools. An agent skill from bbplayer-app/BBPlayer.

    1.2k GitHub stars~3.4k tokensUpdated 3 days ago
    MobileAuto-check passed
  • 统一 Android XML 资源命名:layout、drawable、mipmap、color、values、id 的前缀与 snakecase 规则;把颜色/圆角/描边/状态编码进文件名(bg、border、textcolor…selector)。

    1.6k GitHub stars~1.3k tokensUpdated 1 mo ago
    MobileAuto-check passed

More from hanamizuki/solopreneur

All 31 skills in this repo
  • Preview

    hanamizuki/solopreneur

    Create an interactive HTML preview of any proposal, plan, idea, doc, brief, or spec and land it in the browsable local Preview Library by default (opens under file:// with a catalog sidebar and…

    152 GitHub stars~5.2k tokensUpdated 14 days ago
    Auto-check passed
  • iOS Patterns

    hanamizuki/solopreneur

    A skill your agent uses when building iOS/macOS apps with SwiftUI — covers localization (String Catalogs), date/time formatting, JSON date decoding, Previews, state management, sheet/navigation…

    152 GitHub stars~2.3k tokensUpdated 14 days ago
    Auto-check: notes
  • Linkedin Growth

    hanamizuki/solopreneur

    LinkedIn organic growth consultant — diagnoses profiles, discusses goals, and co-creates a personalized 90-day growth plan.

    152 GitHub stars~3.7k tokensUpdated 14 days ago
    Auto-check passed
  • Perspective

    hanamizuki/solopreneur

    Switch perspectives to think through problems using the mental models of ten iconic thinkers: Elon Musk, Richard Feynman, Charlie Munger, Naval Ravikant, Steve Jobs, Nassim Taleb, Ilya Sutskever…

    152 GitHub stars~971 tokensUpdated 14 days ago
    Auto-check passed
  • Slide Design

    hanamizuki/solopreneur

    Create brand-aware presentations using frontend-slides or reveal.js.

    152 GitHub stars~3.9k tokensUpdated 14 days ago
    Auto-check passed
  • X Growth

    hanamizuki/solopreneur

    X/Twitter growth consultant — diagnoses profiles, discusses goals, and co-creates a personalized growth plan.

    152 GitHub stars~3.8k tokensUpdated 14 days ago
    Auto-check passed

Works with

Categories

Questions about Gplay Iap Setup

What does Gplay Iap Setup do?

In-app products, subscriptions, base plans, and offers setup for Google Play monetization, including bulk-localizing subscription display names, descriptions, and benefits across all locales. Gplay Iap Setup is an agent skill from hanamizuki/solopreneur. In-app products, subscriptions, base plans, and offers setup for Google Play monetization, including bulk-localizing subscription display names, descriptions, and benefits across all locales.

When should I use Gplay Iap Setup?

Gplay Iap Setup fits situations like: configuring in-app purchases; subscription products.

How do I install Gplay Iap Setup in Claude Code?

Run `npx skills add hanamizuki/solopreneur --skill gplay-iap-setup -a claude-code`. Or copy the skill folder (skills/android-dev/gplay-iap-setup in hanamizuki/solopreneur) into .claude/skills/gplay-iap-setup in your project. Claude Code loads it when a task matches its description.

How do I install Gplay Iap Setup in Codex?

Run `npx skills add hanamizuki/solopreneur --skill gplay-iap-setup -a codex`. Or copy the skill folder (skills/android-dev/gplay-iap-setup in hanamizuki/solopreneur) into .agents/skills/gplay-iap-setup in your project. Codex loads it when a task matches its description.

Can I use Gplay Iap Setup in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add hanamizuki/solopreneur --skill gplay-iap-setup -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/gplay-iap-setup, .gemini/skills/gplay-iap-setup, .github/skills/gplay-iap-setup and .opencode/skills/gplay-iap-setup in your project.

What does Gplay Iap Setup need to run?

Going by SKILL.md and its folder, Gplay Iap Setup needs the command-line tools its instructions call (jq).

Does Gplay Iap Setup access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Gplay Iap Setup safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Gplay Iap Setup use?

Gplay Iap Setup is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Gplay Iap Setup use?

About 3.9k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Gplay Iap Setup?

Skills that share tags, products or a category with Gplay Iap Setup: Compose Multiplatform Patterns (monta-app/ocpp-emulator, 180 stars), Phone Harness (ShawnPana/phone-harness, 3.2k stars), Styles (arindamxd/camerax-android, 132 stars) and Verified Email (arindamxd/camerax-android, 132 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Gplay Iap Setup?

hanamizuki (a GitHub user) maintains it in hanamizuki/solopreneur, which has 152 GitHub stars. The repository holds 31 skills in this directory. The repository was last updated on September 26, 2026.

Source: hanamizuki/solopreneur on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.