Intent
Why mutation begins as intent instead of direct execution.
Definition
Intent is the mutation request before it becomes execution. In OpenKedge, the caller declares the outcome it wants, the target it concerns, and the rationale for the change without acquiring immediate authority to perform the underlying action.
Explanation
Traditional APIs couple a request to execution. That works when the caller is deterministic, fully informed, and already trusted to know what should happen. Agentic systems violate those assumptions constantly.
OpenKedge separates the meaning of a mutation from its execution path. By starting with intent, the protocol creates a decision boundary where the system can expand context, evaluate policy, and derive a bounded contract before any state transition occurs.
This is the first systems-level move in the protocol: purpose arrives first, power arrives later, and only if the system can justify it.
Example
An operations agent wants to terminate an EC2 instance:
{
actor: "agent.ops.autoscaler",
target: "aws:ec2:i-0ab1cdef23456789",
intent: "terminate_instance",
desiredOutcome: "remove_unused_capacity"
}
That proposal does not terminate anything yet. It gives OpenKedge enough semantic structure to ask the next questions:
- What dependencies are attached to this instance?
- Which policy domain governs this environment?
- Is there an approved replacement contract?
- Can the mutation produce a verifiable lineage?
Only after those questions are answered can the system decide whether execution is even permissible.