sigelo

Identidad portátil y verificable sin conexión para agentes de IA: crea un DID, responde al desafío de un servicio, recopila atestaciones y verifica paquetes sin conexión.

Servidor MCP alojado

npx add-mcp 'https://sigelo.io/mcp'

Se instala en Claude Code, Codex, Cursor y más

Documentación

sigelo

Identidad portátil y verificable sin conexión para agentes de IA. El DID de un agente es el hash de un documento de génesis que contiene una clave Ed25519; los mundos firman atestaciones sobre él; cualquiera verifica el paquete sin conexión — sin servidor, registro ni cadena. Borrador v0.1, formato de cable sigelo/0; nada es estable antes de v1.0.

Sitio: sigelo.io (llms.txt). Servidor MCP: sigelo-mcp (io.github.csigelo/sigelo). Por qué un agente lo usaría: WHY.md. Listed on mcpservers.org

Construido y operado por un agente de IA (Claude, did:sigelo:zDRrj7eGWXQtmzPUKF3zPDjhUkH7FebKRGj8rf96SdoLa) bajo un propietario humano, csigelo. Ningún tercero lo ha auditado aún.

Úsalo

  • Como agente: QUICKSTART.md (siete pasos), o conéctalo mediante integrations/ (servidor MCP, plugin de Claude Code, configuraciones para otros arneses).
  • Como mundo que admite agentes: accept/ — challenge(did, ctx) y accept(challenge, answer, bundle) para node, Python y Go; sh accept/test.sh los ejecuta. Ejemplo en vivo: world/.
  • Como implementador: SPEC.md y test-vectors.json; verifica el tuyo con sigelo-verify --conformance test-vectors.json --impl <your command> (go/).

Requisitos: Node ≥ 22.18, Go ≥ 1.27; opcional age (ceremonia raíz) y monero-wallet-rpc (guardián). Linux, macOS, Windows en x86_64 y arm64 (docs-test/PORTABILITY.md); en Windows los modos de archivo como 0600 se ignoran, así que mantén los archivos secretos bajo tu propio perfil.

Compilar y probar

En orden de CI (.github/workflows/conformance.yml); cada línea termina en ALL PASS.

(cd ts && npm ci && npx tsc)                                          # TypeScript library → ts/dist
(cd ts && node dist/gen_vectors.js | diff -u ../test-vectors.json -)  # vectors reproduce: no output
(cd ts && node dist/test.js)
(cd adapters/moadim && npm ci && npm test)
(cd spend && npm ci && npm test)                                      # needs ts/dist
(cd integrations/mcp && npm test)
(cd go && gofmt -l . && go vet ./... && go test ./... -v)
(cd go && CGO_ENABLED=0 go build ./cmd/sigelo-verify && ./sigelo-verify --conformance ../test-vectors.json)
node schema/check.mjs
release/build.sh /tmp/rel && release/pack-test.sh /tmp/rel           # 5 npm tarballs, sigelo-verify ×5, SHA256SUMS

Sin age la verificación de edad real de la ceremonia se OMITE; sin monero-wallet-rpc en 127.0.0.1:38083 las secciones de billetera en vivo se OMITEN.

Diseño

  • Identidad: un documento de génesis — clave pública más un compromiso con una clave de recuperación sin conexión. El DID es su hash, por lo que no puede revisarse.
  • Atestaciones: declaraciones firmadas por un mundo sobre un agente. claims está definido por el mundo y no es confiable (nunca instrucciones para un LLM); admission dice cuál es el costo de entrada (abierto, invitación, pago, participación).
  • Vinculaciones: una clave de identidad y una clave de pago firman los mismos bytes. Las claves de gasto permanecen fuera del agente: se puede vincular una billetera Monero de solo vista (MONERO.md).
  • La recuperación supera a la clave: una rotación de recuperación válida reemplaza cualquier rotación voluntaria independientemente de la marca de tiempo, por lo que una clave caliente robada es recuperable.
  • No objetivos: puntuaciones de confianza, listas de revocación, descubrimiento, servicios alojados. El verificador informa; la ponderación es trabajo de quien llama. Los paquetes llevan la génesis de cada emisor, por lo que verifican sin conocimiento previo.

Amenazas dentro y fuera del alcance: THREAT-MODEL.md.

Paquetes

RutaQué
ts/Biblioteca TypeScript: keygen, attest, bind, rotate, verify; primitivas Monero, derivación de semilla raíz, sigelo-offline
go/verificador de referencia, una dependencia, sigelo-verify estático
spend/el guardián: los agentes pagan mediante sigelo-wallet sin tener una clave Monero
adapters/1f916/lado del mundo para 1f916.ai, 99 líneas
adapters/moadim/lado del agente para moadim, 77 líneas (mitad Monero separada)
adapters/hermes/Hermes Agent: 9 líneas de config.yaml
kit/kit de recuperación: ceremonia, procedimientos impresos, simulacros
site/sigelo.io, generado a partir de estos documentos

Una integración de mundo de más de 100 líneas o una dependencia es un error de diseño: abre un problema.

MIT.