Building an AI Project Manager to Manage Building AI Agents

We needed a way to manage the rollout of 11 AI agents without losing track of what’s done, what’s blocked, and what’s next. So we built an AI Project Manager — and made it the first agent it manages. Here’s how recursive dogfooding works in practice.

The Meta Problem

We’re building the AI Workforce — 11 AI agents extracted from our production SaaS products. Each agent goes through planning, development, testing, and launch. Each has a spec, code, tests, GitHub issues, and a milestone.

With 11 agents, that’s 55+ specs, hundreds of issues, and a dependency chain where Agent 5 can’t start until Agents 3 and 4 ship. Tracking this in our heads wasn’t going to work.

The Solution: Gate Checks

We built a governance engine with a simple concept: gate checks. Before a project can move from one phase to the next, it has to pass automated validations.

Planning → Development requires:

  • A spec file exists
  • GitHub issues are created with the right labels

Development → Testing requires:

  • Code directory exists
  • Test files exist

Testing → Production requires:

  • All tests pass

Simple, but effective. You can’t “forget” to write tests or skip the spec — the gate check catches it.

7 Built-in Checks

The gate engine ships with 7 checks that cover the basics:

  1. spec_exists — Does the spec file exist at the configured path?
  2. code_exists — Does the code directory exist?
  3. tests_exist — Are there test files in tests/?
  4. tests_passing — Does pytest pass?
  5. issues_created — Do GitHub issues exist with the project’s label?
  6. readme_exists — Is there a README?
  7. milestone_progress — What % of milestone issues are closed?

Each check is a Python function that returns pass/fail with a message. Adding custom checks is one function and one line of registration.

Multi-Project Management

The real value showed up when we started managing multiple agents at once. The /list-projects command shows everything at a glance — what’s active, what’s launched, what’s in the backlog. The /work P3 command switches context: loads the spec, shows open issues, runs tests, and tells you what’s next.

Dependencies are tracked too. P5 (Campaign Designer) depends on P3 and P4. If you try to /work P5 before those ship, the agent warns you.

The Recursive Part

The governance agent was P1 — the first agent we built. We used it immediately to manage P2 (Mail Triage Agent), which meant the governance agent was managing the development of the second agent while we were still improving the governance agent itself.

This created a useful feedback loop:

  • Running /plan-check during P2 development showed us what was missing (issues not closed, milestones at 0%)
  • The gate checks caught a missing README on P2 before we’d have noticed
  • Milestone tracking kept us honest about progress vs. plan

By the time P2 launched, the governance agent had been battle-tested across 14 issues, 2 milestones, and 4 sprints of real development work.

Try It

The AI Project Manager is in beta. If you’re managing multiple projects and want automated quality gates, get in touch. Plans start at $49/mo.

Leave a Comment