-
Activity: is the root of an interaction wave, initiated by a single
Activity Initiating Entity (AIE) to pursue an objective and reach an
outcome. An Activity is initiated when the AIE invokes a single First
Next Entity (FNE), establishing the Activity's initial Dialog. It
groups the Dialogs and their Tasks, together with the Resources
involved, for correlation purposes. This grouping does not imply a
shared conversational context or a shared participant set. An AIE
may initiate multiple Activities, and an Activity can involve
multiple tools and protocols.¶
-
Examples:¶
Analyze video V1
Plan a trip
Investigate a network fault
Prepare a financial report
¶
-
Dialog: is a logical container established among a set of two or
more participants that share a conversational context. It belongs to
exactly one Activity, and is created to pursue an objective that
contributes to that Activity. Within the Dialog, one or more Tasks
may run, each pursuing a part of the Dialog's objective. A Dialog is
related to its Activity and to other Dialogs, Tasks, and Resources of
that Activity through correlation metadata. The metadata also records
the Dialog's lifecycle state. A Dialog is frequently pairwise, but MAY
involve more than two participants. The same set of participants may
maintain several concurrent Dialogs, within the same Activity or
across different Activities. Each Dialog is identified by its own
identity, not by its participant set. Every Dialog has its own
objective, conversational context, and lifecycle state.¶
-
Task: is a bounded unit of work within a Dialog, created to pursue an
objective that contributes to the Dialog's objective. A Task
progresses through one or more Events, which advance that objective.
A Task has its own lifecycle state.¶
Example: as part of the Activity "plan a trip", Agent A and Agent
B work together to generate a shortlist of suitable hotels in a
city within the trip's destination. Generating that shortlist is
the objective of the Dialog between Agent A and Agent B. Within
that Dialog, retrieving and evaluating each hotel is a bounded unit
of work, that is, a Task. Within each Task, Agent A and Agent B
carry out Events - for example, request hotel X's details, clarify
its breakfast arrangement, or check availability - and those Events
share the Task's identifier as they progress.¶
-
Event: is a message, a job invocation, a tool call, or a similar
interaction carried out by the participants as they pursue a Task's
objective. An Event has no objective of its own. It is part of
carrying out the Task. An Event belongs to exactly one Task and
carries that Task's identifier as it progresses. Events are local
to their Task and are not correlation objects.¶
-
Resource: is an identifiable object that participants consume,
produce, refer to, or transform during an Activity, such as video,
audio, text, documents, transcripts, tool outputs, and
agent-produced artifacts. The same Resource can be used in more than
one Activity. Each Activity may refer to it differently, and so may
its Dialogs, Tasks, and Events. The architecture does not prescribe a
particular method of referencing Resources. Inside an Activity, any
Dialog, Task, or Event can refer to the Resource, and the same
Resource can be referred to by several of them simultaneously.
Resources can also be physically carried within Events.¶
-
Relationship: is a typed, directional association among
Activities, Dialogs, Tasks, or Resources. A relationship expresses
an association between its endpoints. Relationship types express the
meaning of those associations. Relationships types are Correlation
Metadata. A relationship may exist and be retained without its type being
disclosed (disclosure of relationship types is a decision for the endpoints to make).
The set of relationship types is not to be finalized by this document, the following presents some examples of relationship types. The dialog-management
protocol (protocol design draft) should capture the definition, implementation, and the
detailed enumerated list of the relationship types. Examples
include:¶
belongs-to
delegated-from
derived-from
input-to
output-of
¶
-
Upstream and Downstream: are directional terms relative to a given
Dialog. Upstream refers to Dialogs from which work was delegated, in
the direction of the Activity Initiating Entity (AIE). Downstream
refers to Dialogs created by delegating work, in the direction away
from the AIE. Delegation proceeds downstream. Results, status, and
correlation updates proceed upstream.¶
-
Context: in this document, refers to the set of relationships
(correlations) among Activities, Dialogs, Tasks, and Resources, and
to the Correlation Metadata that describes them. Context does not
refer to the internal state maintained by an AI agent (sometimes
called a "context window"). Agent-internal memory and its content is out of scope.
Context as defined here is also distinct from the conversational/event context that a Dialog's participants share. Whether event context should be regarded as part of the context is for the working group to ratify.¶
The following should also be noted: Context, as defined in this document, represents an architectural correlation model and is broader than the Dialog context defined in the agentproto charter. The inclusion of an object or relationship in this model does not imply that it must be standardized or exchanged by the dialog-management protocol.¶
-
Correlation Metadata: is the information that participants may
exchange to keep independently maintained Activities, Dialogs,
Tasks, and Resources correlated and to enable the establishment of a coherent context.
Correlation metadata consists of different kinds of assertions, examples include: relationships,
such as "D2 delegated-from D1" or "T1 derived-from V1", and
lifecycle state, such as "D5 revoked". It does not include
Resource content or an agent's internal state or memory.¶
-
Protocol-Local Context: is the context establishment mechanism defined by the
application protocol used within a Dialog. For example, an A2A
contextId or taskId, etc are a Protocol-Local Context.¶
-
Dialog Management: The correlation and lifecycle management of an
Activity's Dialogs and Tasks, including the correlation of the
Resources they use and the Activity that groups them. Although
named after the Dialog as the fundamental unit of interaction,
Dialog Management is not limited to Dialogs. A dialog-management
protocol supports these functions and enables participants to
exchange the information needed to maintain these correlations.¶
-
Resource Binding: describes a Resource's use or interpretation within
an Activity, Dialog, or Task.¶
-
Interaction Wave: is the dynamically expanding set of Dialogs,
Tasks, and Resources within an Activity as work is delegated and
executed across participants. It is rooted at the AIE and begins
with the initial Dialog between the AIE and the FNE invoked for
that Activity. Subsequent invocations within the Activity extend
the wave through additional Dialogs.¶
-
Activity Initiating Entity (AIE): is the entity that starts an
Activity and forms the root of the corresponding interaction wave.
The AIE is the originator of the Activity. An AIE can be a user, an
agent, or an invoking system. A tool cannot be an AIE.¶
-
First Next Entity (FNE): An entity directly invoked by an AIE to
pursue the objective of a newly initiated Activity. Each AIE-to-FNE
invocation establishes a distinct Activity and its initial Dialog.
An AIE may initiate multiple Activities by invoking the same or
different entities. An FNE may be an application, an agent, or a tool.
The FNE designation reflects its role in the Activity rather than
its entity type. An FNE may invoke Assistant Entities through
additional Dialogs within that Activity. An FNE that is a tool
cannot invoke other entities.¶
-
Assistant Entity: An entity invoked by an FNE or another Assistant
Entity as part of an Activity. The invoking entity and the Assistant
Entity interact through a Dialog associated with that Activity. An
Assistant Entity may be an Assistant Agent (AA) or an Assistant Tool
(AT). Applications cannot serve as Assistant Entities because they
can only be invoked by an AIE, and therefore can only serve as FNEs.¶
-
Assistant Agent (AA): An Assistant Entity that is an AI agent. An
AA interacts with its invoking entity through a Dialog and may
invoke other Assistant Entities (AAs or ATs) to assist in completing
Tasks assigned to it within the Activity.¶
-
Assistant Tool (AT): An Assistant Entity that is a tool invoked to
perform a structured Task. Interaction with an AT is one-shot: the
invoking entity submits a Task and receives a response. A Task
handled by an AT may be completed through a single Event. An AT
cannot invoke other entities.¶
-
Invocation: an entity's establishment of a new Dialog to pursue an
objective. AIE--FNE invocation starts an Activity; downstream
invocations create Dialogs within it. Repeated invocations create
distinct Dialogs, whereas additional Tasks or Events within a Dialog do
not constitute new invocations.¶