Gitcontribute

io.github.morluto由 GitHub 账号 morluto 发布v3.0.2更新于 Oct 27, 2026

Local-first GitHub contribution research workbench

已验证STDIO仅桌面知识与记忆开发者工具

概览

AI 生成的概览

本地优先的 GitHub 贡献调研工作台,让助手在动手改代码前核查 issue、收集证据并准备补丁。

可以做什么
  • 查找并按贡献契合度、证据、范围和协作风险排序候选 issue
  • 调研指定 issue:仓库指引、讨论、代码上下文、既往修复、竞争工作与缺失证据
  • 在本地语料中检索已存储的讨论串和已索引代码
  • 记录调查与证据,定义并运行验证命令,比较基线与候选运行结果
  • 准备 PR 草稿与交接材料供人工审阅
适用场景
适合希望让编码助手挑选或核查值得参与的开源 issue、判断 issue 是否已过时或已有人实现,并在写补丁前整理证据与验证结果的场景。
运行要求
以本地 stdio 进程运行,可通过 npm(需 Node.js 18 或更新版本)或 Go 构建安装;需要 git,gh CLI 为可选项,可通过 gh auth token 提供认证。网络访问需显式触发,仅用于同步或拉取;数据存放在本地 SQLite 语料库中。
安装前请注意
同步或拉取会联网访问 GitHub 并写入本地语料库;获取和索引代码会调用 git。显式验证命令会以你的用户权限在本机执行,只应批准可信命令。它不具备 GitHub 写入能力,也没有托管语料库或遥测,草稿需由你审阅后自行提交。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Gitcontribute,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

GitContribute

Contribution research for agents: check repository guidance, related work, code context, and validation before writing a patch.

[CI] [npm] [Go] [License] [Platforms]

Quick start · Workflow · CLI · MCP · Safety · Documentation

[GitContribute contribution workbench]

gitcontribute is available as a CLI, terminal UI, and MCP server for coding agents.

GitHub can show you open issues. It cannot tell you whether an issue is still relevant, already being implemented, appropriate for an outside contributor, or supported by enough evidence to work on safely.

GitContribute collects repository guidance, related issues and pull requests, code context, accepted contribution patterns, and validation results in a local SQLite corpus. Results identify missing or stale coverage.

text
find work -> understand it -> check competing work -> prove the change -> prepare the handoff

[!IMPORTANT] GitContribute never writes to GitHub. It prepares local research and drafts for you to review.

Quick start

Run the guided setup with Node.js 18 or newer:

sh
npx --yes gitcontribute@latest setup

Choose MCP to use GitContribute from a supported coding agent, CLI for the terminal and TUI, or Both. The wizard shows every planned change before applying it. Adding a repository during setup does not contact GitHub or start a sync.

After setup, start with a repository or an exact issue:

TaskCoding agentCLI
Find candidatesFind contribution candidates in owner/repo. Rank them by contribution fit, evidence, scope, and coordination risk.gitcontribute archive sync owner/repo
gitcontribute radar owner/repo --limit 10
Research an issueInvestigate owner/repo#42. Check guidance, discussion, code, prior fixes, competing work, and missing evidence.gitcontribute archive sync owner/repo --numbers 42
gitcontribute research brief issue:owner/repo#42

Results include source references, coverage gaps, and suggested next steps.

Other installation options

Install a persistent command:

sh
npm install --global gitcontribute@latestgitcontribute setup

Pin GitContribute to a project:

sh
npm install --save-dev gitcontributenpm exec -- gitcontribute setup --mode mcp --codex --token-source none --yes

Build from source with Go 1.26 or newer:

sh
go install github.com/morluto/gitcontribute/cmd/gitcontribute@latest

Native npm binaries are included for macOS ARM64/x64, Linux ARM64/x64, and Windows x64. You also need git. The gh CLI is optional and can provide authentication through gh auth token.

Contribution workflow

1. Find a candidate

Search a repository or rank its open issues by available evidence, scope, risks, blockers, and signs that maintainer coordination is needed.

text
Find contribution candidates in golang/go. Exclude issues with activeimplementation work and explain why each remaining candidate is worthinvestigating.

The ranking only covers stored observations. Results report incomplete coverage.

2. Research an issue

Build a research brief from the issue, repository guidance, discussion, linked work, indexed code, and historical contributions. Extracted maintainer text and checkboxes are not presented as complete acceptance criteria.

text
Investigate issue owner/repo#42. Summarize the confirmed problem, likely scope,relevant code, maintainer guidance, and open questions.

3. Check related work

Look for duplicate reports, linked pull requests, closing relationships, and semantically overlapping work before investing in an implementation.

text
Check whether owner/repo#42 has duplicate reports or competing implementationwork. Tell me what you checked and identify any missing coverage.

Incomplete coverage is reported instead of being treated as proof that no competing work exists. In the MCP workflow, follow the returned typed recovery action, poll the durable job, and reread the affected exact thread or repository before drawing that conclusion.

4. Validate a change

