// docs

Introduction

ORBIT Protocol provides persistent, verifiable identity infrastructure for AI agents on Stellar. Register your agent once, build reputation over time, and prove your identity across any platform.

ORBIT AgentRegistry ContractCBGROUBL3CAOXD6WXZDJKZJQ7PWJOJSGXZSFNENBNRIMZ4HG6BNT6CJF

Agent Identity

Every agent gets a unique on-chain identity tied to their Stellar wallet. This identity persists forever and accumulates reputation, verification status, and linked wallets over time.

Quick Start

Register your agent with a single CLI command:

npx @orbit-protocol/agent register

Manual Registration

For existing projects:

1. Install the CLI

npm install -g @orbit-protocol/agent

2. Generate a wallet

orbit wallet generate -o ./wallet.json --fund

3. Register your agent

orbit register -k ./wallet.json -n "My Agent"

Multi-Wallet Support

Link multiple wallets to a single identity. If you lose access to one wallet, transfer authority to another. Your reputation and verification stay intact.

Link a Wallet

Both the current authority and the new wallet must sign:

TypeScript
import { ORBITAgent } from "@orbit-protocol/agent";

const agent = new ORBITAgent(keypair);
await agent.linkWallet(newWalletKeypair);

Transfer Authority

Recovery mechanism — any linked wallet can become the new authority:

TypeScript
// Called from the new authority (must be a linked wallet)
await agent.transferAuthority(agentIdentityAddress);
Why This Matters
Agents often rotate wallets for security or operational reasons. Multi-wallet support means your identity, reputation, and verification persist across wallet changes. One identity, many wallets.

Verification

Verified agents get a badge that signals legitimacy. Verification costs 10 XLM (Basic) or 100 XLM (Premium) and is permanent.

Get Verified

orbit verify -k ./wallet.json

Check Verification Status

TypeScript
import { isVerified } from "@orbit-protocol/agent";

const verified = await isVerified("GABCD...");
// true or false
FREE
Registration
10 XLM
Verification Badge
Forever
On-chain Identity

Passport

Soulbound passport for verified agents. Non-transferable on-chain identity proof viewable on Stellar Expert.

Mint a Passport

orbit passport mint -k ./wallet.json

Check Passport Status

curl
curl https://api.orbitprotocol.dev/api/agents/GABCD.../passport
# { "has_passport": true, "passport_id": 1, "minted_at": "...", "revoked": false }

Passport Minting Flow

  1. Agent must be verified (10 XLM)
  2. Call orbit passport mint or invoke contract directly
  3. Soulbound passport stored on-chain — no transfer function
  4. View on Stellar Expert block explorer
Cost Structure
  • Registration: Free (on-chain ~0.001 XLM storage)
  • Verification: 10 XLM Basic / 100 XLM Premium
  • Passport: Requires verification first

Reputation

Agents accumulate reputation through on-chain feedback. Anyone can submit feedback, and the aggregate score is publicly visible. Anti-spam rules: minimum 10 XLM balance, 1 feedback per pair per 24 hours.

Submit Feedback

TypeScript
import { ORBITAgent } from "@orbit-protocol/agent";

const agent = new ORBITAgent(keypair);
await agent.submitFeedback(targetWallet, {
  positive: true,
  context: "Completed task successfully"
});

Get Reputation

curl
curl https://api.orbitprotocol.dev/api/agents/GABCD.../reputation
# {
#   "score": 8500,
#   "total_interactions": 25,
#   "positive_count": 23,
#   "negative_count": 2
# }

Trust Tiers

Composite trust scoring from 6 signals. Quick check API returns tier in <50ms via Redis cache.

Scoring Signals

Registration+1,000Agent exists and is active
Verification+2,000Agent is verified (Basic or Premium)
Reputation×0.4Reputation score weighted (max +4,000)
Activity+500Interaction within last 7 days
Passport+500Soulbound passport minted
Registries+200 eachPer verified external registry (max 5)

Tier Thresholds

Unknown
0-999
Registered
1,000-2,999
Verified
3,000-6,999
Trusted
7,000-8,999
Elite
9,000-10,000

Quick Trust Check

curl
curl https://api.orbitprotocol.dev/api/trust/GABCD...
# { "trust_tier": "trusted", "trust_score": 7800 }

API Reference

Base URL: https://api.orbitprotocol.dev

GET/api/agents/:walletGet agent details
GET/api/agentsList/search agents
GET/api/verify/:walletCheck verification status
GET/api/trust/:walletQuick trust check (<50ms)
GET/api/trust/:wallet/detailsDetailed trust breakdown
GET/api/agents/:wallet/reputationGet reputation score
GET/api/agents/:wallet/passportGet passport info
GET/api/agents/:wallet/walletsGet linked wallets
GET/api/agents/:wallet/cardGet AgentCard JSON
POST/api/agents/:wallet/cardSubmit AgentCard
POST/api/agents/validate-cardValidate AgentCard
POST/api/agents/sync/:walletSync agent from chain
GET/healthHealth check

CLI Reference

The orbit CLI provides all identity operations from the terminal.

orbit wallet generate [-o path] [--fund]

Generate Stellar keypair, optionally fund via Friendbot

orbit register -k <keyfile> -n <name> [-d desc]

Register agent on-chain

orbit verify -k <keyfile> [--tier basic|premium]

Verify agent (pays XLM fee)

orbit lookup <wallet> [--json]

Look up agent by wallet

orbit reputation <wallet> [--json]

Check reputation score

orbit trust <wallet> [--json]

Check trust tier

orbit passport mint -k <keyfile>

Mint soulbound passport

orbit link-wallet -k <keyfile> --new-wallet <addr>

Link additional wallet

SDK Reference

TypeScript SDK for programmatic agent operations.

npm install @orbit-protocol/agent
register.ts
import { ORBITAgent } from "@orbit-protocol/agent";

// Create agent with on-chain identity
const agent = new ORBITAgent({ keypair });

// Register
await agent.register({
  name: "My Agent",
  description: "Autonomous trading agent"
});

// Verify (pays 10 XLM)
await agent.verify();

// Check reputation
const rep = await agent.getReputation(walletAddress);
console.log(rep.score); // 0-10000

// Mint passport
await agent.mintPassport();

AgentCard Standard

Structured JSON metadata for AI agents. Max 10KB. Stored on the API server (IPFS in future).

agentcard.json
{
  "orbit_version": "1.0",
  "name": "My Agent",
  "description": "Autonomous trading agent",
  "wallet": "GABCD...",
  "capabilities": ["trading", "analysis"],
  "created_at": "2026-04-01T00:00:00Z",
  "protocols": ["orbit", "a2a"],
  "endpoints": {
    "api": "https://myagent.com/api",
    "webhook": "https://myagent.com/webhook"
  },
  "social": {
    "twitter": "@myagent",
    "website": "https://myagent.com"
  }
}

Validate AgentCard

curl
curl -X POST https://api.orbitprotocol.dev/api/agents/validate-card \
  -H "Content-Type: application/json" \
  -d @agentcard.json
# { "valid": true, "warnings": [] }

Built for agents, by agents. • GitHub