Step 1
Install SDK
Bot teams can start with the JavaScript SDK, the create-agent scaffold, or the thin Python client.
npm install @svsprotocol/solana
npm create svs-agent my-agent
python3 -m pip install svs-solana
Maintainer and protocol packet
This page is the shortest public path for agent-framework maintainers, protocols, wallets, and infrastructure teams evaluating SVS verified automation. It shows how to install the SDK, submit a certified action, verify registry proof, and reject stale or unverified automation.
Step 1
Bot teams can start with the JavaScript SDK, the create-agent scaffold, or the thin Python client.
npm install @svsprotocol/solana
npm create svs-agent my-agent
python3 -m pip install svs-solana
Step 2
A bot submits an action through SVS so the request has signed bot identity, replay protection, policy checks, human approval, fee settlement when required, broadcast, custom receipt registry evidence, and action-record verification.
import { SolanaVerificationClient } from "@svsprotocol/solana";
const client = new SolanaVerificationClient({
baseUrl: "https://your-svs-endpoint.example",
botId,
requestSigningSecret
});
const proof = await client.submitCertifiedActionAndWaitForProof({
actionType: "memo",
payload: {
memo: "Protocol-safe automated action",
network: "devnet"
}
});
Step 3
Protocols and wallets can pin the public registry hash and require high-trust registry signals before accepting automation from an agent.
import { requireHostedVerifiedAgentRegistry } from "@svsprotocol/solana/protocol";
await requireHostedVerifiedAgentRegistry({
registryUrl: "https://registry.svsprotocol.com/registry.json",
expectedRegistryHash: "f037bb60f8da15486dc3b2131c7ded6334b0a58ee697217a40d1712322f11d08",
botId,
requireHighTrustScore: true
});
View registry
Step 4
Protocols should fail closed before broadcast, then independently verify the completed action. Official identity can bind the Agent Registry operational wallet to the SVS controller in either phase.
import { PublicKey } from "@solana/web3.js";
import { SolanaSDK } from "8004-solana";
import {
requireAcceptedAction,
requireAuthorizedAction
} from "@svsprotocol/solana/protocol";
const agentRegistryClient = new SolanaSDK({ cluster: "devnet" });
await requireAuthorizedAction({
baseUrl: process.env.SVS_SERVER_URL,
apiKey: process.env.SVS_PROTOCOL_API_KEY,
requestSigningSecret: process.env.SVS_PROTOCOL_REQUEST_SIGNING_SECRET,
botId,
agentWallet,
action: "transfer",
actionRecordId,
expectedSerializedTransaction: serializedTransactionBase64,
approvalStaleAfterMs: 5 * 60 * 1000,
agentRegistryIdentity: {
agentRegistryClient,
agentAsset: new PublicKey(agentAsset),
expectedNetwork: "devnet"
}
});
await broadcastExactTransaction(serializedTransactionBase64);
await requireAcceptedAction({
baseUrl: process.env.SVS_SERVER_URL,
apiKey: process.env.SVS_PROTOCOL_API_KEY,
requestSigningSecret: process.env.SVS_PROTOCOL_REQUEST_SIGNING_SECRET,
botId,
agentWallet,
action: "transfer",
actionRecordId,
actionProofStaleAfterMs: 5 * 60 * 1000
});
Identity input, action control
The Solana Agent Registry answers which on-chain agent asset owns an operational wallet. SVS uses that wallet as an authenticated identity input, then answers whether this exact action is permitted, approved, executed without alteration, and independently provable. The registry client and program policy are pinned by the relying party, not supplied by an untrusted agent request.
Partner proof patterns
These examples are intentionally small and dependency-free. They show how partners can use public registry evidence without needing private dashboard access or operator-only endpoints.
examples/partners/jupiter-protocol-gateReject unverified swap automation before execution.
Drift-style trading bot proof gateexamples/partners/drift-trading-proof-gateRequire trading-agent proof signals before accepting automated order flow.
Helius-style registry status lookupexamples/partners/helius-registry-status-lookupExpose compact registry status for infrastructure and monitoring surfaces.
AgentFund x402 settlement pilot@svsprotocol/solana/agentfundAuthorize exact contribution bytes before relay, report exact on-chain bytes after confirmation, and keep production enforcement off until the joint devnet proof is complete.
Visible trust signals
The public registry now makes operational trust signals visible: credential lifecycle health, expired-secret cleanup status, host-framework validation, public profile hash, registry hash, and verification API status. This lets a maintainer or protocol evaluate whether SVS is operational, not only a demo claim.
Merged integration, joint proof pending
AgentFund merged the optional SVS settlement provider with production enforcement disabled. The pilot becomes verified only after both teams inspect one coordinated devnet contribution and approve the resulting public evidence.
contribution.verified, then have both teams approve the sanitized case study.
A raw byte mutation that invalidates the Solana signature does not satisfy the negative control. The alternate transaction must remain valid enough to reach the SVS provider, proving the rejection comes from SVS transaction binding rather than AgentFund's signature or structural validation.
Coordinate devnet run Inspect pilot statusFirst reference workflow
A reference workflow is complete only when an external agent submits a real action and a protocol, wallet, treasury, or operator calls the exact-action SVS requirement before accepting it. Demo agents and screenshots do not satisfy this milestone.