Record a reproduction, test, benchmark, or other validation and compare the unmodified baseline with a candidate. Validation commands run only after explicit approval.

text
Validate my candidate change against the baseline. Run the approved checks,record both results, and explain whether the evidence supports the change.

Stored runs include the command, outcome, timing, and available process metrics.

5. Prepare a draft

Create a local issue, pull-request, or review draft tied to the research and validation evidence already collected.

text
Prepare a pull-request draft for this contribution. Tie its claims to therecorded evidence, include the validation results, and do not post anything.

Draft revisions retain their exact rendered bytes and provenance.

Interfaces and storage

GitContribute stores repositories, threads, code snapshots, investigations, evidence, validation results, and contribution outcomes in SQLite. Network access is explicit; once information has been synced, corpus search and inspection work offline.

text
 GitHub read APIs                  Local checkout       |                                |       | explicit sync / hydrate        | explicit index / acquire       v                                v  +------------------------------------------------+  |              Local SQLite corpus               |  | observations · coverage · evidence · outcomes  |  +------------------------+-----------------------+                           | offline reads                 +---------+---------+                 v                   v              CLI / TUI          Coding agents

The CLI and MCP server use the same application services and side-effect boundaries.

CLI

The CLI exposes the same workflow without requiring an MCP client:

sh
# Sync repository context and current threadsgitcontribute archive sync-context owner/repogitcontribute archive sync owner/repo
# Find and inspect contribution candidatesgitcontribute radar owner/repo --limit 10gitcontribute research brief issue:owner/repo#42
# Search stored threads and indexed codegitcontribute search threads "connection timeout" --repo owner/repogitcontribute search code "context.WithTimeout" --repo owner/repo

For implementation work:

sh
gitcontribute investigation start-thread issue:owner/repo#42 --jsongitcontribute workspace create <investigation-id>gitcontribute validation define --kind=test --command="go test ./..." \  --working-dir=/path/to/workspace <investigation-id>gitcontribute validation run <validation-id> --kind=base --executegitcontribute validation run <validation-id> --kind=candidate --executegitcontribute validation compare <base-run-id> <candidate-run-id>gitcontribute readiness opportunity <opportunity-id>gitcontribute prepare pr --approach="Bound retries with context" \  --workspace <workspace-id> <opportunity-id>

Run gitcontribute --help or gitcontribute <command> --help for the complete command and flag reference. Most non-interactive commands accept --json; machine-readable output goes to stdout and progress goes to stderr.

Launch the local TUI with:

sh
gitcontribute tui

MCP

The MCP server advertises one unified catalog. Hosts such as Codex and Claude Code can discover large MCP catalogs with native tool search, so setup does not ask users to choose permanent capability profiles.

sh
gitcontribute setup --mode mcp --codex --token-source none --yesgitcontribute setup --mode mcp --all-clients --token-source none --yes

To start the stdio server directly:

sh
gitcontribute mcp serve --transport=stdio

Add --read-only to remove tools that permit network access, local writes, or execution. See MCP catalog and composition for capability boundaries, snapshot recovery, resource handoffs, and common tool sequences.

GitHub users are stored as first-class actors. Live discovery records identity only; profile, social-account, organization, pinned-item, repository, and contribution facts are synchronized independently. See the actor corpus for the data and freshness model.

Side-effect boundaries

GitContribute separates corpus reads, GitHub reads, local writes, process execution, and external mutation.

OperationNetworkLocal writeRuns a processGitHub write
Search and inspect stored researchNoNoNoNo
Record investigations and evidenceNoYesNoNo
Sync or hydrate GitHub contextYesYesNoNo
Acquire and index codeYesYesgit onlyNo
Run an explicitly approved validationNo by defaultYesYesNo
  • Corpus reads never fetch data.
  • Crawling and indexing never execute repository-controlled code.
  • Explicit validation commands run on your host with your user permissions.
  • GitContribute has no GitHub mutation capability.
  • There is no hosted corpus or product telemetry.

See Architecture for the complete boundary definitions.

Documentation

Storage

GitContribute follows platform conventions:

PlatformConfigurationData
Linux$XDG_CONFIG_HOME/gitcontribute or ~/.config/gitcontribute$XDG_DATA_HOME/gitcontribute or ~/.local/share/gitcontribute
macOS~/Library/Application Support/gitcontribute~/Library/Application Support/gitcontribute/Data
Windows%APPDATA%\gitcontribute%LOCALAPPDATA%\gitcontribute\Data

The default corpus is gitcontribute.db in the data directory. Run gitcontribute metadata or gitcontribute doctor --json to inspect the local setup.

Platform support

Linux and macOS are the primary development and test targets. Windows builds are tested in CI and use the standard %APPDATA% and %LOCALAPPDATA% locations.

Development

sh
make verifygo run ./cmd/gitcontribute --help

Before changing package boundaries or side effects, read docs/architecture.md. See CONTRIBUTING.md for the repository workflow.

来源:README.md,提交 2c719af

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v3.0.2最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分