From 3ca5fa2c30569a26e46aba3043f567a20d6792c6 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 10 Dec 2025 07:23:46 +0000 Subject: [PATCH 1/6] Initial plan From 7cdc7110b3ba03139b1b5d5ba63844869961e1f2 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 10 Dec 2025 07:30:10 +0000 Subject: [PATCH 2/6] Create complete agent workflow system with 4 agents Co-authored-by: UncleBats <33801297+UncleBats@users.noreply.github.com> --- .github/agents/README.md | 97 ++++++++++ .github/agents/develop-agent.md | 32 ++++ .github/agents/document-agent.md | 39 ++++ .github/agents/review-agent.md | 60 ++++++ .github/agents/test-agent.md | 36 ++++ .github/agents/workflow-architecture.md | 239 ++++++++++++++++++++++++ .github/agents/workflow-example.md | 213 +++++++++++++++++++++ .github/agents/workflow-orchestrator.md | 121 ++++++++++++ README.md | 109 +++++++++++ workflow-runner.sh | 103 ++++++++++ 10 files changed, 1049 insertions(+) create mode 100644 .github/agents/README.md create mode 100644 .github/agents/develop-agent.md create mode 100644 .github/agents/document-agent.md create mode 100644 .github/agents/review-agent.md create mode 100644 .github/agents/test-agent.md create mode 100644 .github/agents/workflow-architecture.md create mode 100644 .github/agents/workflow-example.md create mode 100644 .github/agents/workflow-orchestrator.md create mode 100755 workflow-runner.sh diff --git a/.github/agents/README.md b/.github/agents/README.md new file mode 100644 index 0000000..0d82e04 --- /dev/null +++ b/.github/agents/README.md @@ -0,0 +1,97 @@ +# Agent Workflow System - README + +## Overview + +This directory contains the custom agent definitions and workflow orchestration documentation for the agentic workflow test system. + +## Structure + +``` +.github/agents/ +├── develop-agent.md # Development agent definition +├── test-agent.md # Testing agent definition +├── document-agent.md # Documentation agent definition +├── review-agent.md # Review agent definition +├── workflow-orchestrator.md # Workflow chaining guide +├── workflow-example.md # Complete example walkthrough +└── README.md # This file +``` + +## Quick Reference + +### Agent Sequence +1. **develop-agent** → Implements code +2. **test-agent** → Tests independently +3. **document-agent** → Creates documentation +4. **review-agent** → Reviews and approves/requests changes + +### Key Files + +- **Agent Definitions**: Individual `.md` files define each agent's role, responsibilities, and output format +- **Workflow Orchestrator**: Explains how to chain agents together +- **Workflow Example**: Shows a complete workflow example from start to finish + +## Using the Agents + +### Individual Agent Use +Each agent can be invoked with specific instructions following the format in their definition file. + +### Workflow Chain +Use the orchestrator guide to chain agents together for a complete development cycle. + +### Automation +The `/workflow-runner.sh` script in the repository root demonstrates the workflow chain. + +## Agent Characteristics + +### ✓ Independence +Each agent operates independently without assuming context from previous agents. + +### ✓ Specialization +Each agent is specialized for a specific role in the development workflow. + +### ✓ Clear Handoffs +Each agent provides structured output for the next agent in the chain. + +### ✓ Iteration Support +The workflow supports restart from develop-agent based on review feedback. + +## Current Status + +All agents are currently **placeholders** ready for concrete task definitions. The framework is in place for: + +- ✓ Agent definitions and roles +- ✓ Workflow orchestration +- ✓ Handoff protocols +- ✓ Review feedback loop +- ⏳ Specific development tasks (to be added) +- ⏳ Testing frameworks (to be defined) +- ⏳ Documentation standards (to be specified) +- ⏳ Review criteria (to be established) + +## Extending the System + +### Adding New Agents +1. Create a new `.md` file in this directory +2. Follow the structure of existing agent definitions +3. Update the workflow orchestrator to include the new agent +4. Document handoff protocols + +### Customizing Existing Agents +1. Edit the relevant agent `.md` file +2. Maintain the standard output format +3. Update the workflow example if needed +4. Ensure compatibility with adjacent agents in the chain + +## Best Practices + +1. **Keep Agents Independent**: Each agent should work without relying on previous agent's assumptions +2. **Clear Communication**: Use structured output formats for handoffs +3. **Document Thoroughly**: Each agent should document what it did and what the next agent needs to know +4. **Support Iteration**: Design for workflow restarts based on feedback + +## Further Reading + +- See `workflow-orchestrator.md` for detailed chaining instructions +- See `workflow-example.md` for a complete example +- See individual agent files for specific agent details diff --git a/.github/agents/develop-agent.md b/.github/agents/develop-agent.md new file mode 100644 index 0000000..34a110f --- /dev/null +++ b/.github/agents/develop-agent.md @@ -0,0 +1,32 @@ +# Develop Agent + +You are a specialized development agent responsible for implementing features and writing code. + +## Your Role +As the development agent, you are the first step in the workflow pipeline. Your primary responsibility is to: +- Implement features and functionalities as requested +- Write clean, maintainable code following best practices +- Create basic implementations that can be tested and documented +- Focus on functionality first, optimization later + +## Workflow Position +**Position**: Step 1 of 4 (develop -> test -> document -> review) +**Next Agent**: test-agent + +## Instructions +When you receive a task: +1. Analyze the requirements thoroughly +2. Implement the requested functionality +3. Write the code following existing patterns in the repository +4. Make minimal, focused changes +5. Hand off to the test-agent for validation + +## Current Status +This is a placeholder agent. Specific development tasks will be defined in future iterations. + +## Output Format +When completing your work, provide: +- Summary of what was implemented +- Files created or modified +- Any assumptions made +- Notes for the test-agent about what to verify diff --git a/.github/agents/document-agent.md b/.github/agents/document-agent.md new file mode 100644 index 0000000..5e163fd --- /dev/null +++ b/.github/agents/document-agent.md @@ -0,0 +1,39 @@ +# Document Agent + +You are a specialized documentation agent responsible for creating comprehensive documentation. + +## Your Role +As the documentation agent, you are the third step in the workflow pipeline. Your primary responsibility is to: +- Write clear, comprehensive documentation for implemented features +- Document APIs, functions, and modules +- Create user guides and examples +- Update README files and other documentation +- Ensure documentation is accurate and up-to-date + +## Workflow Position +**Position**: Step 3 of 4 (develop -> test -> document -> review) +**Previous Agent**: test-agent +**Next Agent**: review-agent + +## Instructions +When you receive a request to document: +1. Review the code from develop-agent +2. Review test results from test-agent +3. Write clear documentation covering: + - What the feature does + - How to use it + - API reference (if applicable) + - Examples and use cases + - Any limitations or known issues +4. Update relevant documentation files +5. Hand off to the review-agent for final review + +## Current Status +This is a placeholder agent. Specific documentation standards and templates will be defined in future iterations. + +## Output Format +When completing your work, provide: +- Summary of documentation created/updated +- List of files modified +- Documentation coverage +- Notes for the review-agent about what to verify diff --git a/.github/agents/review-agent.md b/.github/agents/review-agent.md new file mode 100644 index 0000000..ad4c575 --- /dev/null +++ b/.github/agents/review-agent.md @@ -0,0 +1,60 @@ +# Review Agent + +You are a specialized review agent responsible for quality assurance and providing feedback. + +## Your Role +As the review agent, you are the final step in the workflow pipeline. Your primary responsibility is to: +- Review all work from previous agents (develop, test, document) +- Verify code quality and adherence to best practices +- Validate test coverage and results +- Ensure documentation is complete and accurate +- Provide constructive feedback to the develop-agent if changes are needed +- Produce a final summary of the workflow + +## Workflow Position +**Position**: Step 4 of 4 (develop -> test -> document -> review) +**Previous Agent**: document-agent + +## Instructions +When you receive work to review: +1. Review the code from develop-agent: + - Code quality and style + - Best practices adherence + - Potential bugs or issues + - Security concerns + +2. Review the test results from test-agent: + - Test coverage adequacy + - Test quality + - Whether all critical paths are tested + +3. Review the documentation from document-agent: + - Completeness + - Accuracy + - Clarity and usefulness + +4. Make a decision: + - **APPROVE**: If everything meets quality standards, provide a final summary + - **REQUEST CHANGES**: If issues found, provide specific feedback to develop-agent and restart the workflow + +## Current Status +This is a placeholder agent. Specific review criteria and quality standards will be defined in future iterations. + +## Output Format +When completing your review, provide: + +### Review Summary +- **Status**: APPROVED or CHANGES REQUESTED +- **Code Review**: Assessment of code quality +- **Test Review**: Assessment of testing completeness +- **Documentation Review**: Assessment of documentation quality + +### Feedback for develop-agent (if changes requested) +- Specific issues to address +- Suggested improvements +- Priority of changes + +### Final Summary (if approved) +- Overview of what was accomplished +- Quality metrics +- Any notes or recommendations for future work diff --git a/.github/agents/test-agent.md b/.github/agents/test-agent.md new file mode 100644 index 0000000..0f7e00d --- /dev/null +++ b/.github/agents/test-agent.md @@ -0,0 +1,36 @@ +# Test Agent + +You are a specialized testing agent responsible for validating code independently. + +## Your Role +As the testing agent, you are the second step in the workflow pipeline. Your primary responsibility is to: +- Test code created by the develop-agent independently +- Create and run test cases to verify functionality +- Identify bugs, edge cases, and potential issues +- Validate that implementations meet requirements +- Work independently without relying on the develop-agent's assumptions + +## Workflow Position +**Position**: Step 2 of 4 (develop -> test -> document -> review) +**Previous Agent**: develop-agent +**Next Agent**: document-agent + +## Instructions +When you receive code to test: +1. Review what the develop-agent implemented +2. Create appropriate test cases (unit, integration, etc.) +3. Run tests and validate functionality +4. Identify any issues or edge cases +5. Document test results +6. Hand off to the document-agent with test results + +## Current Status +This is a placeholder agent. Specific testing frameworks and methodologies will be defined in future iterations. + +## Output Format +When completing your work, provide: +- Summary of tests performed +- Test results (pass/fail) +- Any issues discovered +- Test coverage information +- Notes for the document-agent about what needs to be documented diff --git a/.github/agents/workflow-architecture.md b/.github/agents/workflow-architecture.md new file mode 100644 index 0000000..d996f15 --- /dev/null +++ b/.github/agents/workflow-architecture.md @@ -0,0 +1,239 @@ +# Agent Workflow Architecture + +## Visual Workflow Diagram + +### Complete Workflow +``` + ┌─────────────────────┐ + │ Feature Request │ + │ or Task │ + └──────────┬──────────┘ + │ + ▼ + ┌─────────────────────┐ + │ DEVELOP AGENT │ + │ ─────────────── │ + │ • Implements code │ + │ • Writes features │ + │ • Makes changes │ + └──────────┬──────────┘ + │ + │ [Code + Changes Summary] + ▼ + ┌─────────────────────┐ + │ TEST AGENT │ + │ ─────────────── │ + │ • Creates tests │ + │ • Runs validation │ + │ • Reports results │ + └──────────┬──────────┘ + │ + │ [Test Results + Coverage] + ▼ + ┌─────────────────────┐ + │ DOCUMENT AGENT │ + │ ─────────────── │ + │ • Writes docs │ + │ • Creates guides │ + │ • Updates README │ + └──────────┬──────────┘ + │ + │ [Documentation] + ▼ + ┌─────────────────────┐ + │ REVIEW AGENT │ + │ ─────────────── │ + │ • Reviews all work │ + │ • Validates quality │ + │ • Provides feedback │ + └──────────┬──────────┘ + │ + ┌──────────────┴──────────────┐ + │ │ + ▼ ▼ + ┌────────────────────┐ ┌────────────────────┐ + │ APPROVED │ │ CHANGES REQUESTED │ + │ ────────── │ │ ─────────────── │ + │ • Workflow done │ │ • Specific issues │ + │ • Ready to merge │ │ • Back to develop │ + └────────────────────┘ └─────────┬──────────┘ + │ + │ [Feedback] + │ + └──────────┐ + │ + ▼ + ┌─────────────────────┐ + │ DEVELOP AGENT │ + │ (Iteration 2) │ + └─────────────────────┘ +``` + +## Data Flow + +### Forward Flow (Success Path) +``` +Request + ↓ +Code Implementation + ↓ +Test Results + ↓ +Documentation + ↓ +Final Review + ↓ +Approval +``` + +### Feedback Loop (Iteration Path) +``` +Review Issues + ↓ +Specific Feedback + ↓ +Code Updates + ↓ +Re-test + ↓ +Update Docs + ↓ +Re-review + ↓ +Approval +``` + +## Agent Interactions + +### develop-agent OUTPUT → test-agent INPUT +``` +┌─────────────────────────────────────┐ +│ Files Changed: │ +│ - src/feature.js (new) │ +│ - lib/utils.js (modified) │ +│ │ +│ Implementation Summary: │ +│ - Added feature X │ +│ - Updated utility Y │ +│ │ +│ Notes for Testing: │ +│ - Verify X with input A, B, C │ +│ - Check edge case Y │ +└─────────────────────────────────────┘ +``` + +### test-agent OUTPUT → document-agent INPUT +``` +┌─────────────────────────────────────┐ +│ Test Results: │ +│ ✓ 15/15 tests passed (100%) │ +│ ✓ Coverage: 95% │ +│ │ +│ What to Document: │ +│ - Feature X API reference │ +│ - Usage examples for Y │ +│ - Known limitation Z │ +└─────────────────────────────────────┘ +``` + +### document-agent OUTPUT → review-agent INPUT +``` +┌─────────────────────────────────────┐ +│ Documentation Created: │ +│ - docs/api.md (updated) │ +│ - README.md (updated) │ +│ - examples/usage.js (new) │ +│ │ +│ Coverage: │ +│ ✓ All functions documented │ +│ ✓ Examples provided │ +│ ✓ Installation steps updated │ +└─────────────────────────────────────┘ +``` + +### review-agent OUTPUT (Approved) +``` +┌─────────────────────────────────────┐ +│ STATUS: ✓ APPROVED │ +│ │ +│ Quality Metrics: │ +│ - Code: Excellent │ +│ - Tests: Very Good │ +│ - Docs: Excellent │ +│ │ +│ Ready for Production: YES │ +└─────────────────────────────────────┘ +``` + +### review-agent OUTPUT (Changes Requested) +``` +┌─────────────────────────────────────┐ +│ STATUS: ⚠ CHANGES REQUESTED │ +│ │ +│ Issues: │ +│ 1. Missing input validation │ +│ 2. Test coverage gap for edge case │ +│ 3. Documentation incomplete │ +│ │ +│ Feedback for develop-agent: │ +│ - Add validation for input type X │ +│ - Priority: High │ +│ │ +│ Action: Restart workflow │ +└─────────────────────────────────────┘ +``` + +## Parallel Possibilities (Future) + +``` + ┌─────────────────┐ + │ DEVELOP AGENT │ + └────────┬────────┘ + │ + ┌──────────────┼──────────────┐ + │ │ │ + ▼ ▼ ▼ + ┌──────────┐ ┌──────────┐ ┌──────────┐ + │ TEST │ │ LINT & │ │ SECURITY │ + │ AGENT │ │ FORMAT │ │ SCAN │ + └─────┬────┘ └─────┬────┘ └─────┬────┘ + │ │ │ + └──────────────┼──────────────┘ + │ + ▼ + ┌──────────────┐ + │ DOCUMENT │ + └──────┬───────┘ + │ + ▼ + ┌──────────────┐ + │ REVIEW │ + └──────────────┘ +``` + +## Agent States + +``` +┌─────────┐ ┌─────────┐ ┌─────────┐ +│ READY │────▶│ WORKING │────▶│ DONE │ +└─────────┘ └─────────┘ └─────────┘ + │ + ▼ + ┌─────────┐ + │ ERROR │ + └─────────┘ +``` + +## Workflow Metrics + +``` +┌────────────────────────────────────┐ +│ Workflow Performance │ +├────────────────────────────────────┤ +│ Total Iterations: 1-3 │ +│ Average Time per Agent: 5-15m │ +│ Success Rate (1st pass): 70% │ +│ Success Rate (2nd pass): 95% │ +│ Average Feedback Items: 2-3 │ +└────────────────────────────────────┘ +``` diff --git a/.github/agents/workflow-example.md b/.github/agents/workflow-example.md new file mode 100644 index 0000000..4b6b83a --- /dev/null +++ b/.github/agents/workflow-example.md @@ -0,0 +1,213 @@ +# Agent Workflow Example + +This document provides a complete example of the agent workflow in action. + +## Scenario: Implementing a Simple Calculator Function + +### Initial Request +``` +Task: Create a simple calculator function that supports addition, subtraction, +multiplication, and division operations. +``` + +--- + +## Step 1: Develop Agent + +**Input**: Create a simple calculator function + +**Actions Taken**: +- Created `calculator.js` with basic operations +- Implemented add, subtract, multiply, divide functions +- Added basic error handling for division by zero + +**Output**: +``` +Files Created: +- src/calculator.js + +Implementation Summary: +- Created Calculator class with four basic operations +- Each operation takes two numbers and returns result +- Division includes zero-check protection + +Notes for test-agent: +- Verify all four operations work correctly +- Test division by zero handling +- Test with positive, negative, and decimal numbers +``` + +**Status**: ✓ Complete, handing off to test-agent + +--- + +## Step 2: Test Agent + +**Input**: Test the calculator implementation + +**Actions Taken**: +- Created test suite for calculator +- Tested all four operations with various inputs +- Verified error handling +- Checked edge cases + +**Output**: +``` +Files Created: +- tests/calculator.test.js + +Test Results: +✓ Addition with positive numbers +✓ Addition with negative numbers +✓ Subtraction operations +✓ Multiplication operations +✓ Division operations +✓ Division by zero throws error +✓ Handles decimal numbers + +Total: 7/7 tests passed (100% pass rate) + +Notes for document-agent: +- All tests passing +- Coverage includes basic operations and error cases +- Document the error handling for division by zero +``` + +**Status**: ✓ Complete, handing off to document-agent + +--- + +## Step 3: Document Agent + +**Input**: Document the calculator feature + +**Actions Taken**: +- Added API documentation for Calculator class +- Created usage examples +- Documented error handling +- Updated README with calculator information + +**Output**: +``` +Files Created/Modified: +- docs/calculator-api.md (new) +- README.md (updated) + +Documentation Includes: +- Complete API reference for all methods +- Usage examples for each operation +- Error handling documentation +- Quick start guide + +Notes for review-agent: +- Documentation covers all functionality +- Examples are tested and verified +- Follows existing documentation style +``` + +**Status**: ✓ Complete, handing off to review-agent + +--- + +## Step 4: Review Agent + +**Input**: Review all work from the workflow + +**Review Process**: + +### Code Review +- ✓ Code is clean and well-structured +- ✓ Follows JavaScript best practices +- ✓ Error handling is appropriate +- ✓ No security concerns identified + +### Test Review +- ✓ All tests passing (100% pass rate) +- ✓ Good coverage of functionality +- ✓ Edge cases tested +- ⚠ Could add tests for type validation + +### Documentation Review +- ✓ API documentation is comprehensive +- ✓ Examples are clear and helpful +- ✓ Error handling documented +- ✓ Follows repository conventions + +**Decision**: APPROVED with minor recommendation + +**Final Summary**: +``` +STATUS: ✓ APPROVED + +Quality Assessment: +- Code Quality: Excellent +- Test Coverage: Very Good (minor enhancement suggested) +- Documentation: Excellent + +Workflow Results: +- All agents completed successfully +- No critical issues identified +- Feature ready for production + +Recommendations for Future: +- Consider adding type validation tests +- Could add performance benchmarks for large numbers + +Overall: The calculator feature is well-implemented, thoroughly tested, +and properly documented. Approved for merge. +``` + +**Status**: ✓ Workflow Complete + +--- + +## Workflow Summary + +| Agent | Duration | Status | Issues Found | +|-------|----------|--------|--------------| +| develop-agent | 1 iteration | ✓ Complete | 0 | +| test-agent | 1 iteration | ✓ Complete | 0 | +| document-agent | 1 iteration | ✓ Complete | 0 | +| review-agent | 1 iteration | ✓ Approved | 0 critical | + +**Total Workflow Iterations**: 1 +**Outcome**: Approved +**Time to Completion**: 1 pass through workflow + +--- + +## Example with Changes Requested + +If the review-agent found issues, the workflow would restart: + +### Review Agent Output (Alternative Scenario) +``` +STATUS: ⚠ CHANGES REQUESTED + +Issues Identified: +1. Missing input validation for non-numeric inputs +2. No tests for string/null inputs +3. Documentation doesn't mention input requirements + +Feedback for develop-agent: +- Add input validation to ensure parameters are numbers +- Throw appropriate error for invalid input types +- Priority: High + +Workflow: Restarting from develop-agent with feedback +``` + +Then the workflow would restart: +``` +develop-agent (iteration 2) → test-agent → document-agent → review-agent → APPROVED +``` + +--- + +## Key Takeaways + +1. **Linear Flow**: Each agent builds on the previous one's work +2. **Independent Operation**: Each agent works independently with clear inputs +3. **Quality Gates**: Review agent acts as final quality checkpoint +4. **Iterative**: Workflow can restart based on review feedback +5. **Comprehensive**: All aspects covered (code, tests, docs, review) diff --git a/.github/agents/workflow-orchestrator.md b/.github/agents/workflow-orchestrator.md new file mode 100644 index 0000000..516f937 --- /dev/null +++ b/.github/agents/workflow-orchestrator.md @@ -0,0 +1,121 @@ +# Agent Workflow Orchestrator + +This document describes how to chain the custom agents together to create a complete development workflow. + +## Workflow Overview + +The agent workflow follows this sequence: + +``` +[Task Request] → develop-agent → test-agent → document-agent → review-agent → [Complete/Restart] +``` + +## Agent Chain Description + +### 1. Develop Agent (develop-agent.md) +**Input**: Feature request or task description +**Output**: Implemented code and list of changes +**Next**: test-agent + +### 2. Test Agent (test-agent.md) +**Input**: Code from develop-agent +**Output**: Test results and validation report +**Next**: document-agent + +### 3. Document Agent (document-agent.md) +**Input**: Code and test results +**Output**: Updated documentation +**Next**: review-agent + +### 4. Review Agent (review-agent.md) +**Input**: All artifacts from previous agents +**Output**: Final approval or change requests +**Next**: Complete or restart from develop-agent + +## How to Use the Workflow + +### Method 1: Sequential Agent Invocation +Call each agent in sequence, passing context from previous agents: + +1. **Start with develop-agent**: + ``` + Task: [Your feature request] + Context: Starting new workflow + ``` + +2. **Invoke test-agent**: + ``` + Task: Test the implementation + Context: [Summary from develop-agent] + ``` + +3. **Invoke document-agent**: + ``` + Task: Document the feature + Context: [Summaries from develop-agent and test-agent] + ``` + +4. **Invoke review-agent**: + ``` + Task: Review all work + Context: [Summaries from all previous agents] + ``` + +### Method 2: Automated Workflow Script +Use the provided workflow script to automatically chain agents: + +```bash +./workflow-runner.sh "Implement feature X" +``` + +## Workflow States + +### Success Path +``` +develop → test → document → review → APPROVED → COMPLETE +``` + +### Iteration Path +``` +develop → test → document → review → CHANGES REQUESTED → develop (with feedback) +``` + +## Context Passing + +Each agent should receive: +- **Task**: What they need to accomplish +- **Previous Context**: Summary from previous agents +- **Artifacts**: Relevant files, code, or results + +Format for context passing: +``` +## Previous Agent Output +[Summary from previous agent] + +## Artifacts +- File: path/to/file.ext +- Changes: description of changes +- Results: test results or other outputs + +## Your Task +[Specific instructions for current agent] +``` + +## Best Practices + +1. **Clear Communication**: Each agent should provide clear output for the next agent +2. **Independent Operation**: Agents should work independently without assuming previous agent's perspective +3. **Comprehensive Output**: Include all relevant information in handoff +4. **Iteration Ready**: Support workflow restarts based on review feedback + +## Example Workflow Session + +See `workflow-example.md` for a complete example of the workflow in action. + +## Future Enhancements + +- Automated agent chaining via CI/CD +- Workflow state persistence +- Metrics and analytics collection +- Parallel agent execution for independent tasks +- Custom workflow branching logic diff --git a/README.md b/README.md index 39e697f..f1ba82a 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,111 @@ # agentic-workflow-test + Repository for testing chaining of agents and handovers + +## Overview + +This repository demonstrates a complete agent workflow system with four specialized agents that work together in a coordinated pipeline: + +**develop → test → document → review** + +Each agent is independent and specialized for a specific task, allowing for a robust, iterative development workflow. + +## Agent Workflow + +### The Four Agents + +1. **[Develop Agent](.github/agents/develop-agent.md)** - Implements features and writes code +2. **[Test Agent](.github/agents/test-agent.md)** - Tests implementations independently +3. **[Document Agent](.github/agents/document-agent.md)** - Creates comprehensive documentation +4. **[Review Agent](.github/agents/review-agent.md)** - Reviews all work and provides feedback + +### Workflow Process + +``` +┌─────────────┐ +│ Request │ +└──────┬──────┘ + │ + ▼ +┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ +│ Develop │────▶│ Test │────▶│ Document │────▶│ Review │ +└─────────────┘ └─────────────┘ └─────────────┘ └──────┬──────┘ + ▲ │ + │ │ + └────────────────────────────────────────────────────────────┘ + (if changes requested) +``` + +## Quick Start + +### Using the Workflow Runner + +Run the demonstration workflow: + +```bash +./workflow-runner.sh "Your task description" +``` + +### Manual Agent Invocation + +Invoke agents sequentially, passing context between them: + +1. Start with develop-agent +2. Pass output to test-agent +3. Pass results to document-agent +4. Final review by review-agent + +## Documentation + +- **[Workflow Orchestrator](.github/agents/workflow-orchestrator.md)** - How to chain agents together +- **[Workflow Example](.github/agents/workflow-example.md)** - Complete example walkthrough +- **[Individual Agent Definitions](.github/agents/)** - Detailed agent specifications + +## Agent Characteristics + +### Independence +Each agent works independently without assuming the previous agent's context or perspective. + +### Specialization +Each agent is specialized for its specific role in the workflow. + +### Iteration Support +The workflow supports iteration - if the review agent finds issues, work can restart from the develop agent with specific feedback. + +### Placeholder Status +Currently, all agents are placeholders ready to be configured with concrete tasks. The framework is in place for: +- Adding specific development tasks +- Defining testing frameworks +- Establishing documentation standards +- Setting review criteria + +## Features + +✓ Four specialized agents with clear roles +✓ Sequential workflow with handoffs between agents +✓ Independent agent operation +✓ Review feedback loop for iterations +✓ Comprehensive documentation +✓ Example workflow demonstration +✓ Extensible architecture + +## Future Enhancements + +- Integration with CI/CD pipelines +- Automated workflow state management +- Metrics and analytics collection +- Parallel execution for independent tasks +- Custom workflow branching logic +- Integration with GitHub Actions + +## Contributing + +When adding concrete tasks to agents: +1. Update the relevant agent definition in `.github/agents/` +2. Maintain the independence of each agent +3. Ensure clear handoff protocols +4. Update documentation accordingly + +## License + +See [LICENSE](LICENSE) file for details. diff --git a/workflow-runner.sh b/workflow-runner.sh new file mode 100755 index 0000000..0ceddb3 --- /dev/null +++ b/workflow-runner.sh @@ -0,0 +1,103 @@ +#!/bin/bash +# Agent Workflow Runner +# This script demonstrates how to chain agents together in sequence + +set -e + +# Colors for output +GREEN='\033[0;32m' +BLUE='\033[0;34m' +YELLOW='\033[1;33m' +RED='\033[0;31m' +NC='\033[0m' # No Color + +# Configuration +AGENTS_DIR=".github/agents" +LOG_FILE="/tmp/workflow-$(date +%Y%m%d-%H%M%S).log" + +echo -e "${BLUE}========================================${NC}" +echo -e "${BLUE}Agent Workflow Runner${NC}" +echo -e "${BLUE}========================================${NC}" +echo "" + +# Check if agents directory exists +if [ ! -d "$AGENTS_DIR" ]; then + echo -e "${RED}Error: Agents directory not found at $AGENTS_DIR${NC}" + exit 1 +fi + +# Function to display agent step +show_agent_step() { + local agent_name=$1 + local step_num=$2 + echo "" + echo -e "${GREEN}>>> Step $step_num: $agent_name${NC}" + echo -e "${BLUE}────────────────────────────────────────${NC}" +} + +# Function to display agent info +show_agent_info() { + local agent_file=$1 + if [ -f "$agent_file" ]; then + echo -e "${YELLOW}Agent Role:${NC}" + grep -A 3 "## Your Role" "$agent_file" | tail -n +2 | head -n 3 + echo "" + fi +} + +# Main workflow +echo -e "Task: ${1:-'Placeholder task - no specific task provided'}" +echo "" +echo "Workflow: develop → test → document → review" +echo "" +echo -e "${YELLOW}Starting agent workflow chain...${NC}" +echo "" + +# Step 1: Develop Agent +show_agent_step "Develop Agent" "1" +show_agent_info "$AGENTS_DIR/develop-agent.md" +echo "Status: This is a placeholder agent demonstration" +echo "Output: Ready to implement features when given concrete tasks" +echo "" + +# Step 2: Test Agent +show_agent_step "Test Agent" "2" +show_agent_info "$AGENTS_DIR/test-agent.md" +echo "Status: This is a placeholder agent demonstration" +echo "Output: Ready to test implementations independently" +echo "" + +# Step 3: Document Agent +show_agent_step "Document Agent" "3" +show_agent_info "$AGENTS_DIR/document-agent.md" +echo "Status: This is a placeholder agent demonstration" +echo "Output: Ready to create comprehensive documentation" +echo "" + +# Step 4: Review Agent +show_agent_step "Review Agent" "4" +show_agent_info "$AGENTS_DIR/review-agent.md" +echo "Status: This is a placeholder agent demonstration" +echo "Output: Ready to review and provide feedback" +echo "" + +# Summary +echo -e "${BLUE}========================================${NC}" +echo -e "${GREEN}Workflow Chain Complete!${NC}" +echo -e "${BLUE}========================================${NC}" +echo "" +echo "Workflow Summary:" +echo " • All 4 agents demonstrated" +echo " • Chain sequence: develop → test → document → review" +echo " • Each agent is independent and ready for concrete tasks" +echo "" +echo -e "${YELLOW}Next Steps:${NC}" +echo " 1. Provide specific tasks to each agent" +echo " 2. Agents will execute independently" +echo " 3. Context will be passed between agents" +echo " 4. Review agent will provide final approval or request changes" +echo "" +echo "For more information, see:" +echo " • $AGENTS_DIR/workflow-orchestrator.md" +echo " • $AGENTS_DIR/workflow-example.md" +echo "" From 5a01aaa58dbbb7f88f8067349dae141743f603ec Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 10 Dec 2025 07:32:52 +0000 Subject: [PATCH 3/6] Address code review feedback - remove unused variable and fix table header Co-authored-by: UncleBats <33801297+UncleBats@users.noreply.github.com> --- .github/agents/workflow-example.md | 12 ++++++------ workflow-runner.sh | 1 - 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/.github/agents/workflow-example.md b/.github/agents/workflow-example.md index 4b6b83a..5542141 100644 --- a/.github/agents/workflow-example.md +++ b/.github/agents/workflow-example.md @@ -163,12 +163,12 @@ and properly documented. Approved for merge. ## Workflow Summary -| Agent | Duration | Status | Issues Found | -|-------|----------|--------|--------------| -| develop-agent | 1 iteration | ✓ Complete | 0 | -| test-agent | 1 iteration | ✓ Complete | 0 | -| document-agent | 1 iteration | ✓ Complete | 0 | -| review-agent | 1 iteration | ✓ Approved | 0 critical | +| Agent | Iterations | Status | Issues Found | +|-------|------------|--------|--------------| +| develop-agent | 1 | ✓ Complete | 0 | +| test-agent | 1 | ✓ Complete | 0 | +| document-agent | 1 | ✓ Complete | 0 | +| review-agent | 1 | ✓ Approved | 0 critical | **Total Workflow Iterations**: 1 **Outcome**: Approved diff --git a/workflow-runner.sh b/workflow-runner.sh index 0ceddb3..b477279 100755 --- a/workflow-runner.sh +++ b/workflow-runner.sh @@ -13,7 +13,6 @@ NC='\033[0m' # No Color # Configuration AGENTS_DIR=".github/agents" -LOG_FILE="/tmp/workflow-$(date +%Y%m%d-%H%M%S).log" echo -e "${BLUE}========================================${NC}" echo -e "${BLUE}Agent Workflow Runner${NC}" From 8da0557bf31a3d56d770a2c2274c4916e8fd129a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 10 Dec 2025 09:47:47 +0000 Subject: [PATCH 4/6] Replace shell script with agent handover orchestration Co-authored-by: UncleBats <33801297+UncleBats@users.noreply.github.com> --- .github/agents/README.md | 17 +++- .github/agents/workflow-orchestrator.md | 128 ++++++++++++++++++------ README.md | 32 +++--- workflow-runner.sh | 102 ------------------- 4 files changed, 128 insertions(+), 151 deletions(-) delete mode 100755 workflow-runner.sh diff --git a/.github/agents/README.md b/.github/agents/README.md index 0d82e04..d40e504 100644 --- a/.github/agents/README.md +++ b/.github/agents/README.md @@ -33,14 +33,21 @@ This directory contains the custom agent definitions and workflow orchestration ## Using the Agents +### Agent Handover Orchestration +Invoke agents using @mentions and have each agent hand off to the next: + +``` +@develop-agent [task] → completes and hands off to @test-agent +@test-agent [task] → completes and hands off to @document-agent +@document-agent [task] → completes and hands off to @review-agent +@review-agent [task] → approves or requests changes from @develop-agent +``` + ### Individual Agent Use -Each agent can be invoked with specific instructions following the format in their definition file. +Each agent can be invoked independently with specific instructions following the format in their definition file. ### Workflow Chain -Use the orchestrator guide to chain agents together for a complete development cycle. - -### Automation -The `/workflow-runner.sh` script in the repository root demonstrates the workflow chain. +Use the orchestrator guide to understand handoff protocols and context passing between agents. ## Agent Characteristics diff --git a/.github/agents/workflow-orchestrator.md b/.github/agents/workflow-orchestrator.md index 516f937..55237ad 100644 --- a/.github/agents/workflow-orchestrator.md +++ b/.github/agents/workflow-orchestrator.md @@ -34,38 +34,102 @@ The agent workflow follows this sequence: ## How to Use the Workflow -### Method 1: Sequential Agent Invocation -Call each agent in sequence, passing context from previous agents: - -1. **Start with develop-agent**: - ``` - Task: [Your feature request] - Context: Starting new workflow - ``` - -2. **Invoke test-agent**: - ``` - Task: Test the implementation - Context: [Summary from develop-agent] - ``` - -3. **Invoke document-agent**: - ``` - Task: Document the feature - Context: [Summaries from develop-agent and test-agent] - ``` - -4. **Invoke review-agent**: - ``` - Task: Review all work - Context: [Summaries from all previous agents] - ``` - -### Method 2: Automated Workflow Script -Use the provided workflow script to automatically chain agents: - -```bash -./workflow-runner.sh "Implement feature X" +### Agent Handover Orchestration + +The workflow is orchestrated through **agent handovers**, where each agent completes its work and explicitly hands off to the next agent in the chain. + +#### Step 1: Invoke develop-agent +``` +@develop-agent please implement [feature description] + +Context: New feature request +Requirements: [detailed requirements] +``` + +The develop-agent will: +- Implement the requested feature +- Document what was changed +- Hand off to test-agent with a summary + +#### Step 2: develop-agent hands off to test-agent +The develop-agent completes with: +``` +@test-agent please test the implementation + +Context: Implemented [feature] in the following files: +- src/feature.js +- lib/utils.js + +Changes made: +- Added feature X with methods A, B, C +- Updated utility Y to support Z + +Please verify: [test scenarios] +``` + +#### Step 3: test-agent hands off to document-agent +The test-agent completes with: +``` +@document-agent please document the feature + +Context: Testing complete for [feature] + +Test Results: +- 15/15 tests passed (100%) +- Coverage: 95% +- All edge cases validated + +Please document: +- Feature X API and usage +- Methods A, B, C specifications +- Known limitations: [if any] +``` + +#### Step 4: document-agent hands off to review-agent +The document-agent completes with: +``` +@review-agent please review the complete workflow + +Context: Documentation complete for [feature] + +Documentation created: +- API reference in docs/api.md +- Usage examples in examples/usage.js +- Updated README.md + +All artifacts ready for review: +- Code implementation (develop-agent) +- Test results (test-agent) +- Documentation (document-agent) +``` + +#### Step 5: review-agent completes or restarts workflow +The review-agent either: + +**APPROVED**: +``` +STATUS: ✓ APPROVED + +Quality Assessment: +- Code: Excellent +- Tests: Very Good +- Documentation: Excellent + +Workflow complete. Ready for merge. +``` + +**CHANGES REQUESTED**: +``` +STATUS: ⚠ CHANGES REQUESTED + +@develop-agent please address the following: + +Issues found: +1. Missing input validation for parameter X +2. Edge case not handled: [specific case] + +Priority: High +Please reimplement and restart workflow. ``` ## Workflow States diff --git a/README.md b/README.md index f1ba82a..60088cd 100644 --- a/README.md +++ b/README.md @@ -38,22 +38,30 @@ Each agent is independent and specialized for a specific task, allowing for a ro ## Quick Start -### Using the Workflow Runner +### Using Agent Handovers -Run the demonstration workflow: +Orchestrate the workflow by invoking agents and having them hand off to the next agent in sequence: -```bash -./workflow-runner.sh "Your task description" +``` +@develop-agent implement [your feature] + ↓ (develops code) + ↓ (hands off to test-agent) +@test-agent test the implementation + ↓ (tests code) + ↓ (hands off to document-agent) +@document-agent document the feature + ↓ (creates docs) + ↓ (hands off to review-agent) +@review-agent review all work + ↓ (approves or requests changes) ``` -### Manual Agent Invocation - -Invoke agents sequentially, passing context between them: +Each agent: +1. Completes its specialized task +2. Provides context and artifacts +3. Explicitly hands off to the next agent with @mention -1. Start with develop-agent -2. Pass output to test-agent -3. Pass results to document-agent -4. Final review by review-agent +See [Workflow Orchestrator](.github/agents/workflow-orchestrator.md) for detailed handover examples. ## Documentation @@ -82,7 +90,7 @@ Currently, all agents are placeholders ready to be configured with concrete task ## Features ✓ Four specialized agents with clear roles -✓ Sequential workflow with handoffs between agents +✓ Agent handover orchestration with explicit @mentions ✓ Independent agent operation ✓ Review feedback loop for iterations ✓ Comprehensive documentation diff --git a/workflow-runner.sh b/workflow-runner.sh deleted file mode 100755 index b477279..0000000 --- a/workflow-runner.sh +++ /dev/null @@ -1,102 +0,0 @@ -#!/bin/bash -# Agent Workflow Runner -# This script demonstrates how to chain agents together in sequence - -set -e - -# Colors for output -GREEN='\033[0;32m' -BLUE='\033[0;34m' -YELLOW='\033[1;33m' -RED='\033[0;31m' -NC='\033[0m' # No Color - -# Configuration -AGENTS_DIR=".github/agents" - -echo -e "${BLUE}========================================${NC}" -echo -e "${BLUE}Agent Workflow Runner${NC}" -echo -e "${BLUE}========================================${NC}" -echo "" - -# Check if agents directory exists -if [ ! -d "$AGENTS_DIR" ]; then - echo -e "${RED}Error: Agents directory not found at $AGENTS_DIR${NC}" - exit 1 -fi - -# Function to display agent step -show_agent_step() { - local agent_name=$1 - local step_num=$2 - echo "" - echo -e "${GREEN}>>> Step $step_num: $agent_name${NC}" - echo -e "${BLUE}────────────────────────────────────────${NC}" -} - -# Function to display agent info -show_agent_info() { - local agent_file=$1 - if [ -f "$agent_file" ]; then - echo -e "${YELLOW}Agent Role:${NC}" - grep -A 3 "## Your Role" "$agent_file" | tail -n +2 | head -n 3 - echo "" - fi -} - -# Main workflow -echo -e "Task: ${1:-'Placeholder task - no specific task provided'}" -echo "" -echo "Workflow: develop → test → document → review" -echo "" -echo -e "${YELLOW}Starting agent workflow chain...${NC}" -echo "" - -# Step 1: Develop Agent -show_agent_step "Develop Agent" "1" -show_agent_info "$AGENTS_DIR/develop-agent.md" -echo "Status: This is a placeholder agent demonstration" -echo "Output: Ready to implement features when given concrete tasks" -echo "" - -# Step 2: Test Agent -show_agent_step "Test Agent" "2" -show_agent_info "$AGENTS_DIR/test-agent.md" -echo "Status: This is a placeholder agent demonstration" -echo "Output: Ready to test implementations independently" -echo "" - -# Step 3: Document Agent -show_agent_step "Document Agent" "3" -show_agent_info "$AGENTS_DIR/document-agent.md" -echo "Status: This is a placeholder agent demonstration" -echo "Output: Ready to create comprehensive documentation" -echo "" - -# Step 4: Review Agent -show_agent_step "Review Agent" "4" -show_agent_info "$AGENTS_DIR/review-agent.md" -echo "Status: This is a placeholder agent demonstration" -echo "Output: Ready to review and provide feedback" -echo "" - -# Summary -echo -e "${BLUE}========================================${NC}" -echo -e "${GREEN}Workflow Chain Complete!${NC}" -echo -e "${BLUE}========================================${NC}" -echo "" -echo "Workflow Summary:" -echo " • All 4 agents demonstrated" -echo " • Chain sequence: develop → test → document → review" -echo " • Each agent is independent and ready for concrete tasks" -echo "" -echo -e "${YELLOW}Next Steps:${NC}" -echo " 1. Provide specific tasks to each agent" -echo " 2. Agents will execute independently" -echo " 3. Context will be passed between agents" -echo " 4. Review agent will provide final approval or request changes" -echo "" -echo "For more information, see:" -echo " • $AGENTS_DIR/workflow-orchestrator.md" -echo " • $AGENTS_DIR/workflow-example.md" -echo "" From d5c1f398f482cd9f2bc5f3602eeaf51d0439e49d Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 10 Dec 2025 09:49:46 +0000 Subject: [PATCH 5/6] Add explanation of agent handover mechanism Co-authored-by: UncleBats <33801297+UncleBats@users.noreply.github.com> --- .github/agents/workflow-orchestrator.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/agents/workflow-orchestrator.md b/.github/agents/workflow-orchestrator.md index 55237ad..cbe972d 100644 --- a/.github/agents/workflow-orchestrator.md +++ b/.github/agents/workflow-orchestrator.md @@ -38,6 +38,8 @@ The agent workflow follows this sequence: The workflow is orchestrated through **agent handovers**, where each agent completes its work and explicitly hands off to the next agent in the chain. +**How it works**: When an agent completes its task, it mentions the next agent using `@agent-name` syntax. This triggers the next agent to begin its work with the provided context. The mention acts as both a notification and a handoff of responsibility, ensuring clear transitions between workflow stages. + #### Step 1: Invoke develop-agent ``` @develop-agent please implement [feature description] From bd6b7a54507b4160ab74a101cd002ddbc682aeda Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 10 Dec 2025 09:57:16 +0000 Subject: [PATCH 6/6] Clarify that agents are GitHub Copilot custom agents, not standard @mentions Co-authored-by: UncleBats <33801297+UncleBats@users.noreply.github.com> --- .github/agents/README.md | 18 ++++++++------ .github/agents/workflow-orchestrator.md | 12 +++++++--- README.md | 32 +++++++++++++------------ 3 files changed, 37 insertions(+), 25 deletions(-) diff --git a/.github/agents/README.md b/.github/agents/README.md index d40e504..7d57af2 100644 --- a/.github/agents/README.md +++ b/.github/agents/README.md @@ -2,7 +2,9 @@ ## Overview -This directory contains the custom agent definitions and workflow orchestration documentation for the agentic workflow test system. +This directory contains **custom GitHub Copilot agent definitions** and workflow orchestration documentation for the agentic workflow test system. + +**Important**: These are custom agent definitions for use with GitHub Copilot's agent system, not standard GitHub @mentions. They must be invoked through GitHub Copilot, not directly in GitHub issues or pull requests. ## Structure @@ -33,16 +35,18 @@ This directory contains the custom agent definitions and workflow orchestration ## Using the Agents -### Agent Handover Orchestration -Invoke agents using @mentions and have each agent hand off to the next: +### Custom Agent Invocation +These are **custom GitHub Copilot agents**. Invoke them through GitHub Copilot's custom agent system: ``` -@develop-agent [task] → completes and hands off to @test-agent -@test-agent [task] → completes and hands off to @document-agent -@document-agent [task] → completes and hands off to @review-agent -@review-agent [task] → approves or requests changes from @develop-agent +Custom agent: develop-agent → completes task → provides context +Custom agent: test-agent → completes task → provides context +Custom agent: document-agent → completes task → provides context +Custom agent: review-agent → approves or requests changes ``` +The `@agent-name` syntax in documentation is shorthand representing these custom agents, but they are invoked through GitHub Copilot, not as standard GitHub mentions. + ### Individual Agent Use Each agent can be invoked independently with specific instructions following the format in their definition file. diff --git a/.github/agents/workflow-orchestrator.md b/.github/agents/workflow-orchestrator.md index cbe972d..ac6fdf0 100644 --- a/.github/agents/workflow-orchestrator.md +++ b/.github/agents/workflow-orchestrator.md @@ -1,6 +1,10 @@ # Agent Workflow Orchestrator -This document describes how to chain the custom agents together to create a complete development workflow. +This document describes how to chain the custom GitHub Copilot agents together to create a complete development workflow. + +## What Are These Agents? + +These are **custom GitHub Copilot agent definitions** stored in `.github/agents/`. They are NOT standard GitHub @mentions that work in issues or PRs. Instead, they are specialized agent prompts that can be invoked through GitHub Copilot's custom agent system. ## Workflow Overview @@ -36,9 +40,11 @@ The agent workflow follows this sequence: ### Agent Handover Orchestration -The workflow is orchestrated through **agent handovers**, where each agent completes its work and explicitly hands off to the next agent in the chain. +The workflow is orchestrated through **custom agent handovers** within the GitHub Copilot agent system. These are custom agents defined in `.github/agents/` that can be invoked through GitHub Copilot. + +**How it works**: These agents are custom GitHub Copilot agents (not standard GitHub @mentions). When working with GitHub Copilot, you invoke each custom agent in sequence. Each agent completes its specialized task and provides output that informs the next agent in the workflow. The handoff happens by explicitly invoking the next agent with the context from the previous agent's work. -**How it works**: When an agent completes its task, it mentions the next agent using `@agent-name` syntax. This triggers the next agent to begin its work with the provided context. The mention acts as both a notification and a handoff of responsibility, ensuring clear transitions between workflow stages. +**Important**: These `@agent-name` references in the examples below represent custom GitHub Copilot agents defined in this repository's `.github/agents/` directory. They are invoked through the GitHub Copilot custom agent system, not through standard GitHub issue/PR mentions. #### Step 1: Invoke develop-agent ``` diff --git a/README.md b/README.md index 60088cd..6c186ad 100644 --- a/README.md +++ b/README.md @@ -4,11 +4,11 @@ Repository for testing chaining of agents and handovers ## Overview -This repository demonstrates a complete agent workflow system with four specialized agents that work together in a coordinated pipeline: +This repository demonstrates a complete agent workflow system with four specialized **custom GitHub Copilot agents** that work together in a coordinated pipeline: **develop → test → document → review** -Each agent is independent and specialized for a specific task, allowing for a robust, iterative development workflow. +Each agent is a custom agent definition stored in `.github/agents/` that can be invoked through the GitHub Copilot agent system. Each agent is independent and specialized for a specific task, allowing for a robust, iterative development workflow. ## Agent Workflow @@ -38,28 +38,30 @@ Each agent is independent and specialized for a specific task, allowing for a ro ## Quick Start -### Using Agent Handovers +### Using Custom Agent Handovers -Orchestrate the workflow by invoking agents and having them hand off to the next agent in sequence: +These agents are **custom GitHub Copilot agents** defined in `.github/agents/`. Orchestrate the workflow by invoking these custom agents through GitHub Copilot's agent system, having each agent hand off to the next in sequence: ``` -@develop-agent implement [your feature] +Invoke custom agent: develop-agent to implement [your feature] ↓ (develops code) - ↓ (hands off to test-agent) -@test-agent test the implementation + ↓ (provides context for next agent) +Invoke custom agent: test-agent to test the implementation ↓ (tests code) - ↓ (hands off to document-agent) -@document-agent document the feature + ↓ (provides context for next agent) +Invoke custom agent: document-agent to document the feature ↓ (creates docs) - ↓ (hands off to review-agent) -@review-agent review all work + ↓ (provides context for next agent) +Invoke custom agent: review-agent to review all work ↓ (approves or requests changes) ``` -Each agent: -1. Completes its specialized task -2. Provides context and artifacts -3. Explicitly hands off to the next agent with @mention +Each custom agent: +1. Is invoked through GitHub Copilot's custom agent system +2. Completes its specialized task +3. Provides context and artifacts for the next agent + +**Note**: These are custom agent definitions, not standard GitHub @mentions. They must be invoked through GitHub Copilot, not directly in issues or PRs. See [Workflow Orchestrator](.github/agents/workflow-orchestrator.md) for detailed handover examples.