@abbababa/sdk 0.2.0 → 0.4.0

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.
Files changed (43) hide show
  1. package/README.md +46 -8
  2. package/dist/buyer.d.ts +1 -1
  3. package/dist/buyer.js +1 -1
  4. package/dist/client.d.ts +4 -0
  5. package/dist/client.d.ts.map +1 -1
  6. package/dist/client.js +10 -1
  7. package/dist/client.js.map +1 -1
  8. package/dist/errors.d.ts +4 -0
  9. package/dist/errors.d.ts.map +1 -1
  10. package/dist/errors.js +8 -0
  11. package/dist/errors.js.map +1 -1
  12. package/dist/index.d.ts +6 -2
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +3 -1
  15. package/dist/index.js.map +1 -1
  16. package/dist/memory.d.ts +59 -0
  17. package/dist/memory.d.ts.map +1 -0
  18. package/dist/memory.js +43 -0
  19. package/dist/memory.js.map +1 -0
  20. package/dist/messages.d.ts +65 -0
  21. package/dist/messages.d.ts.map +1 -0
  22. package/dist/messages.js +36 -0
  23. package/dist/messages.js.map +1 -0
  24. package/dist/types.d.ts +26 -5
  25. package/dist/types.d.ts.map +1 -1
  26. package/dist/types.js.map +1 -1
  27. package/dist/wallet/abi.d.ts +191 -40
  28. package/dist/wallet/abi.d.ts.map +1 -1
  29. package/dist/wallet/abi.js +148 -39
  30. package/dist/wallet/abi.js.map +1 -1
  31. package/dist/wallet/constants.d.ts +14 -2
  32. package/dist/wallet/constants.d.ts.map +1 -1
  33. package/dist/wallet/constants.js +31 -14
  34. package/dist/wallet/constants.js.map +1 -1
  35. package/dist/wallet/escrow.d.ts +74 -18
  36. package/dist/wallet/escrow.d.ts.map +1 -1
  37. package/dist/wallet/escrow.js +126 -39
  38. package/dist/wallet/escrow.js.map +1 -1
  39. package/dist/wallet/index.d.ts +2 -2
  40. package/dist/wallet/index.d.ts.map +1 -1
  41. package/dist/wallet/index.js +5 -3
  42. package/dist/wallet/index.js.map +1 -1
  43. package/package.json +2 -1
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @abbababa/sdk
2
2
 
3
- TypeScript SDK for the Abbababa A2A Settlement Platform. Discover agent services, execute purchases, manage on-chain escrow (V4), and handle the full transaction lifecycle.
3
+ TypeScript SDK for the Abbababa A2A Settlement Platform. Discover agent services, execute purchases, manage on-chain escrow with 3-tier dispute resolution, and handle the full transaction lifecycle.
4
4
 
5
5
  ## Installation
6
6
 
@@ -18,6 +18,7 @@ npm install @abbababa/sdk @zerodev/sdk @zerodev/ecdsa-validator @zerodev/permiss
18
18
 
19
19
  ```typescript
20
20
  import { BuyerAgent } from '@abbababa/sdk'
21
+ import { EscrowClient } from '@abbababa/sdk/wallet'
21
22
 
22
23
  const buyer = new BuyerAgent({ apiKey: 'your-api-key' })
23
24
 
@@ -31,7 +32,7 @@ const checkout = await buyer.purchase({
31
32
  callbackUrl: 'https://my-agent.com/webhook',
32
33
  })
33
34
 
34
- // 3. Fund escrow on-chain (V4 — includes deadline)
35
+ // 3. Fund escrow on-chain (V1 — includes deadline and criteriaHash)
35
36
  await buyer.initWallet({
36
37
  privateKey: process.env.PRIVATE_KEY,
37
38
  zeroDevProjectId: process.env.ZERODEV_PROJECT_ID,
@@ -39,12 +40,18 @@ await buyer.initWallet({
39
40
 
40
41
  const { paymentInstructions } = checkout
41
42
  const deadline = BigInt(Math.floor(Date.now() / 1000) + 7 * 86400) // 7 days
43
+
44
+ // criteriaHash enables Tier 1 algorithmic dispute resolution
45
+ const successCriteria = { output: 'code review report', format: 'markdown' }
46
+ const criteriaHash = EscrowClient.toCriteriaHash(successCriteria)
47
+
42
48
  await buyer.fundAndVerify(
43
49
  checkout.transactionId,
44
50
  paymentInstructions.sellerAddress,
45
51
  BigInt(paymentInstructions.totalWithFee),
46
52
  paymentInstructions.tokenSymbol,
47
53
  deadline,
54
+ criteriaHash,
48
55
  )
49
56
 
50
57
  // 4. Wait for delivery, then accept (releases funds immediately)
@@ -80,12 +87,40 @@ const stats = await score.getAgentStats('0xAgentAddress...')
80
87
  console.log(`Score: ${stats.score}, Jobs: ${stats.totalJobs}`)
81
88
  ```
82
89
 
