このプロジェクトは、コードベースを分析して単一ファイルダンプに要約するように設計されたコードベースダイジェストの軽量バージョンです。生成された出力には次のものが含まれます。
この出力は、CHATGPT、Google Geminiなどの大規模な言語モデル(LLMS)の入力として使用できます。
可能なプロンプトのインスピレーションについては、CodeBase DigestリポジトリのLLMプロンプトセクションを参照してください。
Pypiから直接CodeBase-Dumpをインストールできます。
pip install codebase-dump
クローンセットアップリポジトリ
git clone https://github.com/your-username/codebase-dump.git
cd codebase-dump
pip install -r requirements.txt
このプロジェクトをVisual Studioコードで開き、仮想環境を設定することをお勧めします。
インストールしたら、コマンドラインからコードベースダンプを実行できます。
codebase-dump < path_to_codebase > -f < output_filename > -o < output_format >
オプション | 説明 |
---|---|
path_to_directory | 分析するディレクトリへのパス |
-o, --output-format | 出力形式(テキスト、マークダウン)。デフォルト:テキスト |
-f, --file | 出力ファイル名 |
--max-size | KBの最大許可されたテキストコンテンツサイズ(デフォルト:10240 kb) |
--ignore-top-large-files | 無視する最大のファイルの数(デフォルト:0) |
--audit-upload | --audit-base-url パラメーターで定義されているように、auditsAPIに出力を送信します |
--audit-base-url | 監査を送信するAPIベースURL(デフォルト:https://codeaudits.ai/) |
--api-key | https://codeaudits.ai/で送信リポジトリをアカウントに割り当てるプライベートAPIキー |
プロジェクトのコード構造のマークダウンファイルを生成します。
codebase-dump . -f project_dump_for_llm.md -o markdown
Markdownファイルを生成し、Audits app codeaudits.aiにプッシュします。
codebase-dump . -o markdown --audit-upload
マークダウンファイルを生成し、監査アプリのカスタムインスタンスにプッシュします。
codebase-dump . -o markdown --audit-upload --audit-base-url https://your-audit-instance.com/
上位5つの最大のファイルを無視しながらマークダウンファイルを生成し、監査アプリCodeaudits.aiにプッシュします。
codebase-dump . -o markdown --audit-upload --ignore-top-large-files=5
ソースコードから直接codebase-dumpを実行することもできます。
pip install -e .
python src/codebase_dump/app.py < path_to_codebase > -f < output_filename > -o < output_format >
オンライン環境、Google Colabでコードベースダンプを試すことができます。コンピューターにPython環境がない場合は、良い選択肢になります。ここで起動するだけです:codebase-dump colab。それをテストするには、ランタイム - >すべてを実行してすべてのコードを実行します。
GitHubアクションワークフローでCodeBase-Dumpを自動化して、コードダンプをアーティファクトとして生成および保存できます。これは、ワークフロー構成の例です(この独自のリポジトリで使用可能な動作例:.github/workflows/codebase_dump.yml)。
name : Generate Project Dump for LLM
on :
workflow_dispatch :
jobs :
generate-file :
runs-on : ubuntu-latest
steps :
- name : Checkout code
uses : actions/checkout@v4
- name : Set up Python
uses : actions/setup-python@v3
with :
python-version : " 3.10 "
- name : Install codebase-dump
run : pip install codebase-dump
- name : Generate Single-File Prompt for LLM
run : codebase-dump . -f project_dump_for_llm.md -o markdown --audit-upload
- name : Upload Prompt File as Artifact
uses : actions/upload-artifact@v3
with :
name : project_dump_for_llm.md
path : project_dump_for_llm.md
この例では:
コードベースダンプを取得したら、それを入力プロンプトとしてLLMSの1つにコピーし、Gemini、ChatGpt、Claude、その他のコードベースに関連する質問を尋ね始めます。たとえば、「このコードを//選択した//アーキテクチャに参照するための提案された手順が何であるか」について尋ねてください。
可能なプロンプトのインスピレーションについては、CodeBase DigestリポジトリのLLMプロンプトセクションをチェックしてください。
解析されたコードベースもhttps://codeaudits.ai/アプリケーションにアップロードされました。返されたリンクを起動すると、アーキテクチャリファクタリングのヒント、テストの欠落、簡素化のヒントなど、事前に構成されたコード監査を実行できます。