Skip to content

Python: Default DevUI workflows to string input when start node is auto-wrapped agent#1143

Merged
eavanvalkenburg merged 3 commits into
microsoft:mainfrom
moonbox3:devui-agent-input
Oct 3, 2025
Merged

Python: Default DevUI workflows to string input when start node is auto-wrapped agent#1143
eavanvalkenburg merged 3 commits into
microsoft:mainfrom
moonbox3:devui-agent-input

Conversation

@moonbox3

@moonbox3 moonbox3 commented Oct 3, 2025

Copy link
Copy Markdown
Contributor

Motivation and Context

Right now, if running a workflow that has the start executor as an agent, DevUI doesn't properly determine the type of input expected, and will not show the ability to configure the input. To unblock, defaulting this to be a string.

Further work would be needed to support complex inputs like images, or other types.

Description

Contribution Checklist

  • The code builds clean without any errors or warnings
  • The PR follows the Contribution Guidelines
  • All unit tests pass, and I have added new tests where possible
  • Is this a breaking change? If yes, add "[BREAKING]" prefix to the title of the PR.

@moonbox3 moonbox3 requested a review from victordibia October 3, 2025 03:12
@moonbox3 moonbox3 self-assigned this Oct 3, 2025
@moonbox3 moonbox3 added squad: workflows workflows Usage: [Issues, PRs], Target: Workflows labels Oct 3, 2025
Copilot AI review requested due to automatic review settings October 3, 2025 03:12
@moonbox3 moonbox3 added the devui label Oct 3, 2025
@markwallace-microsoft markwallace-microsoft added the python Usage: [Issues, PRs], Target: Python label Oct 3, 2025

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR fixes a bug where DevUI workflows with auto-wrapped agent start nodes don't properly determine the expected input type, causing the UI to not display input configuration options. The fix defaults the input type to string when the start executor is detected as an agent.

  • Adds helper functions to extract and select input types from executors
  • Implements fallback to string input type when auto-wrapped agents are detected
  • Adds comprehensive test coverage for the new input type detection logic

Reviewed Changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.

File Description
python/packages/devui/agent_framework_devui/_server.py Adds input type extraction and selection helper functions, updates entity info endpoint to use new logic with string fallback
python/packages/devui/agent_framework_devui/_executor.py Refactors workflow input parsing to use centralized input type detection methods
python/packages/devui/tests/test_server.py Adds unit tests for the new input type extraction and selection functions
python/packages/devui/tests/test_execution.py Adds unit tests for executor input type detection and workflow input parsing methods

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread python/packages/devui/agent_framework_devui/_server.py
Comment thread python/packages/devui/agent_framework_devui/_server.py
Comment thread python/packages/devui/agent_framework_devui/_executor.py
Comment thread python/packages/devui/agent_framework_devui/_executor.py
@markwallace-microsoft

markwallace-microsoft commented Oct 3, 2025

Copy link
Copy Markdown
Contributor

Python Test Coverage

Python Test Coverage Report •
FileStmtsMissCoverMissing
TOTAL10173168783% 
report-only-changed-files is enabled. No files were changed during this commit :)

Python Unit Test Overview

Tests Skipped Failures Errors Time
1213 98 💤 0 ❌ 0 🔥 28.039s ⏱️

@eavanvalkenburg eavanvalkenburg added this pull request to the merge queue Oct 3, 2025
Merged via the queue into microsoft:main with commit c543dba Oct 3, 2025
21 checks passed
victordibia added a commit to victordibia/agent-framework that referenced this pull request Oct 3, 2025
Merged PR microsoft#1143 (workflow input type handling) with local DevUI improvements.

- Resolved _server.py conflict by keeping _utils.generate_input_schema() approach
- Enhanced _utils._parse_dict_input() with primitive type extraction from PR microsoft#1143
- Preserved all PR microsoft#1143 functionality: str/dict type prioritization for workflows
- All tests passing (7 from PR microsoft#1143 + existing)
ReubenBond pushed a commit to ReubenBond/agent-framework that referenced this pull request Oct 28, 2025
…to-wrapped agent (microsoft#1143)

* DevUI workflows default to string input when start node is AgentExecutor

* Remove unnecessary sample

* Fix lint issue
arisng pushed a commit to arisng/agent-framework that referenced this pull request Feb 2, 2026
…to-wrapped agent (microsoft#1143)

* DevUI workflows default to string input when start node is AgentExecutor

* Remove unnecessary sample

* Fix lint issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

python Usage: [Issues, PRs], Target: Python workflows Usage: [Issues, PRs], Target: Workflows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Python: How to provide input to workflow in devui?

6 participants