@cascade-fyi/sati-sdk 0.6.0 → 0.7.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.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,34 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.7.0] - 2026-02-12
9
+
10
+ ### Added
11
+
12
+ - **Convenience methods on `Sati` class** - high-level API for feedback, search, and reputation without needing sati-agent0-sdk:
13
+ - `giveFeedback(params)` - submit feedback with a single call (schema auto-resolution, content building, signing)
14
+ - `prepareFeedback(params)` / `submitPreparedFeedback(params)` - browser wallet flow (user signs SIWS message, server submits)
15
+ - `revokeFeedback(params)` - close a compressed feedback attestation
16
+ - `searchFeedback(options?)` - query and filter feedbacks with parsed content, timestamps, and optional tx signatures
17
+ - `getReputationSummary(agentMint, tags?)` - aggregate feedback scores with optional tag filtering
18
+ - `searchAgents(options?)` - list agents with name/owner/active/endpoint filters and optional feedback stats
19
+ - `searchValidations(agentMint)` - query validation attestations with parsed timestamps
20
+ - `createAgentBuilder(name, description, image)` - factory for `SatiAgentBuilder`
21
+ - **`SatiAgentBuilder` class** - fluent builder for agent registration using native Solana types:
22
+ - `setMCP(url, version?, meta?)` / `setA2A(url, version?, meta?)` - configure protocol endpoints with explicit capability metadata
23
+ - `setWallet(address)` / `setActive(active)` / `setX402Support(x402)` / `setSupportedTrust(trusts)`
24
+ - `register(opts)` / `registerWithUri(opts)` - on-chain registration with pluggable `MetadataUploader`
25
+ - `update(opts)` / `updateUri(opts)` - update existing agent metadata
26
+ - **`FeedbackCache`** - TTL cache for feedback queries, reducing redundant RPC calls (moved from sati-agent0-sdk)
27
+ - **Config accessors** on `Sati` class: `deployedConfig`, `feedbackPublicSchema`, `feedbackSchema`, `validationSchema`, `lookupTable`
28
+ - **New types**: `GiveFeedbackParams`, `GiveFeedbackResult`, `PreparedFeedbackData`, `FeedbackSearchOptions`, `ParsedFeedback`, `ReputationSummary`, `AgentSearchOptions`, `AgentSearchResult`, `ParsedValidation`, `SatiWarning`
29
+ - `signer` and `onWarning` options in `SATIClientOptions`
30
+ - `buildRegistrationFile()` accepts optional `endpoints` parameter for pre-built endpoint arrays
31
+
32
+ ### Changed
33
+
34
+ - sati-sdk is now the primary full-featured SDK (was low-level only); sati-agent0-sdk becomes a thin type-conversion wrapper
35
+
8
36
  ## [0.6.0] - 2026-02-12
9
37
 
10
38
  ### Added
@@ -116,6 +144,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
116
144
  - Compressed attestation storage via Light Protocol
117
145
  - Basic querying via Photon RPC
118
146
 
147
+ [0.7.0]: https://github.com/cascade-protocol/sati/compare/@cascade-fyi/sati-sdk@0.6.0...@cascade-fyi/sati-sdk@0.7.0
119
148
  [0.6.0]: https://github.com/cascade-protocol/sati/compare/@cascade-fyi/sati-sdk@0.5.0...@cascade-fyi/sati-sdk@0.6.0
120
149
  [0.5.0]: https://github.com/cascade-protocol/sati/compare/@cascade-fyi/sati-sdk@0.4.2...@cascade-fyi/sati-sdk@0.5.0
121
150
  [0.4.2]: https://github.com/cascade-protocol/sati/compare/@cascade-fyi/sati-sdk@0.4.1...@cascade-fyi/sati-sdk@0.4.2
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @cascade-fyi/sati-sdk
2
2
 
3
- TypeScript SDK for SATI - Solana Agent Trust Infrastructure.
3
+ Low-level TypeScript SDK for [SATI](https://github.com/cascade-protocol/sati) - the [ERC-8004](https://eips.ethereum.org/EIPS/eip-8004) agent identity standard on Solana. Raw attestations, custom schemas, compression, encryption.
4
4
 
5
5
  ## Installation
6
6
 
@@ -18,11 +18,8 @@ pnpm add @solana/kit @solana-program/token-2022 @coral-xyz/anchor
18
18
  ```typescript
19
19
  import { Sati, Outcome } from "@cascade-fyi/sati-sdk";
20
20
 
21
- // Initialize client
22
- const sati = new Sati({
23
- network: "devnet",
24
- photonRpcUrl: "https://devnet.helius-rpc.com?api-key=YOUR_KEY", // For compressed attestations
25
- });
21
+ // Initialize client (uses hosted Photon proxy by default - no API keys needed)
22
+ const sati = new Sati({ network: "devnet" });
26
23
 
27
24
  // Register an agent
28
25
  const { mint, memberNumber, signature } = await sati.registerAgent({
@@ -57,9 +54,13 @@ console.log(result.memberNumber); // Registry member number
57
54
  Upload a registration file to IPFS and register in one flow:
58
55
 
59
56
  ```typescript
60
- import { createPinataUploader } from "@cascade-fyi/sati-sdk";
57
+ import { createSatiUploader, createPinataUploader } from "@cascade-fyi/sati-sdk";
58
+
59
+ // Zero config (uses hosted uploader - no API keys needed)
60
+ const uploader = createSatiUploader();
61
61
 
62
- const uploader = createPinataUploader(process.env.PINATA_JWT!);
62
+ // Or bring your own Pinata account
63
+ // const uploader = createPinataUploader(process.env.PINATA_JWT!);
63
64
 
64
65
  // Build + upload registration file, then register
65
66
  const uri = await sati.uploadRegistrationFile(
@@ -309,12 +310,13 @@ const result = await sati.closeReputationScore({
309
310
 
310
311
  ## Querying Attestations with Photon
311
312
 
312
- SATI uses Light Protocol's compressed accounts. Query via Helius Photon:
313
+ SATI uses Light Protocol's compressed accounts. The `Sati` client handles Photon routing automatically (hosted proxy by default, or pass `photonRpcUrl` for your own endpoint). For direct Photon access:
313
314
 
314
315
  ```typescript
315
316
  import { createPhotonRpc } from "@cascade-fyi/compression-kit";
316
317
  import { SATI_PROGRAM_ADDRESS, FEEDBACK_OFFSETS } from "@cascade-fyi/sati-sdk";
317
318
 
319
+ // Direct Photon access (for advanced use cases)
318
320
  const rpc = createPhotonRpc("https://devnet.helius-rpc.com?api-key=YOUR_KEY");
319
321
 
320
322
  // Query all feedbacks for an agent