Azure DevOps MCP Server
- project-management
<AiTaskAgent>
<GlobalRule alwaysApply="true">If an ANY point you get stuck, review troubleshooter.xml to help you troubleshoot the problem.</GlobalRule>
<GlobalRule alwaysApply="true">All new code creation should ALWAYS follow tdd-cycle.xml</GlobalRule>
<InitialSetup order="1">
<Step order="1">Read the dream team documentation at project-management/planning/the-dream-team.md to understand the team structure and roles</Step>
<Step order="2">Read all files in the project-management/planning directory to understand the project architecture, features, and structure</Step>
<Step order="3">Review the reference MCP server in project-management/reference/mcp-server to understand:
- The server architecture and components from README.md
- Configuration in package.json and tsconfig.json
- Implementation patterns in src/ directory
- Get a basic understanding of what we're trying to build by reviewing src/github/index.ts
- Available tools and integrations
</Step>
<Step order="4">Examine the current task list by viewing the project-management/task-management/ files todo.md and doing.md</Step>
<Step order="5">If there is a task in doing.md move directly into TaskWorkflow. If not take the next task from todo.md and move it to doing.md, removing it from todo.md. After moving the task you should extend it with a phase property to be used in TaskWorkflow and a section for notes and sub-tasks.</Step>
<Step order="6">Create a new branch for the current task, branching from the latest main branch. Use a descriptive name for the branch, related to the task, by running ./create_branch.sh <branch_name>.</Step>
<Step order="7">Read tdd-cycle.xml to understand the TDD cycle.</Step>
<Step order="8">Start the research phase of TaskWorkflow.</Step>
</InitialSetup>
<TaskWorkflow order="2">
<Phase name="Research" order="1">
<Step order="1">Research the selected task thoroughly</Step>
<Step order="2">Create notes about your approach</Step>
<Step order="3">Break down the task into sub-tasks only if necessary (prefer simplicity)</Step>
<Step order="4">If the task is straightforward, keep it as a single task</Step>
</Phase>
<Phase name="Planning" order="2">
<STOPPING_POINT order="1">Present your sub-tasks (if any) and approach for approval</STOPPING_POINT>
</Phase>
<Phase name="Implementation" order="3">
<Step order="1">Assume the role and persona of the team member assigned to the task</Step>
<Step order="2">If multiple roles are involved, simulate pair/mob programming</Step>
<Step order="3">Use Test-Driven Development for all coding tasks</Step>
<Step order="4">Create any necessary readme.md files for documentation or reference</Step>
</Phase>
<Phase name="Completion" order="4">
<Step order="1">When the task is complete, move it from doing.md to project-management/task-management/done.md</Step>
<STOPPING_POINT order="2">Present your work for review</STOPPING_POINT>
<Step order="3">Address any feedback, and present for re-review; Continue in this manner until approved</Step>
<Step order="4">Run ./finish_task.sh "PR Title" "PR Description" to commit, push, and create a PR</Step>
<Step order="5">Wait for feedback before starting a new task</Step>
</Phase>
</TaskWorkflow>
<WorkingPrinciples>
<Principle>Use the tree command when exploring directory structures</Principle>
<Principle>Follow KISS (Keep It Stupid Simple) and YAGNI (You Aren't Gonna Need It) principles</Principle>
<Principle>Focus on delivery rather than over-engineering or gold-plating features</Principle>
<Principle>Implement Test-Driven Development for all code</Principle>
<Principle>Use the GitHub CLI (gh) for any GitHub-related tasks</Principle>
<Principle>Use Puppeteer if web browsing is required</Principle>
<Principle>If any task is unclear, stop and ask for clarification before proceeding</Principle>
</WorkingPrinciples>
</AiTaskAgent>