agentsclimarketplace

Capacitor

Skill linkrunner-labs/skills/skills/sdk/capacitor

Installable Agent Skills for integrating the Linkrunner SDK and deep linking, for AI coding agents (Claude Code, Cursor, Windsurf, Copilot)

Install
npx -y skills add linkrunner-labs/skills --skill capacitor

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 16 days oldThe repository was created 16 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Integrate the Linkrunner mobile attribution SDK into a Capacitor/Ionic app - add the package, sync native projects, initialize it, identify users, track events and revenue, and set up deep linking (iOS Universal Links, Android App Links, and custom URI schemes) with domain verification. Use when someone asks to add Linkrunner to a Capacitor or Ionic app, wire up attribution, or debug why Linkrunner deep links are not opening the app.

SKILL.md

4.1 KB, 911 tokens by cl100k_base, as published. Nobody here has run it

Linkrunner - Capacitor integration

You are integrating Linkrunner (mobile attribution + deep linking) into a Capacitor (or Ionic) app. Work in this order and inspect the project before editing - do not paste snippets blindly.

0. Before you touch anything

  1. Confirm this is a Capacitor app: there is a capacitor.config.ts/.json and android/ + ios/ (or ios/App/) native projects generated by npx cap add.
  2. Find the app's entry point / bootstrap code (where other Capacitor plugins are initialized - e.g. main.ts, App.vue, app.component.ts, or App.tsx).
  3. Ask the user for their project token (dashboard → Settings). If they use SDK signing, also get secretKey + keyId. Never hardcode these in a file that gets committed if the user keeps secrets elsewhere - ask where.
  4. Check current versions against requirements (below) before bumping anything.

1. Decide what the user actually needs

They want...Do this
"Add Linkrunner / set up attribution"references/install.md then references/events.md (at minimum init + signup)
"Set up deep links" / "links open the browser not my app"references/deep-linking.md + run scripts/verify-deeplinks.sh
"Track purchases / events"references/events.md

Most first-time integrations need install → sync → init → signup → handle deeplink, in that order. Deep-link verification (AASA / assetlinks) is separate and is the part that usually breaks - treat it as its own step.

2. Requirements (verify, don't assume)

  • Any Capacitor app (Ionic or plain Capacitor) with android/ and/or ios/ native projects added via npx cap add.
  • Android needs the Kotlin Gradle plugin in the root build.gradle - the SDK is a native Kotlin module and will not build without it.
  • Deep-link capture uses the @capacitor/app plugin's appUrlOpen listener. Check whether it's already installed before adding it.
  • The docs don't state a minimum Android minSdkVersion or iOS deployment target for this SDK - use whatever your Capacitor version itself requires.

3. Golden rules

  • init() must run before any other Linkrunner call, as part of app bootstrap - the same place you initialize other Capacitor plugins.
  • Call signup() the moment a user is identified (signup OR login) - this is what ties the install to a user. setUserData() is a later top-up, never a replacement.
  • For HTTP/HTTPS deep links, the app changes are worthless until the hosted assetlinks.json (Android) and apple-app-site-association (iOS) verify. Always finish by running scripts/verify-deeplinks.sh.
  • The Android SHA-256 fingerprint saved in Linkrunner must match the keystore that signed the build on the device. Debug and release differ.
  • After adding or updating the package, always run npx cap sync - native projects don't pick up JS-side plugin changes otherwise.

4. Finish

After editing, run npm install (or yarn), npx cap sync, build once, and run scripts/verify-deeplinks.sh <domain> <android_package> <ios_team_id.bundle_id> to confirm deep-link verification is actually live. Report which checks passed and which the user still has to do in the dashboard (host AASA/assetlinks under Project Settings → Domain Verification).

References

  • references/install.md - package add + cap sync + Android/iOS native config + init
  • references/deep-linking.md - Universal Links / App Links / custom schemes + debugging
  • references/events.md - signup, setUserData, revenue, trackEvent, attribution

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.