[dotnet-port] Align agentmode tool names and instructions with .NET - #268
Conversation
Rename AgentMode_Set/AgentMode_Get tools to mode_set/mode_get to match the cross-SDK alignment made in microsoft/agent-framework#6071. Also update the default instructions and default mode descriptions to match the .NET AgentModeProvider as of that same PR: - Add 'check mode after user input' note to instructions. - Add 'Mandatory Mode based Workflow' section. - Expand plan/execute default mode descriptions with step-by-step processes. - Change mode rendering in instructions from bullet points to section headers (#### mode_name) matching .NET BuildInstructions output. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR aligns the Go agent-mode harness with the cross-SDK naming and instruction conventions used by the .NET AgentModeProvider, including tool name normalization (mode_set/mode_get) and updated default instruction/mode-description content.
Changes:
- Renamed the agent mode tools from
AgentMode_Set/AgentMode_Gettomode_set/mode_get. - Updated the default agent-mode instruction template and expanded the default
plan/executemode descriptions to match the .NET workflow guidance and formatting. - Extended unit tests to validate the new tool names and instruction rendering format.
Show a summary per file
| File | Description |
|---|---|
| docs/dotnet-go-sdk-feature-comparison.md | Notes the agent-mode alignment status and references the cross-SDK change. |
| agent/harness/agentmode/agentmode.go | Renames mode tools and updates default instructions + mode rendering to section-header format. |
| agent/harness/agentmode/agentmode_test.go | Updates tool-name assertions and adds coverage for instruction content/format. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 3/3 changed files
- Comments generated: 1
| | OpenTelemetry for agents | Agent/workflow observability samples and OpenTelemetry workflow builder extension. | `agent/opentelemetry`, `workflow/observability/opentelemetry`, workflow builder instrumentation via `WithTelemetry`, trace context propagation in workflow context. | Aligned | API shape differs: Go passes a tracer from the OpenTelemetry adapter separately from `TelemetryOptions` and keeps workflow observability internals unexported. | | ||
| | Evaluation | Agent evaluation extensions, eval checks, local/function evaluators, conversation splitters, workflow evaluation samples, Foundry quality samples. | No evaluation package. | .NET only | No Go equivalent found. | | ||
| | Harness utilities | Agent mode, file access, file memory, file store, subagents, todo, tool approval harness providers. | `agent/harness/agentmode`, `agent/harness/todo`, `agent/harness/toolapproval`, `agent/harness/toolautocall`. | Partial | Go now has packaged harness support for agent mode, todo tracking, tool approval, and tool auto-call. It still lacks file access, file memory, file store, and subagent harness utilities. | | ||
| | Harness utilities | Agent mode, file access, file memory, file store, subagents, todo, tool approval harness providers. | `agent/harness/agentmode`, `agent/harness/todo`, `agent/harness/toolapproval`, `agent/harness/toolautocall`. | Partial | Go now has packaged harness support for agent mode, todo tracking, tool approval, and tool auto-call. It still lacks file access, file memory, file store, and subagent harness utilities. Agent mode tool names (`mode_set`/`mode_get`), default instructions, and mode descriptions are aligned with .NET (#6071). | |
Cross-SDK Parity ReviewThis PR is a clean and correct port of the .NET changes from Verified against
Python: The Python SDK has no equivalent The PR description is accurate: tool names, instructions, and mode descriptions are now semantically and textually aligned with the .NET
|
Rename AgentMode_Set/AgentMode_Get tools to mode_set/mode_get to match the cross-SDK alignment made in microsoft/agent-framework#6071.
Also update the default instructions and default mode descriptions to match the .NET AgentModeProvider as of that same PR: