Skip to content

Instantly share code, notes, and snippets.

@kkailiwang
kkailiwang / tempo-access-keys-privy.ts
Created June 11, 2026 00:15
Create and manage Tempo Access Keys using Privy server wallets
import { PrivyClient } from "@privy-io/server-auth";
import { encodeFunctionData, parseAbi } from "viem";
const privy = new PrivyClient(
process.env.PRIVY_APP_ID!,
process.env.PRIVY_APP_SECRET!
);
// AccountKeychain precompile
const ACCOUNT_KEYCHAIN = "0xAAAAAAAA00000000000000000000000000000000";
@kkailiwang
kkailiwang / tempo-aa-node-only.ts
Created March 19, 2026 23:13
Send a Tempo AA (0x76) transaction using Privy Node SDK's secp256k1 signer + viem tempoActions
import {PrivyClient} from '@privy-io/node';
import {
createWalletClient,
http,
keccak256,
padHex,
parseSignature,
serializeTransaction,
stringToHex
} from 'viem';
@kkailiwang
kkailiwang / tempo-aa-with-privy-secp256k1-react.tsx
Created March 19, 2026 23:12
Send a Tempo AA (0x76) transaction using Privy React SDK's secp256k1_sign + viem tempoActions
import {useWallets} from '@privy-io/react-auth';
import {
createWalletClient,
custom,
keccak256,
padHex,
parseSignature,
serializeTransaction,
stringToHex
} from 'viem';