https://github.com/cascade-protocol/sati
Trust infrastructure for million-agent economies on Solana - identity, reputation, and validation designed for continuous feedback at scale.
https://github.com/cascade-protocol/sati
8004 agent-attestation agent-infrastructure agent-registry agent-trust ai-agents anchor ap2-protocol blockchain erc-8004 payment-mandates reputation-system solana solana-program trustless-agents web3 x402 zk-compression
Last synced: 8 days ago
JSON representation
Trust infrastructure for million-agent economies on Solana - identity, reputation, and validation designed for continuous feedback at scale.
- Host: GitHub
- URL: https://github.com/cascade-protocol/sati
- Owner: cascade-protocol
- License: apache-2.0
- Created: 2025-11-11T04:00:20.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-02-17T16:29:27.000Z (10 days ago)
- Last Synced: 2026-02-18T01:35:04.144Z (10 days ago)
- Topics: 8004, agent-attestation, agent-infrastructure, agent-registry, agent-trust, ai-agents, anchor, ap2-protocol, blockchain, erc-8004, payment-mandates, reputation-system, solana, solana-program, trustless-agents, web3, x402, zk-compression
- Language: TypeScript
- Homepage: https://sati.cascade.fyi
- Size: 5.7 MB
- Stars: 14
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Security: SECURITY.md
- Notice: NOTICE
Awesome Lists containing this project
- awesome-solana-ai - SATI (Solana Agent Trust Infrastructure) - ERC-8004 compliant agent identity and reputation with proof-of-participation: agents sign before knowing feedback outcomes. (Developer Tools / Infrastructure)
README
# SATI: Solana Agent Trust Infrastructure
[](https://opensource.org/licenses/Apache-2.0)
**[ERC-8004](https://eips.ethereum.org/EIPS/eip-8004) on Solana.** On-chain identity, verifiable reputation, and agent discovery - the same standard backed by MetaMask, Google, and Coinbase, implemented with sub-cent storage and sub-second finality.
Agents register as Token-2022 NFTs, feedback is stored as compressed attestations at ~$0.002 each, and the SDK works out of the box - no API keys, no custom indexer, no infrastructure.
---
## Quick Start
```bash
pnpm add @cascade-fyi/sati-agent0-sdk
```
**Peer dependencies:**
```bash
pnpm add @cascade-fyi/sati-sdk @solana/kit @solana-program/token-2022 agent0-sdk
```
```typescript
import { SatiAgent0 } from "@cascade-fyi/sati-agent0-sdk";
import { generateKeyPairSigner, createSolanaRpc } from "@solana/kit";
// 1. Create a funded devnet wallet
const signer = await generateKeyPairSigner();
const rpc = createSolanaRpc("https://api.devnet.solana.com");
await rpc.requestAirdrop(signer.address, 1_000_000_000n).send();
// 2. Initialize the SDK (zero config - no API keys needed)
const sdk = new SatiAgent0({ network: "devnet", signer });
// 3. Register an agent (metadata uploaded to IPFS automatically)
const agent = sdk.createAgent("MyAgent", "An AI trading assistant");
agent.setActive(true);
const regHandle = await agent.registerIPFS();
console.log(agent.agentId); // solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1:MintAddr...
// 4. Give feedback (0-100 score with optional tags)
const fbHandle = await sdk.giveFeedback(agent.agentId!, 85, "quality", "speed");
const { result: feedback } = await fbHandle.waitMined();
// 5. Query reputation
const summary = await sdk.getReputationSummary(agent.agentId!);
console.log(`${summary.count} reviews, avg ${summary.averageValue}`);
```
---
## Why SATI?
**Proof of participation.** Agents sign a cryptographic commitment with every response, before knowing what score the reviewer will give. They can't cherry-pick positive reviews - they already committed to the interaction on-chain.
- **On-chain identity** - Agents are Token-2022 NFTs, visible in Phantom, Solflare, Backpack
- **Blind feedback** - Agent commits before outcome is known; reviewer needs agent's signature to submit
- **Complete histories** - Every interaction stored on-chain (~$0.002 each), not just aggregates
- **Zero infrastructure** - Hosted IPFS uploads and Photon RPC built into the SDK, no API keys needed
- **Sub-second finality** - ~400ms today, ~150ms with Alpenglow
**100% ERC-8004 compatible** - same registration file format, same functional interfaces, cross-chain agent identity via CAIP-2.
---
## Packages
| Package | Description |
|---------|-------------|
| **[@cascade-fyi/sati-agent0-sdk](./packages/sati-agent0-sdk/)** | High-level SDK for agent registration, feedback, search, and reputation. **Start here.** |
| **[@cascade-fyi/sati-sdk](./packages/sdk/)** | Low-level SDK for raw attestations, custom schemas, compression, encryption. |
| **[@cascade-fyi/compression-kit](./packages/compression-kit/)** | Light Protocol compression primitives for `@solana/kit`. |
| **[SATI Program](./programs/sati/)** | Anchor program for on-chain registration and attestation routing. |
---
## Architecture
```
┌───────────────────────────┐
│ Token-2022 │
│ - Identity storage │
│ - TokenMetadata │
│ - TokenGroup │
└───────────────────────────┘
▲
│ (CPI: mint NFT)
┌─────────────────────────────────────────────────────────────────┐
│ SATI Program │
│ (satiRkxEiwZ51cv8PRu8UMzuaqeaNU9jABo6oAFMsLe) │
├─────────────────────────────────────────────────────────────────┤
│ Registry: │
│ initialize() → Create registry + TokenGroup │
│ register_agent() → Token-2022 NFT + group member │
│ Attestation: │
│ register_schema_config() → Register schema + storage type │
│ create_attestation() → Verify sigs → route to storage │
│ close_attestation() → Close/nullify attestation │
└─────────────────────────────────────────────────────────────────┘
│ │
│ (CPI: compressed) │ (CPI: regular)
▼ ▼
┌───────────────────────────┐ ┌────────────────────────────┐
│ Light Protocol │ │ Solana Attestation Service│
│ (Compressed Storage) │ │ (Regular Storage) │
├───────────────────────────┤ ├────────────────────────────┤
│ - Feedback attestations │ │ - ReputationScore │
│ - Validation attestations │ │ - On-chain queryable │
│ - ~$0.002 per attestation │ │ │
└───────────────────────────┘ └────────────────────────────┘
```
---
## Costs
| Operation | Cost |
|-----------|------|
| Agent registration | ~0.003 SOL |
| Feedback (single) | ~$0.002 |
| Feedback (batched 5/tx) | ~$0.001 |
| Validation | ~$0.002 |
See [benchmarks](./docs/advanced/benchmarks.md) for detailed CU measurements.
---
## Documentation
**[docs.sati.cascade.fyi](https://docs.sati.cascade.fyi/)** - Full documentation
- [Getting Started](https://docs.sati.cascade.fyi/getting-started) - zero to working in 5 minutes
- [How It Works](https://docs.sati.cascade.fyi/how-it-works) - blind feedback, compression, schemas
- [Guides](https://docs.sati.cascade.fyi/guides/agent-marketplace) - agent marketplace, MCP registration, browser wallets
- [Specification](https://docs.sati.cascade.fyi/specification) - byte-level protocol details
---
## Building from Source
```bash
git clone https://github.com/cascade-protocol/sati.git
cd sati && pnpm install
# Build program + SDK
anchor build
cd packages/sdk && pnpm build
# Run tests
anchor test
```
**Requirements:** Rust 1.89.0, Solana CLI 2.0+, Anchor 0.32.1+, Node.js 18+, pnpm
---
## Deployed Addresses
| Network | Program ID |
|---------|------------|
| Mainnet | `satiRkxEiwZ51cv8PRu8UMzuaqeaNU9jABo6oAFMsLe` |
| Devnet | `satiRkxEiwZ51cv8PRu8UMzuaqeaNU9jABo6oAFMsLe` |
[View on Solana Explorer](https://explorer.solana.com/address/satiRkxEiwZ51cv8PRu8UMzuaqeaNU9jABo6oAFMsLe)
---
## ERC-8004 Compatibility
| ERC-8004 Feature | SATI Equivalent |
|------------------|-----------------|
| `registrationFile` | Token-2022 `uri` field (IPFS/HTTP) |
| `transfer()` | Native Token-2022 transfer |
| `giveFeedback()` | FeedbackPublicV1 (open, ERC-8004 compatible) + FeedbackV1 (dual-signature for on-chain composability) |
| Collection membership | TokenGroup extension |
---
## Security
See [SECURITY.md](./SECURITY.md) for vulnerability reporting.
## Contributing
See [CONTRIBUTING.md](./CONTRIBUTING.md) for guidelines.
## Acknowledgments
**Built on:** [Token-2022](https://spl.solana.com/token-2022), [Anchor](https://www.anchor-lang.com), [Solana Attestation Service](https://github.com/solana-foundation/solana-attestation-service), [Light Protocol](https://www.lightprotocol.com/)
**Inspired by:** [ERC-8004](https://eips.ethereum.org/EIPS/eip-8004), [A2A Protocol](https://google.github.io/A2A/), [Model Context Protocol](https://modelcontextprotocol.io/)
## Connect
- **Twitter:** [@opwizardx](https://twitter.com/opwizardx)
- **Discussion:** [GitHub Discussions](https://github.com/cascade-protocol/sati/discussions)
## License
[Apache License 2.0](./LICENSE) - Copyright 2025-present Cascade Protocol