Repository facts for agents and tools

Repository facts your agents can reuse.

Get structured project metadata, build and test commands, documentation links, and ownership information through HTTP or MCP. Inspect the evidence and record age, then fetch additional source material when needed.

Works with indexed repositories before maintainers adopt .repo. Coverage is partial. Metadata helps with orientation; architecture and code changes still require source inspection.

Look up a repository

Paste a repository URL or identity

Get the available facts, record age, evidence, and unknowns. If a repository is missing, use its upstream documentation.

Accepted inputs: owner/repo, host/owner/repo, a GitHub URL, or a hosted dotrepo profile, summary, or trust URL.

Examples

BurntSushi/ripgrep Defaults to github.com for shorthand input.
github.com/astral-sh/uv Explicit host plus identity segments.
https://github.com/pydantic/pydantic Full repository URL.
https://dotrepo.org/v0/repos/github.com/BurntSushi/ripgrep/index.json Hosted profile, summary, or trust URL pasted back into the lookup box.

A profile from this export

github.com/BurntSushi/ripgrep · fresh · 2 days old

Purposeripgrep recursively searches directories for a regex pattern while respecting your gitignore
Buildcargo build --release
Testcargo test --all
DocumentationUnknown — inspect upstream sources
Security reportingUnknown — inspect upstream sources

Record generated: 2026-09-16T16:33:43.757856Z. Status: verified. Verification records pipeline checks, not human review or a guarantee of correctness.

Inspect supporting evidence · Full profile JSON

Use a profile in your tool

Request a profile, check the underlying record age and requested fields, and fall back to upstream sources on a miss, stale record, or conflict.

curl https://dotrepo.org/v0/repos/github.com/BurntSushi/ripgrep/profile.json

With the dotrepo-mcp server installed, call dotrepo.lookup with repositoryUrl and an optional field path.

Task completeness measures available fields. Independent accuracy tests measure correctness. Modeled request savings do not measure total agent cost. External adoption remains to be demonstrated.

One format, three uses

Agents and tools

Reuse basic facts across sessions and retrieve additional sources only when the task needs them.

Maintainers

Publish an authoritative native record and keep supported documentation blocks consistent with it.

Researchers

Orient yourself, find documentation, and compare available project facts with their limitations visible.

How maintainer authority works

Maintainers can take authority over a generated overlay. This example preserves the earlier overlay and the accepted claim so consumers can inspect the handoff. A verified overlay means the pipeline resolved its checks; it does not mean human review, complete coverage, or guaranteed correctness.

ries-rs

github.com/maxwellsantoro/ries-rs

High-performance Rust reimplementation of Robert Munafo’s RIES (RILYBOT Inverse Equation Solver). Given any target number, it discovers elegant algebraic expressions and equations that evaluate exactly to it — now with parallel search, PSLQ integer relations, Python bindings, and WebAssembly support.

claim state: accepted The current exported claim state for the selected record.
handoff: superseded The reviewed overlay remains visible while the accepted maintainer claim points to the canonical source of truth.
confidence: high Provenance: imported, verified
Bootstrapped from `README.md`, `.github/CODEOWNERS`, `.github/SECURITY.md`, `package.json`, and `ries-py/pyproject.toml`. SECURITY.md provided a policy or reporting URL rather than a direct mailbox, so `security_contact... Selection stays explained instead of being reduced to a bare answer.

What the live trust surface returns

This excerpt shows the selected record and maintainer claim from this export.

{
  "identity": {
    "host": "github.com",
    "owner": "maxwellsantoro",
    "repo": "ries-rs"
  },
  "selection": {
    "reason": "only_matching_record",
    "recordStatus": "verified",
    "claim": {
      "state": "accepted",
      "handoff": "superseded"
    },
    "trust": {
      "confidence": "high",
      "provenance": [
        "imported",
        "verified"
      ],
      "notes": "Bootstrapped from `README.md`, `.github/CODEOWNERS`, `.github/SECURITY.md`, `package.json`, and `ries-py/pyproject.toml`. SECURITY.md provided a policy or reporting URL rather than a direct mailbox, so `security_contact..."
    },
    "artifacts": {
      "reviewPath": "repos/github.com/maxwellsantoro/ries-rs/claims/2026-03-16-maintainer-claim-01/review.md",
      "evidencePath": "repos/github.com/maxwellsantoro/ries-rs/evidence.md"
    }
  },
  "conflicts": []
}

