Expose durable orchestrations as native agent tools with durable result continuation
I maintainer di solito rispondono entro 3 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- azure, csharp
- Ambito
- ai-infra-agents, backend
Direzione di ricerca
Start with dotnet/src/Microsoft.Agents.AI.DurableTask/DurableAgentContext.cs and dotnet/samples/DurableAgents/AzureFunctions/06_LongRunningTools/Tools.cs to understand current orchestration scheduling. Then trace the agent tool and continuation entry points and identify tests for host recovery, duplicate delivery, result correlation, and terminal failures. Done means a supported typed orchestration tool, a sample that resumes with its result, and documentation of hosting and delivery guarantees.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
An agent can already start an orchestration through DurableAgentContext.Current.ScheduleNewOrchestration(...). The long-running-tools sample demonstrates this with custom start, status, and event tools.
That supports starting work and returning an instance ID, but it does not provide a first-class orchestration-backed tool whose result is delivered back to the agent through a durable continuation. Applications must implement scheduling, correlation, pending-operation tracking, and agent resumption themselves.
We encountered this while building Durable Squad: a specialist needs to invoke a long-running business workflow and consume its eventual result before finishing its assignment. Returning an instance ID is useful, but is not equivalent to awaiting the business outcome.
Requested capability
Provide a supported way to register a durable orchestration as a typed agent tool, including its input/output schema and description.
Support two explicit invocation modes:
- Start the orchestration and return a handle, preserving the existing fire-and-return use case.
- Durably suspend the calling agent's continuation and resume it with the orchestration's result when execution completes.
The awaited mode should not hold a model request or an entity operation open while the orchestration runs. Scheduling and continuation recording should respect the existing entity transaction boundary rather than polling for work whose scheduling has not committed.
Expected behavior
- Tool invocation, orchestration instance, and agent continuation have a stable correlation.
- Host restarts do not lose pending invocations or their eventual results.
- Redelivery or recovery does not unnecessarily start another orchestration for the same accepted tool invocation.
- A successful result reaches the correct agent session and tool call before the agent continues.
- Failure, termination, and any supported cancellation or configured timeout produce explicit outcomes rather than successful-looking results.
- Execution is visible in DTS, with correlation back to the originating agent/tool invocation.
- Standalone and Azure Functions hosting have documented support boundaries.
Scope
This is agent-to-orchestration tool composition, not exposing a workflow as an MCP endpoint or adding another start/status wrapper sample.
It does not request a general per-tool checkpointing redesign, a new human-approval framework, or exactly-once guarantees for external business side effects. Those effects still require application-level idempotency and reconciliation.
Acceptance criteria
- A public API makes an orchestration available as an agent tool without application-authored continuation plumbing.
- A sample shows an agent invoking a long-running orchestration and continuing with its typed result.
- Tests cover pending execution across a host restart, duplicate delivery, result correlation, and terminal failure outcomes.
- Documentation distinguishes start-and-return-handle from durably awaited execution and states delivery/idempotency guarantees precisely.
Current reference points
dotnet/src/Microsoft.Agents.AI.DurableTask/DurableAgentContext.csdotnet/samples/DurableAgents/AzureFunctions/06_LongRunningTools/Tools.cs
These illustrate existing scheduling support. The request is to build a first-class durable tool continuation on top of it.
- Lingua principale
- Python
- Stelle
- 19
- Fork
- 11
- Merge medio
- 5g 18h
- PR unite (30g)
- 11
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
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/agent-framework-durable-extension
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
microsoft/agent-framework-durable-extension#87 · 1 commento ·
I maintainer di solito rispondono entro 3 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
microsoft/agent-framework-durable-extension#75 · 1 commento ·
I maintainer di solito rispondono entro 3 giorni
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
microsoft/agent-framework-durable-extension#162 ·
I maintainer di solito rispondono entro 3 giorni
-
.NET: [Guide] Running Durable Agents & Workflows inside Foundry Hosted Agents across scale-to-zeroAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 22/100
microsoft/agent-framework-durable-extension#149 ·
I maintainer di solito rispondono entro 3 giorni
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 62/100
microsoft/agent-framework-durable-extension#143 ·
I maintainer di solito rispondono entro 3 giorni
Tutte le issue di microsoft/agent-framework-durable-extension
Issue simili
-
area/profiles comp/cli P3 type/feature
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
NousResearch/hermes-agent#146372 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno
-
[oblt-aw][autodoc] Document obs-aw-automerge contract and fix automerge doc inconsistenciesForse già presa @github-actions l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
GeoSeries scale and skew tests fail with pytest 9.2.0Forse già presa @jiayuasu l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
admission-deferred priority: medium status: ready work-class: scoped
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
melodic-software/claude-code-plugins#10887 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno