{"id":31934839,"url":"https://github.com/eyalk11/gpt-linter","last_synced_at":"2025-10-14T06:56:54.994Z","repository":{"id":182708771,"uuid":"668964123","full_name":"eyalk11/gpt-linter","owner":"eyalk11","description":"Python minor issue resolver (mypy) using gpt!","archived":false,"fork":false,"pushed_at":"2024-12-12T14:29:31.000Z","size":398,"stargazers_count":6,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-23T06:14:41.225Z","etag":null,"topics":["asistant","chatgpt","coding","gpt","guidance","llm","mypy","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eyalk11.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}},"created_at":"2023-07-21T02:58:53.000Z","updated_at":"2024-12-13T07:00:34.000Z","dependencies_parsed_at":"2023-07-21T04:22:12.063Z","dependency_job_id":"ac6aa252-27ca-4dd1-b6b7-f8df3f807b12","html_url":"https://github.com/eyalk11/gpt-linter","commit_stats":null,"previous_names":["eyalk11/mypy-gpt"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/eyalk11/gpt-linter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eyalk11%2Fgpt-linter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eyalk11%2Fgpt-linter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eyalk11%2Fgpt-linter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eyalk11%2Fgpt-linter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eyalk11","download_url":"https://codeload.github.com/eyalk11/gpt-linter/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eyalk11%2Fgpt-linter/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279018139,"owners_count":26086285,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"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":["asistant","chatgpt","coding","gpt","guidance","llm","mypy","python"],"created_at":"2025-10-14T06:56:53.721Z","updated_at":"2025-10-14T06:56:54.988Z","avatar_url":"https://github.com/eyalk11.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GPT-Linter\nSolve linter errors using [guidance](https://github.com/microsoft/guidance) and gpt API.\nIt runs mypy on targeted file and then uses gpt to try to fix the issues (espcially good for minor nagging issues).\nDisplays a diff file for the required changes and ask you if you want to apply. \n\n# Demo\n\nhttps://www.youtube.com/watch?v=dgRa33epPQg\n\n\n# Installation\n```\npip install  gpt-linter\n\n```\nit is generally better to install the master \n\n```\npip install git+https://github.com/eyalk11/gpt-linter.git\n```\n\nYou will need openai access token for it. \n\nIn powershell:\n```\n$env:OPEN_AI_KEY = \"sk-XXX\"\n```\nOr \n```\nOPEN_AI_KEY=sk-XXX python -m gpt_linter ...\n```\n\nOf course, mypy is required too. \n\n\n# Usage\nSee \n```\npython -m gpt_linter --help \n```\n\nA typical usage is \n```\npython -m gpt_linter --proj-path [PROJECT] [PYFILE]\n```\nIt then tries to get a list of fixes from the chat , prints them , and finally try to come up with an updated version of the solution. \nIt then checks the final file again , showing you the errors after the change, and displayes a diff file. It asks you if you want to apply the changes, \nand reruns main if not all issues were resolved. \n\nIf you want it to generate diff file, use: \n\n```\npython -m gpt_linter --proj-path [PROJECT] --no-color --dont-ask  [PYFILE] \u003e myfile.diff \n```\n\n\n\nFor example: \n![image](https://github.com/eyalk11/gpt-linter/assets/72234965/ed4eebb2-b4a5-4cc5-ad02-4e2299a1ec20)\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feyalk11%2Fgpt-linter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feyalk11%2Fgpt-linter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feyalk11%2Fgpt-linter/lists"}