justaname-id/jaw-skills · Archived

jaw-sdk-best-practices

Best practices and usage guide for the JAW SDK (@jaw.id/core, @jaw.id/wagmi, @jaw.id/ui).

First seen Feb 20, 2026

Installation

$ npx skills add justaname-id/jaw-skills --skill jaw-sdk-best-practices

Summary

  • Best practices and usage guide for the JAW SDK (@jaw.id/core, @jaw.id/wagmi, @jaw.id/ui).
  • Use this skill when writing code that uses jaw-sdk or @jaw.id packages, integrating JAW smart accounts into an application, configuring JAW SDK features (passkeys, permissions, gas sponsoring, ENS), building with JAW wagmi hooks, implementing headless/server-side smart account operations, debugging JAW SDK issues, or when asked about JAW SDK patterns, APIs, or best practices.

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from justaname-id/jaw-skills.

npx skills add justaname-id/jaw-skills

Browse all from justaname-id/jaw-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Default branch main
Open issues 0
Status Archived

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 4,742 B
  • docs SUMMARY.md 498 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 42 installs

SKILL.md

JAW SDK Best Practices

Guide for building applications with the JAW SDK passkey-authenticated smart accounts on EVM chains with programmable permissions.

When to use

Reference these guidelines when:

  • Installing or setting up @jaw.id/wagmi, @jaw.id/core, or @jaw.id/ui
  • Configuring the JAW connector or provider (API key, modes, paymasters, ENS)
  • Connecting/disconnecting wallets with passkey authentication
  • Sending transactions (single or batched) through JAW smart accounts
  • Signing messages or typed data (EIP-191, EIP-712, ERC-7871)
  • Granting, querying, or revoking permissions (ERC-7715)
  • Implementing subscription payments or recurring charges
  • Setting up gas sponsoring with paymasters (ERC-7677)
  • Issuing ENS subnames to users during onboarding
  • Implementing Sign-In With Ethereum (SIWE)
  • Building headless integrations, server-side operations, or AI agent wallets
  • Using the Account class directly (no UI)
  • Upgrading EOAs to smart accounts via EIP-7702 (preserving the existing address)
  • Integrating with embedded wallet providers (Privy, Turnkey, etc) for EIP-7702
  • Building stablecoin payment flows (USDC gas, batch payouts)
  • Choosing between CrossPlatform and AppSpecific authentication modes
  • Implementing a custom UI handler for app-specific mode
  • Building React Native / Expo apps with passkey-authenticated smart accounts
  • Reviewing or debugging code that uses JAW SDK

Key facts

  • Packages: @jaw.id/wagmi (React), @jaw.id/core (vanilla JS / server), @jaw.id/ui (app-specific mode UI)
  • API Key: Required. Get one at https://dashboard.jaw.id
  • EIP-1193 compatible: Drop-in replacement for MetaMask or any wallet
  • Smart accounts: ERC-4337 with passkey signers, gasless tx, batch ops, permissions
  • EIP-7702: EOAs can upgrade to smart accounts while keeping their address via Account.fromLocalAccount(config, localAccount, { eip7702: true })
  • EntryPoint: v0.8 only (for paymasters)

Rule index

1. Setup & Configuration

  • <rules/installation.md> - Package installation, peer dependencies, choosing wagmi vs core
  • <rules/configuration.md> - All config options: apiKey, appName, ens, mode, paymasters, preference
  • <rules/auth-modes.md> - CrossPlatform vs AppSpecific modes and when to use each

2. Wagmi Integration (React)

  • <rules/wagmi-setup.md> - Wagmi connector setup, providers, using standard wagmi hooks with JAW
  • <rules/connect-disconnect.md> - useConnect, useDisconnect, connection with capabilities
  • <rules/reown-appkit.md> - Adding JAW to an existing Reown AppKit project via WagmiAdapter

3. Core Operations

  • <rules/transactions.md> - Sending transactions, batch calls, gas estimation, checking status
  • <rules/signing.md> - Personal sign, typed data, unified wallet_sign, cross-chain signing

4. Permissions & Payments

  • <rules/permissions.md> - Granting, querying, revoking permissions (ERC-7715)
  • <rules/subscription-payments.md> - Recurring subscription payments using permissions
  • <rules/stablecoin-payments.md> - Headless USDC payments, batch payouts, ERC-20 gas

5. Identity & Auth

  • <rules/ens-identity.md> - ENS subname issuance, profile resolution, text records
  • <rules/siwe.md> - Sign-In With Ethereum (SIWE) implementation
  • <rules/gas-sponsoring.md> - Paymaster setup, sponsorship policies, multi-chain config

6. EIP-7702

  • <rules/eip7702-upgrade.md> - Upgrade EOA to smart account, provider integrations, authorization signing

7. Advanced

  • <rules/account-api.md> - Headless Account class for AI agents, server-side, embedded wallets
  • <rules/react-native.md> - React Native (Expo bare) - passkey adapter, native deps, AASA/assetlinks, storage
  • <rules/custom-ui-handler.md> - Building a custom UIHandler for app-specific mode
  • <rules/provider-api.md> - Direct provider RPC methods reference and patterns

8. Reference

  • <rules/error-handling.md> - EIP-1193 error codes, common errors, debugging
  • <rules/typescript-types.md> - Key TypeScript interfaces and type patterns

How to use

Read individual rule files for detailed guidance. Each contains: correct usage examples, common mistakes to avoid, and critical requirements.