AICEPAICEP AICEP 0.1 — Public Draft (RFC)
AICEP is an experimental public draft, provided “as is” and without warranty. Use it at your own risk. We test it extensively, but testing is not a guarantee. Full disclaimer

← AICEP home

AICEP 0.1 — Public Draft (RFC)

AI Context Exchange Protocol · Request for Comments. We'd love to hear from anyone interested in helping develop this protocol or contributing to it. Contact hello@aicep.ai.

Document purpose: A plain-language description of the AI Context Exchange Protocol (AICEP) version 0.1 public draft, published for comment (RFC).

Status: Public Draft (RFC), open for comments and contributions.

1. Purpose

AICEP is a communication and seating protocol for AI agents. It tells agents—and the people who run them—how to:

2. Audience

This draft is written primarily for individual end users—people who are not necessarily company employees—who want DLP-oriented best practices for their own agent work.

It is especially relevant if you:

Illustrative platform types (categories, not endorsements): coding-agent CLI class; Hermes-class note-vault agents; Claude Desktop / Claude Code class; general-purpose AI assistant / multi-agent desktop harness class; ordinary web chat. When examples name a class, they explain a migration or integration pattern—not a preferred vendor.

Secondary readers: implementers building adapters and validators. They still need the human story first; machine envelopes come after.

Role names used in this document (not personal nicknames):

3. Definitions (read these first)

Every later section assumes these plain-English meanings.

Term Meaning in AICEP 0.1
Agent Software that can take goals, use tools, and act across sessions on your behalf. Not just a one-shot chatbot reply.
Soul / SOUL.md A standing identity file for an agent: who it is, what it may do, what it must refuse, how it talks. Expanded over time by the human.
Seating Installing identity + DLP policy + control mode before useful work or the first handoff.
DLP Data Loss Prevention: stop sensitive content from leaving allowed places (at rest, in motion, in use).
Classification Labels on content: what kind it is (PII, IP, credentials, …) and how sensitive (Public → Restricted).
Bus The controlled path messages travel on (files, MCP, API, broker, etc.).
Wire The message path on a bus—the envelope format and route a package actually takes. Prefer “bus”; “wire” always means that path.
Crossing The verb of AICEP: a controlled handoff of typed content. Where transfer/action happens after seating.
First crossing The first controlled handoff of typed content after seating and DLP are in place—not mere app install / agent spawn.
Pub/sub Publish/subscribe: writers drop updates to a topic/folder; readers ingest what their profile allows; old items can be archived/dropped by routine.
Egress (content egress) Moving content out of a designated secure environment into another tool, vendor sink, public post, or shared folder. Prefer “content egress” over “vendor egress.”
Adapter High-level bridge that turns a platform’s native artifacts into AICEP-typed objects (and back).
Connector How you attach a platform or tool to a bus (MCP server, API client, CLI, folder watch).
Binding Linking a connector/surface to a control mode (how much the human must approve).
Control modes Helm (human sets policy), on-loop (agent runs; human supervises), in-loop (human must approve before action).
Compartment Need-to-know bucket by information type so finance and public-comms do not share a mesh inbox.
Context object The unit that moves: a typed package with labels and provenance—not a raw chat dump.
Provenance Where an object came from, when, and what changed.
Frozen 0.1 type set The small list of object types 0.1 allows on the first-crossing path. “Frozen” means agreed for this version—not forever immutable forever.
Conformance Whether an implementation follows the 0.1 shapes and DLP-first sequence. Not a certification mark.
NVIDIA OpenShell Neighbor runtime idea (sandbox / endpoint approval). Complementary inspiration—not AICEP’s definition.
HL7 Healthcare messaging family. Cited only as a distant inspiration for typed exchange across systems—never as AICEP’s definition.

4. Status of this draft

5. What is in scope for 0.1

Open question kept: How should a user migrate or loosely integrate platforms when there is no full conversation/project dump API? See §16.

6. Control — what humans decide, what agents enforce

Why control exists

Without explicit control, agents will cheerfully paste proprietary text into feedback forms, public issues, shared drives, or the wrong teammate agent. AICEP expects more permission prompts and lockdown than an unconstrained assistant. That is intentional.

