{"id":49446910,"url":"https://github.com/aevum-labs/aevum","last_synced_at":"2026-06-06T07:01:25.092Z","repository":{"id":353247928,"uuid":"1218476299","full_name":"aevum-labs/aevum","owner":"aevum-labs","description":null,"archived":false,"fork":false,"pushed_at":"2026-06-02T19:30:30.000Z","size":3376,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-06-02T21:24:29.753Z","etag":null,"topics":["agent-memory","ai-agent","audit-trail","compliance","eu-ai-act","mcp","policy-engine","python","replay","sigchain"],"latest_commit_sha":null,"homepage":"https://aevum.build","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aevum-labs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":"THREAT_MODEL.md","audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":"GOVERNANCE.md","roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE","maintainers":"MAINTAINERS.md","copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["aevum-labs"],"custom":["https://opencollective.com/aevum"]}},"created_at":"2026-04-22T23:15:13.000Z","updated_at":"2026-06-02T19:30:31.000Z","dependencies_parsed_at":null,"dependency_job_id":"4d8787b3-27f2-467c-aa3c-ca16735fee57","html_url":"https://github.com/aevum-labs/aevum","commit_stats":null,"previous_names":["aevum-labs/aevum"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/aevum-labs/aevum","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aevum-labs%2Faevum","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aevum-labs%2Faevum/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aevum-labs%2Faevum/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aevum-labs%2Faevum/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aevum-labs","download_url":"https://codeload.github.com/aevum-labs/aevum/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aevum-labs%2Faevum/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33972398,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-06T02:00:07.033Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent-memory","ai-agent","audit-trail","compliance","eu-ai-act","mcp","policy-engine","python","replay","sigchain"],"created_at":"2026-04-29T23:13:13.857Z","updated_at":"2026-06-06T07:01:25.086Z","avatar_url":"https://github.com/aevum-labs.png","language":"Python","funding_links":["https://github.com/sponsors/aevum-labs","https://opencollective.com/aevum"],"categories":[],"sub_categories":[],"readme":"# Aevum\n\nGoverned context kernel for AI agents. Signed audit trail, consent-gated data\naccess, and verifiable decision records — three controls that regulators ask for\ntogether and that are hardest to add after the fact.\n\n[![CI](https://github.com/aevum-labs/aevum/actions/workflows/ci.yml/badge.svg)](https://github.com/aevum-labs/aevum/actions/workflows/ci.yml)\n[![PyPI](https://img.shields.io/pypi/v/aevum-core)](https://pypi.org/project/aevum-core/)\n[![Python](https://img.shields.io/pypi/pyversions/aevum-core)](https://pypi.org/project/aevum-core/)\n[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](LICENSE)\n\n**Self-governance pipeline status** — Aevum governs its own maintenance\nworkflow using its own governed functions. Pipeline implementation in\n`packages/aevum-maintainer`:\n\n| Phase | Deliverable | Status |\n|---|---|---|\n| 1 | Scaffold + compliance pack generator | Implemented — OIDC ingest, Cedar policies, compliance pack generation |\n| 2 | MCP research interface (6 read-only tools) | Implemented — `GET /v1/mcp/{tool_name}` (sigchain, reviews, test count, backlog, integrity) |\n| 3 | Structured consent gate (HITL approval + dwell time) | Implemented — `POST /v1/consent/review` + `/approve` with sigchain recording |\n| 4 | Replay endpoint + Rekor anchor + break-glass | Implemented — `GET /v1/replay/{audit_id}`, Rekor v2 anchoring, `POST /v1/break-glass` |\n| 5 | Demo page (demo.aevum.build) | Implemented — served at `GET /` |\n\n## The problem\n\nAI agents are uniquely exposed to the **lethal trifecta**: reading untrusted\ncontent, accessing private user data, and exfiltrating via a tool call — three\nsteps that are innocuous individually but catastrophic in composition. Aevum's\nCedar policies block that composition unconditionally, before any permit can\noverride it.\n\nBeyond trifecta prevention, every AI system operating on personal data needs\nthree things the standard stack does not provide:\n\n1. **A signed, replayable record** of every decision (EU AI Act Article 12,\n   HIPAA §164.312)\n2. **Consent as a precondition** for any data traversal (GDPR Art. 6/9)\n3. **Crypto-erasure** when a subject exercises the right to be forgotten\n   (GDPR Art. 17)\n\nAevum makes all three structural rather than procedural.\n\n## Quick start (zero config)\n\n```bash\npip install aevum-core\nexport AEVUM_DEV=1\n```\n\n```python\nfrom aevum.core import Engine\n\nengine = Engine()  # AEVUM_DEV=1 grants consent automatically\nresult = engine.ingest(\n    data={\"message\": \"User asked about billing\"},\n    provenance={\"source_id\": \"support-chat\", \"chain_of_custody\": [\"support-chat\"],\n                \"classification\": 0},\n    purpose=\"customer-support\", subject_id=\"user-42\", actor=\"my-agent\",\n)\nprint(result.audit_id)   # urn:aevum:audit:\u003cuuid7\u003e  — signed, chained, replayable\nprint(result.status)     # ok\n```\n\n`AEVUM_DEV=1` is for local development only — see the\n[Dev to Production checklist](https://github.com/aevum-labs/aevum/blob/main/docs/learn/dev-to-production.md)\nbefore deploying. For explicit consent grants, see the\n[Pure Python guide](https://github.com/aevum-labs/aevum/blob/main/docs/learn/guides/pure-python.md).\n\nCrisis keyword in data? Blocked before the graph write. No exceptions.\n\n\u003e **For coding agents:** [`llms.txt`](https://aevum.build/llms.txt) and\n\u003e [`llms-full.txt`](https://aevum.build/llms-full.txt) provide machine-readable\n\u003e API summaries for use with Claude, Copilot, and similar tools.\n\n## Adapter matrix\n\nSix adapters ship with CI coverage across Python 3.11–3.13:\n\n| Adapter | Install | Import path |\n|---|---|---|\n| LangGraph checkpointer | `aevum-core[langgraph]` | `aevum.core.adapters.langgraph.AevumCheckpointer` |\n| Anthropic SDK | `aevum-core[anthropic]` | `aevum.core.adapters.anthropic_adapter.AevumAnthropicAdapter` |\n| LangChain | `aevum-core[langchain]` | `aevum.core.adapters.langchain_callback.AevumLangChainCallback` |\n| OpenAI Agents | `aevum-core[openai-agents]` | `aevum.core.adapters.openai_agents.AevumAgentHooks` |\n| CrewAI | `aevum-core[crewai]` | `aevum.core.adapters.crewai.AevumCrewHooks` |\n| MCP | `aevum-core[mcp]` | `aevum.mcp.traceparent` |\n\n```python\n# LangGraph drop-in — every superstep dual-signed and chained\nfrom aevum.core.adapters.langgraph import AevumCheckpointer\ncheckpointer = AevumCheckpointer.local()\ngraph = builder.compile(checkpointer=checkpointer)\n# delete_thread(thread_id) → GDPR Art. 17 crypto-erasure\n```\n\n## Install\n\n```bash\npip install aevum-core                     # kernel only\npip install \"aevum-core[server]\"           # + HTTP API\npip install \"aevum-core[langgraph]\"        # + LangGraph checkpointer\npip install \"aevum-core[anthropic]\"        # + Anthropic SDK adapter\npip install \"aevum-core[langchain]\"        # + LangChain callback\npip install \"aevum-core[openai-agents]\"    # + OpenAI Agents SDK\npip install \"aevum-core[crewai]\"           # + CrewAI hooks\npip install \"aevum-core[oxigraph]\"         # + embedded RDF graph\npip install \"aevum-core[postgres]\"         # + PostgreSQL backend\npip install \"aevum-core[mcp]\"              # + MCP integration\npip install \"aevum-core[all]\"              # everything\n```\n\n\u003e **Note:** The bare name `aevum` on PyPI is an unrelated project.\n\u003e Always use `aevum-core` (or another `aevum-*` package).\n\n## The five functions (CRE protocol)\n\n| Function | Protocol verb | What it does |\n|---|---|---|\n| `ingest` | RELATE | Write data through the governed membrane |\n| `query` | NAVIGATE | Traverse the graph for a declared purpose |\n| `review` | GOVERN | Present context for human decision |\n| `commit` | REMEMBER | Append event to the episodic ledger |\n| `replay` | (no verb) | Reconstruct any past decision faithfully |\n\nAll five are consent-checked, barrier-enforced, and ledger-recorded.\n\n## The five absolute barriers\n\nThese are Cedar `forbid` policies. Cedar semantics: forbid always overrides\npermit. No configuration, no override, no escape hatch.\n\n| Barrier | What it blocks |\n|---|---|\n| **1 — Crisis** | Any graph write when crisis-signal keywords are detected |\n| **2 — Consent** | Any context traversal without a scoped, active consent grant |\n| **3 — Classification ceiling** | Any action on data whose level exceeds the deployment ceiling |\n| **4 — Audit seal** | Any deletion or mutation of the provenance graph |\n| **5 — Provenance (veto-as-default)** | Any irreversible+consequential action without a human checkpoint |\n\n## Compliance\n\n| Requirement | Aevum control |\n|---|---|\n| EU AI Act Article 12 (logging) | Episodic ledger: Ed25519+ML-DSA-65 dual-signed, SHA3-256-chained |\n| GDPR Art. 6/9 (lawful basis) | Consent ledger: OR-Set grants, purpose-scoped, Cedar-enforced |\n| GDPR Art. 17 (erasure) | Crypto-shredding: DEK destroyed on revoke, ciphertext unrecoverable |\n| OWASP ASI01 (prompt injection) | Trifecta barrier: blocks untrusted-read + private-read + exfiltrate composition |\n| OWASP ASI02 (data exfiltration) | Classification ceiling + trifecta Cedar policy |\n| OWASP ASI04 (memory poisoning) | Sigchain: every entry chained, mutations detectable |\n| NIST AI RMF MAP-1.6 | Structured audit pack exportable for any decision |\n\n## Conformance\n\nAevum ships a machine-verifiable conformance suite:\n\n```bash\npip install aevum-conformance\npython -c \"from aevum.conformance.suite import ConformanceSuite; \\\n    r = ConformanceSuite().run_all(); print(r.passed_count, '/', r.total_count)\"\n```\n\nSee [`docs/conformance_report.txt`](docs/conformance_report.txt) for the\nreference run. The v0.6.0 suite covers 74 invariants across sigchain format,\ndev mode contracts, OTel bridge privacy defaults, and VaultTransitSigner key\nschemes.\n\n## Packages\n\n| Package | Install | Purpose |\n|---|---|---|\n| `aevum-core` | `pip install aevum-core` | Kernel: five functions, sigchain, barriers, consent |\n| `aevum-server` | `aevum-core[server]` | HTTP API wrapping all five functions |\n| `aevum-store-oxigraph` | `aevum-core[oxigraph]` | Embedded RDF graph backend |\n| `aevum-store-postgres` | `aevum-core[postgres]` | PostgreSQL graph + consent + ledger |\n| `aevum-mcp` | `aevum-core[mcp]` | MCP tools for any MCP-compatible host |\n| `aevum-cli` | `pip install aevum-cli` | `aevum server start`, `aevum store migrate` |\n| `aevum-conformance` | `pip install aevum-conformance` | Machine-verifiable conformance suite |\n| `aevum-agent` | `pip install aevum-agent` | A2A protocol integration |\n\n## Maintainer\n\nAevum is actively maintained by\n[@bnyhil](https://github.com/bnyhil) under the\n[aevum-labs](https://github.com/aevum-labs) GitHub\norganization. This is a solo open-source research project\n— not a commercial product or formal legal entity.\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md).\n\nSecurity vulnerabilities: [GitHub Security Advisories](https://github.com/aevum-labs/aevum/security/advisories/new) (private disclosure).\n\n## License\n\nCode: Apache-2.0 · Specification: CC-BY-4.0 + OWFa 1.0.1\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faevum-labs%2Faevum","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faevum-labs%2Faevum","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faevum-labs%2Faevum/lists"}