{"id":50762066,"url":"https://github.com/vaguul/oss-maintainer-snapshot","last_synced_at":"2026-06-11T11:01:31.113Z","repository":{"id":362150130,"uuid":"1256854091","full_name":"vaguul/oss-maintainer-snapshot","owner":"vaguul","description":"Read-only GitHub CLI snapshot tool for open source maintenance queues.","archived":false,"fork":false,"pushed_at":"2026-06-02T21:15:17.000Z","size":11,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-02T23:11:30.550Z","etag":null,"topics":["cli","github","github-cli","issues","maintenance","open-source","pull-requests","triage","typescript","vaguul","zemiax"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vaguul.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2026-06-02T06:28:15.000Z","updated_at":"2026-06-02T21:58:56.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/vaguul/oss-maintainer-snapshot","commit_stats":null,"previous_names":["vaguul/oss-maintainer-snapshot"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/vaguul/oss-maintainer-snapshot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaguul%2Foss-maintainer-snapshot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaguul%2Foss-maintainer-snapshot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaguul%2Foss-maintainer-snapshot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaguul%2Foss-maintainer-snapshot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vaguul","download_url":"https://codeload.github.com/vaguul/oss-maintainer-snapshot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaguul%2Foss-maintainer-snapshot/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34195117,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-11T02:00:06.485Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["cli","github","github-cli","issues","maintenance","open-source","pull-requests","triage","typescript","vaguul","zemiax"],"created_at":"2026-06-11T11:01:30.287Z","updated_at":"2026-06-11T11:01:31.106Z","avatar_url":"https://github.com/vaguul.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# oss-maintainer-snapshot\n\nSmall GitHub CLI based snapshot tool for open source maintenance queues.\n\nIt reads open issues and pull requests from one or more repositories and prints\na compact report that is useful before a maintenance pass: what needs triage,\nwhat needs review, and which links should be checked first.\n\n## Why\n\nMaintainers often need a quick, repeatable way to see what changed across a\nsmall set of public repositories without opening every project manually. This\ntool keeps that workflow simple and transparent by using the official `gh` CLI\nthat many maintainers already have authenticated.\n\n## Requirements\n\n- Node.js 20 or newer\n- GitHub CLI (`gh`)\n- `gh auth login` completed for private or notification-aware work\n\n## Usage\n\nMarkdown output is the default:\n\n```bash\noss-maintainer-snapshot --repo vaguul/discord-command-controls --limit 10\n```\n\nJSON output:\n\n```bash\noss-maintainer-snapshot --repo vaguul/social-feed-inputs --format json\n```\n\nOnly show items updated on or after a date:\n\n```bash\noss-maintainer-snapshot --repo vaguul/discord-command-controls --since 2026-06-01\n```\n\nWrite the report to a file:\n\n```bash\noss-maintainer-snapshot \\\n  --repo vaguul/discord-command-controls \\\n  --repo vaguul/social-feed-inputs \\\n  --output maintainer-snapshot.md\n```\n\n## Options\n\n| Option | Description |\n| --- | --- |\n| `--repo owner/name` | Repository to include. Can be repeated. |\n| `--limit number` | Max issues and PRs per repo. Defaults to `20`. |\n| `--since YYYY-MM-DD` | Keep only items updated on or after this UTC date. |\n| `--format markdown,json` | Output format. Defaults to `markdown`. |\n| `--output path` | Write the report to a file instead of stdout. |\n| `--help` | Print help. |\n\n## Scheduled GitHub Actions usage\n\nYou can run the snapshot on a schedule and upload the Markdown report as an\nartifact. See [`examples/scheduled-github-actions.yml`](examples/scheduled-github-actions.yml)\nfor a copy-ready workflow.\n\nThe workflow installs the tool from a GitHub release tag because this package is\nnot currently published to npm. The package `prepare` script builds the CLI\nduring that install:\n\n```bash\nnpm install --global github:vaguul/oss-maintainer-snapshot#v0.1.4\n```\n\nAuthentication is still handled by the `gh` CLI. In GitHub Actions:\n\n- `GITHUB_TOKEN` is enough for many public repository snapshots and current-repo\n  automation.\n- use a read-only personal access token stored as\n  `MAINTAINER_SNAPSHOT_TOKEN` when the workflow needs private repositories,\n  cross-organization access, or notification-aware results.\n- the token should only need read access to metadata, issues, and pull requests.\n\n## Attention grouping\n\nThe Markdown and JSON reports keep the raw issue and pull request lists visible,\nbut also add a `Needs attention` group before them. Items appear there when:\n\n- a pull request requires review\n- a pull request has a non-clean merge state\n- an issue has labels such as `bug`, `security`, `regression`, `triage`, or `to-triage`\n\n## Local development\n\n```bash\nnpm install\nnpm test\n```\n\n## Notes\n\nThis is intentionally a read-only tool. It does not post comments, modify\nissues, or change repository settings. It only calls `gh issue list` and\n`gh pr list`, then formats the result.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvaguul%2Foss-maintainer-snapshot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvaguul%2Foss-maintainer-snapshot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvaguul%2Foss-maintainer-snapshot/lists"}