{"id":13456728,"url":"https://github.com/narenmanoharan/gpt-code-assistant","last_synced_at":"2026-04-08T17:33:13.544Z","repository":{"id":176998417,"uuid":"657724752","full_name":"narenmanoharan/gpt-code-assistant","owner":"narenmanoharan","description":"gpt-code-assistant is an open-source coding assistant leveraging language models to search, retrieve, explore and understand any codebase.","archived":false,"fork":false,"pushed_at":"2023-08-08T15:00:49.000Z","size":105680,"stargazers_count":208,"open_issues_count":3,"forks_count":17,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-03-10T20:35:50.669Z","etag":null,"topics":["ai","code","gpt-4","llm","search"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/narenmanoharan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-06-23T17:41:53.000Z","updated_at":"2025-11-25T10:29:41.000Z","dependencies_parsed_at":"2024-01-07T16:18:39.321Z","dependency_job_id":"d965627e-9749-4c97-89b0-5eb90daa5316","html_url":"https://github.com/narenmanoharan/gpt-code-assistant","commit_stats":null,"previous_names":["wolfia-app/gpt-code-search","narenmanoharan/gpt-code-search","narenmanoharan/gpt-code-assistant"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/narenmanoharan/gpt-code-assistant","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/narenmanoharan%2Fgpt-code-assistant","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/narenmanoharan%2Fgpt-code-assistant/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/narenmanoharan%2Fgpt-code-assistant/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/narenmanoharan%2Fgpt-code-assistant/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/narenmanoharan","download_url":"https://codeload.github.com/narenmanoharan/gpt-code-assistant/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/narenmanoharan%2Fgpt-code-assistant/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31539229,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T16:28:08.000Z","status":"online","status_checked_at":"2026-04-08T02:00:06.127Z","response_time":54,"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":["ai","code","gpt-4","llm","search"],"created_at":"2024-07-31T08:01:26.739Z","updated_at":"2026-04-08T17:33:13.518Z","avatar_url":"https://github.com/narenmanoharan.png","language":"Python","funding_links":[],"categories":["Python","HarmonyOS","Building"],"sub_categories":["Windows Manager","LLM Models"],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg\n    height=\"240\"\n    width=\"240\"\n    alt=\"logo\"\n    src=\"https://raw.githubusercontent.com/narenmanoharan/gpt-code-assistant/main/public/logo.png\"\n  /\u003e\n  \u003ch1\u003egpt-code-assistant\u003c/h1\u003e\n  \u003cp\u003e\n    \u003cb\u003egpt-code-assistant\u003c/b\u003e is an AI-based open-source tool for exploring, querying, and understanding any codebase using Language Models (LLMs) and vector embeddings (a technique to convert objects, like text, into vectors).\n  \u003c/p\u003e\n\u003c/div\u003e\n\n## Table of Contents\n\n- [Features](#features)\n- [Getting Started](#getting-started)\n  - [Installation](#installation)\n  - [Usage](#usage)\n- [Configuration](#configuration)\n- [Problem](#problem)\n- [Roadmap](#roadmap)\n- [Contributing](#contributing)\n\n## Features\n\n- **LLM-based Search \u0026 Retrieval**: Uses Language Models for efficient code search, retrieval, and comprehension.\n- **File-system Integration**: Designed to work with any codebase and operates directly with any local code on your machine, allowing seamless integration with your existing workflow.\n- **Language Agnostic**: Supports multiple programming languages.\n- **Privacy-centric Design**: Code snippets are only transmitted when a question is asked and the Language Model requests the relevant code, ensuring privacy. **(Note: Code snippets are shared with OpenAI)**\n\nFuture plans include supporting local models and the ability to generate code.\n\n## Getting Started\n\n### Installation\n\n```bash\npip install gpt-code-assistant\n```\n\n### Usage\n\n#### Create a project\n\nFirst, create a project to index all the files. This step involves creating embeddings for each file and storing them in a local database.\n\n```bash\ngpt-code-assistant create-project \u003cproject-name\u003e \u003cpath-to-codebase\u003e\n\ngpt-code-assistant create-project gpt-code-assistant .\n```\n\n#### Ask a question about your codebase\n\nTo query about the purpose of your codebase, you can use the `query` command:\n\n```bash\ngpt-code-assistant query \u003cproject-name\u003e \"What does this codebase do?\"\n```\n\n\u003cimg src=\"public/demo.gif\" width=\"750\"  alt=\"gpt-code-assistant demo\"/\u003e\n\nIf you want to generate a test for a specific file, for example analytics.py, you can mention the file name to improve accuracy:\n\n```bash\ngpt-code-assistant query gpt-code-assistant \"Can you generate a test for analytics.py?\"\n```\n\nFor a general usage question about a certain module, like analytics, you can use keywords to search across the codebase:\n\n```bash\ngpt-code-assistant query gpt-code-assistant \"How do I use the analytics module?\"\n```\n\n**Remember, mentioning the file name or specific keywords improves the accuracy of the search.**\n\n#### List all projects\n\nTo get a list of all the projects:\n\n```bash\ngpt-code-assistant list-projects\n```\n\n#### Refresh a project\n\nIf you want to reindex a project and update the embeddings to the latest content:\n\n```bash\ngpt-code-assistant refresh-project \u003cproject-name\u003e\n```\n\n#### Delete a project\n\nIf you wish to delete a project and all its data (including embeddings):\n\n```bash\ngpt-code-assistant delete-project \u003cproject-name\u003e\n```\n\n#### Select a model to use\n\nYou can select which model to use for your queries:\n\n```bash\ngpt-code-assistant select-model\n```\n\nDefaults to `gpt-3.5-turbo-16k`. The selected model is stored in `$HOME/.gpt-code-assistant/config.toml`.\n\n### Configuration\n\nThe tool will prompt you to configure the `OPENAI_API_KEY`, if you haven't already.\n\n## Problem\n\nYou want to leverage the power of GPT-4 to search your codebase, but you don't want to manually copy and paste code snippets into a prompt nor send your code to another third-party service (other than OpenAI). This tool solves these problems by letting GPT-4 determine the most relevant code snippets within your codebase. It also allows you to perform your queries in your terminal, removing the need for a separate UI.\n\nExamples of the types of questions you might want to ask:\n\n- 🐛 Help debugging errors and finding the relevant code and files\n- 📝 Document large files or functionalities formatted as markdown\n- 🛠️ Generate new code based on existing files and conventions\n- 📨 Ask general questions about any part of the codebase\n\n## Roadmap\n\n- [x] Use vector embeddings to improve search and retrieval\n- [ ] Add support for additional models (Claude, Bedrock, etc)\n- [ ] Add support for local models (Llama2, Starcoder, etc)\n- [ ] Add support for generating code and saving it to a file\n- [ ] Support for searching across multiple codebases\n- [ ] Allow the model to create new functions that it can then execute\n- [ ] Use [guidance](https://github.com/microsoft/guidance) to improve prompts\n\n## Contributing\n\nWe love contributions from the community! ❤️ If you'd like to contribute, feel free to fork the repository and submit a pull request.\n\nPlease read our [Code of Conduct](CODE_OF_CONDUCT.md) and [Contributing Guide](CONTRIBUTING.md) for more detailed steps and information.\n\n## Code of Conduct\n\nWe are committed to fostering a welcoming community. To ensure that everyone feels safe and welcome, we have a [Code of Conduct](CODE_OF_CONDUCT.md) that all contributors, maintainers, and users of this project are expected to adhere to.\n\n## Support\n\nIf you're having trouble using `gpt-code-assistant`, feel free to [open an issue](https://github.com/narenmanoharan/gpt-code-assistant/issues) on our GitHub. You can also reach out to us directly at [narenkmanoharan@gmail.com](mailto:narenkmanoharan@gmail.com). We're always happy to help!\n\n## Feedback\n\nYour feedback is very important to us! If you have ideas for how we can improve `gpt-code-assistant`, we'd love to hear from you. Please [open an issue](https://github.com/narenmanoharan/gpt-code-assistant/issues) or reach out to us directly at [narenkmanoharan@gmail](mailto:narenkmanoharan@gmail) with your feedback or thoughts.\n\n## License\n\nThis project is licensed under the terms of the [Apache 2.0](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnarenmanoharan%2Fgpt-code-assistant","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnarenmanoharan%2Fgpt-code-assistant","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnarenmanoharan%2Fgpt-code-assistant/lists"}