GitHub Context Extractor (LLM-Ready Markdown) avatar

GitHub Context Extractor (LLM-Ready Markdown)

Under maintenance

Pricing

from $2.99 / 1,000 repository contexts

Go to Apify Store
GitHub Context Extractor (LLM-Ready Markdown)

GitHub Context Extractor (LLM-Ready Markdown)

Under maintenance

Extract public repository metadata, full bounded README Markdown, contributors, and releases for LLM and RAG pipelines.

Pricing

from $2.99 / 1,000 repository contexts

Rating

0.0

(0)

Developer

w3crawler

w3crawler

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

GitHub Context Extractor

Build bounded, LLM-ready context records from public GitHub repositories. For each requested owner/repository, the Actor reads public repository metadata, the README as Markdown, contributors, and recent releases. It uses documented public GitHub REST endpoints, keeps source URLs in the row, and writes run-level request and failure counts to OUTPUT_SUMMARY.

Public data and limits

Only public repository responses are requested. An optional caller-supplied GitHub token may be used to raise the public API rate limit, but the Actor does not request private scopes, access private repositories, perform writes, log the token, bypass CAPTCHA, or use undocumented endpoints. Repository, README, contributors, and releases are all bounded by input limits. README Markdown is capped at 500,000 characters; contributor and release arrays are independently bounded. Request delay, timeout, and response-size controls prevent an accidental unbounded run.

The public GitHub repository page also exposes the same kind of business information used here: public visibility, repository description, folders and files, README, stars, watchers, forks, topics, and links to issues, releases, and contributors. The Actor's API response is normalized into stable fields rather than copying internal UI markup.

Input

{
"repositories": ["apify/apify-js", "https://github.com/octocat/Hello-World"],
"maxRepositories": 2,
"includeReadme": true,
"includeContributors": true,
"maxContributors": 5,
"includeReleases": true,
"maxReleases": 5,
"requestDelayMs": 250
}

repositories accepts public GitHub URLs or owner/repository values. Invalid entries are ignored during normalization and a run with no usable repositories emits a minimal diagnostic. maxRepositories is 1–20. Set any include... flag to false when only repository metadata is needed. maxContributors and maxReleases are each 1–20. requestDelayMs is 0–5000 ms, timeoutMs is 5–120 seconds, and maxResponseBytes is 100,000–50,000,000. Unknown input keys are rejected.

Dataset output

Successful rows contain a repository object with public identity, description, links, default branch, language, topics, license, counts, archive/fork flags, and timestamps. readmeMarkdown contains bounded Markdown and readme contains filename, path, public HTML/download links, size, character and word counts, and truncation state. contributors contains public login/profile/avatar links and contribution counts. releases contains public tag/name, notes, prerelease/draft status, timestamps, and release links. sourceUrls records the public endpoint URLs used and retrievedAt records collection time.

Operational fields such as retry/request counters, rate-limit evidence, warnings, and internal record labels are deliberately kept out of normal rows. They are summarized in OUTPUT_SUMMARY together with requested/succeeded repository counts, successful/failed requests, status, and completion time. If a repository cannot be read, an optional diagnostic row contains only url, error, errorCode, and scrapedAt.

Dataset example

{
"repository": {
"fullName": "octocat/Hello-World",
"htmlUrl": "https://github.com/octocat/Hello-World",
"defaultBranch": "master",
"stars": 2100,
"topics": ["example"]
},
"readmeMarkdown": "# Hello World\n",
"contributors": [{ "login": "octocat", "profileUrl": "https://github.com/octocat" }],
"releases": [],
"sourceUrls": { "repository": "https://api.github.com/repos/octocat/Hello-World" },
"retrievedAt": "2026-08-24T00:00:00.000Z"
}

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

Local run

npm ci
npm run check
npm test
apify validate-schema
apify run --purge --input-file input.json
npm run validate

The Actor reports GitHub rate limits and unavailable optional enrichments in the run summary. It does not fabricate missing README, contributor, or release data.