Agent-centric distributed application framework and spanning layer that enables interoperability across P2P, federated, and centralized systems by extending Holochain's agent-centric philosophy into a general-purpose semantic layer. Each user runs their own local AD4M instance (built on Holochain) holding their DID-based identity and personal data in subjective, RDF-based "Perspectives," rather than apps owning the user's data or social graph. Underlying storage/transport protocols (Holochain, IPFS, HTTP, etc.) are abstracted as pluggable "Languages," so apps built on differing back-ends can still interoperate at the semantic level.
PermissionsCryptographic Capabilities (DID-based + Social DNA rules)
Semantic Web CompatibilityRDF-compatible (custom implementation)
Smart ContractYes (via Social DNA - Prolog-based)
Protocol Stack Position Application-layer (built on TCP/IP)
Asset / Value EmbeddingNone — ADAM (Agent-centric Distributed Application Meta-ontology) is a meta-protocol spanning layer with no native token. Individual Languages built on ADAM may embed tokens (e.g., a Holochain Language or an Ethereum Language), but the ADAM layer itself has no protocol-native economic mechanism.
Development ToolsGraphQL API (warp & juniper-based server on localhost:4000/graphql); Ad4mClient TypeScript/Rust SDKs (@coasys/ad4m on npm, ad4m-client on crates.io); ad4m-connect helper library for capability management; CLI tools (ad4m for client, ad4m-executor for runtime); Deno runtime for Language execution; Prolog engine for Social DNA queries and Perspective link queries; Ad4mModel class with TypeScript decorators for high-level data modeling; React hooks (ad4m-react-hooks) and Vue hooks (ad4m-vue-hooks)
Deployment OptionsSelf-hosted local executor (ad4m-executor runs as personal runtime on user's device); AD4M Launcher (system tray application for managing executors); Perspect3ve (agent-centric browser and generic social UI); edge devices; planned cloud hosting (CAL-compliant); headless executor mode for server deployment
Authentication & IdentityDecentralized ID (DID) — did:key: method (e.g., did:key:z6Mk...); each agent identified by DID with cryptographic keys; every Expression and Link cryptographically signed by authoring agent; automatic provenance on all data; DID creation or import on first initialization; keystore unlock for existing agents; MetaMask integration for blockchain identity (EAS, EntanglementProofs)
Storage ModelHybrid: Local Perspectives (private, agent-centric RDF triple graphs stored locally — similar to Solid Pods but agent-centric) + Distributed Neighbourhoods (shared collaborative graphs synced via Holochain DHT or centralized fallback); every piece of data is an Expression (cryptographically signed statement by an agent); Perspectives contain Links (subject-predicate-object triples where all items are URLs pointing to Expressions)
InteroperabilityUniversal spanning layer — Languages are pluggable protocol adapters that can wrap any storage/communication technology (HTTP, IPFS, Solid, Holochain, blockchains, custom APIs); Expressions addressed via universal URL scheme <language_hash>://<address>; self-recursive architecture (core concepts Agents/Languages/Perspectives are themselves implemented as Languages, enabling evolution); Neighbourhoods enable portability of social structure across apps
Social GraphYes (agent-centric social graph; Perspectives model relationships as RDF-like Links between agent Expressions; Neighbourhoods are shared social contexts independent of any single app; Social DNA embedded in Neighbourhoods defines group expectations and patterns; Social Organisms emerge from Neighbourhoods with Social DNA; publicly shared agent Perspectives visible to other agents; friends-lists modeled as Perspectives containing agent expressions)
Protocol Maturity / StandardizationCommunity Standard (open specification maintained by project community; not submitted to formal standards body)
Update PolicyAgent-centric / Language-defined — update semantics are delegated to individual Languages; Perspectives (local subjective graphs) are mutable by the owning agent at will; shared Neighbourhoods inherit the update rules of their underlying Language (e.g., DHT append-only for Holochain Languages, or blockchain semantics for EVM Languages); no global update policy imposed by the ADAM layer.
Relationships
How this tool connects to other tools and organizations, from relationships reviewed by the OpenHaven data steward. They describe how projects connect, not how good they are.