Skip to content

Changing the readme tool to use Timo's MicroAgent framework#11796

Merged
richardpark-msft merged 6 commits into
Azure:mainfrom
richardpark-msft:tools-readme-update
Aug 25, 2025
Merged

Changing the readme tool to use Timo's MicroAgent framework#11796
richardpark-msft merged 6 commits into
Azure:mainfrom
richardpark-msft:tools-readme-update

Conversation

@richardpark-msft
Copy link
Copy Markdown
Member

Also, some refactors to cleanup the internals of the generator. There's more work to do to allow it to support multiple languages, but one big change at a time. :)

…g the chance to refactor and thin out the ReadmeGeneratorTool class.
Copilot AI review requested due to automatic review settings August 22, 2025 03:21
@github-actions github-actions Bot added the azsdk-cli Issues related to Azure/azure-sdk-tools::tools/azsdk-cli label Aug 22, 2025
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

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 refactors the ReadMe Generator Tool to use Timo's MicroAgent framework instead of directly using Azure OpenAI clients. The changes replace the traditional OpenAI chat completion approach with a more structured microagent-based system that includes built-in validation and iterative improvement capabilities.

  • Replaced direct Azure OpenAI client usage with MicroAgent framework integration
  • Extracted README generation logic into a separate ReadmeGenerator class for better separation of concerns
  • Added structured validation through tool-based feedback loops using FuncAdapterTool

Reviewed Changes

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

File Description
ReadMeGeneratorTool.cs Refactored to use MicroAgent framework, extracted generation logic to separate class, and improved validation approach
FuncAdapterTool.cs New utility class for creating microagent tools from functions
ReadMeGeneratorToolTests.cs Updated tests to mock MicroAgent service instead of OpenAI clients

Comment thread tools/azsdk-cli/Azure.Sdk.Tools.Cli/Tools/Package/ReadMeGeneratorTool.cs Outdated
Comment thread tools/azsdk-cli/Azure.Sdk.Tools.Cli/Tools/Package/ReadMeGeneratorTool.cs Outdated
Comment thread tools/azsdk-cli/Azure.Sdk.Tools.Cli/Tools/Package/ReadMeGeneratorTool.cs Outdated
@richardpark-msft
Copy link
Copy Markdown
Member Author

@timovv, I nominate you to review this particular one, as it hits a few areas that I know you care about:

  1. Making the MCPTool type have less code in it
  2. Using MicroAgents
  3. I added a small "adapter" so you can create a tool that's just a function. It's a small little wrapper, but I'm hoping to reduce boilerplate/excess classes if possible. I use it in my readme generator to allow my check function to run.
  4. I believe I've broken down my prompt and the return values the way you were hoping it'd work, where I have a function returning suggestions back to the LLM, etc.

Comment thread tools/azsdk-cli/Azure.Sdk.Tools.Cli/Tools/Package/ReadMeGeneratorTool.cs Outdated
Comment thread tools/azsdk-cli/Azure.Sdk.Tools.Cli/Microagents/Tools/FuncAdapterTool.cs Outdated
Comment thread tools/azsdk-cli/Azure.Sdk.Tools.Cli/Microagents/Tools/FuncAdapterTool.cs Outdated
Comment thread tools/azsdk-cli/Azure.Sdk.Tools.Cli/Microagents/Tools/FuncAdapterTool.cs Outdated
Comment thread tools/azsdk-cli/Azure.Sdk.Tools.Cli/Tools/Package/ReadMeGeneratorTool.cs Outdated
Comment thread tools/azsdk-cli/Azure.Sdk.Tools.Cli/Tools/Package/ReadMeGeneratorTool.cs Outdated
Comment thread tools/azsdk-cli/Azure.Sdk.Tools.Cli/Tools/Package/ReadMeGeneratorTool.cs Outdated
richardpark-msft and others added 3 commits August 25, 2025 10:04
@richardpark-msft richardpark-msft enabled auto-merge (squash) August 25, 2025 22:02
@richardpark-msft richardpark-msft merged commit cb962a1 into Azure:main Aug 25, 2025
13 checks passed
@richardpark-msft richardpark-msft deleted the tools-readme-update branch August 25, 2025 22:16
danieljurek pushed a commit that referenced this pull request Aug 29, 2025
* Changing the readme tool to use Timo's MicroAgent framework and taking the chance to refactor and thin out the ReadmeGeneratorTool class.
* Adding in a function adapter for agent tool
* Adding some more tests for readme validation.
radhgupta pushed a commit to radhgupta/azure-sdk-tools that referenced this pull request Sep 9, 2025
)

* Changing the readme tool to use Timo's MicroAgent framework and taking the chance to refactor and thin out the ReadmeGeneratorTool class.
* Adding in a function adapter for agent tool
* Adding some more tests for readme validation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

azsdk-cli Issues related to Azure/azure-sdk-tools::tools/azsdk-cli

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants