nubecita: Skill for Claude Code

.claude/skills/promote-to-production/SKILL.md

promote-to-production is a skill for Claude Code from kikin81/nubecita. It costs 88 tokens per session (2,113 once invoked), scanned A, original, MIT.

A workflow for moving an Android App Bundle (AAB), the install package uploaded to Google Play, from internal testing to closed testing, open testing, or production.

In plain words
What is it for?
It helps select release tracks, dispatch the GitHub Actions workflow, review the target version and changelogs, and wait for the required production approval.
Why use it?
It avoids rebuilding a version that is already uploaded and provides a gated promotion process before release.

Skill for Claude Code

Written for Claude Code: installed under .claude/. Also seen: names the AskUserQuestion tool.

This is kikin81/nubecita's own configuration. It tells Claude Code how to work on nubecita itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything nubecita configures →

Reuse

Borrowing it

Nothing to install: this file belongs to kikin81/nubecita. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/kikin81/nubecita/main/.claude/skills/promote-to-production/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/kikin81/nubecita

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for promote-to-production

README.md
[![agentmods](https://agentmods.dev/badge/skills/kikin81/nubecita/promote-to-production/github.svg)](https://agentmods.dev/skills/kikin81/nubecita/promote-to-production)
Your own site
<a href="https://agentmods.dev/skills/kikin81/nubecita/promote-to-production"><img src="https://agentmods.dev/badge/skills/kikin81/nubecita/promote-to-production/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for promote-to-production

Your own site · 80×15
<a href="https://agentmods.dev/skills/kikin81/nubecita/promote-to-production"><img src="https://agentmods.dev/badge/skills/kikin81/nubecita/promote-to-production.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 88 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,113 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 2 findings, up to medium

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • medium Excessive Agency · line 71
    Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
    Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
  • medium Excessive Agency · line 80
    Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
    Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00088 $0.02113
Opus 5 $0.00044 $0.01056
Sonnet 5 $0.00018 $0.00423
Haiku 4.5 $0.00009 $0.00211

Measured 12d ago against content hash c79d5e984ba3, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

promote-to-production scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/promote-to-production/SKILL.md · 86 lines

How it starts

The opening of the file, as written. The whole thing — 86 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Dispatch the Promote to Production workflow (.github/workflows/promote.yaml) with the right inputs, surface the resolved target, then hand the gated approval back to the human.

What the workflow does (context): promotes an AAB already uploaded to the Play internal track to any combination of closed testing (alpha), open testing (beta), and production — no rebuild. The three tracks are chosen via boolean inputs (to_closed / to_open / to_production) and folded into a comma list. Two jobs: resolve (ungated, prints the target versionCode, the selected tracks, and all three changelogs to the run summary; fails fast if no track is selected) → promote (gated by the production environment's required-reviewer "Review deployments → Approve and deploy" button — one approval covers the whole batch). concurrency: promote-production serializes runs.

Per-track behavior handled by the lane: rollout % and update priority apply to production only; alpha/beta always go to 100% of testers with no priority, and a build already live on a testing track is skipped (no redundant re-promote). Only production re-runs to advance its staged rollout.

Input: optional hints from the user (which tracks, rollout %, priority, a specific versionCode). If absent, gather them interactively below.

Steps

  1. Preflight. Confirm the tooling and that you're promoting the intended build:

    gh auth status >/dev/null && echo "gh: authed"
    gh workflow list | grep -i "Promote to Production" || echo "workflow missing"
    git rev-parse --abbrev-ref HEAD   # workflow_dispatch runs from main by default
    

    The promotion targets a Play versionCode (independent of the git branch), but the changelogs/fastlane come from the dispatched ref — so dispatch from main (the default) unless the user explicitly wants another ref. If they're on a feature branch, note that --ref main is used.

  2. Gather the inputs (work together). First use the AskUserQuestion tool (multiSelect) to pick the target track(s), then ask the production-only knobs only if production is among the picks.

    • Tracks (multiSelect, at least one) — Closed testing (alpha) / Open testing (beta) / Production. Map the picks to the boolean inputs to_closed / to_open / to_production. Default suggestion: Production. (Testing tracks always go to 100% of testers, so they need no rollout/priority.)
    • rollout (ask only if Production is selected; default 0.1) — staged fraction. Options: 0.01 / 0.05 / 0.1 / 0.2 / 0.5 / 1.0. A fresh production promote starts low (e.g. 0.1); to advance an in-flight rollout, re-run with a higher fraction and the same versionCode. Ignored for alpha/beta.
    • in_app_update_priority (ask only if Production is selected; default 0) — options 0–5. 0 = default (no nudge); 1–3 = flexible in-app-update nudge; >=4 forces IMMEDIATE (blocking) update. Most releases use 0; reserve 4–5 for critical fixes. Not applied to testing tracks.
    • version_code (optional) — blank resolves to the latest build on the internal track. Only set it to promote/advance a specific older build.
  3. Assemble + confirm the command. Show the exact command and get a yes before running — this publishes to real users / testers. Pass a boolean for each track (true/false); include rollout/in_app_update_priority only when Production is selected (they default otherwise):

    # include rollout / in_app_update_priority only when to_production=true (they default otherwise);
    # add -f version_code=<versionCode> only if a specific build was requested.
    gh workflow run "Promote to Production" --ref main \
      -f to_closed=<true|false> \
      -f to_open=<true|false> \
      -f to_production=<true|false> \
      -f rollout=<rollout> \
      -f in_app_update_priority=<priority>
    

    (gh workflow run promote.yaml … works too.)

Read the full file on GitHub · 86 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 12d ago First seen · 86 lines · 88 tokens per session scan A c79d5e984ba3

Subscribe to this mod's changes

promote-to-production is a skill published in the GitHub repository kikin81/nubecita (5 stars, last pushed today), licensed MIT. It adds 88 tokens to every session and 2,113 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

agent-browser

Browser automation via Chrome/Chromium CDP — open, snapshot, click, screenshot. For testing web apps, mobile layouts, and automated interactions without Playwright/Puppeteer.

x-cmd/x-cmd · 39 tokens

odevio

Take a Flutter project to an iPhone or the App Store with Odevio - build, sign and publish iOS apps from Windows, Linux or macOS with no Mac and no Xcode. Handles Apple setup, certificates, provisioning profiles, code signing, the .ipa, TestFlight and App Store submission, and fixes build failures automatically. Use…

Odevio/Odevio-CLI · 0 tokens

fastly-compute-well-known-spa-fallback

Fix .well-known files (apple-app-site-association, assetlinks.json) being served as HTML by the @fastly/compute-js-static-publish SPA fallback instead of JSON. Use when: (1) iOS Universal Links or Android App Links are broken because the verification files return text/html instead of application/json, (2)…

divinevideo/divine-mobile · 151 tokens

expo-deployment

Deploying Expo apps to iOS App Store, Android Play Store, web hosting, and API routes.

openai/plugins · 24 tokens

capawesome-cloud

Guides the agent through setting up and using Capawesome Cloud for Capacitor and Cordova apps. Covers three core workflows: (1) Native Builds — cloud builds for iOS and Android (Capacitor, Cordova, or native projects), signing certificates, environments, Trapeze configuration, and build artifacts; (2) Live Updates …

capawesome-team/skills · 162 tokens

google-mobile-ninja

Master orchestrator for 35+ mobile development agent skills from official Google repositories. Use when working with Android, Flutter, Dart, Jetpack Compose, Navigation, CameraX, AGP, Play services, or any mobile app development task. Routes to the optimal specialized skill based on context. Triggers: Android…

fabricioctelles/jump-skills · 115 tokens