Review path: repos/github.com/maxwellsantoro/ries-rs/claims/2026-03-16-maintainer-claim-01/review.md · Evidence path: repos/github.com/maxwellsantoro/ries-rs/evidence.md

Public API

Stable entry points

The public surface is export-first. Summary, trust, inventory, freshness, and query responses all come from the same validated snapshot family.

/v0/meta.json Snapshot freshness and digest metadata.
/v0/health.json Machine-checkable origin, snapshot, count, and digest coherence.
/v0/repos/index.json Repository inventory and navigation links.
/v0/repos/<host>/<owner>/<repo>/index.json Per-repository summary surface.
/v0/repos/<host>/<owner>/<repo>/trust.json Selection, provenance, and claim context.
/v0/repos/<host>/<owner>/<repo>/query?path=... Same-origin trust-aware field queries.
read-only / same-origin / claim-aware No mutation API, one canonical host, and trust context stays visible on every query path.

What a query returns

The query route returns the selected value together with selection, trust, and conflict context. This truncated example is derived from the current exported snapshot.

/v0/repos/github.com/0x192/universal-android-debloater/query?path=repo.description Hosted query route for repo.description; static preview data: query-input JSON.
{
  "path": "repo.description",
  "value": "Cross-platform GUI written in Rust using ADB to debloat non-rooted android devices. Improve your privacy, the security and battery life of your device.",
  "selection": {
    "reason": "only_matching_record",
    "recordStatus": "inferred",
    "trust": {
      "confidence": "medium",
      "provenance": [
        "imported",
        "inferred"
      ],
      "notes": "Bootstrapped from `README.md` and `Cargo.toml`. Inferred `repo.build` from `Cargo.toml`. Inferred `repo.test` from `Cargo.toml`. This is an overlay bootstrap, not a maintainer-controlled canonical record."
    },
    "evidencePath": "repos/github.com/0x192/universal-android-debloater/evidence.md"
  },
  "conflicts": []
}

Full responses also include freshness, repository identity, and navigation links.

Indexed repositories

A small sample from the current export. Use the repository catalog to search the complete index.

Indexed repository

Universal Android Debloater GUI

github.com/0x192/universal-android-debloater

Cross-platform GUI written in Rust using ADB to debloat non-rooted android devices. Improve your privacy, the security and battery life of your device.

Indexed repository

v2rayN

github.com/2dust/v2rayN

A GUI client for Windows, Linux and macOS, support Xray and sing-box and others

Indexed repository

Sublink Worker

github.com/7Sageer/sublink-worker

One Worker, All Subscriptions

Indexed repository

Stable Diffusion web UI

github.com/AUTOMATIC1111/stable-diffusion-webui

Stable Diffusion web UI

Indexed repository

aider

github.com/Aider-AI/aider

aider is AI pair programming in your terminal

Indexed repository

interesting-python

github.com/Alfred1984/interesting-python

有趣的Python爬虫和Python数据分析小项目(Some interesting Python crawlers and data analysis projects)

Indexed repository

DeepResearch

github.com/Alibaba-NLP/DeepResearch

Tongyi Deep Research, the Leading Open-source Deep Research Agent

Indexed repository

alist

github.com/AlistGo/alist

🗂️A file list/WebDAV program that supports multiple storages, powered by Gin and Solidjs. / 一个支持多存储的文件列表/WebDAV程序,使用 Gin 和 Solidjs。

Browse all 613 repositories

Optional incremental fetching with PageDigest

PageDigest identifies changed published files. Its figures model a consumer synchronizing the covered set; they are not measured savings from agent tasks.

PageDigest dogfood

dotrepo publishes thousands of small JSON records. PageDigest lets a consumer check the whole covered set first, then fetch only records whose content actually changed. These numbers come from the current export's /v0/stats.json.

2,454 tracked records Records covered by /.well-known/pagedigest.json.
618 needing fetch New or changed records in this export cycle.
1,836 fetches avoided Covered records that a PageDigest-aware consumer can skip.
3.4 MB avoided Payload bytes skipped this cycle out of 7.0 MB covered.
~900.4K token-equivalent bytes Bytes ÷ 4 estimate; not measured model tokens or task savings.
site_rev 9 Manifest size 658.8 KB; generated 2026-09-19 06:22 UTC.