Repo-native work routing for maintainers who want agent fixes, contributor bounties, and PR verification to stay tied to reviewable proof.
MaintainerOSS is the open-source workspace for MaintainerOS. It imports GitHub issue backlogs, classifies work into operating lanes, prepares context for safe automation, keeps risky work in maintainer review, and gates bounty payouts on fresh PR verification.
The landing page explains the end-to-end issue workflow: GitHub import, context gathering, CLลD route decisions, PR and Greptile gates, and merge or payout proof.
Maintainers can connect a public GitHub repository, import open issues, and route the backlog into MaintainerOS without requiring private-repo scopes.
The docs page describes the operating model for GitHub import, routing lanes, Greptile verification, and Clustly bounty packaging.
MaintainerOS turns issue backlogs into four clear operating lanes:
- AI: scoped issues that can become agent work orders.
- DEV: risky or architectural issues that need maintainer judgment.
- CLUSTLY: bounty-ready issues with funding and payout proof requirements.
- CLARIFY: incomplete issues that need a reply, repro request, or close recommendation.
MaintainerOS treats automation as a proposal, not a result. Agent work, contributor submissions, and bounty releases all stay behind explicit verification gates:
issue -> route -> context -> attempt or task -> PR -> verification -> maintainer acceptance -> merge or payout
Recent main work tightened that boundary by adding async Greptile verification evidence, applying agent text edits directly, hardening patch execution, recounting generated patches, and including repository file context in agent patch requests.
app/ Next.js routes and API handlers
components/blocks/ Product, docs, changelog, and repository surfaces
components/maintaineros/ MaintainerOS workflow panels and controls
data/mock-repos/ Fixture issue backlogs for local demo mode
infra/neon/ Neon schema and import support
lib/maintaineros/ Routing, provider adapters, verification, payout logic
public/screenshots/ README screenshots captured from the local app
scripts/ Smoke tests, fixture generation, provider prep
Use Node.js >=20.9.0.
npm install
cp .env.example .env.local
npm run devOpen http://localhost:3000. If that port is busy, Next.js will print the alternate local URL.
Fixture mode is the default path for local work and demos:
MAINTAINEROS_OFFLINE_MODE=true
MAINTAINEROS_DATA_MODE=fixtureLive imports use Neon/Postgres plus GitHub settings from .env.example:
MAINTAINEROS_OFFLINE_MODE=false
MAINTAINEROS_DATA_MODE=live
NEON_DATABASE_URL=...
GITHUB_TOKEN=...GitHub imports default to the first 5,000 open issues so large public repositories can populate the live dashboard without manual limit changes. The import path also captures open pull requests and Greptile comments so verification queues can show live review evidence.
npm run dev
npm run lint
npm run typecheck
npm run build
npm run ciProvider and demo prep:
npm run fixtures:generate
npm run github:seed-demo
npm run neon:smoke-import
npm run prep:check
npm run backend:checkBefore deploying or landing changes, run the narrowest useful checks for the touched surface. For README-only changes, verify Markdown assets exist and run:
npm run lint
npm run buildFor application or provider changes, use:
npm run ci

