Skip to main content

gh-stars-organizer

gh-stars-organizer helps you turn a chaotic GitHub stars list into a searchable, structured knowledge base.

It fetches your starred repositories, classifies them with an LLM, builds embedding-based similarity search, and organizes results into GitHub Lists (with a local fallback when list APIs or scopes are unavailable).

Why this exists

Developers star hundreds of repositories and later struggle to find what matters.
This tool makes starred repos discoverable again.

Key capabilities

  • Fetch all stars (with pagination for large accounts)
  • LLM-based repository classification into practical engineering categories
  • Embedding-based semantic search and similarity grouping
  • Automatic organization into GitHub User Lists
  • Local cache (SQLite + FAISS) to avoid repeated expensive work
  • Insights report (stars-insights.md) with trends and cleanup recommendations
  • Interactive terminal UI (tui) for one-click workflows

Architecture

flowchart TD
    A["GitHub GraphQL API"] --> B["Fetch Stars"]
    B --> C["LLM Classification"]
    C --> D["Embeddings Generation"]
    D --> E["Local SQLite Cache"]
    E --> F["Create/Reuse GitHub Lists"]
    F --> G["Assign Repositories"]
    E --> H["Insights Report"]

Installation

Requirements

  • Python 3.11+
  • GitHub CLI authenticated
  • OpenAI-compatible API key (OPENAI_API_KEY) for remote classification/embeddings (optional; local fallbacks exist)

Install from source

git clone https://github.com/vins13pattar/gh-stars-organizer.git
cd gh-stars-organizer
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"

Quickstart

gh-stars-organizer config --init
gh-stars-organizer sync
gh-stars-organizer preview
gh-stars-organizer organize
gh-stars-organizer insights

Commands

  • gh-stars-organizer sync — fetch and cache stars
  • gh-stars-organizer preview — show predicted category per repo
  • gh-stars-organizer organize — assign repositories into GitHub Lists
  • gh-stars-organizer insights — generate stars-insights.md
  • gh-stars-organizer search "<query>" — semantic repo search
  • gh-stars-organizer tui — interactive TUI
  • gh-stars-organizer config — initialize/show configuration

TUI

Launch:

gh-stars-organizer tui

TUI includes:

  • Sync / Preview / Organize / Insights actions
  • Semantic search
  • Live status and progress messages

Configuration

Default config file: ~/.gh-stars-organizer/config.yaml
Example template: examples/config.yaml

Common options:

  • LLM model
  • Embedding model
  • Categories
  • Cache/index/report paths
  • Rate limits

GitHub List behavior

Organization uses GitHub User Lists GraphQL APIs (lists, createUserList, updateUserListsForItem).

  • For GitHub list updates, your gh auth token needs user scope:
    • gh auth refresh -s user
  • If list APIs/scopes are unavailable, the tool generates local categorized lists at:
    • ~/.gh-stars-organizer/lists

Example output

Fetching stars... page 3, repos 300
Caching repositories locally...
Classifying repositories... 120/742
Organize done. Created 8 lists, processed 742 assignments.

Development

pytest -q

CI and release workflows are included in .github/workflows/.

Contributing

See CONTRIBUTING.md.

License

MIT

Release files for gh-stars-organizer 1.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gh-stars-organizer 1.0.3
File Size Uploaded
gh_stars_organizer-1.0.3.tar.gz 19.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gh-stars-organizer 1.0.3
File Interpreter ABI Platform
gh_stars_organizer-1.0.3-py3-none-any.whl Python 3 none any Details

Total release size: 41.2 kB

Release files / gh_stars_organizer-1.0.3.tar.gz

Download URL gh_stars_organizer-1.0.3.tar.gz
Size 19.0 kB
Tags Source
SHA-256 checksum
How to use checksums
959385561006a5b4b2b1172b717577e660ce860d835860e891ce919678c16033
BLAKE2b-256 checksum
How to use checksums
e6e1c2bce75016b59efab9c99ce561e7ada6d36f9eb151ffcbdafdf87bec4c8b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 8, 2026.

Transparency log

Release files / gh_stars_organizer-1.0.3-py3-none-any.whl

Download URL gh_stars_organizer-1.0.3-py3-none-any.whl
Size 22.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e76b3afeaa289c7ddeee41e503046e7475303bb8164a9a925e8f4ac42a9def7d
BLAKE2b-256 checksum
How to use checksums
92a2cf0e44c6de32bee6732eef86da97f55e4014ff9c7d7582f232a850dbc603
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 8, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.3 This release

2 release files

1.0.2

2 release files

1.0.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page