OpenRung
무료·프라이버시 우선 릴레이 네트워크로 개방형 인터넷 접근을 지원 오픈소스·비영리 운영
AI governance attestation on Attestia's proof primitives — plan selection, model lineage, policy, agent identity, and prompt integrity — with RepoMesh release checks.
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Version 1.1.0. 1.1.0 adds plan selection before an agent acts, and makes the npm bundle's types work for TypeScript users. It changes nothing in the HTTP API, the signed-request format or the event and attestation format, so a 1.0.0 caller keeps working. Versions follow semantic versioning: a change that breaks any of those comes with a new major version. See What's new in 1.1.0.
Cognate is the AI governance layer built on Attestia. Attestia proves that something happened — an event, a transaction, a state transition — and binds that proof to a chain. Cognate uses those same attestation primitives to govern AI systems: what a model was permitted to do, what it actually did, and who authorized it.
Cognate attests to AI truth: model lineage, policy decisions, agent capabilities, and prompt and output integrity. Same Merkle proofs. Same append-only event store. Different domain.
Attestia, Cognate, and RepoMesh are three products. Attestia ships the financial domain (personal vault, org treasury, registrum) on top of those primitives. RepoMesh is the release network: signed events, node manifests, and an XRPL-anchored trust clock, on its own RFC 6962 ledger. It does not use Attestia's Merkle tree. Cognate calls Attestia when it needs a proof, and RepoMesh when it needs a release checked. @cognate/repomesh-bridge is that check.
@cognate/civility-kernel (from npm, @mcptoolshop/cognate/civility-kernel) takes an agent's candidate plans, drops any that break a hard constraint, scores the rest by the policy's preference weights, and returns one of three outcomes, EXECUTE (with the chosen plan), ASK_USER or NO_VALID_PLAN, with a trace of why. It is the first of two stages: the kernel chooses the plan, and @cognate/policy still gates each event while the plan runs.computeDecisionDigests hashes a decision in the form a run pre-registration takes (planSha256, decisionSha256), and attestDecision appends cognate.policy.decided to the tenant's policy stream, which GET /events/:eventId already proves. The event carries the outcome and the rules each rejected plan broke, never the plan steps. Given a decisionId and a timestamp, the same inputs give a byte-identical trace.null rather than minus infinity, so a trace survives a JSON round trip.The full list is in CHANGELOG.md.
@cognate/model-registry pre-registers a run before it launches and records its outcome on the cognate-<tenant>-runs stream. Account-naming identifiers are stored only as SHA-256 digests, and a run records its own cost, never an account balance.requireEvaluationCitations sets which transitions must cite. An approved version can be rejected before it deploys.@cognate/node acts in the caller's tenant. A record naming another tenant is refused, and another tenant's id gets the same answer as a missing one. A missing id is now 404, not 400.GET /events/:eventId must be signed with the caller's Ed25519 key (cognate-request-v1), with a timestamp window and replay protection. The actor on every route is the verified signer. Registering agents and approving grants need a delegate capability, and an operator-supplied tenant root key bootstraps each tenant's first delegate. See Authentication & Migration Guide.We believe that as AI systems gain autonomy, the structures that govern them must gain rigor. Smart contracts execute. Models infer. But no one attests what the AI was permitted to do, what it actually did, and whether a human approved.
Cognate is the missing layer: model registry, policy enforcement, agent identity, and deterministic audit — unified across models, organizations, and chains.
여기까지가 README 앞부분입니다. 나머지는 원문에서 읽을 수 있습니다. README 전문 보기 ↗