What humans control

Humans own the DLP policy and intent:

What the Chief of Staff / coordinator does

What the Cyber Security and DLP Agent does

Control modes (your decision power)

Mode Plain name What you experience Typical use
Helm You set the rules You write/approve DLP policy, soul files, defaults Initial seating; policy changes
On-loop Agent runs; you supervise Agent works; you get alerts and can interrupt Day-to-day after refuse is proven
In-loop You must approve Agent proposes; nothing outward happens until you say yes First use of a connector; public publish; browser paste; CLI until seated

Default until you seat otherwise: new connectors, CLI, browser copy/paste, and public publish stay in-loop.

Binding surfaces to control modes

Binding means: for each way content can enter or leave (each connection surface), you choose helm / on-loop / in-loop.

Connection surface Default binding until seated
File transfer / file pub-sub (v1 bus) On-loop after refuse-proof; else in-loop
MCP In-loop on first use
API In-loop on first use
CLI In-loop until seated
Browser copy/paste In-loop
Direct website authoring / publication In-loop

7. Data Loss Prevention (DLP)

Industry sense (non-proprietary)

Data Loss Prevention is the practice of identifying sensitive data and stopping it from leaving allowed places. Standard views of where data lives:

AICEP applies all three: label what you store; gate what you move; constrain what agents may use in-session.

How AICEP treats content

Content egress rule-set (folded under DLP)

Treat these as required policy, not optional tips:

Required DLP policy instructions (seating)

Paste standing rules into each agent’s private instructions before first useful work (profile placeholders filled by the coordinator):

8. Agents, identity, and Soul

What an agent is

An agent is software that can pursue goals over time with tools: coding, filing notes, coordinating other agents, scanning for DLP issues, browsing, calling APIs. Use cases include:

Identity matters because without it, every agent looks like a generic chat with whatever tools are nearby—and will over-share. Identity binds job, allowed types, and refuse rules.

Soul body (`SOUL.md` / `soul.md`)

A soul file is a human-editable markdown document that holds standing identity. Users create a first version at seating and expand it as the agent’s job clarifies.

Belongs in a soul file: role name and mission; boundaries and refuses; preferred tools; DLP profile reference; how to ask the human; tone; non-goals.

Does not belong: live secrets, other agents’ private standing orders, entire chat histories, marketing copy for a vendor.

Sample parameter layout (neutral)

# SOUL.md — \<Role name>

## Identity
- role_name: Cyber Security and DLP Agent
- mission: Prevent accidental publication of proprietary or personal content.
- owner: \<human>

## Boundaries
- may_do: classify; refuse; alert; propose redactions
- must_not: publish; push public; send vendor feedback with proprietary detail

## DLP profile
- profile_id: ip-confidential
- max_classification: Confidential
- types_allowed: [IP, Public]
- content_egress: default deny

## Control binding
- default_mode: in-loop for new connectors; on-loop after refuse-proof

## Collaboration
- reports_to: Chief of Staff / coordinator agent
- may_read_compartments: [ip-confidential]
- may_write_types: [decision.record]

## Growth log
- YYYY-MM-DD: Initial seating from AICEP 0.1.

9. Adapters and connectors

These are first-class ideas—not buried plumbing.

Connectors are how you plug in. Adapters are how native stuff becomes typed. The bus is where typed stuff travels.

10. The bus (and what “wire” means)

Nature of the bus

In AICEP, a bus is the controlled path for context objects. It encodes how you already share information; it should not be looser than your email or document habits. Being able to see a folder is not authorization.

If the word wire appears, it means the message path on a bus—the envelope and route a package takes—not a separate product.

Bus types and what each is for

Bus type What it is for How rails stay on track
File-based pub/sub Drop one typed markdown object per file under compartments Profiles limit which compartments a role may read; append-only; no shared mesh current.json
MCP Tool/context connections inside or across harnesses Seat connector defaults; treat tools as gated surfaces; not a soul channel
API Programmatic read/write between systems Same labels and deny rules as files; seated egress
Message brokers Optional fan-out when you outgrow folders Still compartment + profile; 0.1 does not require a broker
CLI Local invoke of agents/tools In-loop until seated; not a substitute for typed objects

