Agora Protocol is a series of conventions that people can agree to follow when communicating for the common good. It is deliberately minimal: the baseline layer requires nothing beyond plain text, making it usable anywhere you can write — in a Markdown file, a wiki, an email, a social media post, or a book. Successive layers add expressive power through wikilinks, hashtags, and social actions, each building on the last without breaking compatibility with simpler layers.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/flancian/garden/llms.txt
Use this file to discover all available pages before exploring further.
Why a protocol
A shared protocol creates a common pattern language. When two people writing independently both link to[[distributed systems]], the Agora can recognize that they are writing about the same concept and surface both contributions together, without requiring them to coordinate in advance. The protocol is the minimal agreement that makes this possible.
Agora Protocol is intended to be fully optional at every layer. The default commitment level is opt-in. You participate in the parts that serve your goals.
Layer 0: plain text and structure
Layer 0 is the bootstrapping layer. It requires only plain text with indented bulleted lists.Layer 1: wikilinks and hashtags
Layer 1 adds wikilinks and hashtags on top of plain text. These are the primary linking mechanisms in the Agora.Wikilinks
A wikilink connects your note to a node in the Agora by topic name:Hashtags
Hashtags work as both topic markers and social actions:#topic as equivalent to [[topic]] for linking purposes.
Social actions
Beyond linking, the protocol defines a small set of social action hashtags that change how content is assembled at a node.#pull
Pull another node’s content into the current node at render time:
#push
Push content from the current node into another node:
#push [[target]] appears as a contribution to that target node from the current subnode.
#go
#go creates an intent link — a declared redirect from the current node to a URL or another node:
#go, it surfaces the target as a destination the node’s author intends you to visit.
Federation across agoras
The protocol is designed to enable federation. Compatible agoras are expected to assemble into a greater federated Agora network where they can fork and merge content as needed.How federation works
How federation works
Each Agora publishes a set of definitions of intention as expressed by its users. Compatible agoras exchange Agora Protocol payloads — collections of plain text with wikilinks and social actions — and can resolve each other’s node references. Extensions to the protocol are proposed and settled through Agora RFCs, maintained as a community-governed document.
Agora network membership
Agora network membership
It is the opinion of this Agora that using Agora Protocol in a medium defines an Agora: it designates that context as part of some Agora and marks the medium as potentially interoperable with the Agora network. Any agora must communicate clear goals; compatible agoras must not change the CONTRACT in ways that break interoperability.
Extensions and governance
Extensions and governance
Successive layers beyond Layer 1 are explicitly discussed through Agora RFCs and settled through a governance layer defined by community convention. The community stoa at stoa.anagora.org/p/stoa maintains the communally agreed text of the full protocol.
Where you can use it
Because Layer 0 requires only plain text and Layer 1 requires only common markup conventions, Agora Protocol is already in use across many contexts:- Digital gardens — Markdown files in Git repositories
- Wikis — wikilinks are already a native concept
- Email — plain text plus hashtags
- Chat and social networks — via Agora Bridge bots on Mastodon and Twitter
- Books — Markdown manuscripts with wikilinks
- Around the web — via browser extensions and integrations