@agenticprimitives/agent-account 0.1.0-alpha.2 → 1.0.0-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -8
- package/dist/abis.d.ts +9 -0
- package/dist/abis.d.ts.map +1 -1
- package/dist/abis.js +9 -0
- package/dist/abis.js.map +1 -1
- package/dist/client.d.ts +69 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +89 -0
- package/dist/client.js.map +1 -1
- package/dist/erc20.d.ts +27 -0
- package/dist/erc20.d.ts.map +1 -0
- package/dist/erc20.js +41 -0
- package/dist/erc20.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/package.json +16 -16
package/README.md
CHANGED
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
# @agenticprimitives/agent-account
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**The address IS the identity.**
|
|
4
4
|
|
|
5
|
-
Every person,
|
|
6
|
-
address (`0x…` / CAIP-10 `eip155:<chainId>:<address>`). This package deploys
|
|
7
|
-
that account, derives its address, builds UserOps, and verifies ERC-1271
|
|
8
|
-
signatures. Names, profiles, and passkeys are **facets** handled by sibling
|
|
9
|
-
packages.
|
|
5
|
+
Every person, organization, service agent, and treasury in this stack is an ERC-4337 Smart Agent address (`0x…` / CAIP-10 `eip155:<chainId>:<address>`). Not a username with a wallet attached — the address itself is the canonical identity, and everything else (names, passkeys, profiles, registry entries) is a replaceable facet pointing at it. This package is where that anchor comes from: it derives the address counterfactually, deploys the account, builds UserOperations, and verifies ERC-1271 signatures.
|
|
10
6
|
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
That design choice has a consequence most smart-account SDKs cannot offer: the CREATE2 salt derives from auth methods and user scope — never from a name, never from credential material ([ADR-0010](../../docs/architecture/decisions/0010-smart-agent-canonical-identifier.md), [spec 220](../../specs/220-agent-identity-bootstrap.md)). Lose a passkey, rotate a signer, change your name — the address never moves, and every delegation it ever issued stays valid ([ADR-0011](../../docs/architecture/decisions/0011-credential-recovery-and-re-association.md)).
|
|
8
|
+
|
|
9
|
+
> Part of [agenticprimitives](../../README.md) — the trust substrate for the agent economy: one canonical Smart Agent identity with custody, delegation, naming, credentials, and audit evidence designed as one system.
|
|
13
10
|
|
|
14
11
|
## Use This When
|
|
15
12
|
|
|
@@ -60,6 +57,8 @@ if (!(await account.isDeployed(address))) {
|
|
|
60
57
|
}
|
|
61
58
|
```
|
|
62
59
|
|
|
60
|
+
The address exists before the account does. You can name it, fund it, and issue authority to it counterfactually; deployment happens when it first acts.
|
|
61
|
+
|
|
63
62
|
## Main Concepts
|
|
64
63
|
|
|
65
64
|
- **Smart Agent address**: the canonical identifier; stable across credential
|
|
@@ -87,6 +86,10 @@ import { encodeWebAuthnSignature, SIG_TYPE_WEBAUTHN } from '@agenticprimitives/a
|
|
|
87
86
|
// WebAuthn ceremony output is produced by connect-auth; on-chain wire format here.
|
|
88
87
|
```
|
|
89
88
|
|
|
89
|
+
## How it's different
|
|
90
|
+
|
|
91
|
+
Safe, ZeroDev, and Alchemy Account Kit ship excellent smart accounts — and stop there. The account is a container; who it is, what it may do, and how to prove it are someone else's integration problem. Here the account is the anchor of a substrate: the same address that `agent-account` derives is what `agent-naming` resolves, `account-custody` governs, `delegation` issues authority from, and `audit` attributes evidence to. The account contract itself is a thin ERC-7579 modular core ([spec 209](../../specs/209-erc7579-module-taxonomy.md)) — custody, threshold, and session machinery are modules, not inlined features. We ported the patterns worth porting (Safe-style signature packing) without taking a runtime dependency on anyone else's account stack.
|
|
92
|
+
|
|
90
93
|
## Runtime Support
|
|
91
94
|
|
|
92
95
|
Node and browser via `viem`. Requires RPC URL for chain reads and transaction
|
|
@@ -117,6 +120,10 @@ pnpm check:agent-account
|
|
|
117
120
|
pnpm check:forbidden-terms
|
|
118
121
|
```
|
|
119
122
|
|
|
123
|
+
## Status
|
|
124
|
+
|
|
125
|
+
Testnet/pilot-ready. Production launch is gated on the public checklist in the root README — including third-party contract audit and governance key rotation. Track every security finding live in [`docs/audits/findings.yaml`](../../docs/audits/findings.yaml).
|
|
126
|
+
|
|
120
127
|
## License
|
|
121
128
|
|
|
122
129
|
UNLICENSED.
|
package/dist/abis.d.ts
CHANGED
|
@@ -23,6 +23,9 @@ export declare const agentAccountFactoryAbi: readonly [{
|
|
|
23
23
|
}, {
|
|
24
24
|
readonly name: "initialPasskeyY";
|
|
25
25
|
readonly type: "uint256";
|
|
26
|
+
}, {
|
|
27
|
+
readonly name: "initialPasskeyRpIdHash";
|
|
28
|
+
readonly type: "bytes32";
|
|
26
29
|
}];
|
|
27
30
|
}, {
|
|
28
31
|
readonly name: "timelockOverrides";
|
|
@@ -60,7 +63,13 @@ export declare const agentAccountFactoryAbi: readonly [{
|
|
|
60
63
|
}, {
|
|
61
64
|
readonly name: "initialPasskeyY";
|
|
62
65
|
readonly type: "uint256";
|
|
66
|
+
}, {
|
|
67
|
+
readonly name: "initialPasskeyRpIdHash";
|
|
68
|
+
readonly type: "bytes32";
|
|
63
69
|
}];
|
|
70
|
+
}, {
|
|
71
|
+
readonly name: "timelockOverrides";
|
|
72
|
+
readonly type: "uint32[7]";
|
|
64
73
|
}, {
|
|
65
74
|
readonly name: "salt";
|
|
66
75
|
readonly type: "uint256";
|
package/dist/abis.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abis.d.ts","sourceRoot":"","sources":["../src/abis.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"abis.d.ts","sourceRoot":"","sources":["../src/abis.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6EzB,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgDlB,CAAC;AAKX;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyB1B,CAAC;AAEX,oEAAoE;AACpE,eAAO,MAAM,mBAAmB,EAAG,YAAqB,CAAC;AAEzD;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8EhB,CAAC"}
|
package/dist/abis.js
CHANGED
|
@@ -14,6 +14,11 @@ const initParamsTuple = {
|
|
|
14
14
|
{ name: 'initialPasskeyCredentialIdDigest', type: 'bytes32' },
|
|
15
15
|
{ name: 'initialPasskeyX', type: 'uint256' },
|
|
16
16
|
{ name: 'initialPasskeyY', type: 'uint256' },
|
|
17
|
+
// H7-C.1 / CON-WEBAUTHN-001: rpIdHash binds the passkey to a specific
|
|
18
|
+
// Relying Party at registration. Required by the on-chain struct
|
|
19
|
+
// since the binding was added; the TS ABI mirror was previously
|
|
20
|
+
// out-of-sync, causing factory reverts with a 6-field tuple.
|
|
21
|
+
{ name: 'initialPasskeyRpIdHash', type: 'bytes32' },
|
|
17
22
|
],
|
|
18
23
|
};
|
|
19
24
|
export const agentAccountFactoryAbi = [
|
|
@@ -35,6 +40,10 @@ export const agentAccountFactoryAbi = [
|
|
|
35
40
|
stateMutability: 'view',
|
|
36
41
|
inputs: [
|
|
37
42
|
initParamsTuple,
|
|
43
|
+
// CA-F1 (audit 2026-06-10): the counterfactual address commits to the full
|
|
44
|
+
// custody config, so the view takes timelockOverrides too. Predict with the
|
|
45
|
+
// SAME (params, timelockOverrides, salt) you will deploy with.
|
|
46
|
+
{ name: 'timelockOverrides', type: 'uint32[7]' },
|
|
38
47
|
{ name: 'salt', type: 'uint256' },
|
|
39
48
|
],
|
|
40
49
|
outputs: [{ name: '', type: 'address' }],
|
package/dist/abis.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abis.js","sourceRoot":"","sources":["../src/abis.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,sFAAsF;AACtF,yEAAyE;AACzE,6EAA6E;AAC7E,yEAAyE;AACzE,0CAA0C;AAE1C,MAAM,eAAe,GAAG;IACtB,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,OAAO;IACb,UAAU,EAAE;QACV,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE;QAC/B,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE;QACzC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE;QACvC,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,SAAS,EAAE;QAC7D,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE;QAC5C,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE;
|
|
1
|
+
{"version":3,"file":"abis.js","sourceRoot":"","sources":["../src/abis.ts"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts
CHANGED
|
@@ -29,6 +29,7 @@ export interface AgentAccountSpec {
|
|
|
29
29
|
credentialIdDigest: Hex;
|
|
30
30
|
x: bigint;
|
|
31
31
|
y: bigint;
|
|
32
|
+
rpIdHash?: Hex;
|
|
32
33
|
};
|
|
33
34
|
salt: bigint;
|
|
34
35
|
/**
|
|
@@ -39,6 +40,27 @@ export interface AgentAccountSpec {
|
|
|
39
40
|
*/
|
|
40
41
|
timelockOverrides?: readonly number[];
|
|
41
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* R5.12c / PKG-AGENT-ACCOUNT-005 — thrown by
|
|
45
|
+
* {@link AgentAccountClient.assertSaMatchesCustodianDerivation} when a
|
|
46
|
+
* client-supplied target SA address doesn't match the deterministic
|
|
47
|
+
* derivation from the verified credential's custodian set.
|
|
48
|
+
*
|
|
49
|
+
* The message includes the claimed + derived addresses so operators
|
|
50
|
+
* can correlate forensically without re-querying the chain. The
|
|
51
|
+
* structured `spec` field carries the full input to
|
|
52
|
+
* `getAddressForAgentAccount` so the failure is reproducible.
|
|
53
|
+
*/
|
|
54
|
+
export declare class SaMismatchError extends Error {
|
|
55
|
+
readonly claimed: Address;
|
|
56
|
+
readonly derived: Address;
|
|
57
|
+
readonly spec: AgentAccountSpec;
|
|
58
|
+
constructor(opts: {
|
|
59
|
+
claimed: Address;
|
|
60
|
+
derived: Address;
|
|
61
|
+
spec: AgentAccountSpec;
|
|
62
|
+
});
|
|
63
|
+
}
|
|
42
64
|
export declare class AgentAccountClient {
|
|
43
65
|
private readonly publicClient;
|
|
44
66
|
private readonly opts;
|
|
@@ -48,6 +70,53 @@ export declare class AgentAccountClient {
|
|
|
48
70
|
* to the factory's view so TS + Solidity stay in lock-step.
|
|
49
71
|
*/
|
|
50
72
|
getAddressForAgentAccount(spec: AgentAccountSpec): Promise<Address>;
|
|
73
|
+
/**
|
|
74
|
+
* R5.12c / PKG-AGENT-ACCOUNT-005 — sponsored-deploy invariant gate.
|
|
75
|
+
*
|
|
76
|
+
* Verify that a CLAIMED Smart Agent address matches the deterministic
|
|
77
|
+
* derivation from the SUPPLIED custodian set + spec defaults. Returns
|
|
78
|
+
* the verified address on match; throws {@link SaMismatchError} on
|
|
79
|
+
* mismatch.
|
|
80
|
+
*
|
|
81
|
+
* **Use this whenever a relying broker sponsors a deploy or signs an
|
|
82
|
+
* action for a client-supplied target SA address.** A sponsored deploy
|
|
83
|
+
* that uses the CLAIMED address verbatim trusts the client; a sponsored
|
|
84
|
+
* deploy gated by this assert verifies the client-supplied target IS
|
|
85
|
+
* the canonical SA the verified credential implies. Without this gate
|
|
86
|
+
* any authenticated user could ask the broker to deploy (and pay gas
|
|
87
|
+
* for) an arbitrary address — a financial DoS.
|
|
88
|
+
*
|
|
89
|
+
* Convention: pass the credential-derived address(es) as `custodians`
|
|
90
|
+
* and the client-supplied target as `claimed`. Defaults match the
|
|
91
|
+
* canonical "SIWE wallet → mode-0 SA" flow: `mode = 0`, `salt = 0n`,
|
|
92
|
+
* no trustees, no passkey. Override only when the broker legitimately
|
|
93
|
+
* deploys a non-default shape (e.g. a passkey-direct SA with
|
|
94
|
+
* `mode = 0` + the passkey block).
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* ```ts
|
|
98
|
+
* // demo-a2a /session/direct-deploy
|
|
99
|
+
* const verifiedWallet = recoverSiweAddress(...);
|
|
100
|
+
* await client.assertSaMatchesCustodianDerivation({
|
|
101
|
+
* claimed: body.smartAccountAddress, // client-supplied
|
|
102
|
+
* custodians: [verifiedWallet],
|
|
103
|
+
* });
|
|
104
|
+
* // Throws SaMismatchError if the client lied; otherwise the broker
|
|
105
|
+
* // sponsors the deploy of the EXACT canonical SA derived from the
|
|
106
|
+
* // verified credential.
|
|
107
|
+
* ```
|
|
108
|
+
*
|
|
109
|
+
* @throws SaMismatchError when `claimed.toLowerCase() !== derived.toLowerCase()`.
|
|
110
|
+
*/
|
|
111
|
+
assertSaMatchesCustodianDerivation(opts: {
|
|
112
|
+
claimed: Address;
|
|
113
|
+
custodians: readonly Address[];
|
|
114
|
+
mode?: number;
|
|
115
|
+
salt?: bigint;
|
|
116
|
+
trustees?: readonly Address[];
|
|
117
|
+
passkey?: AgentAccountSpec['passkey'];
|
|
118
|
+
timelockOverrides?: readonly number[];
|
|
119
|
+
}): Promise<Address>;
|
|
51
120
|
/**
|
|
52
121
|
* Deploy an AgentAccount via the factory using a raw bootstrap private key.
|
|
53
122
|
* Idempotent — skips the tx if the predicted address already has code.
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAQA,OAAO,EAQL,KAAK,OAAO,EACZ,KAAK,GAAG,EAER,KAAK,kBAAkB,EACxB,MAAM,MAAM,CAAC;AAEd,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EAAgC,KAAK,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AA8D1F,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC;IAChC,QAAQ,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE;QACR,kBAAkB,EAAE,GAAG,CAAC;QACxB,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -63,8 +63,37 @@ function _initParamsTuple(spec) {
|
|
|
63
63
|
initialPasskeyCredentialIdDigest: spec.passkey?.credentialIdDigest ?? ZERO_BYTES32,
|
|
64
64
|
initialPasskeyX: spec.passkey?.x ?? 0n,
|
|
65
65
|
initialPasskeyY: spec.passkey?.y ?? 0n,
|
|
66
|
+
// H7-C.1 / CON-WEBAUTHN-001: rpIdHash binds the passkey to a specific
|
|
67
|
+
// RP. Defaults to ZERO_BYTES32 when no passkey is supplied (mode-0
|
|
68
|
+
// EOA-only deploys); the factory's _validateInitParams allows this.
|
|
69
|
+
initialPasskeyRpIdHash: spec.passkey?.rpIdHash ?? ZERO_BYTES32,
|
|
66
70
|
};
|
|
67
71
|
}
|
|
72
|
+
/**
|
|
73
|
+
* R5.12c / PKG-AGENT-ACCOUNT-005 — thrown by
|
|
74
|
+
* {@link AgentAccountClient.assertSaMatchesCustodianDerivation} when a
|
|
75
|
+
* client-supplied target SA address doesn't match the deterministic
|
|
76
|
+
* derivation from the verified credential's custodian set.
|
|
77
|
+
*
|
|
78
|
+
* The message includes the claimed + derived addresses so operators
|
|
79
|
+
* can correlate forensically without re-querying the chain. The
|
|
80
|
+
* structured `spec` field carries the full input to
|
|
81
|
+
* `getAddressForAgentAccount` so the failure is reproducible.
|
|
82
|
+
*/
|
|
83
|
+
export class SaMismatchError extends Error {
|
|
84
|
+
claimed;
|
|
85
|
+
derived;
|
|
86
|
+
spec;
|
|
87
|
+
constructor(opts) {
|
|
88
|
+
super(`[agent-account] SA derivation mismatch: claimed ${opts.claimed} but spec derives to ${opts.derived}. ` +
|
|
89
|
+
`A sponsored deploy / signed action against the claimed address would not match the canonical SA ` +
|
|
90
|
+
`for the supplied custodian set (mode=${opts.spec.mode ?? 0}, salt=${(opts.spec.salt ?? 0n).toString()}).`);
|
|
91
|
+
this.name = 'SaMismatchError';
|
|
92
|
+
this.claimed = opts.claimed;
|
|
93
|
+
this.derived = opts.derived;
|
|
94
|
+
this.spec = opts.spec;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
68
97
|
export class AgentAccountClient {
|
|
69
98
|
publicClient;
|
|
70
99
|
opts;
|
|
@@ -84,9 +113,69 @@ export class AgentAccountClient {
|
|
|
84
113
|
});
|
|
85
114
|
return (await factory.read.getAddressForAgentAccount([
|
|
86
115
|
_initParamsTuple(spec),
|
|
116
|
+
// CA-F1: the address commits to the custody config; predict with the same
|
|
117
|
+
// timelockOverrides used at deploy (zeros = inherit factory defaults).
|
|
118
|
+
_timelockOverridesTuple(spec),
|
|
87
119
|
spec.salt,
|
|
88
120
|
]));
|
|
89
121
|
}
|
|
122
|
+
/**
|
|
123
|
+
* R5.12c / PKG-AGENT-ACCOUNT-005 — sponsored-deploy invariant gate.
|
|
124
|
+
*
|
|
125
|
+
* Verify that a CLAIMED Smart Agent address matches the deterministic
|
|
126
|
+
* derivation from the SUPPLIED custodian set + spec defaults. Returns
|
|
127
|
+
* the verified address on match; throws {@link SaMismatchError} on
|
|
128
|
+
* mismatch.
|
|
129
|
+
*
|
|
130
|
+
* **Use this whenever a relying broker sponsors a deploy or signs an
|
|
131
|
+
* action for a client-supplied target SA address.** A sponsored deploy
|
|
132
|
+
* that uses the CLAIMED address verbatim trusts the client; a sponsored
|
|
133
|
+
* deploy gated by this assert verifies the client-supplied target IS
|
|
134
|
+
* the canonical SA the verified credential implies. Without this gate
|
|
135
|
+
* any authenticated user could ask the broker to deploy (and pay gas
|
|
136
|
+
* for) an arbitrary address — a financial DoS.
|
|
137
|
+
*
|
|
138
|
+
* Convention: pass the credential-derived address(es) as `custodians`
|
|
139
|
+
* and the client-supplied target as `claimed`. Defaults match the
|
|
140
|
+
* canonical "SIWE wallet → mode-0 SA" flow: `mode = 0`, `salt = 0n`,
|
|
141
|
+
* no trustees, no passkey. Override only when the broker legitimately
|
|
142
|
+
* deploys a non-default shape (e.g. a passkey-direct SA with
|
|
143
|
+
* `mode = 0` + the passkey block).
|
|
144
|
+
*
|
|
145
|
+
* @example
|
|
146
|
+
* ```ts
|
|
147
|
+
* // demo-a2a /session/direct-deploy
|
|
148
|
+
* const verifiedWallet = recoverSiweAddress(...);
|
|
149
|
+
* await client.assertSaMatchesCustodianDerivation({
|
|
150
|
+
* claimed: body.smartAccountAddress, // client-supplied
|
|
151
|
+
* custodians: [verifiedWallet],
|
|
152
|
+
* });
|
|
153
|
+
* // Throws SaMismatchError if the client lied; otherwise the broker
|
|
154
|
+
* // sponsors the deploy of the EXACT canonical SA derived from the
|
|
155
|
+
* // verified credential.
|
|
156
|
+
* ```
|
|
157
|
+
*
|
|
158
|
+
* @throws SaMismatchError when `claimed.toLowerCase() !== derived.toLowerCase()`.
|
|
159
|
+
*/
|
|
160
|
+
async assertSaMatchesCustodianDerivation(opts) {
|
|
161
|
+
const spec = {
|
|
162
|
+
mode: opts.mode ?? 0,
|
|
163
|
+
custodians: opts.custodians,
|
|
164
|
+
trustees: opts.trustees ?? [],
|
|
165
|
+
passkey: opts.passkey,
|
|
166
|
+
salt: opts.salt ?? 0n,
|
|
167
|
+
timelockOverrides: opts.timelockOverrides,
|
|
168
|
+
};
|
|
169
|
+
const derived = await this.getAddressForAgentAccount(spec);
|
|
170
|
+
if (derived.toLowerCase() !== opts.claimed.toLowerCase()) {
|
|
171
|
+
throw new SaMismatchError({
|
|
172
|
+
claimed: opts.claimed,
|
|
173
|
+
derived,
|
|
174
|
+
spec,
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
return derived;
|
|
178
|
+
}
|
|
90
179
|
/**
|
|
91
180
|
* Deploy an AgentAccount via the factory using a raw bootstrap private key.
|
|
92
181
|
* Idempotent — skips the tx if the predicted address already has code.
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/erc20.d.ts
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type Address } from 'viem';
|
|
2
|
+
import type { ContractCall } from './execute';
|
|
3
|
+
declare const ERC20_BALANCE_ABI: readonly [{
|
|
4
|
+
readonly type: "function";
|
|
5
|
+
readonly name: "balanceOf";
|
|
6
|
+
readonly stateMutability: "view";
|
|
7
|
+
readonly inputs: readonly [{
|
|
8
|
+
readonly name: "owner";
|
|
9
|
+
readonly type: "address";
|
|
10
|
+
}];
|
|
11
|
+
readonly outputs: readonly [{
|
|
12
|
+
readonly type: "uint256";
|
|
13
|
+
}];
|
|
14
|
+
}];
|
|
15
|
+
/** Build a `{ to: token, value: 0, data: transfer(to, amount) }` call — the payer leg of an x402 charge.
|
|
16
|
+
* For a direct UserOp wrap with `buildExecuteCallData`; for x402 it rides the gated `redeemDelegation`. */
|
|
17
|
+
export declare function buildErc20TransferCall(token: Address, to: Address, amount: bigint): ContractCall;
|
|
18
|
+
/** Read an ERC-20 balance (e.g. a treasury AgentAccount's USDC). `readContract` is a `(addr, abi, fn,
|
|
19
|
+
* args) => Promise<unknown>` — viem's `publicClient.readContract` fits directly. */
|
|
20
|
+
export declare function readErc20Balance(readContract: (args: {
|
|
21
|
+
address: Address;
|
|
22
|
+
abi: typeof ERC20_BALANCE_ABI;
|
|
23
|
+
functionName: 'balanceOf';
|
|
24
|
+
args: [Address];
|
|
25
|
+
}) => Promise<unknown>, token: Address, owner: Address): Promise<bigint>;
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=erc20.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"erc20.d.ts","sourceRoot":"","sources":["../src/erc20.ts"],"names":[],"mappings":"AAIA,OAAO,EAAsB,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAe9C,QAAA,MAAM,iBAAiB;;;;;;;;;;;EAQb,CAAC;AAEX;4GAC4G;AAC5G,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY,CAMhG;AAED;qFACqF;AACrF,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,OAAO,iBAAiB,CAAC;IAAC,YAAY,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAA;CAAE,KAAK,OAAO,CAAC,OAAO,CAAC,EACzI,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,MAAM,CAAC,CAGjB"}
|
package/dist/erc20.js
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
// Spec 272 PAY-ACCT-1/2 — tiny ERC-20 helpers for the x402 treasury + payer paths. The payer transfer
|
|
2
|
+
// is a `ContractCall` (wrap with buildExecuteCallData for a UserOp, OR feed to a delegation redemption);
|
|
3
|
+
// the treasury is a plain AgentAccount, so reading its balance is a generic balanceOf.
|
|
4
|
+
import { encodeFunctionData } from 'viem';
|
|
5
|
+
const ERC20_TRANSFER_ABI = [
|
|
6
|
+
{
|
|
7
|
+
type: 'function',
|
|
8
|
+
name: 'transfer',
|
|
9
|
+
stateMutability: 'nonpayable',
|
|
10
|
+
inputs: [
|
|
11
|
+
{ name: 'to', type: 'address' },
|
|
12
|
+
{ name: 'amount', type: 'uint256' },
|
|
13
|
+
],
|
|
14
|
+
outputs: [{ type: 'bool' }],
|
|
15
|
+
},
|
|
16
|
+
];
|
|
17
|
+
const ERC20_BALANCE_ABI = [
|
|
18
|
+
{
|
|
19
|
+
type: 'function',
|
|
20
|
+
name: 'balanceOf',
|
|
21
|
+
stateMutability: 'view',
|
|
22
|
+
inputs: [{ name: 'owner', type: 'address' }],
|
|
23
|
+
outputs: [{ type: 'uint256' }],
|
|
24
|
+
},
|
|
25
|
+
];
|
|
26
|
+
/** Build a `{ to: token, value: 0, data: transfer(to, amount) }` call — the payer leg of an x402 charge.
|
|
27
|
+
* For a direct UserOp wrap with `buildExecuteCallData`; for x402 it rides the gated `redeemDelegation`. */
|
|
28
|
+
export function buildErc20TransferCall(token, to, amount) {
|
|
29
|
+
return {
|
|
30
|
+
to: token,
|
|
31
|
+
value: 0n,
|
|
32
|
+
data: encodeFunctionData({ abi: ERC20_TRANSFER_ABI, functionName: 'transfer', args: [to, amount] }),
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/** Read an ERC-20 balance (e.g. a treasury AgentAccount's USDC). `readContract` is a `(addr, abi, fn,
|
|
36
|
+
* args) => Promise<unknown>` — viem's `publicClient.readContract` fits directly. */
|
|
37
|
+
export async function readErc20Balance(readContract, token, owner) {
|
|
38
|
+
const out = await readContract({ address: token, abi: ERC20_BALANCE_ABI, functionName: 'balanceOf', args: [owner] });
|
|
39
|
+
return out;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=erc20.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"erc20.js","sourceRoot":"","sources":["../src/erc20.ts"],"names":[],"mappings":"AAAA,sGAAsG;AACtG,yGAAyG;AACzG,uFAAuF;AAEvF,OAAO,EAAE,kBAAkB,EAAgB,MAAM,MAAM,CAAC;AAGxD,MAAM,kBAAkB,GAAG;IACzB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;YAC/B,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SACpC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KAC5B;CACO,CAAC;AAEX,MAAM,iBAAiB,GAAG;IACxB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,WAAW;QACjB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KAC/B;CACO,CAAC;AAEX;4GAC4G;AAC5G,MAAM,UAAU,sBAAsB,CAAC,KAAc,EAAE,EAAW,EAAE,MAAc;IAChF,OAAO;QACL,EAAE,EAAE,KAAK;QACT,KAAK,EAAE,EAAE;QACT,IAAI,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,kBAAkB,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;KACpG,CAAC;AACJ,CAAC;AAED;qFACqF;AACrF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,YAAyI,EACzI,KAAc,EACd,KAAc;IAEd,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACrH,OAAO,GAAa,CAAC;AACvB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
export { AgentAccountClient } from './client';
|
|
1
|
+
export { AgentAccountClient, SaMismatchError } from './client';
|
|
2
2
|
export type { AgentAccountClientOpts, AgentAccountSpec } from './client';
|
|
3
3
|
export type { UserOperation, Address, Hex } from './types';
|
|
4
4
|
export { buildExecuteCallData, buildExecuteBatchCallData, type ContractCall } from './execute';
|
|
5
|
+
export { buildErc20TransferCall, readErc20Balance } from './erc20';
|
|
5
6
|
export { BundlerClient, packGasLimits, unpackGasLimits } from './bundler-client';
|
|
6
7
|
export type { BundlerClientOpts, PackedUserOperation } from './bundler-client';
|
|
7
8
|
export { agentAccountAbi, agentAccountFactoryAbi, approvedHashRegistryAbi, entryPointAbi, } from './abis';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC/D,YAAY,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACzE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAE/F,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACjF,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,aAAa,GACd,MAAM,QAAQ,CAAC;AAIhB,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,UAAU,CAAC;AAClB,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAOlD,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,uBAAuB,GACxB,MAAM,sBAAsB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
// @agenticprimitives/agent-account — public API
|
|
2
2
|
//
|
|
3
3
|
// See ../../specs/201-agent-account.md for the full contract.
|
|
4
|
-
export { AgentAccountClient } from './client';
|
|
4
|
+
export { AgentAccountClient, SaMismatchError } from './client';
|
|
5
5
|
export { buildExecuteCallData, buildExecuteBatchCallData } from './execute';
|
|
6
|
+
// Spec 272 PAY-ACCT-1/2 — x402 treasury + payer ERC-20 helpers.
|
|
7
|
+
export { buildErc20TransferCall, readErc20Balance } from './erc20';
|
|
6
8
|
export { BundlerClient, packGasLimits, unpackGasLimits } from './bundler-client';
|
|
7
9
|
export { agentAccountAbi, agentAccountFactoryAbi, approvedHashRegistryAbi, entryPointAbi, } from './abis';
|
|
8
10
|
// custodyPolicyAbi moved to @agenticprimitives/account-custody (spec 213 § 2.6).
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,EAAE;AACF,8DAA8D;AAE9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,EAAE;AACF,8DAA8D;AAE9D,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG/D,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAqB,MAAM,WAAW,CAAC;AAC/F,gEAAgE;AAChE,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEjF,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,aAAa,GACd,MAAM,QAAQ,CAAC;AAChB,iFAAiF;AAEjF,yDAAyD;AACzD,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,UAAU,CAAC;AAGlB,sDAAsD;AACtD,wEAAwE;AACxE,mEAAmE;AACnE,wDAAwD;AACxD,wCAAwC;AACxC,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,uBAAuB,GACxB,MAAM,sBAAsB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agenticprimitives/agent-account",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "1.0.0-alpha.10",
|
|
4
4
|
"description": "ERC-4337 smart-account substrate: deterministic addressing, factory deployment, ERC-1271 signing, UserOp building.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -27,25 +27,16 @@
|
|
|
27
27
|
"spec.md",
|
|
28
28
|
"README.md"
|
|
29
29
|
],
|
|
30
|
-
"scripts": {
|
|
31
|
-
"build": "tsc -p tsconfig.build.json",
|
|
32
|
-
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
33
|
-
"test": "vitest run",
|
|
34
|
-
"test:unit": "vitest run test/unit",
|
|
35
|
-
"test:integration": "vitest run test/integration --passWithNoTests",
|
|
36
|
-
"test:watch": "vitest",
|
|
37
|
-
"clean": "rm -rf dist"
|
|
38
|
-
},
|
|
39
30
|
"publishConfig": {
|
|
40
31
|
"access": "public"
|
|
41
32
|
},
|
|
42
33
|
"peerDependencies": {
|
|
43
|
-
"
|
|
44
|
-
"@agenticprimitives/
|
|
45
|
-
"
|
|
34
|
+
"viem": "^2.52.2",
|
|
35
|
+
"@agenticprimitives/connect-auth": "1.0.0-alpha.10",
|
|
36
|
+
"@agenticprimitives/types": "1.0.0-alpha.10"
|
|
46
37
|
},
|
|
47
38
|
"devDependencies": {
|
|
48
|
-
"vitest": "^
|
|
39
|
+
"vitest": "^4.1.8"
|
|
49
40
|
},
|
|
50
41
|
"keywords": [
|
|
51
42
|
"erc-4337",
|
|
@@ -53,5 +44,14 @@
|
|
|
53
44
|
"account-abstraction",
|
|
54
45
|
"erc-1271",
|
|
55
46
|
"agentic"
|
|
56
|
-
]
|
|
57
|
-
|
|
47
|
+
],
|
|
48
|
+
"scripts": {
|
|
49
|
+
"build": "tsc -p tsconfig.build.json",
|
|
50
|
+
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
51
|
+
"test": "vitest run",
|
|
52
|
+
"test:unit": "vitest run test/unit --passWithNoTests",
|
|
53
|
+
"test:integration": "vitest run test/integration --passWithNoTests",
|
|
54
|
+
"test:watch": "vitest",
|
|
55
|
+
"clean": "rm -rf dist"
|
|
56
|
+
}
|
|
57
|
+
}
|