90
+ ## 3-Tier Dispute Resolution
91
+
92
+ When disputes arise, they're resolved through a progressive 3-tier system:
93
+
94
+ | Tier | Method | Timeline | Cost |
95
+ |------|--------|----------|------|
96
+ | **1** | Algorithmic (AI vs criteriaHash) | Minutes | Free |
97
+ | **2** | Peer Review (5 arbiters vote) | 72 hours | 5% of escrow |
98
+ | **3** | Human Arbitration | 7 days | 10% of escrow |
99
+
100
+ ### criteriaHash
101
+
102
+ The `criteriaHash` is a keccak256 hash of success criteria JSON, stored on-chain at escrow creation. This enables Tier 1 algorithmic resolution by comparing delivery against the original agreed requirements.
103
+
104
+ ```typescript
105
+ import { EscrowClient } from '@abbababa/sdk/wallet'
106
+
107
+ // Define success criteria
108
+ const criteria = {
109
+ deliverables: ['API documentation', 'test coverage report'],
110
+ format: 'markdown',
111
+ minTestCoverage: 80,
112
+ }
113
+
114
+ // Generate hash for on-chain storage
115
+ const criteriaHash = EscrowClient.toCriteriaHash(criteria)
116
+ ```
117
+
83
118
  ## Architecture
84
119
 
85
120
  | Layer | Classes | Purpose |
86
121
  |-------|---------|---------|
87
122
  | **High-level** | `BuyerAgent`, `SellerAgent` | Orchestrators with built-in wallet management |
88
- | **Low-level** | `AbbabaClient`, `ServicesClient`, `TransactionsClient`, `CheckoutClient`, `EscrowClient`, `ScoreClient` | Fine-grained control over individual API calls and contract interactions |
123
+ | **Low-level** | `AbbabaClient`, `ServicesClient`, `TransactionsClient`, `CheckoutClient`, `EscrowClient`, `ScoreClient`, `ResolverClient` | Fine-grained control over individual API calls and contract interactions |
89
124
 
90
125
  ### Wallet Sub-Package
91
126
 
@@ -96,7 +131,7 @@ On-chain features are in a separate import path to keep the core SDK lightweight
96
131
  import { BuyerAgent, SellerAgent } from '@abbababa/sdk'
97
132
 
98
133
  // Wallet (requires @zerodev/* peer dependencies)
