GitHub Context Extractor (LLM-Ready Markdown)
Pricing
from $2.99 / 1,000 repository contexts
GitHub Context Extractor (LLM-Ready Markdown)
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
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 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; a run with no usable repositories completes as SUCCEEDED with dataStatus: NO_RESULTS, without adding a diagnostic dataset row. 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 rows. They are summarized as counts in OUTPUT_SUMMARY together with requested/succeeded repository counts and canonical run/data statuses. A repository request failure does not create a diagnostic or placeholder dataset row. Saved repository records remain a successful partial run if a later request fails.
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 cinpm run checknpm testapify validate-schemaapify run --purge --input-file input.jsonnpm 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.