plan_and_execute
CHAIN-OF-TOOLS PLANNER -- Execute a multi-step JSON plan in ONE call by chaining tools. Pass an EXPLICIT JSON array of steps (NL parsing disabled to prevent ambiguity). Maximum 5 steps per plan. The chain stops on any critical failure (ado_analyze_workitem, get_object_details).
Required Format (JSON array)
[{"tool":"get_object_details","args":{"objectName":"SalesTable"}},{"tool":"validate_best_practices","args":{"objectName":"SalesTable"}}]
When to use
You already know the exact sequence of 2-5 tool calls needed
The output of step N is independent of step N+1 (or matches the carried context: analysis_output)
You want SSE progress events between steps
When NOT to use
Single tool call (use the tool directly)
Plan depends on the user's intermediate decision (call tools one at a time)
More than 5 steps (split into separate calls)
Cost: $0 -- pure in-process execution.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| goal | Yes | Natural language goal OR a JSON array of explicit steps. Examples: 'analyse WI #6587 and create a task', 'check best practices for ALMMyClass'. | |
| project | No | Optional: Azure DevOps project name. Falls back to DEVOPS_PROJECT env var. | |
| assignTo | No | Optional: assignee email for task creation step, e.g. 'dev@company.com'. | |
| objectName | No | Optional: object name to use when goal references a D365 object (overrides name parsed from goal). | |
| workItemId | No | Optional: work item ID to use when goal references 'WI #N' (overrides ID parsed from goal text). | |
| description | No | Optional: additional description text to pass to task creation step. |