KIP 2.0 Capsule Specification
September 6, 2026 · View on GitHub
Status
Normative companion to KIP-2.0-SPECIFICATION.md, version 2.0-draft
This document carries §37–§41 and §95 of the KIP 2.0 Specification: the Cognitive Capsule artifact, its identity model, its import modes, closure and external references, the export/import pipeline, and the Capsule capability requirements. The section numbers are the Specification's own, so a reference such as §37.7 or §41.4 written in the Core, the Cognitive Memory Profile or the conformance suite resolves here unchanged. Section references without a document name point into the Core Specification, which keeps everything a Capsule depends on: the element model (§6–§16), Schema Packages (§20), Governance (§28–§31), Transactions (§32–§36), and the pipeline statements VERIFY CAPSULE / VALIDATE CAPSULE / PREVIEW IMPORT / EXPORT CAPSULE (§64, §69).
An implementation that does not support Capsules ignores this document and advertises neither capsule_export nor capsule_import (§67.4); Capsule support is a capability, not a profile (§89). One that does is bound by it exactly as by the Core.
37. Cognitive Capsule
37.1 Definition
A Cognitive Capsule is a portable, immutable, inspectable artifact carrying cognitive state or state changes between systems/Spaces.
A Capsule is not executable mutation authority.
37.2 Core invariant
Capsule bytes
≠
destination mutation authority
37.3 Capsule kinds
Baseline kinds:
snapshot
delta
37.4 Snapshot Capsule
Represents selected cognitive state at one source snapshot.
37.5 Delta Capsule
Represents ordered changes over one source lineage between:
base_seq
target_seq
Delta application requires base/checkpoint compatibility.
37.6 Logical structure
A Capsule SHOULD contain conceptually:
payload
manifest
source
schema dependencies
records
external_refs
blobs
handling
integrity
content_digest
proofs/signatures
37.7 Canonical representation
The required canonicalization profile is kip-jcs-safe-v1: RFC 8785 (JCS)
in full, narrowed to the portable numeric domain of Core §9.3. Encode UTF-8
without a BOM; sort object names by UTF-16 code units; use ECMAScript escaping
and number serialization; no whitespace, duplicate decoded keys, invalid Unicode
or non-finite values. Normalize negative zero to zero. Artifact strings are NOT
NFC-normalized; semantic Literal construction applies NFC before persistence.
Digest sha256 over every top-level field except integrity, as canonical bytes,
and spell it sha256:<lowercase hex>. Absence omits a field; null stays a value.
Other algorithms/profiles require explicit negotiation. Previous
kip-draft-canonical-json-v1 digests are a different, nonportable draft format:
a runtime MUST reject them unless it advertises an explicit compatibility verifier;
it MUST NOT reinterpret their bytes under the new name.
schemas/kip-capsule.schema.json and schemas/kip-element.schema.json fix the
baseline portable shapes. Snapshot records use capsule-local IDs, references
resolve through that namespace, and source identities remain separately recorded.
Closure, semantic validation and Governance are checked in addition to JSON Schema.
The reference canonicalizer and golden vectors are shipped with packages/kip-lang.
37.8 Signature semantics
A Capsule signature proves that a signer attested to a content digest/scope.
It does not prove:
truth
safety
utility
trust
authority
destination applicability
38. Capsule Identity Model
38.1 Three identities
Import must distinguish:
capsule-local reference
source element reference
destination local element ID
A source element ID MUST NOT automatically become the destination local primary ID. Space-local keys have no automatic cross-owner identity meaning.
38.2 Identity resolution
Recommended conservative order:
1. prior verified import mapping
2. trusted canonical_id
3. explicitly approved mapping
4. explicitly declared portable identity (lineage + verified issuer_namespace + key_scope + normalized key, Cognitive Consistency §4)
5. create new Concept
38.3 Name is not merge identity
same name
≠
same identity
38.4 $self
Source $self MUST NOT automatically become destination $self.
Ordinary Agent-to-Agent sharing maps source self to the source Agent's semantic identity.
38.5 Restore exception
A verified restore mode MAY map source $self to destination $self only when Governance verifies:
same owner
same Brain/self identity
backup lineage
explicit restore authority
39. Capsule Import Modes
Recommended:
preview
isolate
merge
restore
39.1 Preview
Read-only simulation.
No destination cognitive state is created.
39.2 Isolate
Imports into a quarantined/review state rather than ordinary Recall state.
39.3 Merge
Merges another source's cognition into the destination under destination identity/Governance policy.
39.4 Restore
Restores the same Brain/owner lineage under stronger identity checks.
39.5 Source trust does not migrate automatically
Destination MUST apply its own:
trust
classification
authority
Schema
Governance
policy.
40. Capsule Closure and External References
40.1 ExternalRef
An omitted dependency SHOULD be represented explicitly rather than as an opaque dangling ID.
Recommended kinds:
source_element
canonical_identity
semantic_locator
external_artifact
redacted
unavailable
40.2 Redacted vs unavailable
These MUST remain distinguishable where policy permits:
redacted
source intentionally withheld
unavailable
source does not possess/provide it
40.3 Closure
A Capsule SHOULD declare closure such as:
closed
referential
selective
and MAY separately describe:
semantic closure
Evidence closure
provenance closure
structural closure
41. Capsule Export/Import Pipeline
41.1 Export
Export MUST be snapshot-consistent.
Large export SHOULD use a pinned source snapshot/export session.
Transport chunking MUST NOT create multiple independent semantic Capsules unless explicitly represented as a Capsule Set.
41.2 Import pipeline
Native import conceptually follows:
VERIFY
→ VALIDATE
→ PREVIEW / identity resolution
→ Governance analysis
→ Import Plan
→ atomic Import Transaction
41.3 Embedded schema
Embedded Schema Packages MAY be used validation-only.
They MUST NOT auto-activate.
41.4 Imported Skill authority
Imported Skills default inactive/non-executable unless destination Governance explicitly elevates them.
41.5 External blobs
A Capsule MAY reference content-addressed external blobs.
Import MUST NOT automatically fetch arbitrary URLs.
Network fetch requires separate runtime/tool authority.
41.6 Imported outcomes
Import assigns fresh local _system.origin (§41.2) and records the import in origin.import_id. For outcome-class Evidence that is decisive: the destination never authorized the instrument that wrote it, so an imported outcome is readable evidence and never a local grade. A grading consumer MUST exclude any outcome whose origin.import_id is set (§15.7), and an imported Skill's grading state does not transfer (§31.4).
95. Capsule Capability Requirements
Advertising capsule_export or capsule_import (§67.4) requires:
canonical artifact
snapshot Capsule
digest
Schema dependency identity
source/destination identity separation
ExternalRef
closure declaration
verify/validate/preview pipeline
destination-local import authority
Delta/restore/signatures MAY be advanced subprofiles.