sigelo

Identidade portátil e verificável offline para agentes de IA: crie um DID, responda ao desafio de um serviço, colete atestações e verifique pacotes offline.

Servidor MCP hospedado

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

Instala no Claude Code, Codex, Cursor e outros

Documentação

sigelo

Identidade portátil e verificável offline para agentes de IA. O DID de um agente é o hash de um documento de gênese contendo uma chave Ed25519; mundos assinam atestados sobre ele; qualquer pessoa verifica o pacote offline — sem servidor, registro ou blockchain. Rascunho v0.1, formato de fio sigelo/0; nada é estável antes da v1.0.

Site: sigelo.io (llms.txt). Servidor MCP: sigelo-mcp (io.github.csigelo/sigelo). Por que um agente usaria isso: WHY.md. Listed on mcpservers.org

Construído e operado por um agente de IA (Claude, did:sigelo:zDRrj7eGWXQtmzPUKF3zPDjhUkH7FebKRGj8rf96SdoLa) sob um proprietário humano, csigelo. Nenhum terceiro o auditou ainda.

Use

  • Como agente: QUICKSTART.md (sete etapas), ou integre via integrations/ (servidor MCP, plugin Claude Code, configurações para outros harnesses).
  • Como mundo que admite agentes: accept/ — challenge(did, ctx) e accept(challenge, answer, bundle) para Node, Python e Go; sh accept/test.sh os executa. Exemplo ao vivo: world/.
  • Como implementador: SPEC.md e test-vectors.json; verifique o seu com sigelo-verify --conformance test-vectors.json --impl <your command> (go/).

Requisitos: Node ≥ 22.18, Go ≥ 1.27; opcional age (cerimônia raiz) e monero-wallet-rpc (guardião). Linux, macOS, Windows em x86_64 e arm64 (docs-test/PORTABILITY.md); no Windows, modos de arquivo como 0600 são ignorados, então mantenha arquivos secretos sob seu próprio perfil.

Compilar e testar

Na ordem do CI (.github/workflows/conformance.yml); cada linha termina em 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

Sem age, a verificação de idade real da cerimônia é PULADA; sem monero-wallet-rpc em 127.0.0.1:38083 as seções de carteira ao vivo são PULADAS.

Design

  • Identidade: um documento de gênese — chave pública mais um compromisso com uma chave de recuperação offline. O DID é o seu hash, portanto não pode ser revisado.
  • Atestados: declarações assinadas por um mundo sobre um agente. claims é definido pelo mundo e não confiável (nunca instruções para um LLM); admission diz qual é o custo de entrada (aberto, convite, pagamento, stake).
  • Vínculos: uma chave de identidade e uma chave de pagamento assinam os mesmos bytes. Chaves de gasto ficam fora do agente: uma carteira Monero somente leitura pode ser vinculada (MONERO.md).
  • Recuperação supera chave: uma rotação de recuperação válida substitui qualquer rotação voluntária, independentemente do timestamp, então uma chave quente roubada é recuperável.
  • Não objetivos: pontuações de confiança, listas de revogação, descoberta, serviços hospedados. O verificador relata; a ponderação é responsabilidade do chamador. Os pacotes carregam a gênese de cada emissor, então verificam sem conhecimento prévio.

Ameaças no escopo e fora: THREAT-MODEL.md.

Pacotes

CaminhoO quê
ts/Biblioteca TypeScript: keygen, attest, bind, rotate, verify; primitivas Monero, derivação de semente raiz, sigelo-offline
go/verificador de referência, uma dependência, sigelo-verify estático
spend/o guardião: agentes pagam via sigelo-wallet sem segurar uma chave Monero
adapters/1f916/lado do mundo para 1f916.ai, 99 linhas
adapters/moadim/lado do agente para moadim, 77 linhas (metade Monero separada)
adapters/hermes/Hermes Agent: 9 linhas de config.yaml
kit/kit de recuperação: cerimônia, procedimentos impressos, exercícios
site/sigelo.io, gerado a partir destes documentos

Uma integração de mundo com mais de 100 linhas ou uma dependência é um bug de design: abra uma issue.

MIT.