Roles on the bus

Publish / subscribe explained

Publish means a writer places an update where allowed readers can see it (for example a new file under bus/\<compartment>/\<subject>/).

Subscribe means a reader watches that place and ingests new updates according to its profile.

Directionality is not “everyone hears everything.” It is topic/compartment scoped:

Reads and writes are the pub/sub methodology on the file bus:

Actor Writes Reads
Adapter Native → typed object in compartment Only what policy allows
Subscriber Types in its job In-profile compartments
Archive Redacted copies Sink
Coordinator Routing / seating metadata Not full payloads

11. Crossing — the verb of the protocol

Crossing is where AICEP happens: the controlled transfer of typed content after seating.

It is not a fancy synonym for installing an app. First crossing answers: seating and identity + DLP policy are in place before the first controlled handoff of typed content. Instantiation alone is not a crossing.

AICEP 0.1 crossing flow with DLP checks Seating with a DLP-first gate, then Bus, then Crossing with a DLP scan, then a publication check. If permission is granted the content goes to Egress. If permission is denied or the content is sensitive, the action is blocked. 1. Seating Agent identity + soulRole profile assignedControl mode bound DLP-first seating gate Refuse rules set beforeany handoff orpublication. Human setsthe DLP policy. 2. Bus The message pathMCP · API · brokerFile pub/sub · CLITyped envelopesCompartmentsRails stay on policy 3. Crossing Controlled handoff of typedcontent, after seating only DLP scan: identify + block • PII• PCI• HIPAA• Intellectual Property• Copyrighted imageryor data Publication? file drop · web post social · commentary · export Ask user for explicit permission Egress Content leavesthe designatedenvironment Block / refuse Stop, tell the user whatwas blocked and why granted denied orsensitive sensitive data found Seating and DLP come before the first crossing. Nothing is published without explicit permission.
AICEP crossing flow: DLP-first seating, bus, crossing with a DLP scan, a publication permission check, then egress or block.

What crosses

A project.context package (plus linked children), not a chat dump and not the destination’s soul.

It carries: stable identity, short current state, links to child objects, provenance, subject binding, classification.

It does not carry: destination standing orders, source soul/memory shards, credentials, off-bus content, out-of-profile types.

Frozen 0.1 type set (human reading)

“Frozen” means: for version 0.1 we agreed this small set is what may travel on the first-crossing path. Other useful things stay in the source tool until promoted.

Type On first-crossing path? Human meaning
project.context Yes The project package another role can continue
decision.record Yes A locked decision inside that project
artifact Yes A file/spec the project needs
task.state Yes Live task status if any
instruction.set Seating only Standing orders / DLP—installed before crossing, does not travel inside the package

12. Content format, taxonomy, delivery

Content format is the shape of the payload (prose, chat-shaped body, code, file, page). It is not a substitute for DLP type or classification.

Format Payload idea Why it matters
text Prose Default readable body
conversation Chat-shaped excerpt Not a full thread wire type
code Source or config Treat as IP by default
file Attached/opaque file Classify before move
page HTML / site content Publication is in-loop

Taxonomy stack (keep distinct):

Delivery methods: file drop on the bus; MCP/API transfer of the same envelope; human-mediated export when no API exists (still labeled and gated).

13. Access in one place

Access answers: who may receive what, for what job.

Two keys that must not mix:

Holding a bus role does not grant the spec. Default deny on the bus: type in job, in-profile, not flattening another job, not off-bus, provenance on, out-of-profile types stripped.

14. Classification (handling)

Tiers: Public → Internal → Confidential → Restricted.

Types include PII, Financial, PHI/medical, IP/proprietary, Credentials (usually off-bus), Public, optional endpoint inventory/posture labels.

Roles receive a privacy profile at seating (allowed types + max tier + handling rules). Cross-profile send needs an explicit bridge and redaction.

14.x Personal devices and vault boundary

Personal-endpoint profile

Profile Types allowed Max tier
personal-endpoint PII, IP / proprietary Confidential

