@slicekit/wallet-primitives
v0.1.1
Published
Protocol primitives supporting @slicekit/wallet and Slice servers: policies, chain manifests, hashes, Kernel v4 encoding, and execution admission
Readme
@slicekit/wallet-primitives
The protocol layer of Slice Wallet: the bytes both sides of the protocol must agree on, packaged runtime-neutral so browsers, workers, and servers verify exactly what the wallet signs.
This package is not primarily designed for public consumption. It is published
as a separate package because @slicekit/wallet and Slice's
server-side verifiers (the API and the credential registry) need a single
source of truth for policy encoding and execution admission. Applications
integrating Slice Wallet should depend on @slicekit/wallet, which builds on
these primitives.
Installation
npm install @slicekit/wallet-primitives viemWhat it owns
- Chain manifests and execution-safety policy, generated from canonical deployment facts.
- Wallet policy descriptors: rule templates, serialization, canonical hashes, and permission ids.
- App-permission records, root and permission authorization verification, and factory-args validation.
- Execution admission: user-operation policy, bundler and ERC-7677 paymaster request parsing, call classification, and allowance math.
- The complete Kernel v4 encoding: ABIs and constants, deployment profiles,
factory and ERC-1967 proxy address derivation, install-package, nonce and
permission encoding, install state, and the
InstallPackagestyped data — with no ZeroDev SDKs.
Entry Points
@slicekit/wallet-primitives: chain manifests, policy builders, account prediction, permission encoding, and recovery init config.@slicekit/wallet-primitives/execution: execution admission — user-operation policy, bundler and paymaster request parsing, and checkout call classification.@slicekit/wallet-primitives/kernel: the Kernel v4 encoding and deployment profiles.@slicekit/wallet-primitives/policy: wallet policy descriptor parsing, serialization, and hashes.@slicekit/wallet-primitives/server: server-side verification — app permissions, root and permission authorization, and factory validation.
Usage
import { getSliceWalletChainPolicy } from "@slicekit/wallet-primitives"
// The generated per-chain manifest: contract deployments, default transports,
// execution-safety envelope, and funding policy.
const manifest = getSliceWalletChainPolicy(8453)
manifest.contracts.kernelFactory.addressServer-side verification uses the same modules the wallet signs with — for
example verifySliceWalletPermissionAuthorization and
assertSliceWalletFactoryArgs from @slicekit/wallet-primitives/server
recompute the exact Kernel v4 enable bytes and factory args a client
submitted.
Constraints
Runtime-neutral by construction: no React, DOM, wagmi, or vendor SDK imports, enforced by the package's import-boundary check.
