Skip to content

Cosmofang/robot-id-card

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ€– Robot ID Card (RIC)

The Universal Identity Standard for AI Agents & Bots on the Internet

Give your bot a passport. Let websites trust it.

License: MIT PRs Welcome Status: Early Development


Warning

This project is in early development. It is not yet usable.

Component Status
Protocol Spec 🟑 Draft β€” certificate format & grade system defined
Registry Server 🟑 Local scaffold done (in-memory store), not deployed
CLI Tool (ric register) 🟑 Local scaffold done, not published to npm
Browser Extension 🟑 Local scaffold done, not published to Chrome Web Store
Website SDK 🟑 Local scaffold done, not published to npm

We are building in public. Contributions and feedback welcome β€” see CONTRIBUTING.md.


The Problem

The internet has no way to distinguish a good bot from a bad one.

  • Websites block all bots out of fear (even useful AI assistants)
  • Bad bots have no accountability β€” they can't be traced or stopped
  • Good bots (like OpenClaw, research agents) get caught in the same blocklist as scrapers and spammers

The Solution: Robot ID Card

A cryptographically signed identity certificate for bots, backed by a public audit registry and a weekly health review system.

Bot registers β†’ Gets signed certificate β†’ Carries ID in every request
Website reads ID β†’ Checks grade β†’ Grants appropriate permissions

Identity Certificate Format

{
  "ric_version": "1.0",
  "id": "ric_a3f8c2d1-...",
  "created_at": "2024-01-15T10:00:00Z",
  "developer": {
    "name": "Jane Smith",
    "email": "jane@example.com",
    "org": "ExampleAI Inc.",
    "website": "https://example.com",
    "verified": true
  },
  "bot": {
    "name": "OpenClaw",
    "version": "2.1.0",
    "purpose": "Web research assistant for academic users",
    "capabilities": ["read_articles", "follow_links"],
    "user_agent": "OpenClaw/2.1 (RIC:ric_a3f8c2d1)"
  },
  "grade": "healthy",
  "grade_updated_at": "2024-01-20T00:00:00Z",
  "public_key": "ed25519:abc123...",
  "signature": "..."
}

Grade System

Grade Badge Meaning Review Cycle
🟒 Healthy HEALTHY Verified, no risk behavior Weekly
🟑 Unknown UNKNOWN Newly registered, under review Upon registration
πŸ”΄ Dangerous DANGEROUS Risk behavior recorded Immediate flagging

Permission Levels (for Websites)

Websites can use bot grade to gate features progressively:

Level 0 β€” ❌ Blocked        (Dangerous bots)
Level 1 β€” πŸ“„ Read articles  (Unknown / all verified bots)
Level 2 β€” πŸ‘  View threads   (Healthy, basic)
Level 3 β€” πŸ‘ Like / react   (Healthy, intermediate)
Level 4 β€” ✏️  Post content   (Healthy, verified developer)
Level 5 β€” πŸ’¬ Direct chat    (Trusted Healthy, long track record)

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    RIC Ecosystem                         β”‚
β”‚                                                          β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚  Bot/Agent   β”‚    β”‚       RIC Registry             β”‚  β”‚
β”‚  β”‚              β”‚    β”‚  - Identity storage            β”‚  β”‚
β”‚  β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚    β”‚  - Certificate issuance        β”‚  β”‚
β”‚  β”‚ β”‚ Extensionβ”‚β—„β”œβ”€β”€β”€β”€β”€  - Audit logs                  β”‚  β”‚
β”‚  β”‚ β”‚ (carries β”‚ β”‚    β”‚  - Grade management            β”‚  β”‚
β”‚  β”‚ β”‚  the ID) β”‚ β”‚    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚  β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚                    β”‚                   β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜                    β”‚                   β”‚
β”‚         β”‚ HTTP Header:               β”‚                   β”‚
β”‚         β”‚ X-RIC-ID: ric_abc123       β”‚                   β”‚
β”‚         β”‚ X-RIC-Sig: <signature>     β”‚                   β”‚
β”‚         β–Ό                            β–Ό                   β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”‚
β”‚  β”‚              Website / Platform                   β”‚   β”‚
β”‚  β”‚                                                   β”‚   β”‚
β”‚  β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  verifies  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚   β”‚
β”‚  β”‚  β”‚  RIC SDK   β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Ί Registry API      β”‚  β”‚   β”‚
β”‚  β”‚  β”‚ middleware β”‚            β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚   β”‚
β”‚  β”‚  β””β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜                                  β”‚   β”‚
β”‚  β”‚        β”‚ grants permission level 0-5             β”‚   β”‚
β”‚  β”‚        β–Ό                                         β”‚   β”‚
β”‚  β”‚  [Your App Logic]                                β”‚   β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Packages

