Skip to main content
Version: 3.0.0-preview

Agents and skills

The Maester repository ships AI agents and skills that know its conventions: how a check is written, which attributes it needs, how pull requests and issues are labelled. They work in GitHub Copilot and Claude Code when you open the repository. AGENTS.md holds the rules every agent follows.

Agentsโ€‹

An agent is a role with its own instructions and tools. Ask for it by name, for example "use maester-test-planner to plan a check for guest invite settings".

AgentForWhat it doesHow to use it
maester-issue-managerContributors and maintainersReserves MT test IDs on issue #697 and keeps tracking issues tidy for new checks.Called by the other agents, or ask Claude Code to use it
maester-test-expertContributors writing or reviewing checksWrites, reviews and documents checks, including their attributes and the Test.<ID>.md guide.Pick it in Copilot's agent list, or ask Claude Code to use it
maester-test-plannerContributors planning a new checkPlans a new or changed check before any code is written: files, attributes, validation steps.Called by the other agents, or ask Claude Code to use it
maester-triageMaintainers and reviewersLabels and re-labels PRs, issues and discussions with the label rubric so the queue can be filtered.Pick it in Copilot's agent list, or ask Claude Code to use it

Skillsโ€‹

A skill is a body of knowledge an agent loads when the task needs it. The agents above read these, and any agent can follow them directly.

SkillForWhat it covers
maester-test-expertContributors writing or reviewing checksThe full guide to writing a check: layout, templates, attributes, rubric, validation and remediation.
maester-triageMaintainers and reviewersThe label rubric for PRs, issues and discussions, and the steps for applying it.

Changing an agent or skillโ€‹

Each agent and skill has one source file, which GitHub Copilot reads:

  • an agent is .github/agents/<name>.agent.md
  • a skill is .github/skills/<name>/SKILL.md

Everything else is generated from those files by build/github/Update-AgentFiles.ps1: the Claude Code copies under .claude/agents/ and .claude/skills/, and this page. Never edit the generated files.

To add or change one:

  1. Edit or create the source file. Its frontmatter needs name and description, and a metadata block with audience (who uses it) and summary (one sentence on what it does). An agent also needs metadata.claude-tools: the Claude Code tools it may use, or all.
  2. Run ./build/github/Update-AgentFiles.ps1.
  3. Commit the source file and the generated files together. powershell/tests/general/AgentFiles.Tests.ps1 fails the build when a generated file is out of date.