Terminology¶
The following definitions apply throughout the specification.
- Provider
- A system that implements AFI operations against a backing store.
- Client
- A software agent, tool, or human utility that calls AFI operations on a provider.
- Backing store
- The underlying storage or data source that a provider adapts. Examples: a SQLite database, a Chroma collection, a directory of Markdown files, a Postgres table, an object bucket.
- Entry
- A metadata record describing one file, directory, or symlink. Defined in Schemas → Entry.
- Match
- A record describing one search result. Defined in Schemas → Match.
- Capability
- An authorization token, opaque to AFI, scoping a client's access to a subset of the provider's tree.
- Profile
- A declared conformance level — Discovery, Read, Search, or Read/Write.
- Manifest
- The JSON document served at
/.afi/manifest.jsondescribing a provider's version, profile, capabilities, and auth requirements. See Discovery. - Operation
- One of the verbs a client can call on a provider —
stat,list,read,search(and, at Level 3,write,mkdir,delete,move). - Transport binding
- A concrete mapping from AFI operations to a specific wire protocol. v0.1 defines MCP, HTTP/JSON, FUSE, and SSH bindings.
- AEP
- AFI Enhancement Proposal — the design-document format used to propose changes to this specification. See AEP guidelines.
- Draft / Numbered version
- The draft version is the working copy of the spec, mutable at any
time. A numbered version is a tagged snapshot (e.g.
0.1) that is immutable except for editorial corrections.