activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
Crawler Summary
Guide and review the step-by-step preparation of a React Native project for Google Play Store release. Covers keystore generation, signing configuration, ProGuard/R8, and AAB build. Use when the user wants to publish, release, deploy, or prepare a React Native app for Play Store, or when they mention "react-native build-android", "bundleRelease react native", or "play store react native". Note: for Expo managed projects, use "eas build" instead. --- name: playstore-react-native description: > Guide and review the step-by-step preparation of a React Native project for Google Play Store release. Covers keystore generation, signing configuration, ProGuard/R8, and AAB build. Use when the user wants to publish, release, deploy, or prepare a React Native app for Play Store, or when they mention "react-native build-android", "bundleRelease react native", or "play s Capability contract not published. No trust telemetry is available yet. Last updated 4/15/2026.
Freshness
Last checked 4/15/2026
Best For
playstore-react-native is best for request workflows where OpenClaw compatibility matters.
Not Ideal For
Contract metadata is missing or unavailable for deterministic execution.
Evidence Sources Checked
editorial-content, GITHUB OPENCLEW, runtime-metrics, public facts pack
Guide and review the step-by-step preparation of a React Native project for Google Play Store release. Covers keystore generation, signing configuration, ProGuard/R8, and AAB build. Use when the user wants to publish, release, deploy, or prepare a React Native app for Play Store, or when they mention "react-native build-android", "bundleRelease react native", or "play store react native". Note: for Expo managed projects, use "eas build" instead. --- name: playstore-react-native description: > Guide and review the step-by-step preparation of a React Native project for Google Play Store release. Covers keystore generation, signing configuration, ProGuard/R8, and AAB build. Use when the user wants to publish, release, deploy, or prepare a React Native app for Play Store, or when they mention "react-native build-android", "bundleRelease react native", or "play s
Public facts
4
Change events
1
Artifacts
0
Freshness
Apr 15, 2026
Capability contract not published. No trust telemetry is available yet. Last updated 4/15/2026.
Trust score
Unknown
Compatibility
OpenClaw
Freshness
Apr 15, 2026
Vendor
Tacuchi
Artifacts
0
Benchmarks
0
Last release
Unpublished
Key links, install path, and a quick operational read before the deeper crawl record.
Summary
Capability contract not published. No trust telemetry is available yet. Last updated 4/15/2026.
Setup snapshot
git clone https://github.com/Tacuchi/playstore-react-native.gitSetup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.
Vendor
Tacuchi
Protocol compatibility
OpenClaw
Handshake status
UNKNOWN
Crawlable docs
6 indexed pages on the official domain
Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.
Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.
Extracted files
0
Examples
6
Snippets
0
Languages
typescript
Parameters
bash
keytool -genkeypair \ -alias upload \ -keyalg RSA -keysize 2048 \ -validity 10000 \ -storetype PKCS12 \ -keystore upload-keystore.jks
properties
MYAPP_UPLOAD_STORE_FILE=upload-keystore.jks MYAPP_UPLOAD_KEY_ALIAS=upload MYAPP_UPLOAD_STORE_PASSWORD=<your-store-password> MYAPP_UPLOAD_KEY_PASSWORD=<your-key-password>
gitignore
*.jks *.keystore
groovy
android {
signingConfigs {
release {
if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
storeFile file(MYAPP_UPLOAD_STORE_FILE)
storePassword MYAPP_UPLOAD_STORE_PASSWORD
keyAlias MYAPP_UPLOAD_KEY_ALIAS
keyPassword MYAPP_UPLOAD_KEY_PASSWORD
}
}
}
buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled enableProguardInReleaseBuilds
shrinkResources enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}groovy
def enableProguardInReleaseBuilds = true
proguard
# React Native Bridge
-keep class com.facebook.react.** { *; }
-keep class com.facebook.hermes.** { *; }
-keep class com.facebook.jni.** { *; }
-dontwarn com.facebook.**
# Hermes engine
-keep class com.facebook.hermes.unicode.** { *; }
-keep class com.facebook.jni.** { *; }
# SoLoader
-keep class com.facebook.soloader.** { *; }
-dontwarn com.facebook.soloader.**
# JNI — native module classes
-keepclassmembers class * {
@com.facebook.react.uimanager.annotations.ReactProp <methods>;
}
-keepclassmembers class * {
@com.facebook.react.bridge.ReactMethod <methods>;
}
-keep,includedescriptorclasses class * extends com.facebook.react.bridge.JavaScriptModule { *; }
-keep,includedescriptorclasses class * extends com.facebook.react.bridge.NativeModule { *; }
# OkHttp (used by React Native networking)
-dontwarn okhttp3.**
-dontwarn okio.**
-keep class okhttp3.** { *; }
# Keep native module registrations
-keep class com.facebook.react.PackageList { *; }Full documentation captured from public sources, including the complete README when available.
Docs source
GITHUB OPENCLEW
Editorial quality
ready
Guide and review the step-by-step preparation of a React Native project for Google Play Store release. Covers keystore generation, signing configuration, ProGuard/R8, and AAB build. Use when the user wants to publish, release, deploy, or prepare a React Native app for Play Store, or when they mention "react-native build-android", "bundleRelease react native", or "play store react native". Note: for Expo managed projects, use "eas build" instead. --- name: playstore-react-native description: > Guide and review the step-by-step preparation of a React Native project for Google Play Store release. Covers keystore generation, signing configuration, ProGuard/R8, and AAB build. Use when the user wants to publish, release, deploy, or prepare a React Native app for Play Store, or when they mention "react-native build-android", "bundleRelease react native", or "play s
Prepare a React Native (bare workflow) project to build a signed Android App Bundle (AAB) ready for Google Play Store.
Expo users: If using Expo managed workflow, run
eas build --platform androidinstead. This skill covers the bare React Native workflow.
| Step | Action | Key file |
|------|--------|----------|
| 1 | Generate upload keystore | upload-keystore.jks |
| 2 | Create credentials file | android/gradle.properties |
| 3 | Configure signing in Gradle | android/app/build.gradle |
| 4 | Configure ProGuard / R8 | android/app/proguard-rules.pro |
| 5 | Build release AAB | CLI |
| 6 | Verify output | CLI + checklist |
keytool -genkeypair \
-alias upload \
-keyalg RSA -keysize 2048 \
-validity 10000 \
-storetype PKCS12 \
-keystore upload-keystore.jks
Rules:
-validity 10000 = ~27 years. Google requires validity beyond Oct 22 2033.-storetype PKCS12 — industry standard, avoids JKS migration warnings..jks outside version control. Recommended: ~/.android/keystores/ or a secrets manager.Add signing variables to android/gradle.properties (or ~/.gradle/gradle.properties for global scope):
MYAPP_UPLOAD_STORE_FILE=upload-keystore.jks
MYAPP_UPLOAD_KEY_ALIAS=upload
MYAPP_UPLOAD_STORE_PASSWORD=<your-store-password>
MYAPP_UPLOAD_KEY_PASSWORD=<your-key-password>
Add to .gitignore:
*.jks
*.keystore
If credentials are in android/gradle.properties, ensure that file is in .gitignore or use ~/.gradle/gradle.properties (per-user, never committed).
Edit android/app/build.gradle (Groovy — default for React Native):
android {
signingConfigs {
release {
if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
storeFile file(MYAPP_UPLOAD_STORE_FILE)
storePassword MYAPP_UPLOAD_STORE_PASSWORD
keyAlias MYAPP_UPLOAD_KEY_ALIAS
keyPassword MYAPP_UPLOAD_KEY_PASSWORD
}
}
}
buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled enableProguardInReleaseBuilds
shrinkResources enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
At the top of android/app/build.gradle, set the ProGuard flag:
def enableProguardInReleaseBuilds = true
Version management: set versionCode and versionName in the defaultConfig block of the same file.
Create or edit android/app/proguard-rules.pro:
# React Native Bridge
-keep class com.facebook.react.** { *; }
-keep class com.facebook.hermes.** { *; }
-keep class com.facebook.jni.** { *; }
-dontwarn com.facebook.**
# Hermes engine
-keep class com.facebook.hermes.unicode.** { *; }
-keep class com.facebook.jni.** { *; }
# SoLoader
-keep class com.facebook.soloader.** { *; }
-dontwarn com.facebook.soloader.**
# JNI — native module classes
-keepclassmembers class * {
@com.facebook.react.uimanager.annotations.ReactProp <methods>;
}
-keepclassmembers class * {
@com.facebook.react.bridge.ReactMethod <methods>;
}
-keep,includedescriptorclasses class * extends com.facebook.react.bridge.JavaScriptModule { *; }
-keep,includedescriptorclasses class * extends com.facebook.react.bridge.NativeModule { *; }
# OkHttp (used by React Native networking)
-dontwarn okhttp3.**
-dontwarn okio.**
-keep class okhttp3.** { *; }
# Keep native module registrations
-keep class com.facebook.react.PackageList { *; }
# Option 1 — React Native CLI
npx react-native build-android --mode=release
# Option 2 — Gradle directly
cd android && ./gradlew bundleRelease
Useful flags:
./gradlew bundleRelease --stacktrace — full stack trace on errors../gradlew clean bundleRelease — clean before building.Output: android/app/build/outputs/bundle/release/app-release.aab
Run these checks before uploading:
# 1. Verify AAB exists
ls -lh android/app/build/outputs/bundle/release/app-release.aab
# 2. Verify signing
jarsigner -verify -verbose -certs android/app/build/outputs/bundle/release/app-release.aab
# 3. Check the signing certificate alias
keytool -printcert -jarfile android/app/build/outputs/bundle/release/app-release.aab
# 4. Verify versionCode (requires bundletool)
bundletool dump manifest --bundle=android/app/build/outputs/bundle/release/app-release.aab \
| grep -E "versionCode|versionName"
Checklist:
versionCode is higher than the previous uploadversionName matches intended release*.jks and *.keystore are in .gitignoregradle.properties location)enableProguardInReleaseBuilds = true is set| Error | Cause | Fix |
|-------|-------|-----|
| signingConfigs.release not found | signingConfigs block placed after buildTypes | Move signingConfigs block before buildTypes |
| Hermes crash on release build | ProGuard stripped Hermes classes | Add Hermes -keep rules to proguard-rules.pro |
| SYSTEM_ALERT_WINDOW permission in release | Dev-only permission leaking into release manifest | Add tools:node="remove" in release AndroidManifest.xml overlay |
| configureondemand build failure | org.gradle.configureondemand=true in gradle.properties | Set to false — React Native requires all projects configured |
| APK rejected: "debug certificate" | Built without release signing | Verify project.hasProperty guard finds the credentials |
Groovy by default — React Native projects use Groovy DSL (build.gradle, not .gradle.kts). Do not convert to Kotlin DSL unless the entire project has been migrated.
project.hasProperty() guard — The signing config uses a guard to avoid build failures when credentials are missing (e.g., on a fresh clone). Without the guard, ./gradlew assembleDebug would fail if credentials aren't set up.
Hermes vs JSC — Hermes is the default engine since React Native 0.70. ProGuard rules must match the active engine. If the project uses JSC (legacy), adjust rules accordingly.
New Architecture does not change signing — React Native's New Architecture (TurboModules, Fabric) does not affect the signing or release build process. The same Gradle signing config applies.
enableProguardInReleaseBuilds — This flag is defined as a variable at the top of build.gradle, not in gradle.properties. Setting it in the wrong place has no effect.
Expo managed workflow — If the project uses Expo managed workflow (app.json with expo key, no android/ directory), do NOT follow this skill. Use eas build --platform android instead. This skill is for bare React Native only.
App Signing by Google Play — Google re-signs your app with their key. The keystore you generate is the upload key only. If you lose it, you can request a reset through the Play Console.
Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.
Contract coverage
Status
missing
Auth
None
Streaming
No
Data region
Unspecified
Protocol support
Requires: none
Forbidden: none
Guardrails
Operational confidence: low
curl -s "https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/snapshot"
curl -s "https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/contract"
curl -s "https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/trust"
Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.
Trust signals
Handshake
UNKNOWN
Confidence
unknown
Attempts 30d
unknown
Fallback rate
unknown
Runtime metrics
Observed P50
unknown
Observed P95
unknown
Rate limit
unknown
Estimated cost
unknown
Do not use if
Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.
Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
The Frontend for Agents & Generative UI. React + Angular
Contract JSON
{
"contractStatus": "missing",
"authModes": [],
"requires": [],
"forbidden": [],
"supportsMcp": false,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": null,
"outputSchemaRef": null,
"dataRegion": null,
"contractUpdatedAt": null,
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/snapshot",
"contractUrl": "https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/contract",
"trustUrl": "https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/trust"
},
"curlExamples": [
"curl -s \"https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/snapshot\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/contract\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": [
"OPENCLEW"
]
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "GITHUB_OPENCLEW",
"generatedAt": "2026-10-09T04:29:11.342Z"
}
},
"retryPolicy": {
"maxAttempts": 3,
"backoffMs": [
500,
1500,
3500
],
"retryableConditions": [
"HTTP_429",
"HTTP_503",
"NETWORK_TIMEOUT"
]
}
}Trust JSON
{
"status": "unavailable",
"handshakeStatus": "UNKNOWN",
"verificationFreshnessHours": null,
"reputationScore": null,
"p95LatencyMs": null,
"successRate30d": null,
"fallbackRate": null,
"attempts30d": null,
"trustUpdatedAt": null,
"trustConfidence": "unknown",
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Capability Matrix
{
"rows": [
{
"key": "OPENCLEW",
"type": "protocol",
"support": "unknown",
"confidenceSource": "profile",
"notes": "Listed on profile"
},
{
"key": "request",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
}
],
"flattenedTokens": "protocol:OPENCLEW|unknown|profile capability:request|supported|profile"
}Facts JSON
[
{
"factKey": "docs_crawl",
"category": "integration",
"label": "Crawlable docs",
"value": "6 indexed pages on the official domain",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
},
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Tacuchi",
"href": "https://github.com/Tacuchi/playstore-react-native",
"sourceUrl": "https://github.com/Tacuchi/playstore-react-native",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-04-15T00:19:40.583Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-04-15T00:19:40.583Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/tacuchi-playstore-react-native/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
]Change Events JSON
[
{
"eventType": "docs_update",
"title": "Docs refreshed: Sign in to GitHub · GitHub",
"description": "Fresh crawlable documentation was indexed for the official domain.",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
}
]Sponsored
Ads related to playstore-react-native and adjacent AI workflows.