Handling notes for personal-endpoint:

Optional information types (labeling only)

Rules:

Vault boundary

Agent credential vault vs operator personal vault

Coordinator seating

When seating an endpoint / privacy agent, assign:

Privacy profile for this role: personal-endpoint
Max classification receivable: Confidential
Types allowed to hold: PII, IP

(Optionally note allowed report types: endpoint_inventory, endpoint_posture.)

15. Content egress (consolidated)

Egress means moving content from one agent tool or environment to another—or to the outside world. Example pattern: Coding Agent → note-vault agent → multi-agent desktop harness.

All egress is evaluated as content egress under DLP (§7). Intra-bus delivery still uses compartments; egress is the door that needs the strongest human intent.

15.x Vault and security-report egress

Agent vault vs personal vault (egress)

  1. Personal vault exports (CSV, HTML password reports, TOTP seeds) are Credentials / Restricted. They must not enter vendor sinks, public posts, shared swarm chats, or agent standing memory.
  2. Agent vault provisioning and use stay inside the operator’s authorized tooling. Feature requests to vault vendors remain generic (capability language only) — no project names, protocol text, or object payloads.
  3. Agents must not paste passwords, OTP secrets, or recovery codes into chat or bus objects. Prefer human-gated or connector injection that keeps secrets off the model transcript.
  4. Allowlists (site name, which agent, approval date) may move as Internal process notes; secret fields never do.

Security-tooling reports

  1. Endpoint inventory / posture reports shared in-swarm require information_types + classification and an in-profile destination (personal-endpoint or other assigned profile).
  2. Reports that would identify proprietary projects, repo paths, or unpublished protocol content must be redacted before any share that leaves the compartment — including “helpful” paste into product-feedback forms.
  3. Vendor / marketplace / support channels: default deny for proprietary identifiers. Ask for capabilities (“import CSV from password managers not on the named list”) without naming private protocols or payloads.
  4. Sanitary agent Description / Title panes remain egress surfaces: role-only language; no emails, street addresses, account names, or vault locations.

Stop on violation

a vault or report leak is a stop. Tell the human what left and where. Do not resend a “cleaner” proprietary payload to the same sink without an explicit human order.

16. Migration / loose-integration use case (logical)

Goal: Move or loosely integrate work across agent platforms when none offer a full dump API for conversations/projects.

Example classes: Hermes-class note vault → Claude Desktop / Claude Code class; or coding-agent CLI → multi-agent desktop harness / general-purpose AI assistant class; or web chat → any of the above.

Why management is required: there is typically no “share all conversations/projects” API. Content movement is a deliberate export → classify → seat destination → crossing → verify.

Logical steps:

  1. Seat DLP and souls on the source and destination (or point the Chief of Staff at this protocol so it applies them).

  2. Inventory what must move (project briefs, decisions, artifacts)—not entire chat sludge.

  3. Label information types and classification; strip credentials.

  4. Use an adapter (even a careful human-written markdown package counts as a temporary adapter).

  5. Deliver via the seated bus path (files and/or MCP/API).

  6. Destination agent continues without inheriting the source soul.

  7. Confirm no public/shared default on repos/drives used for the landing zone.

17. First use

On first use in a new tool (for example a multi-agent desktop harness):

  1. Point the Chief of Staff / coordinator agent at the AICEP protocol page (or this pack).

  2. The coordinator ingests the protocol.

  3. It implements seating—identity, DLP policy instructions, connector defaults—across existing and new agents (or projects, in project-centric tools).

  4. Only then allow crossings and routine pub/sub ingest.

18. Conformance (what it means here)

Conformance means an implementation follows 0.1’s type shapes, envelope fields, DLP-first sequence, and refuse behavior closely enough to interoperate.

It is not a certification, accreditation, or compliance mark from any standards body.

19. Cite / disclaimer (short)

Public practices (NIST AI RMF, OWASP LLM risks, FIPS-style confidentiality thinking, optional TLP) are cited as influence. AICEP is in draft form, is not compliant with these public practices and guidance, and stands alone at this time. Collaboration in developing AICEP is welcome; contact hello@aicep.ai.