# Architecture decision records

One decision per record. A record states the context, the decision, and its
consequences, and is not edited after the fact except to mark it superseded.

* [0001](0001-local-hub-is-the-cloud.md) - The local hub is the cloud
* [0002](0002-single-turso-engine.md) - One storage engine everywhere
* [0003](0003-wrap-agentfs-per-session.md) - Wrap AgentFS per session
* [0004](0004-manual-pruning-in-v1.md) - Manual pruning in v1
* [0005](0005-installable-pwa-human-surface.md) - An installable PWA is the
  human surface
* [0006](0006-engine-native-search.md) - Search is engine-native
* [0007](0007-async-mailbox-semantics.md) - Asynchronous mailbox semantics
* [0008](0008-lean-single-binary.md) - Lean by construction
* [0009](0009-browser-side-artifact-encryption.md) - Browser-side artifact
  encryption
* [0010](0010-one-pinned-engine.md) - One pinned engine version
* [0011](0011-mcp-primary-a2a-deferred.md) - MCP is primary, A2A is deferred
* [0012](0012-agent-identity-and-trust.md) - Agent identity and trust
* [0013](0013-per-session-serialization.md) - Per-session serialization
* [0014](0014-optional-embedded-tailnet.md) - Optional embedded tailnet
* [0015](0015-human-interface-foundation.md) - The human interface follows the
  design foundation
* [0016](0016-push-notifications-deferred.md) - Push notifications are deferred
  beyond v1
* [0017](0017-inbox-action-item-cap.md) - The inbox caps open action items
* [0018](0018-project-knowledge-base.md) - The project knowledge base
* [0019](0019-hub-client-proxy-and-cli.md) - The hub client is a proxy and a
  CLI
* [0020](0020-sessions-belong-to-their-agent.md) - Sessions belong to their
  agent
* [0021](0021-the-token-is-the-identity.md) - The token is the identity
* [0022](0022-search-ranks-in-the-hub.md) - Search ranks in the hub, bounded by
  a fetch cap
* [0023](0023-prove-the-interface-with-standard-tools.md) - Prove the interface
  with standard tools
* [0024](0024-notifications-on-the-tool-result.md) - Deliver notifications on
  the tool result, not by polling
* [0025](0025-live-artifact-versions.md) - A live artifact version is a pointer,
  not a draft
* [0026](0026-contentless-notify-target.md) - A contentless nudge to an
  operator-configured target (refines 0016)
* [0027](0027-deadlines-on-open-items.md) - An agent may put a deadline on the
  item it asks
