Use this file to discover all available pages before exploring further.
AFK’s internal messaging system lets agents communicate via structured envelopes with at-least-once delivery and idempotency. Use it when agents in the same system need to exchange data reliably.
Always set an idempotency_key. Without it, retry deliveries can cause
duplicate processing. Use a deterministic key derived from the task context
(e.g., f"{task_id}-{step_name}").
Correlation IDs group related messages across a workflow. When debugging, filter by correlation_id to see the full message chain for a task.
# All messages in this workflow share the same correlation_idcorrelation = f"analysis-{run_id}"await send(InternalA2AEnvelope( message_type="request", run_id=run_id, thread_id=thread_id, conversation_id=conversation_id, correlation_id=correlation, source_agent="coordinator", target_agent="researcher", payload={"query": "AI trends"}, idempotency_key=f"{correlation}-research",))await send(InternalA2AEnvelope( message_type="request", run_id=run_id, thread_id=thread_id, conversation_id=conversation_id, correlation_id=correlation, source_agent="coordinator", target_agent="writer", payload={"topic": "AI trends"}, idempotency_key=f"{correlation}-write",))