microsoft/amplifier-app-repo-weaver
Python
Captured source
source ↗microsoft/amplifier-app-repo-weaver
Description: Repo Weaver app for the Amplifier project
Language: Python
License: MIT
Stars: 1
Forks: 1
Open issues: 1
Created: 2026-06-24T21:04:20Z
Pushed: 2026-08-13T00:14:53Z
Default branch: main
Fork: no
Archived: no
README:
repo-weaver
repo-weaver turns one or more git repositories' commits and merged PRs into markdown source documents, then feeds them to wiki-weaver (an LLM synthesis engine) to build a queryable, cited knowledge corpus that is woven together over time. repo-weaver is the git-history materializer and orchestration layer; wiki-weaver does the synthesis, reconciliation, citation, and query.
Personal vs team is just which repos are in the corpus. A *personal* corpus tracks your own repos; a *team* corpus tracks a shared set. There is no separate mode or config — you point init at one repo or several, and the corpus is "personal" or "team" purely by virtue of what you put in it.
---
Ways to use repo-weaver — four leverage levels
repo-weaver is consumable four ways; the CLI documented here is just one of them. All four are built and proven. See [ARCHITECTURE.md](ARCHITECTURE.md#6-portability--the-four-leverage-levels) for detail.
| Level | Form | How you use it | |-------|------|----------------| | L1 | .dot attractor pipelines | Standalone DOT pipelines in pipelines/ that run under the Amplifier attractor engine / the Resolve dot-graph resolver — each pipeline shells out to the repo-weaver CLI. Proven end-to-end in the Resolve dot-graph resolver. | | L2 | Python library | import repo_weaver and call the public API — init, weave, weave_multi, replay_windows, ask, materialize — to embed repo-weaver in another codebase. | | L3 | Amplifier tool modules | modules/tool-repo-weaver/ exposes agent-callable tools (repo_weaver_init / repo_weaver_weave / repo_weaver_ask) for use inside Amplifier bundles. | | L4 | CLI | The repo-weaver commands documented in this README — the rest of the doc covers this level. |
---
How it works
- Materialize git history — for each time window, repo-weaver emits a per-repo
change digest (merged PRs split into substantive vs routine, plus a commit-volume summary) and up to --max-modules per-module snapshots (purpose, file inventory at window-end, and what changed). The target repo is never mutated.
- wiki-weaver ingest — the generated documents are written to
/_inbox/
and handed to wiki-weaver ingest, the synthesis engine repo-weaver depends on.
- A cited wiki — wiki-weaver compiles the sources into wiki pages where every
claim cites a source id. You query it with repo-weaver ask.
- `replay` weaves updates in over time — running successive windows adds each
period's new history into the *existing* pages (modules accrue a History section) rather than overwriting, so the corpus reads as the repo's evolution.
---
Requirements
Run repo-weaver doctor first — it checks every item below and exits non-zero if anything is missing. A green doctor means the long ingest run will not die partway through on a missing key.
| Requirement | How to satisfy | Notes | |-------------|----------------|-------| | wiki-weaver on PATH | uv tool install git+https://github.com/microsoft/amplifier-bundle-wiki-weaver | The install fix landed in PR #3 (now merged to main), so a fresh install works. | | git on PATH | system package manager | repo-weaver shells out to git; it is never imported. | | gh authenticated | install from , then gh auth login | Verify with gh auth status. PR data is fetched via gh. | | At least one LLM provider key | export any one of ANTHROPIC_API_KEY, GOOGLE_API_KEY, or OPENAI_API_KEY | doctor accepts any of the three — it no longer hard-requires a specific provider. Large runs have been done on Anthropic. |
doctor also confirms the packaged policy/schema.md is present (it ships inside the repo-weaver package). All commands except doctor refuse to run if wiki-weaver is not on PATH.
repo-weaver doctor
---
Install
repo-weaver is an unpublished project — there is no PyPI release. Install it directly from the GitHub repo:
uv tool install git+https://github.com/microsoft/amplifier-app-repo-weaver
Or, if you want a local checkout to hack on, install editable from a clone:
git clone https://github.com/microsoft/amplifier-app-repo-weaver cd amplifier-app-repo-weaver uv tool install --editable .
The packaged policy/schema.md ships inside the wheel, so the non-editable install works too — the editable-from-clone path is just for local development. After installing, verify everything:
repo-weaver doctor
> Troubleshooting: if uv tool install / uv tool upgrade hangs or times out > waiting for a cache lock, check for other concurrently-running uv-managed > processes on the machine -- uv's cache lock is machine-global, not > per-project. Either wait for the other process to finish, close it, or set > UV_LOCK_TIMEOUT to a larger value. (Both uv tool install --force and > uv tool upgrade were verified working cleanly against current main; the > only reproducible failure mode found was this cache-lock contention.)
---
Quickstart (single repo, small and cheap)
Start with one repo and a short window so the first run is fast and inexpensive.
# 1. Verify dependencies (do this first) repo-weaver doctor # 2. Scaffold a corpus pointed at a local clone repo-weaver init ~/corpora/team-pulse --repo ~/src/amplifier-app-team-pulse # 3. Weave one short window, capping modules to keep it cheap repo-weaver weave --corpus ~/corpora/team-pulse \ --since 2026-06-15 --until 2026-06-19 \ --max-modules 1 # 4. Ask a cited question against the corpus repo-weaver ask "What did PR #96 add?" --corpus ~/corpora/team-pulse
--since is exclusive, --until is inclusive (through 23:59:59). If you omit --since, repo-weaver defaults to one day before the repo's first commit; if you omit --until, it defaults to today. Add --dry-run to weave to write the _inbox/ files and inspect them without spending any LLM time.
---
Multi-repo (personal vs team)
Register several repos at init by repeating --repo:
repo-weaver init ~/corpora/my-team \ --repo ~/src/amplifier-app-team-pulse \ --repo ~/src/amplifier-bundle-wiki-weaver
Then weave / replay...
Excerpt shown — open the source for the full document.
Notability
notability 4.0/10Routine new repository from Microsoft, no notable traction yet.