{"id":47813768,"url":"https://github.com/runpod/runpod-assistant-data","last_synced_at":"2026-04-03T18:19:56.492Z","repository":{"id":333756747,"uuid":"1110796922","full_name":"runpod/runpod-assistant-data","owner":"runpod","description":null,"archived":false,"fork":false,"pushed_at":"2026-03-31T17:27:53.000Z","size":4737,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-31T19:06:15.518Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/runpod.png","metadata":{"files":{"readme":"README.md","changelog":"Change Details On Invoice","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-05T18:26:32.000Z","updated_at":"2026-03-31T17:23:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"244d74c0-8f18-4e78-99a0-12a700654125","html_url":"https://github.com/runpod/runpod-assistant-data","commit_stats":null,"previous_names":["runpod/runpod-assistant-data"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/runpod/runpod-assistant-data","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runpod%2Frunpod-assistant-data","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runpod%2Frunpod-assistant-data/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runpod%2Frunpod-assistant-data/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runpod%2Frunpod-assistant-data/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/runpod","download_url":"https://codeload.github.com/runpod/runpod-assistant-data/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runpod%2Frunpod-assistant-data/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31368163,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-03T17:53:18.093Z","status":"ssl_error","status_checked_at":"2026-04-03T17:53:17.617Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-04-03T18:19:55.598Z","updated_at":"2026-04-03T18:19:56.478Z","avatar_url":"https://github.com/runpod.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# runpod-assistant-data\r\n\r\nKnowledge base and scraped content that feeds into the [runpod-assistant](https://github.com/runpod/runpod-assistant) RAG pipeline.\r\n\r\n## Structure\r\n\r\n```\r\nknowledge/    # Curated markdown articles (support gaps, troubleshooting)\r\nscraped/      # Cached JSON from runpod.io and blog (~540 files)\r\n```\r\n\r\n## Ingestion\r\n\r\nContent from this repo is indexed into the assistant's vector store via two mechanisms:\r\n\r\n### 1. GitHub Action (immediate, on push)\r\n\r\nA [workflow](.github/workflows/trigger-knowledge-ingestion.yml) fires on every push to `main` that modifies `knowledge/` or `scraped/`. It calls the v2 production endpoint (`POST /api/ingest`) to trigger the `ingestKnowledgeWorkflow` on Convex.\r\n\r\nCan also be triggered manually via workflow dispatch.\r\n\r\n### 2. Convex cron (daily backup)\r\n\r\nThe assistant's Convex backend runs a `check-knowledge-repo` cron every 24 hours that polls this repo's latest commit SHA. If it detects a new commit, it triggers ingestion automatically. This serves as a backup in case the GitHub Action fails or is skipped.\r\n\r\n### How ingestion works\r\n\r\n1. Fetches the file tree from `runpod/runpod-assistant-data` via the GitHub API\r\n2. Filters for `.md` files in `knowledge/`\r\n3. Compares content hashes to skip unchanged files\r\n4. Indexes into RAG (vector search) and mirrors to a documents table (BM25 full-text search)\r\n\r\nFiles are kept as single chunks (~1-3k tokens each) so full context stays together in vector results.\r\n\r\n## Required secrets\r\n\r\nThe GitHub Action needs two repository secrets:\r\n\r\n| Secret | Purpose |\r\n|--------|---------|\r\n| `RUNPOD_ASSISTANT_API_URL` | Base URL of the runpod-assistant v2 deployment (include `https://`) |\r\n| `RUNPOD_ASSISTANT_API_KEY` | Authenticates against the runpod-assistant v2 API |\r\n\r\nSet these in [repo settings \u003e Secrets and variables \u003e Actions](https://github.com/runpod/runpod-assistant-data/settings/secrets/actions).\r\n\r\n\u003e **Note:** The old `MASTRA_API_KEY` secret is no longer used and can be removed.\r\n\r\n## Contributing\r\n\r\n1. Add or edit markdown files in `knowledge/`\r\n2. Push to `main`\r\n3. Ingestion triggers automatically — no manual steps needed\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frunpod%2Frunpod-assistant-data","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frunpod%2Frunpod-assistant-data","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frunpod%2Frunpod-assistant-data/lists"}