controller-native

Integrate Cartridge Controller into native mobile apps for local signing and session authentication.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/Kepler22bee/House-of-Stark --skill controller-native-kepler22bee
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: controller-native
Source: https://github.com/Kepler22bee/House-of-Stark/tree/main/contracts/.agents/skills/controller-native
Command: npx skills add https://github.com/Kepler22bee/House-of-Stark --skill controller-native-kepler22bee

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This guide helps developers integrate Cartridge Controller wallet functionality into native mobile apps and Capacitor-wrapped web apps so that apps can authenticate users via session flows and sign Starknet transactions locally without exposing private keys.

Core Features & Use Cases

  • SessionConnector and SessionAccount: support for browser-based subscribe flows and native sessions for local signing.
  • FFI and UniFFI bindings: instructions for using Controller.c or UniFFI-generated Swift and Kotlin bindings for iOS, Android, and React Native.
  • Capacitor and deep links: platform-specific deep link configuration, Android manifest setup, and iOS AASA/passkey guidance to enable robust native auth flows.
  • Use Case: A mobile game that opens a browser for authentication, returns via a deep link to store session credentials locally, and signs game transactions on-device.

Quick Start

Use the controller-native skill to integrate Controller into your mobile app by configuring deep links and passkeys, building or installing UniFFI/Controller.c bindings, creating a local session, and signing a test transaction.

Frequently Asked Questions about controller-native

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I integrate Controller wallet into a React Native mobile app for local signing?

You can integrate Controller into a Capacitor app by configuring platform-specific deep links, Android manifest setup, and iOS AASA/passkey provisioning. This enables browser-based subscribe flows that return session credentials to your wrapped web application locally.

How do passkeys work with Cartridge Controller on iOS and Android?

Deep links return users to your app after browser authentication by redirecting them back with session credentials stored locally. You configure these deep links in your Android manifest and iOS AASA setup to capture authentication callbacks for local signing.

Do I need UniFFI Swift bindings or Controller.c FFI for native mobile integration?

Controller native integration supports iOS, Android, React Native, and Capacitor wrappers for local keypair signing and session authentication. It handles browser-based subscribe flows, passkey sign-in, and headless controller setups for game backends across these platforms.

What's the best way to configure Starknet RPC and chainId for a mobile Controller session?

Configure Starknet RPC and chainId during your local session setup to ensure transactions are signed and broadcast on the correct network. This configuration is required alongside deep link and passkey setup to complete the Controller integration in your mobile app.