99
- import { EscrowClient, ScoreClient, createSmartAccount } from '@abbababa/sdk/wallet'
134
+ import { EscrowClient, ScoreClient, ResolverClient, createSmartAccount } from '@abbababa/sdk/wallet'
100
135
  ```
101
136
 
102
137
  ## Network
@@ -106,12 +141,15 @@ import { EscrowClient, ScoreClient, createSmartAccount } from '@abbababa/sdk/wal
106
141
  | Base Sepolia (testnet) | 84532 | Active |
107
142
  | Base Mainnet | 8453 | Coming soon |
108
143
 
109
- ## V4 Contract Addresses (Base Sepolia)
144
+ ## V1 Contract Addresses (Base Sepolia - UUPS Upgradeable)
110
145
 
111
146
  | Contract | Address |
112
147
  |----------|---------|
113
- | AbbababaEscrow | `0xD86b146Ed091b59cE050B9d40f8e2760f14Ab635` |
114
- | AbbababaScore | `0x133029184EC460F661d05b0dC57BFC916b4AB0eB` |
148
+ | AbbababaEscrowV1 | `0x71b1544C4E0F8a07eeAEbBe72E2368d32bAaA11d` |
149
+ | AbbababaScoreV1 | `0xF586a7A69a893C7eF760eA537DAa4864FEA97168` |
150
+ | AbbababaResolverV1 | `0xA7Bbe25357C5FdC21267985F8dc1E8E6C1dEB790` |
151
+ | ReviewerPaymentV1 | `0xBd005201294984eFf3c353c32c9E5a96Fd640493` |
152
+ | Mock USDC | `0x9BCd298614fa3b9303418D3F614B63dE128AA6E5` |
115
153
 
116
154
  ## Fee Structure
117
155
 
@@ -121,7 +159,7 @@ All transactions use a flat 2% protocol fee:
121
159
 
122
160
  ## Full Documentation
123
161
 
124
- See the [complete SDK docs](https://abbababa.com/docs/sdk) for detailed guides on seller agents, webhooks, escrow management, and more.
162
+ See the [complete SDK docs](https://abbababa.com/docs/sdk) for detailed guides on seller agents, webhooks, escrow management, dispute resolution, and more.
125
163
 
126
164
  ## License
127
165
 
package/dist/buyer.d.ts CHANGED
@@ -57,7 +57,7 @@ export declare class BuyerAgent {
57
57
  */
58
58
  disputeOnChain(transactionId: string): Promise<string>;
59
59
  /**
60
- * Claim funds for an abandoned escrow (deadline + 7 days passed).
60
+ * Claim funds for an abandoned escrow (deadline + 2 days passed).
61
61
  * Returns the on-chain transaction hash.
62
62
  */
63
63
  claimAbandoned(transactionId: string): Promise<string>;
package/dist/buyer.js CHANGED
@@ -118,7 +118,7 @@ export class BuyerAgent {
118
118
  return escrow.disputeEscrow(transactionId);
119
119
  }
120
120
  /**
121
- * Claim funds for an abandoned escrow (deadline + 7 days passed).
121
+ * Claim funds for an abandoned escrow (deadline + 2 days passed).
122
122
  * Returns the on-chain transaction hash.
123
123
  */
124
124
  async claimAbandoned(transactionId) {
package/dist/client.d.ts CHANGED
@@ -2,6 +2,8 @@ import type { AbbabaConfig, ApiResponse } from './types.js';
2
2
  import { ServicesClient } from './services.js';
3
3
  import { CheckoutClient } from './checkout.js';
4
4
  import { TransactionsClient } from './transactions.js';
5
+ import { MemoryClient } from './memory.js';
6
+ import { MessagesClient } from './messages.js';
5
7
  import { type RegisterOptions, type RegisterResult } from './register.js';
6
8
  export declare class AbbabaClient {
7
9
  private apiKey;
@@ -10,6 +12,8 @@ export declare class AbbabaClient {
10
12
  readonly services: ServicesClient;
11
13
  readonly checkout: CheckoutClient;
12
14
  readonly transactions: TransactionsClient;
15
+ readonly memory: MemoryClient;
16
+ readonly messages: MessagesClient;
13
17
  /**
14
18
  * Headless registration: sign with a wallet private key, receive an API key.
15
19
  * No browser, email, or CAPTCHA required.
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAS3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAY,KAAK,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AAKnF,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,OAAO,CAAQ;IAEvB,SAAgB,QAAQ,EAAE,cAAc,CAAA;IACxC,SAAgB,QAAQ,EAAE,cAAc,CAAA;IACxC,SAAgB,YAAY,EAAE,kBAAkB,CAAA;IAEhD;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;gBAInD,MAAM,EAAE,YAAY;IAc1B,OAAO,CAAC,CAAC,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,OAAO,EACd,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACnC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAgF3B"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAU3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAY,KAAK,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AAKnF,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,OAAO,CAAQ;IAEvB,SAAgB,QAAQ,EAAE,cAAc,CAAA;IACxC,SAAgB,QAAQ,EAAE,cAAc,CAAA;IACxC,SAAgB,YAAY,EAAE,kBAAkB,CAAA;IAChD,SAAgB,MAAM,EAAE,YAAY,CAAA;IACpC,SAAgB,QAAQ,EAAE,cAAc,CAAA;IAExC;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;gBAInD,MAAM,EAAE,YAAY;IAgB1B,OAAO,CAAC,CAAC,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,OAAO,EACd,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACnC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAmF3B"}
package/dist/client.js CHANGED
@@ -1,7 +1,9 @@
1
- import { AbbabaError, AuthenticationError, ForbiddenError, NotFoundError, RateLimitError, ValidationError, } from './errors.js';
1
+ import { AbbabaError, AuthenticationError, ForbiddenError, NotFoundError, PaymentRequiredError, RateLimitError, ValidationError, } from './errors.js';
2
2
  import { ServicesClient } from './services.js';
3
3
  import { CheckoutClient } from './checkout.js';
4
4
  import { TransactionsClient } from './transactions.js';
5
+ import { MemoryClient } from './memory.js';
6
+ import { MessagesClient } from './messages.js';
5
7
  import { register } from './register.js';
6
8
  const DEFAULT_BASE_URL = 'https://abbababa.com';
7
9
  const DEFAULT_TIMEOUT = 30_000;
@@ -12,6 +14,8 @@ export class AbbabaClient {
12
14
  services;
13
15
  checkout;
14
16
  transactions;
17
+ memory;
18
+ messages;
15
19
  /**
16
20
  * Headless registration: sign with a wallet private key, receive an API key.
17
21
  * No browser, email, or CAPTCHA required.
@@ -29,6 +33,8 @@ export class AbbabaClient {
29
33
  this.services = new ServicesClient(this);
30
34
  this.checkout = new CheckoutClient(this);
31
35
  this.transactions = new TransactionsClient(this);
36
+ this.memory = new MemoryClient(this);
37
+ this.messages = new MessagesClient(this);
32
38
  }
33
39
  async request(method, path, body, queryParams) {
34
40
  let url = `${this.baseUrl}${path}`;
@@ -83,6 +89,9 @@ export class AbbabaClient {
83
89
  switch (response.status) {
84
90
  case 401:
85
91
  throw new AuthenticationError(message);
92
+ case 402: {
93
+ throw new PaymentRequiredError(message, json);
94
+ }
86
95
  case 403:
87
96
  throw new ForbiddenError(message);
88
97
  case 404:
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,cAAc,EACd,eAAe,GAChB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,QAAQ,EAA6C,MAAM,eAAe,CAAA;AAEnF,MAAM,gBAAgB,GAAG,sBAAsB,CAAA;AAC/C,MAAM,eAAe,GAAG,MAAM,CAAA;AAE9B,MAAM,OAAO,YAAY;IACf,MAAM,CAAQ;IACd,OAAO,CAAQ;IACf,OAAO,CAAQ;IAEP,QAAQ,CAAgB;IACxB,QAAQ,CAAgB;IACxB,YAAY,CAAoB;IAEhD;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAqB;QACnC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAED,YAAY,MAAoB;QAC9B,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;QACvC,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QAC3B,IAAI,CAAC,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACvE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,eAAe,CAAA;QAEhD,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAA;QACxC,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAA;QACxC,IAAI,CAAC,YAAY,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAA;IAClD,CAAC;IAED,KAAK,CAAC,OAAO,CACX,MAAc,EACd,IAAY,EACZ,IAAc,EACd,WAAoC;QAEpC,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,CAAA;QAElC,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;YACpC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;oBACxC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;gBACxB,CAAC;YACH,CAAC;YACD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;YAC5B,IAAI,EAAE;gBAAE,GAAG,IAAI,IAAI,EAAE,EAAE,CAAA;QACzB,CAAC;QAED,MAAM,OAAO,GAA2B;YACtC,WAAW,EAAE,IAAI,CAAC,MAAM;YACxB,QAAQ,EAAE,kBAAkB;SAC7B,CAAA;QAED,MAAM,IAAI,GAA2C;YACnD,MAAM;YACN,OAAO;SACR,CAAA;QAED,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YAC3C,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAA;YAC5C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAClC,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACxC,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAA;QAC/B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QAEhE,IAAI,QAAkB,CAAA;QACtB,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QACnC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,YAAY,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC7D,MAAM,IAAI,WAAW,CAAC,CAAC,EAAE,2BAA2B,IAAI,CAAC,OAAO,IAAI,CAAC,CAAA;YACvE,CAAC;YACD,MAAM,IAAI,WAAW,CAAC,CAAC,EAAE,kBAAkB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAChG,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAA;QACrB,CAAC;QAED,IAAI,IAAoB,CAAA;QACxB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAoB,CAAA;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,WAAW,CACnB,QAAQ,CAAC,MAAM,EACf,+BAA+B,QAAQ,CAAC,MAAM,GAAG,CAClD,CAAA;QACH,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,IAAI,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAA;YACvD,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACxB,KAAK,GAAG;oBACN,MAAM,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAA;gBACxC,KAAK,GAAG;oBACN,MAAM,IAAI,cAAc,CAAC,OAAO,CAAC,CAAA;gBACnC,KAAK,GAAG;oBACN,MAAM,IAAI,aAAa,CAAC,OAAO,CAAC,CAAA;gBAClC,KAAK,GAAG;oBACN,MAAM,IAAI,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;gBAClD,KAAK,GAAG,CAAC,CAAC,CAAC;oBACT,MAAM,UAAU,GAAG,QAAQ,CACzB,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,IAAI,EAC3C,EAAE,CACH,CAAA;oBACD,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;gBAC/C,CAAC;gBACD;oBACE,MAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;YACjE,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -15,6 +15,10 @@ export declare class NotFoundError extends AbbabaError {
15
15
  export declare class ValidationError extends AbbabaError {
16
16
  constructor(message?: string, details?: unknown);
17
17
  }
18
+ export declare class PaymentRequiredError extends AbbabaError {
19
+ paymentRequirements: unknown;
20
+ constructor(message?: string, paymentRequirements?: unknown);
21
+ }
18
22
  export declare class RateLimitError extends AbbabaError {
19
23
  retryAfter: number;
20
24
  constructor(message?: string, retryAfter?: number);
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,WAAY,SAAQ,KAAK;IAE3B,UAAU,EAAE,MAAM;IAElB,OAAO,CAAC,EAAE,OAAO;gBAFjB,UAAU,EAAE,MAAM,EACzB,OAAO,EAAE,MAAM,EACR,OAAO,CAAC,EAAE,OAAO,YAAA;CAK3B;AAED,qBAAa,mBAAoB,SAAQ,WAAW;gBACtC,OAAO,SAA+B;CAInD;AAED,qBAAa,cAAe,SAAQ,WAAW;gBACjC,OAAO,SAAc;CAIlC;AAED,qBAAa,aAAc,SAAQ,WAAW;gBAChC,OAAO,SAAuB;CAI3C;AAED,qBAAa,eAAgB,SAAQ,WAAW;gBAClC,OAAO,SAAsB,EAAE,OAAO,CAAC,EAAE,OAAO;CAI7D;AAED,qBAAa,cAAe,SAAQ,WAAW;IACtC,UAAU,EAAE,MAAM,CAAA;gBAEb,OAAO,SAAwB,EAAE,UAAU,SAAK;CAK7D"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,WAAY,SAAQ,KAAK;IAE3B,UAAU,EAAE,MAAM;IAElB,OAAO,CAAC,EAAE,OAAO;gBAFjB,UAAU,EAAE,MAAM,EACzB,OAAO,EAAE,MAAM,EACR,OAAO,CAAC,EAAE,OAAO,YAAA;CAK3B;AAED,qBAAa,mBAAoB,SAAQ,WAAW;gBACtC,OAAO,SAA+B;CAInD;AAED,qBAAa,cAAe,SAAQ,WAAW;gBACjC,OAAO,SAAc;CAIlC;AAED,qBAAa,aAAc,SAAQ,WAAW;gBAChC,OAAO,SAAuB;CAI3C;AAED,qBAAa,eAAgB,SAAQ,WAAW;gBAClC,OAAO,SAAsB,EAAE,OAAO,CAAC,EAAE,OAAO;CAI7D;AAED,qBAAa,oBAAqB,SAAQ,WAAW;IAC5C,mBAAmB,EAAE,OAAO,CAAA;gBAEvB,OAAO,SAAqB,EAAE,mBAAmB,CAAC,EAAE,OAAO;CAKxE;AAED,qBAAa,cAAe,SAAQ,WAAW;IACtC,UAAU,EAAE,MAAM,CAAA;gBAEb,OAAO,SAAwB,EAAE,UAAU,SAAK;CAK7D"}
package/dist/errors.js CHANGED
@@ -32,6 +32,14 @@ export class ValidationError extends AbbabaError {
32
32
  this.name = 'ValidationError';
33
33
  }
34
34
  }
35
+ export class PaymentRequiredError extends AbbabaError {
36
+ paymentRequirements;
37
+ constructor(message = 'Payment required', paymentRequirements) {
38
+ super(402, message);
39
+ this.name = 'PaymentRequiredError';
40
+ this.paymentRequirements = paymentRequirements;
41
+ }
42
+ }
35
43
  export class RateLimitError extends AbbabaError {
36
44
  retryAfter;
37
45
  constructor(message = 'Rate limit exceeded', retryAfter = 60) {
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,WAAY,SAAQ,KAAK;IAE3B;IAEA;IAHT,YACS,UAAkB,EACzB,OAAe,EACR,OAAiB;QAExB,KAAK,CAAC,OAAO,CAAC,CAAA;QAJP,eAAU,GAAV,UAAU,CAAQ;QAElB,YAAO,GAAP,OAAO,CAAU;QAGxB,IAAI,CAAC,IAAI,GAAG,aAAa,CAAA;IAC3B,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,WAAW;IAClD,YAAY,OAAO,GAAG,4BAA4B;QAChD,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAA;IACnC,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,WAAW;IAC7C,YAAY,OAAO,GAAG,WAAW;QAC/B,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAA;IAC9B,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,WAAW;IAC5C,YAAY,OAAO,GAAG,oBAAoB;QACxC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,eAAe,CAAA;IAC7B,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,WAAW;IAC9C,YAAY,OAAO,GAAG,mBAAmB,EAAE,OAAiB;QAC1D,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;QAC5B,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAA;IAC/B,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,WAAW;IACtC,UAAU,CAAQ;IAEzB,YAAY,OAAO,GAAG,qBAAqB,EAAE,UAAU,GAAG,EAAE;QAC1D,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAA;QAC5B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAC9B,CAAC;CACF"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,WAAY,SAAQ,KAAK;IAE3B;IAEA;IAHT,YACS,UAAkB,EACzB,OAAe,EACR,OAAiB;QAExB,KAAK,CAAC,OAAO,CAAC,CAAA;QAJP,eAAU,GAAV,UAAU,CAAQ;QAElB,YAAO,GAAP,OAAO,CAAU;QAGxB,IAAI,CAAC,IAAI,GAAG,aAAa,CAAA;IAC3B,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,WAAW;IAClD,YAAY,OAAO,GAAG,4BAA4B;QAChD,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAA;IACnC,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,WAAW;IAC7C,YAAY,OAAO,GAAG,WAAW;QAC/B,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAA;IAC9B,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,WAAW;IAC5C,YAAY,OAAO,GAAG,oBAAoB;QACxC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,eAAe,CAAA;IAC7B,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,WAAW;IAC9C,YAAY,OAAO,GAAG,mBAAmB,EAAE,OAAiB;QAC1D,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;QAC5B,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAA;IAC/B,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,WAAW;IAC5C,mBAAmB,CAAS;IAEnC,YAAY,OAAO,GAAG,kBAAkB,EAAE,mBAA6B;QACrE,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAA;QAClC,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAA;IAChD,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,WAAW;IACtC,UAAU,CAAQ;IAEzB,YAAY,OAAO,GAAG,qBAAqB,EAAE,UAAU,GAAG,EAAE;QAC1D,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAA;QAC5B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAC9B,CAAC;CACF"}
package/dist/index.d.ts CHANGED
@@ -5,9 +5,13 @@ export { BuyerAgent } from './buyer.js';
5
5
  export { ServicesClient } from './services.js';
6
6
  export { CheckoutClient } from './checkout.js';
7
7
  export { TransactionsClient } from './transactions.js';
8
+ export { MemoryClient } from './memory.js';
9
+ export { MessagesClient } from './messages.js';
8
10
  export { WebhookServer } from './webhook.js';
9
- export { AbbabaError, AuthenticationError, ForbiddenError, NotFoundError, ValidationError, RateLimitError, } from './errors.js';
10
- export type { AbbabaConfig, ApiResponse, ServiceCategory, PriceUnit, ServiceCurrency, DeliveryType, ServiceStatus, PaymentMethod, PaymentStatus, TransactionStatus, DisputeOutcome, WalletChain, CreateServiceInput, UpdateServiceInput, Service, ServiceSearchParams, ServiceListResult, AgentSummary, CheckoutInput, CheckoutResult, CryptoPaymentInstructions, PaymentInstructions, Transaction, TransactionListParams, TransactionListResult, DeliverInput, DisputeInput, FundInput, FundResult, WebhookEvent, WebhookHandler, GasStrategy, SmartAccountConfig, SmartAccountResult, EscrowDetails, AgentStats, SessionKeyConfig, SessionKeyResult, UseSessionKeyConfig, RevokeSessionKeyConfig, PollOptions, } from './types.js';
11
+ export { AbbabaError, AuthenticationError, ForbiddenError, NotFoundError, PaymentRequiredError, ValidationError, RateLimitError, } from './errors.js';
12
+ export type { AbbabaConfig, ApiResponse, ServiceCategory, PriceUnit, ServiceCurrency, DeliveryType, ServiceStatus, PaymentMethod, PaymentStatus, TransactionStatus, DisputeOutcome, WalletChain, CreateServiceInput, UpdateServiceInput, Service, ServiceSearchParams, ServiceListResult, AgentSummary, CheckoutInput, CheckoutResult, CryptoPaymentInstructions, PaymentInstructions, Transaction, TransactionListParams, TransactionListResult, DeliverInput, DisputeInput, FundInput, FundResult, WebhookEvent, WebhookHandler, GasStrategy, SmartAccountConfig, SmartAccountResult, EscrowDetails, AgentStats, SessionKeyConfig, SessionKeyResult, UseSessionKeyConfig, RevokeSessionKeyConfig, PollOptions, X402PaymentRequirements, } from './types.js';
11
13
  export { EscrowStatus, OnChainDisputeOutcome } from './types.js';
12
14
  export type { RegisterOptions, RegisterResult } from './register.js';
15
+ export type { MemoryWriteInput, MemoryEntry, MemorySearchInput, MemorySearchResult, MemoryHistoryParams, } from './memory.js';
16
+ export type { SendMessageInput, AgentMessage, InboxParams, SubscribeInput, MessageSubscription, } from './messages.js';
13
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAG1C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAGxC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAGtD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAG5C,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,eAAe,EACf,cAAc,GACf,MAAM,aAAa,CAAA;AAGpB,YAAY,EAEV,YAAY,EACZ,WAAW,EAGX,eAAe,EACf,SAAS,EACT,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,WAAW,EAGX,kBAAkB,EAClB,kBAAkB,EAClB,OAAO,EACP,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EAGZ,aAAa,EACb,cAAc,EACd,yBAAyB,EACzB,mBAAmB,EAGnB,WAAW,EACX,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,UAAU,EAGV,YAAY,EACZ,cAAc,EAGd,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,EACb,UAAU,EAGV,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EAGtB,WAAW,GACZ,MAAM,YAAY,CAAA;AAGnB,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAGhE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAG1C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAGxC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAG9C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAG5C,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,cAAc,GACf,MAAM,aAAa,CAAA;AAGpB,YAAY,EAEV,YAAY,EACZ,WAAW,EAGX,eAAe,EACf,SAAS,EACT,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,WAAW,EAGX,kBAAkB,EAClB,kBAAkB,EAClB,OAAO,EACP,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EAGZ,aAAa,EACb,cAAc,EACd,yBAAyB,EACzB,mBAAmB,EAGnB,WAAW,EACX,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,UAAU,EAGV,YAAY,EACZ,cAAc,EAGd,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,EACb,UAAU,EAGV,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EAGtB,WAAW,EAGX,uBAAuB,GACxB,MAAM,YAAY,CAAA;AAGnB,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAGhE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAGpE,YAAY,EACV,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,aAAa,CAAA;AAGpB,YAAY,EACV,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,cAAc,EACd,mBAAmB,GACpB,MAAM,eAAe,CAAA"}
package/dist/index.js CHANGED
@@ -9,10 +9,12 @@ export { BuyerAgent } from './buyer.js';
9
9
  export { ServicesClient } from './services.js';
10
10
  export { CheckoutClient } from './checkout.js';
11
11
  export { TransactionsClient } from './transactions.js';
12
+ export { MemoryClient } from './memory.js';
13
+ export { MessagesClient } from './messages.js';
12
14
  // Webhook server
13
15
  export { WebhookServer } from './webhook.js';
14
16
  // Errors
15
- export { AbbabaError, AuthenticationError, ForbiddenError, NotFoundError, ValidationError, RateLimitError, } from './errors.js';
17
+ export { AbbabaError, AuthenticationError, ForbiddenError, NotFoundError, PaymentRequiredError, ValidationError, RateLimitError, } from './errors.js';
16
18
  // V4 on-chain enums
17
19
  export { EscrowStatus, OnChainDisputeOutcome } from './types.js';
18
20
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,wBAAwB;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,sBAAsB;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEvC,cAAc;AACd,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAEtD,iBAAiB;AACjB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE5C,SAAS;AACT,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,eAAe,EACf,cAAc,GACf,MAAM,aAAa,CAAA;AAgEpB,oBAAoB;AACpB,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,wBAAwB;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,sBAAsB;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEvC,cAAc;AACd,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,iBAAiB;AACjB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE5C,SAAS;AACT,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,cAAc,GACf,MAAM,aAAa,CAAA;AAmEpB,oBAAoB;AACpB,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,59 @@
1
+ import type { AbbabaClient } from './client.js';
2
+ import type { ApiResponse } from './types.js';
3
+ export interface MemoryWriteInput {
4
+ key: string;
5
+ value: unknown;
6
+ namespace?: string;
7
+ memoryType?: 'permanent' | 'session' | 'cache';
8
+ tags?: string[];
9
+ ttlSeconds?: number;
10
+ source?: string;
11
+ }
12
+ export interface MemoryEntry {
13
+ id: string;
14
+ key: string;
15
+ namespace: string;
16
+ value: unknown;
17
+ memoryType: string;
18
+ tags: string[];
19
+ sizeBytes: number;
20
+ accessCount: number;
21
+ source: string | null;
22
+ createdAt: string;
23
+ updatedAt: string;
24
+ }
25
+ export interface MemorySearchInput {
26
+ query: string;
27
+ namespace?: string;
28
+ limit?: number;
29
+ threshold?: number;
30
+ }
31
+ export interface MemorySearchResult {
32
+ id: string;
33
+ key: string;
34
+ namespace: string;
35
+ value: unknown;
36
+ similarity: number;
37
+ tags: string[];
38
+ }
39
+ export interface MemoryHistoryParams {
40
+ namespace?: string;
41
+ memoryType?: string;
42
+ tags?: string;
43
+ from?: string;
44
+ to?: string;
45
+ limit?: number;
46
+ offset?: number;
47
+ }
48
+ export declare class MemoryClient {
49
+ private client;
50
+ constructor(client: AbbabaClient);
51
+ write(input: MemoryWriteInput): Promise<ApiResponse<MemoryEntry>>;
52
+ read(key: string, namespace?: string): Promise<ApiResponse<MemoryEntry>>;
53
+ search(input: MemorySearchInput): Promise<ApiResponse<MemorySearchResult[]>>;
54
+ history(params?: MemoryHistoryParams): Promise<ApiResponse<MemoryEntry[]>>;
55
+ delete(key: string, namespace?: string): Promise<ApiResponse<{
56
+ message: string;
57
+ }>>;
58
+ }
59
+ //# sourceMappingURL=memory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,OAAO,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,OAAO,CAAA;IAC9C,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,OAAO,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,OAAO,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,EAAE,CAAA;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,qBAAa,YAAY;IACX,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,YAAY;IAElC,KAAK,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAIjE,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAWxE,MAAM,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAI5E,OAAO,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAY1E,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAUzF"}
package/dist/memory.js ADDED
@@ -0,0 +1,43 @@
1
+ export class MemoryClient {
2
+ client;
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ async write(input) {
7
+ return this.client.request('POST', '/api/v1/memory', input);
8
+ }
9
+ async read(key, namespace) {
10
+ const query = {};
11
+ if (namespace)
12
+ query.namespace = namespace;
13
+ return this.client.request('GET', `/api/v1/memory/${encodeURIComponent(key)}`, undefined, query);
14
+ }
15
+ async search(input) {
16
+ return this.client.request('POST', '/api/v1/memory/search', input);
17
+ }
18
+ async history(params) {
19
+ const query = {};
20
+ if (params?.namespace)
21
+ query.namespace = params.namespace;
22
+ if (params?.memoryType)
23
+ query.memoryType = params.memoryType;
24
+ if (params?.tags)
25
+ query.tags = params.tags;
26
+ if (params?.from)
27
+ query.from = params.from;
28
+ if (params?.to)
29
+ query.to = params.to;
30
+ if (params?.limit !== undefined)
31
+ query.limit = String(params.limit);
32
+ if (params?.offset !== undefined)
33
+ query.offset = String(params.offset);
34
+ return this.client.request('GET', '/api/v1/memory', undefined, query);
35
+ }
36
+ async delete(key, namespace) {
37
+ const query = {};
38
+ if (namespace)
39
+ query.namespace = namespace;
40
+ return this.client.request('DELETE', `/api/v1/memory/${encodeURIComponent(key)}`, undefined, query);
41
+ }
42
+ }
43
+ //# sourceMappingURL=memory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"AAqDA,MAAM,OAAO,YAAY;IACH;IAApB,YAAoB,MAAoB;QAApB,WAAM,GAAN,MAAM,CAAc;IAAG,CAAC;IAE5C,KAAK,CAAC,KAAK,CAAC,KAAuB;QACjC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAc,MAAM,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAA;IAC1E,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAW,EAAE,SAAkB;QACxC,MAAM,KAAK,GAA2B,EAAE,CAAA;QACxC,IAAI,SAAS;YAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,KAAK,EACL,kBAAkB,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAC3C,SAAS,EACT,KAAK,CACN,CAAA;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAwB;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAuB,MAAM,EAAE,uBAAuB,EAAE,KAAK,CAAC,CAAA;IAC1F,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAA4B;QACxC,MAAM,KAAK,GAA2B,EAAE,CAAA;QACxC,IAAI,MAAM,EAAE,SAAS;YAAE,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;QACzD,IAAI,MAAM,EAAE,UAAU;YAAE,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAA;QAC5D,IAAI,MAAM,EAAE,IAAI;YAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QAC1C,IAAI,MAAM,EAAE,IAAI;YAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QAC1C,IAAI,MAAM,EAAE,EAAE;YAAE,KAAK,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAA;QACpC,IAAI,MAAM,EAAE,KAAK,KAAK,SAAS;YAAE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACnE,IAAI,MAAM,EAAE,MAAM,KAAK,SAAS;YAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACtE,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAgB,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;IACtF,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,SAAkB;QAC1C,MAAM,KAAK,GAA2B,EAAE,CAAA;QACxC,IAAI,SAAS;YAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,QAAQ,EACR,kBAAkB,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAC3C,SAAS,EACT,KAAK,CACN,CAAA;IACH,CAAC;CACF"}
@@ -0,0 +1,65 @@
1
+ import type { AbbabaClient } from './client.js';
2
+ import type { ApiResponse } from './types.js';
3
+ export interface SendMessageInput {
4
+ toAgentId?: string;
5
+ topic?: string;
6
+ messageType?: 'direct' | 'topic' | 'broadcast';
7
+ subject?: string;
8
+ body: Record<string, unknown>;
9
+ priority?: 'low' | 'normal' | 'high' | 'urgent';
10
+ callbackUrl?: string;
11
+ expiresAt?: string;
12
+ metadata?: Record<string, unknown>;
13
+ }
14
+ export interface AgentMessage {
15
+ id: string;
16
+ fromAgentId: string;
17
+ toAgentId: string | null;
18
+ topic: string | null;
19
+ messageType: string;
20
+ subject: string | null;
21
+ body: Record<string, unknown>;
22
+ priority: string;
23
+ status: string;
24
+ deliveryMethod: string;
25
+ qstashMessageId: string | null;
26
+ callbackUrl: string | null;
27
+ deliveredAt: string | null;
28
+ readAt: string | null;
29
+ expiresAt: string | null;
30
+ metadata: Record<string, unknown> | null;
31
+ createdAt: string;
32
+ }
33
+ export interface InboxParams {
34
+ status?: string;
35
+ topic?: string;
36
+ fromAgentId?: string;
37
+ limit?: number;
38
+ offset?: number;
39
+ }
40
+ export interface SubscribeInput {
41
+ topic: string;
42
+ callbackUrl?: string;
43
+ }
44
+ export interface MessageSubscription {
45
+ id: string;
46
+ agentId: string;
47
+ topic: string;
48
+ callbackUrl: string | null;
49
+ isActive: boolean;
50
+ createdAt: string;
51
+ updatedAt: string;
52
+ }
53
+ export declare class MessagesClient {
54
+ private client;
55
+ constructor(client: AbbabaClient);
56
+ send(input: SendMessageInput): Promise<ApiResponse<AgentMessage>>;
57
+ inbox(params?: InboxParams): Promise<ApiResponse<AgentMessage[]>>;
58
+ get(messageId: string): Promise<ApiResponse<AgentMessage>>;
59
+ markRead(messageId: string): Promise<ApiResponse<AgentMessage>>;
60
+ subscribe(input: SubscribeInput): Promise<ApiResponse<MessageSubscription>>;
61
+ unsubscribe(topic: string): Promise<ApiResponse<{
62
+ message: string;
63
+ }>>;
64
+ }
65
+ //# sourceMappingURL=messages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../src/messages.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ export class MessagesClient {
2
+ client;
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ async send(input) {
7
+ return this.client.request('POST', '/api/v1/messages', input);
8
+ }
9
+ async inbox(params) {
10
+ const query = {};
11
+ if (params?.status)
12
+ query.status = params.status;
13
+ if (params?.topic)
14
+ query.topic = params.topic;
15
+ if (params?.fromAgentId)
16
+ query.fromAgentId = params.fromAgentId;
17
+ if (params?.limit !== undefined)
18
+ query.limit = String(params.limit);
19
+ if (params?.offset !== undefined)
20
+ query.offset = String(params.offset);
21
+ return this.client.request('GET', '/api/v1/messages', undefined, query);
22
+ }
23
+ async get(messageId) {
24
+ return this.client.request('GET', `/api/v1/messages/${messageId}`);
25
+ }
26
+ async markRead(messageId) {
27
+ return this.client.request('PATCH', `/api/v1/messages/${messageId}`);
28
+ }
29
+ async subscribe(input) {
30
+ return this.client.request('POST', '/api/v1/messages/subscribe', input);
31
+ }
32
+ async unsubscribe(topic) {
33
+ return this.client.request('DELETE', '/api/v1/messages/subscribe', undefined, { topic });
34
+ }
35
+ }
36
+ //# sourceMappingURL=messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../src/messages.ts"],"names":[],"mappings":"AA0DA,MAAM,OAAO,cAAc;IACL;IAApB,YAAoB,MAAoB;QAApB,WAAM,GAAN,MAAM,CAAc;IAAG,CAAC;IAE5C,KAAK,CAAC,IAAI,CAAC,KAAuB;QAChC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAe,MAAM,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAA;IAC7E,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAoB;QAC9B,MAAM,KAAK,GAA2B,EAAE,CAAA;QACxC,IAAI,MAAM,EAAE,MAAM;YAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QAChD,IAAI,MAAM,EAAE,KAAK;YAAE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;QAC7C,IAAI,MAAM,EAAE,WAAW;YAAE,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;QAC/D,IAAI,MAAM,EAAE,KAAK,KAAK,SAAS;YAAE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACnE,IAAI,MAAM,EAAE,MAAM,KAAK,SAAS;YAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACtE,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAiB,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;IACzF,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,SAAiB;QACzB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAe,KAAK,EAAE,oBAAoB,SAAS,EAAE,CAAC,CAAA;IAClF,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,SAAiB;QAC9B,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAe,OAAO,EAAE,oBAAoB,SAAS,EAAE,CAAC,CAAA;IACpF,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAqB;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAsB,MAAM,EAAE,4BAA4B,EAAE,KAAK,CAAC,CAAA;IAC9F,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAa;QAC7B,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,QAAQ,EACR,4BAA4B,EAC5B,SAAS,EACT,EAAE,KAAK,EAAE,CACV,CAAA;IACH,CAAC;CACF"}
package/dist/types.d.ts CHANGED
@@ -194,8 +194,8 @@ export interface FundResult {
194
194
  escrowId: string;
195
195
  buyer: string;
196
196
  seller: string;
197
- amount: string;
198
- buyerFee: string;
197
+ lockedAmount: string;
198
+ platformFee: string;
199
199
  status: string;
200
200
  };
201
201
  }
@@ -224,13 +224,21 @@ export interface EscrowDetails {
224
224
  token: string;
225
225
  buyer: string;
226
226
  seller: string;
227
- amount: bigint;
228
- buyerFee: bigint;
227
+ /** Amount locked in escrow (after 2% platform fee deduction) */
228
+ lockedAmount: bigint;
229
+ /** 2% platform fee deducted at escrow creation */
230
+ platformFee: bigint;
229
231
  status: number;
230
232
  createdAt: number;
231
233
  deadline: number;
234
+ /** Agent-negotiated dispute window in seconds (default: 1 hour) */
235
+ disputeWindow: number;
236
+ /** Agent-negotiated abandonment grace period in seconds (default: 2 days) */
237
+ abandonmentGrace: number;
232
238
  deliveredAt: number;
233
239
  proofHash: string | null;
240
+ /** keccak256 hash of success criteria JSON — enables AI dispute resolution */
241
+ criteriaHash: string | null;
234
242
  }
235
243
  export declare enum EscrowStatus {
236
244
  None = 0,
@@ -253,7 +261,20 @@ export interface AgentStats {
253
261
  totalJobs: bigint;
254
262
  disputesLost: bigint;
255
263
  jobsAbandoned: bigint;
256
- needsBond: boolean;
264
+ /** V2: Maximum job value allowed based on score (USDC 6 decimals) */
265
+ maxJobValue: bigint;
266
+ }
267
+ export interface X402PaymentRequirements {
268
+ x402Version: number;
269
+ accepts: Array<{
270
+ scheme: string;
271
+ network: string;
272
+ maxAmountRequired: string;
273
+ resource: string;
274
+ payTo: string;
275
+ asset: string;
276
+ extra: Record<string, unknown>;
277
+ }>;
257
278
  }
258
279
  export interface PollOptions {
259
280
  /** Polling interval in milliseconds (default: 5000) */