Koine (the Koine Format) is an open standard for knowledge that outlives its author.

What a team means by its own terms — definitions, types, decisions and their history — written beside the documents as ordinary files, so it can leave home and still be understood, checked, and trusted.

Knowledge never got its shared substrate — prose, tables and graphs resist line-wise diffing, and that was taken as proof none is possible. It answers the wrong question: anything can already read a body of knowledge. What nothing can read is what its author meant — which types exist, which statement is of which type, and who said so, since when. Koine declares exactly that. Declaration, not diffing, is the missing layer.

The form

A sidecar beside your files. Never inside them.

A koine tree is a directory of ordinary files plus one .koine/ directory beside them. Everything the standard adds lives in the sidecar; the files themselves are untouched.

Bodies travel verbatim. Sidecar, never frontmatter.

A koine tree never modifies the files it describes — their bodies travel byte-for-byte as written. Every tool that reads them keeps working, and adding meaning needs nobody's permission.

The form is the constant. The carrier is the variable.

The sidecar carries identity, integrity and history itself rather than borrowing them from a host — the same bytes are the same koine in a repository, a bare folder, an archive, or a workspace. No transport is prescribed.

The shape of meaning — never anyone's vocabulary.

Koine specifies what a definition consists of and how identity, relations and history travel. What “active member” means at your organisation stays yours to define.

~ a koine tree

team-knowledge/
team-knowledge/
├─ definitions/
│  ├─ active-member.md   ← your files, untouched
│  └─ decision-record.md
├─ data/
│  └─ decisions.jsonl
└─ .koine/               ← the meaning, beside them
   ├─ types/             the dictionaries
   ├─ nodes.jsonl        one stable id per file
   ├─ edges.jsonl        the asserted graph
   └─ history/           who changed what, when

One standard

Meaning, sealed, packaged — the same form at every boundary.

One specification carries the whole journey of a body of knowledge: what it means, who stands behind it, and how it travels.

The meaning layer

The dictionaries a team authors — its record shapes, its kinds, its link types — and the binding that checks every statement against its declared type.

Each statement carries its state: proposed, agreed, or frozen — and only what is agreed or frozen may leave home.

The seal

Who stands behind a slice — the seal, and the delegation chain behind it — provenance a stranger can verify offline.

A seal proves origin, never correctness — the honesty every trust chain owes its reader.

The package

A frozen slice — a chosen part of the tree at one moment — travels with its papers: what it is, which version, under which terms, from which source — one root hash over the whole, one signature over that.

Adding a package never runs anything — plain, integrity-hashed files only.

One specification — nine chapters and an annex

Where the field has already solved a mechanism, the specification adopts it by citation — BagIt's manifest rows, the WACZ integrity chain, DSSE signature envelopes, SPDX license expressions. What no standard carries, it authors: the dictionaries, the validity gradient, the attributed history, the delegation behind an agent's work.

v0 · draft RFC · Apache-2.0 · revised September 2026 · read the full text

  • 1

    The form. Ordinary files plus the sidecar; every layer stands alone — a bare file tree already qualifies.

  • 2

    The dictionaries. One file per declared type — record shapes as plain JSON Schema, kinds and link types beside them.

  • 3

    The tree profile. A stable identity per file — it survives renames — the asserted graph, and attributed history under a tamper-evident chain of hashes.

  • 4

    Validity. Proposed, agreed, frozen — and no change is silent: every promotion is attributed, on the record; the boundary gates what may travel.

  • 5

    Proposals. No merge, ever — an incoming version arrives as a proposal with a field-wise diff, checkable before it lands.

  • 6

    The seal. Who stands behind a slice — one signature a stranger verifies offline; work an agent authored carries its human's signed authorization.

  • 7

    The package. A frozen slice with its shipping papers — name, version, terms, source, one root hash, one signature binding them.

  • 8

    Extension profiles. What a vendor adds beyond the standard travels inside its own x- namespace — a foreign reader may ignore it, never reject it.

  • 9

    The verbs. Reserved for the standing processes — schedules, workflows, checks. It stays empty until the reference implementation runs them end to end; nothing publishes ahead of use.

  • A

    The mappings annex. Adapters, one page each — how the form maps into and out of the shapes the field already speaks.

An open standard — not a product

Substrate-independent. No gatekeeper.

Koine is created by NoeBase — the programmable workspace — and used there first: what teams program in the workspace leaves it in this form. The standard itself belongs to everyone who implements it — a koine tree can be written by hand, emitted by any tool, and read by any other.