Skip to main content

This project automates the process of aggregating code files from a directory into a single markdown file, ready for use in an OpenAI Assistant or any RAG model. It intelligently skips files specified in the .gitignore and leverages ChatGPT to generate concise summaries for each code file, ensuring that the final markdown file is both comprehensive and easy to understand.

Project description

AI Code Summary

This project automates the process of aggregating code files from a directory into a single markdown file, ready for use in an OpenAI Assistant or any RAG model. It intelligently skips files specified in the .gitignore and leverages ChatGPT to generate concise summaries for each code file, ensuring that the final markdown file is both comprehensive and easy to understand.

Install through PyPI

pip install ai-code-summary

For more details, visit the PyPI project page.

Setup

  1. Clone the repository:
git clone https://github.com/DEV3L/ai-code-summary
cd ai-code-summary
  1. Copy the env.local file to a new file named .env and replace OPENAI_API_KEY with your actual OpenAI API key:
cp env.default .env
  1. Setup a virtual environment with dependencies and activate it:
brew install hatch
hatch env create
hatch shell

Environment Variables

The following environment variables can be configured in the .env file:

  • OPENAI_MODEL: The model to use
    • Default: gpt-4o
  • SUMMARY_PROMPT: The prompt used to summarize code files
    • Default: You are code summary expert. You summarize code in a short way that is easy to understand.

Testing

End to End Test

hatch run e2e

Unit Tests

hatch run test

Coverage Gutters:

Command + Shift + P => Coverage Gutters: Watch

Example

from ai_code_summary.markdown.export import create_markdown_from_code

if __name__ == "__main__":
    create_markdown_from_code(".")

Example output as a markdown file - ai-code-summary.md

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ai_code_summary-0.1.0.tar.gz (14.4 kB view hashes)

Uploaded Source

Built Distribution

ai_code_summary-0.1.0-py3-none-any.whl (11.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page