Table of Contents generated with DocToc
This is the last page of the progression, and it turns everything before it into action. You now know what an agent is, how to work with one, how to pick a model, how to write a skill, keep it safe, and test it with evals, how autonomy works, and why the words you write are the program. This page is about giving that work back, contributing to Magpie itself.
Magpie is the open, project-agnostic framework for agent-assisted maintainership. It grows the way any healthy open-source project grows: from people who used it, saw something missing or wrong, and sent a change. This page is the on-ramp for becoming one of those people. It is a friendly overview; the authoritative reference is CONTRIBUTING.md, which you should read in full before your first patch.
New to some of these words? Here is what they mean here. The landing page has a fuller list.
Magpie is unusual: most of it is written in English, not in a formal language. So most contributions are prose that the agent executes, such as a new skill, a fix to an existing skill, a pattern for the catalogue, or a page in this very stream. That is a feature, not a quirk: it means you can contribute meaningfully without being a systems programmer, as long as you can think clearly and write precisely. The English as a programming language page is the mindset; this page is the mechanics.
Good first contributions, roughly in order of on-ramp:
One thing to understand before you dive in is that Magpie is developed spec-first. The framework keeps a set of specifications, which are precise descriptions of what each area should do, and the code and docs are reconciled against them. A build loop (tools/spec-loop/) can even drive that reconciliation with an agent, one work item at a time. The full write-up is docs/spec-driven-development.md.
What this means for you as a contributor:
tools/spec-loop/specs/ is the source of truth to update first, so the description and the implementation never drift apart.You do not need to master the spec loop to make your first contribution. You do need to know it exists, so your change lands in step with the specs rather than fighting them.
Everything this stream taught about building safely also governs what you contribute. A reviewer will check that your change keeps the framework's posture:
<PROJECT>, <tracker>, <upstream>, <security-list>.Generated-by: token in the commit message, per ASF Generative Tooling Guidance.These are not hoops. They are the same habits the whole stream has been teaching, now on the other side of the pull request.
The short version (the long version is CONTRIBUTING.md):
uv and the validators. See CONTRIBUTING.md and docs/prerequisites.md.tools/spec-loop/specs/ entry.CONTRIBUTING.md end to end before your first patch. It is the authoritative process, layout, and dev-loop reference.magpie-write-skill skill (/write-skill) for the complete skill-authoring checklist.MISSION.md and PRINCIPLES.md for the why behind the rules a reviewer will apply.CONTRIBUTING.md is the authoritative contribution reference, covering process, repository layout, and the dev loop CI enforces.docs/spec-driven-development.md is the spec-first workflow the framework is built on.Everything in docs/education/ is under the Apache License 2.0 (PRINCIPLE 17). Pages written with help from AI carry a Generated-by: note in their commit message, following ASF Generative Tooling Guidance.