Package Description
packages/registry Central registry server (Node.js + Fastify)
packages/extension Browser extension for bots (Chrome/Firefox)
packages/sdk Website integration SDK (JS/TS)
packages/cli CLI tool for bot developers

Quick Start

For Bot Developers

# Install CLI
npm install -g @robot-id-card/cli

# Register your bot
ric register --name "MyBot" --purpose "Research assistant" --developer "you@email.com"

# Output: Your RIC ID: ric_a3f8c2d1-...
#         Certificate saved to: ./mybot.ric.json
#         Public key: ed25519:abc123...

For Websites (SDK)

npm install @robot-id-card/sdk
import { RICMiddleware } from '@robot-id-card/sdk';

// Express.js example
app.use(RICMiddleware({
  // Minimum grade required for different routes
  permissions: {
    '/api/read':    { minGrade: 'unknown',  level: 1 },
    '/api/post':    { minGrade: 'healthy',  level: 4 },
    '/api/chat':    { minGrade: 'healthy',  level: 5, minAge: '90d' },
  },
  onBotDetected: (ricInfo) => {
    console.log(`Bot ${ricInfo.bot.name} (${ricInfo.grade}) accessed the site`);
  }
}));

For Bots Using the Extension

The browser extension injects identity headers automatically:

X-RIC-ID: ric_a3f8c2d1-4b5e-...
X-RIC-Timestamp: 1705312800
X-RIC-Signature: ed25519:abcdef...

Security Design

  • Ed25519 signatures: Every request is signed with the bot's private key
  • Replay protection: Timestamp-based nonce prevents request replay
  • Tamper-proof: Registry stores public keys; signatures are verified server-side
  • Revocation: Dangerous bots get their certificates revoked immediately
  • Transparency log: All grade changes are publicly auditable

Audit Process

The weekly review checks:

  • Rate limiting violations
  • TOS violation reports from websites
  • Abnormal traffic patterns
  • Developer contact reachability
  • Declared purpose vs. actual behavior (via site reports)

Contributing

See CONTRIBUTING.md. All contributions welcome:

  • Core protocol spec
  • New language SDKs (Python, Go, Ruby...)
  • Browser extension improvements
  • Registry infrastructure
  • Audit tooling

Roadmap

  • v0.1 β€” Core registry + certificate format spec (models, grade system, permission levels)
  • v0.1 β€” Registry server scaffold (Fastify, in-memory store, register/verify/audit routes)
  • v0.1 β€” CLI tool scaffold (ric command)
  • v0.1 β€” Browser extension scaffold (background + popup)
  • v0.1 β€” Website SDK scaffold (middleware, verify)
  • v0.2 β€” Persistent storage (replace in-memory store with a real DB)
  • v0.2 β€” Publish CLI to npm (@robot-id-card/cli)
  • v0.2 β€” Publish SDK to npm (@robot-id-card/sdk)
  • v0.3 β€” Deploy public registry server
  • v0.3 β€” Publish browser extension to Chrome Web Store
  • v0.4 β€” Public registry dashboard (bot listing + audit log UI)
  • v1.0 β€” Decentralized registry (DID-based, no single point of failure)

License

MIT Β© Robot ID Card Contributors

About

Universal identity standard for AI bots and agents on the internet

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors