changedA permitted patch passed your checks in a fresh checkout.
Reviewproposal.patch, apply it on a branch and run your checks.Open-source repository maintenance
Repo Maintainer gives a coding agent one focused task in a temporary clone of your repository. The patch it proposes is applied to a fresh checkout, your own checks run against it, and you get back a patch and a report. Nothing is merged for you.
HEAD into a temporary directory. Your working tree is never touched.Fix the retry helper’s zero-retry case and add a regression test.
@@ -18,7 +18,8 @@ export async function retry(fn, maxRetries) for (let attempt = 0; ; attempt++) { - if (attempt === maxRetries) return; + if (attempt >= maxRetries) return; + // Covers a zero-retry budget.
+ test("returns after one attempt with zero retries", async () => { + expect(await retry(fail, 0)).toBeUndefined(); …
$ npm testpassed$ git diff --checkpassed.maintainer-output/run-024/proposal.patchResults
changedA permitted patch passed your checks in a fresh checkout.
Reviewproposal.patch, apply it on a branch and run your checks.unchangedNo patch was produced.
Read the assessment inreport.json.blockedThe task or its checks could not complete. A partial patch may be kept.
Read the blockers, fix the task, configuration or access, and rerun.Passing checks is evidence, not proof. Replace the default whitespace check with the tests, linters and builds that cover the behavior you care about.
Boundaries
HEAD. Uncommitted edits are not included.Two ways to run
Run locally, in Docker, or through GitHub Actions. Keep execution and credentials in your environment, with your own scheduling and project tools. Use the command line, or the Python, TypeScript and Rust SDKs.
$ cargo install --git https://github.com/djsydney04/repo_maintainer --locked
$ repo-maintainer init
$ repo-maintainer validate
$ repo-maintainer run --task task.md
A workspace for your tasks, connections, and results. Bring an OpenAI API key; inference uses your API account. ChatGPT plan connection is planned separately.
Hosted availability is shown in the workspace. No automatic publishing.