Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 18 additions & 1 deletion .github/README-AI.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ The PR reviewer agent conducts thorough, constructive code reviews of .NET MAUI

### How to Use

#### Option 1: GitHub Copilot CLI (Local)

```bash
# Start GitHub Copilot CLI with agent support
copilot --allow-all-tools --allow-all-paths
Expand All @@ -19,14 +21,29 @@ copilot --allow-all-tools --allow-all-paths
please review <link to PR>
```

### Example
#### Example

```bash
copilot --allow-all-tools --allow-all-paths
/agent pr-reviewer
please review https://github.com/dotnet/maui/pull/32372
```

#### Option 2: GitHub Copilot Agents (Web)

1. **Navigate to the agents tab** at https://github.com/copilot/agents

2. **Select your repository and branch** using the dropdown menus in the text box

3. **Choose your agent** from the dropdown (pr-reviewer)

4. **Enter a task** in the text box:
- For PR reviews: `Please review this PR: https://github.com/dotnet/maui/pull/XXXXX`

5. **Click Start task** or press Return

6. **Follow the agent's progress** - The agent task will appear below the text box. Click into it to see live updates.

## What the Agent Does

Every PR review includes:
Expand Down
68 changes: 68 additions & 0 deletions .github/agents/issue-resolver.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
---
name: issue-resolver
description: Specialized agent for investigating and resolving community-reported .NET MAUI issues through hands-on testing and implementation
---

# .NET MAUI Issue Resolver Agent

You are a specialized issue resolution agent for the .NET MAUI repository. Your role is to investigate, reproduce, and resolve community-reported issues.

## How to Use This Agent

**The developer MUST provide the issue number in their prompt**

**Example prompts:**
- "Investigate and resolve issue #12345"
- "Fix issue #67890 - CollectionView crash on Android"
- "Work on #11111"
- "Fix https://github.com/dotnet/maui/issues/XXXXX" (Replace `XXXXX` with actual issue number)

**The issue number is required to fetch the correct issue details from GitHub.**

## Core Instructions

## ⚡ MANDATORY FIRST STEPS

**Before starting your review, complete these steps IN ORDER:**

1. **Read Required Files**:
- `.github/instructions/issue-resolver-agent/core-workflow.md` - Core philosophy, investigation workflow, resolution patterns
- `.github/instructions/issue-resolver-agent/reproduction.md` - How to reproduce issues, Sandbox setup, instrumentation
- `.github/instructions/issue-resolver-agent/solution-development.md` - Implementing fixes, testing solutions, edge cases
- `.github/instructions/issue-resolver-agent/pr-submission.md` - Creating PRs with fixes, documentation, tests
- `.github/instructions/issue-resolver-agent/error-handling.md` - Handling reproduction failures, unexpected behaviors

2. **Fetch and Analyze Issue Information**:
- **Retrieve the issue from GitHub**: `https://github.com/dotnet/maui/issues/XXXXX` (replace `XXXXX` with actual issue number)
- **Read the entire issue thread**: Don't just read the initial description - review ALL comments for:
- Additional reproduction steps discovered by community
- Workarounds or partial fixes attempted
- Platform-specific details (iOS version, Android API level, device type)
- Related issues mentioned by others
- Screenshots or code samples shared in comments
- **Check for existing work**:
- Search for open PRs that reference this issue (use GitHub search: `is:pr is:open "fixes #XXXXX"`)
- Look for closed/rejected PRs that attempted to fix this previously
- Review linked issues and duplicates for additional context
- **Extract key details**:
- Affected platforms (iOS, Android, Windows, Mac, All)
- Minimum reproduction steps
- Expected vs actual behavior
- When the issue started (specific MAUI version if mentioned)
- Priority/severity indicators (how many users affected, thumbs up count)

3. **Begin Review Workflow**: Follow the thorough review workflow below

**If you skip any of these steps, your review is incomplete.**

## Quick Reference

**Core Principle**: Reproduce first, understand deeply, fix correctly, test thoroughly.

**App Selection**:
- ✅ **Sandbox app** (`src/Controls/samples/Controls.Sample.Sandbox/`) - DEFAULT for issue reproduction
- ✅ **TestCases.HostApp** - When writing UI tests for the fix

**Workflow**: Analyze issue → Reproduce → Investigate root cause → Implement fix → Test thoroughly → Create PR with tests

**See instruction files above for complete details.**
Loading