a2aproject / a2aproject/A2A

[Feat]: Add `Task` progress

Ouverte
#1,387 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
extension-proposal triaged
Langage dominant
Shell
Étoiles
25.7k
Forks
2.6k
Merge moyen
3 j 6 h
PR mergées (30 j)
16

Description

### Is your feature request related to a problem? Please describe.

Right now there's no standard way of communicating `Task` progress with A2A, resulting in a bad user experience.

I have built typical, conversational agents with A2A. They accept text, have a number of tools they can call, return the results of the tool calls as `Artifact`s, and send intermediate messages the agent generates as `TaskStatusUpdateEvent`s.

However, because there's no standard way of communicating `Task` progress, my only option is to send `TaskStatusUpdateEvent`s.

The problem with `TaskStatusUpdateEvent`s is that:
1. They would interfere with the intermediate messages the agent generates. The first message might be "Sure, let me help you with that.", followed by "Tool Call X 1/100", "Tool Call X 2/100", "Tool Call X 3/100", ..., and finally "Here are the results I found".
2. Because they're typically text, there's no way of displaying them in a UI. I understand data could be sent, but without a standard the format will vary agent to agent.

This pattern is common enough that a standard would make sense.

### Describe the solution you'd like

Something like MCP Progress: https://modelcontextprotocol.io/specification/2025-03-26/basic/utilities/progress.

Because a `Task` can have multiple tool calls it might make sense to have a unique ID associated with each progress. An ideal solution would allow updates from multiple unique IDs at once for parallel tool calls.

### Describe alternatives you've considered

_No response_

### Additional context

_No response_

### Code of Conduct

- [x] I agree to follow this project's Code of Conduct

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.