FEAT: A2ATarget for Agent-to-Agent (A2A) protocol endpoints
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
Direzione di ricerca
Start by reviewing the implementation referenced in #2771 and the existing prompt-target patterns in PyRIT. Confirm how the target should handle A2A 0.3 and 0.2 requests, context and task lifecycles, rate-limit retries, and JSON-RPC errors; done means these behaviors are covered by tests against the stated requirements.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Is your feature request related to a problem? Please describe.
More and more agents are deployed behind the Agent-to-Agent (A2A) protocol, for example Microsoft Foundry Agent Service incoming A2A endpoints and Google ADK agents. For a caller, A2A is often the only way in to such an agent, and it sits in front of the agent's server-side instructions, platform guardrails and tools. PyRIT has no target for A2A today, so red-teaming these agents needs a custom HTTPTarget setup that can't follow A2A's task lifecycle or keep an agent's context across turns.
Describe the solution you'd like
An A2ATarget prompt target that:
- speaks A2A 0.3 (
message/send) over JSON-RPC, with a fallback to 0.2 (tasks/send) - maps each PyRIT conversation to one A2A context, so multi-turn attacks keep the agent's own server-side state
- handles the task lifecycle: blocking sends, polling pending tasks, continuing tasks that are waiting for input
- retries rate limits with
pyrit_target_retry, including rate limits the agent relays from its model - returns JSON-RPC errors as PyRIT error responses rather than agent text
Describe alternatives you've considered, if relevant
HTTPTarget with a JSON template works for single requests, but it can't manage A2A context IDs, poll pending tasks, or tell a JSON-RPC error apart from an agent reply.
Additional context
I have an implementation in #2771, tested against a Microsoft Foundry prompt agent with incoming A2A enabled.
- Lingua principale
- Python
- Stelle
- 4.5k
- Fork
- 896
- Merge medio
- 3g 8h
- PR unite (30g)
- 191
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di microsoft/PyRIT
-
BUG HarmBench loader drops ContextString, so contextual behaviors are sent without their context Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
Tutte le issue di microsoft/PyRIT
Issue simili
-
agent-ready documentation needs-triage
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
-
documentation
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 91/100
-
workflow-status page template still says reusable workflows are "triggered only by workflow_call:" Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
-
instance instance add
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
searxng/searx-instances#939 · 1 commento ·
-
area-deployment area-integrations triage:bot-seen
Difficoltà 2/5 Mezza giornata Idoneità per principianti 86/100