Conversation
There was a problem hiding this comment.
Pull request overview
This PR introduces a new polyglot test agent system that generates comprehensive unit tests across multiple programming languages using a Research-Plan-Implement pattern. The multi-agent pipeline analyzes codebases, creates phased test implementation plans, and generates tests that compile, pass, and follow project conventions.
Changes:
- Added a new plugin
polyglot-test-agentwith 8 specialized agents for test generation workflow - Implemented a skill with detailed prompt guidelines for unit test generation across languages (C#, TypeScript, Python, Go, Rust, Java)
- Integrated the plugin into the marketplace and documentation
Reviewed changes
Copilot reviewed 26 out of 26 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| skills/polyglot-test-agent/unit-test-generation.prompt.md | Comprehensive prompt defining best practices, coverage goals (80%), parameterization strategies, and language-specific examples |
| skills/polyglot-test-agent/SKILL.md | Main skill documentation explaining the Research-Plan-Implement pipeline and step-by-step usage instructions |
| agents/polyglot-test-generator.agent.md | Orchestrator agent coordinating the full test generation pipeline |
| agents/polyglot-test-researcher.agent.md | Research agent analyzing codebase structure, testing patterns, and testability |
| agents/polyglot-test-planner.agent.md | Planning agent creating phased implementation plans from research findings |
| agents/polyglot-test-implementer.agent.md | Implementation agent writing test files and verifying compilation/passage |
| agents/polyglot-test-builder.agent.md | Builder agent running compile commands for any language |
| agents/polyglot-test-tester.agent.md | Tester agent running test commands and reporting results |
| agents/polyglot-test-fixer.agent.md | Fixer agent resolving compilation errors |
| agents/polyglot-test-linter.agent.md | Linter agent formatting code for any language |
| plugins/polyglot-test-agent/* | Plugin structure with symlinks to agents and skill, plus configuration files |
| docs/README.skills.md | Documentation entry for the new skill |
| docs/README.plugins.md | Documentation entry for the new plugin |
| docs/README.agents.md | Documentation entries for all 8 new agents |
| .github/plugin/marketplace.json | Marketplace registration for the plugin |
aaronpowell
left a comment
There was a problem hiding this comment.
The files within the plugin need to be created as symlinks - how did you go about generating the plugin (I may need to improve that script/workflow)?
@aaronpowell - sorry totally my fault - symlinks were not setup properly (
I was pointing copilot to the contributing guide and the PR checklist - it happily ignored that - likely as the repo was already synced locally. Would this happen to anyone else - maybe the 'note' might need to be changed to something more screamy? awesome-copilot/CONTRIBUTING.md Line 26 in 76b1c55 (explicit checkbox in PR checklist would definitely work - but I understand it takes precious space to user-error that's not happening often) |
|
Thanks for the fix @JanKrivanek, looks good to merge now. I'm currently doing some brainstorming with Copilot on ways that we can simplify the workflow so that the contribution burden is lower when it comes to creating a plugin. |
Pull Request Checklist
npm startand verified thatREADME.mdis up to date.Description
This is adding prompt-based version of code-testing-agent, that works via Research-Plan-Implement pattern and is able to deliver consistent unit-tests generating experience over large brownfield codebases.
Type of Contribution
Additional Notes
By submitting this pull request, I confirm that my contribution abides by the Code of Conduct and will be licensed under the MIT License.