{"id":27807,"library":"gh-toolkit","title":"gh-toolkit","description":"A toolkit for managing and presenting GitHub repository portfolios. Version 0.19.1, requires Python >=3.12. Actively maintained with monthly releases.","status":"active","version":"0.19.1","language":"python","source_language":"en","source_url":"https://github.com/michael-borck/gh-toolkit","tags":["github","portfolio","management","toolkit"],"install":[{"cmd":"pip install gh-toolkit","lang":"bash","label":"pip"}],"dependencies":[],"imports":[{"note":"GitHubClient is in the github submodule, not top-level.","wrong":"from gh_toolkit import GitHubClient","symbol":"GitHubClient","correct":"from gh_toolkit.github import GitHubClient"},{"note":"Repository class is in the repository submodule.","wrong":"from gh_toolkit import Repository","symbol":"Repository","correct":"from gh_toolkit.repository import Repository"}],"quickstart":{"code":"import os\nfrom gh_toolkit.github import GitHubClient\n\nclient = GitHubClient(token=os.environ.get('GITHUB_TOKEN', ''))\n# List repositories for a user\nrepos = client.get_user_repos('octocat')\nfor repo in repos:\n    print(repo['name'])","lang":"python","description":"Initialize the client with a GitHub personal access token and list repositories."},"warnings":[{"fix":"Use `GitHubClient(token=os.environ.get('GITHUB_TOKEN', ''))`.","message":"The constructor signature changed in v0.18.0: now requires keyword argument 'token' instead of positional.","severity":"breaking","affected_versions":"<0.18.0"},{"fix":"Replace `client.get_repos('user')` with `client.get_user_repos('user')`.","message":"Method `get_repos()` is deprecated since v0.17.0; use `get_user_repos()` instead.","severity":"deprecated","affected_versions":">=0.17.0"},{"fix":"Always set GITHUB_TOKEN or pass token explicitly.","message":"The library expects a GITHUB_TOKEN environment variable by default; if not set, many calls fail with 401.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-09T00:00:00.000Z","next_check":"2026-08-07T00:00:00.000Z","problems":[{"fix":"Use `from gh_toolkit.github import GitHubClient`.","cause":"Importing from top-level instead of submodule.","error":"AttributeError: module 'gh_toolkit' has no attribute 'GitHubClient'"},{"fix":"Use `GitHubClient(token='...')`.","cause":"Passing token as positional before v0.18.0 or missing token argument.","error":"TypeError: GitHubClient.__init__() missing 1 required positional argument: 'token'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}