
Contribos
io.github.adityatiwari101104v0.2.1Updated Oct 3, 2026
Help open-source contributors earn maintainer trust: repo rules, briefs, and pre-submit checks.
Overview
Gives an assistant nine tools to research open-source repos, draft contribution proposals, and pre-check pull requests before submitting.
- What it does
- ContribOS exposes nine MCP tools (policy, brief, setup, diagnose, check, review, find, claim, tone) that read a repository's contribution rules, AI policy, CI setup and past merged changes. It ranks files to read, drafts issue proposals and review replies, checks tone and AI-disclosure trailers, and can run a test with and without your change. It never opens pull requests, posts comments or claims issues itself.
- When to use it
- Useful for contributors preparing a pull request to an unfamiliar repository, or for coding agents that need repo-specific rules and pre-submit checks. It helps when you want evidence-backed file targets, past-PR precedent, and a review of your explanation before a maintainer sees it.
- Requirements
- Local Python 3.10+ package installed via pip, plus git. GITHUB_TOKEN is needed for find, claim or brief from an issue URL, review and record. Optional AI summaries use CONTRIBOS_LLM with ANTHROPIC_API_KEY or OPENAI_API_KEY, and CONTRIBOS_MODEL. Cache lives in ~/.cache/contribos, configurable via CONTRIBOS_CACHE.
Installation
In SourceWeft
- Open Contribos in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
ContribOS
[PyPI version] [Downloads] [License: MIT] [Python versions] [Dependencies]
Get trusted. Get merged. Come back. ContribOS helps new open-source contributors earn trust. It finds where you're welcome, shows how this repo wants the change done, checks that you truly understand your change, coaches you through review, and turns merged PRs into a record the next maintainer can verify.
In 2026, writing code is not the hard part of contributing. AI made PRs cheap, maintainers answered with PR caps, vouch lists and AI policies, and newcomer merge rates fell. ContribOS makes your PR worth a maintainer's time.
ContribOS never opens PRs, posts comments or claims issues for you, and it never writes your explanation. It points, and you decide.
The journey
Install
Everything that can run offline does: policy, brief --title, claim --title, setup, check, bench and review --data need only git. Add --offline to skip the API, and --update to fetch new commits. Clones and indexes are cached in ~/.cache/contribos (CONTRIBOS_CACHE).
Optional AI summaries: CONTRIBOS_LLM=anthropic (with ANTHROPIC_API_KEY) or CONTRIBOS_LLM=openai (with OPENAI_API_KEY), plus optional CONTRIBOS_MODEL. The model only explains evidence ContribOS already gathered. Any sentence citing a file outside that evidence is dropped.
How it works
repo.pyhandles cached clones. It reads any revision withgit showandgit grep, so no checkout is needed.precedent.pybuilds a SQLite index of main-line changes (squash and merge PRs), the files they touched, and the issues they fixed.policy.pyis the policy radar, built from contribution docs, AI policies, templates, vouch lists, CI config and history.brief.pyranks files by rare-term matches in code, path matches, and files touched by similar past PRs. It also finds related tests via co-change history.check.pyis the pre-submit check, the proof-of-understanding check and the PR draft.setup_doctor.pyproduces setup steps from CI and docs, and diagnoses failures.find.pychecks issue takeability, repo welcome and responsiveness.claim.pydrafts the proposal and vouch introduction.proof.pyruns a test with and without your change (files restored infinally).tone.pychecks text you're about to post.agent_rules.pywrites the local agent skill and hooks.review.pyclassifies review comments, drafts replies and tracks follow-through.record.pybuilds the contribution record (markdown plus a self-contained HTML page).llm.pyis the optional provider layer (Anthropic or OpenAI) with citation grounding.mcp_server.pyis a dependency-free MCP stdio server.github.pyis the optional API client. Every caller handles its absence.bench.pyruns the history benchmark.
Benchmark (2026-09-28, offline, PR titles standing in for issues)
Matching against past PRs barely improves file finding, which supports the plan's bet that finding files is a commodity. The value is in how past PRs did it and what reviewers asked. The next benchmark needs real issue text and review comments, which requires GITHUB_TOKEN.
Status
- Tested on real repos (Flask, pytest, Ghostty):
policy,brief,claim --title,setup,check,bench,mcp. - Tested against the live GitHub API on 2026-10-01:
find(scored issue takeability and maintainer response medians onmaximilianfeix/proxy-scraperandbrekkylab/backlot),claim <url>(drafted pre-coding proposals with past similar PRs and file targets), andrecord(verified public merged PR portfolio for@adityatiwari101104). - Tested on temporary git repos:
agent-rules(git status stays clean, the guard blocksgh pr create, the commit-msg hook enforces sign-off and the trailer),check --verify-test,tone, policy radar v2. - Tests:
python -m unittest discover -s tests(40 tests, CI matrix on Linux, macOS, and Windows).
Releasing
To publish a new release to PyPI:
Source: README.md at commit 9ddb5f4
Tools
0Version history
1- v0.2.1LatestOct 3, 2026

