Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚡ CodeSlimmer

Safely convert local codebases or public GitHub repos into clean, LLM-ready context with token estimation and directory mapping.

CodeSlimmer packs any code repository—whether stored on your local machine or hosted on GitHub—into a single text file structured specifically for AI models like Claude 3.5, Gemini 3.1 Pro/3.6 Flash, GPT-4o, and DeepSeek R1.


✨ Features

  • 🌐 Remote GitHub URL Support: Pass any public GitHub URL ([https://github.com/user/repo](https://github.com/user/repo)) to fetch, extract, and slim repositories directly—zero git required.
  • 📋 Cross-Platform Clipboard Integration: Instantly copies output directly to your system clipboard (Windows, macOS, or Linux).
  • 🛡️ Overwrite Safety: Inspects signature headers to ensure local files are never overwritten accidentally.
  • 🌳 ASCII Directory Tree: Builds a visual project structure map at the very top of your context output.
  • 🏷️ LLM-Friendly XML Output: Encloses code in clear <file path="..."> tags for max prompt accuracy.
  • 📊 Token Estimator: Estimates context size (~4 chars/token) and checks capacity against major models.
  • 📏 Smart File Sizes: Calculates and formats physical sizes (B, KB, MB, GB).

📦 Installation

Option A: Install via PyPI (Recommended)

Install CodeSlimmer using pip:

pip install code-slimmer

Option B: Run from Source

Clone the repository and run the script directly:

git clone [https://github.com/akasula09/codeslimmer.git](https://github.com/akasula09/codeslimmer.git)
cd codeslimmer

🚀 How to Use

1. Launch CodeSlimmer

If installed via pip:

codeslimmer

If running directly from source:

python codeslimmer.py

2. Interactive Workflows

CodeSlimmer supports two distinct input modes:

Mode 1: Local Directory Path

Enter a relative or absolute local folder path. CodeSlimmer creates ai_context.txt inside that folder and offers an optional clipboard copy. An example is below.

--- CODE SLIMMER v2.2 ---
Enter a local folder path OR a GitHub URL: my_project_folder

📄 Loaded rules from .gitignore

--- SUCCESS! ---
Packed 12 code files.
Final Context Size: 18.45 KB
💾 Added 'ai_context.txt' directly into your folder!

📊 Estimated Token Count: ~4,612 tokens
--------------------------------------------------
Which AI provider are you targeting? (gemini / claude / chatgpt / deepseek): gemini
--------------------------------------------------
🎯 Evaluated against Gemini Models:

  ✅ Gemini 3.1 Pro: Fits! (4,612 / 2,000,000 tokens — 0.2306% capacity)
  ✅ Gemini 3.6 Flash: Fits! (4,612 / 1,000,000 tokens — 0.4612% capacity)
  ✅ Gemini 3.5 Flash-Lite: Fits! (4,612 / 1,000,000 tokens — 0.4612% capacity)

Do you want to copy the output text directly to your clipboard as well?
Type 'y' for Yes, or press Enter to skip: y
📋 Copied full context directly to your clipboard! Ready to Ctrl+V into AI.

Mode 2: Remote GitHub Repository URL

Paste any public GitHub URL. CodeSlimmer fetches and slims the repository in a temporary workspace, estimates tokens, and prompts you to copy the result straight to your clipboard without leaving messy files behind.

--- CODE SLIMMER v2.2 ---
Enter a local folder path OR a GitHub URL: [https://github.com/akasula09/codeslimmer](https://github.com/akasula09/codeslimmer)

🌐 Fetching repository 'akasula09/codeslimmer' from GitHub...

--- SUCCESS! ---
Packed 5 code files.
Final Context Size: 12.30 KB

📊 Estimated Token Count: ~3,075 tokens
--------------------------------------------------
Which AI provider are you targeting? (gemini / claude / chatgpt / deepseek): claude
--------------------------------------------------
🎯 Evaluated against Claude Models:

  ✅ Claude 3.5 Sonnet / Haiku: Fits! (3,075 / 200,000 tokens — 1.5375% capacity)
  ✅ Claude 3 Opus: Fits! (3,075 / 200,000 tokens — 1.5375% capacity)

Do you want to copy the output text directly to your clipboard?
Type 'y' for Yes, or press Enter to skip: y
📋 Copied full context directly to your clipboard! Ready to Ctrl+V into AI.

ℹ️ Private Repositories: Unauthenticated requests to private or non-existent repositories will output:
❌ Repository does not exist or is private.


📜 Output Structure

CodeSlimmer structures the prompt context using this clean, LLM-optimized XML format:

<!-- GENERATED BY CODESLIMMER v2.2 - DO NOT EDIT MANUALLY -->

<project_structure_tree>
my_project_folder/
├── src/
│   ├── index.js
│   └── utils.js
├── .gitignore
└── package.json
</project_structure_tree>

<file path="src/index.js">
console.log("Hello World");
</file>

<file path="src/utils.js">
export function add(a, b) { return a + b; }
</file>

⚖️ License

Distributed under the PolyForm Noncommercial License 1.0.0. Free for personal, educational, research, and internal business use. See LICENSE for details.

About

Package codebases into AI-optimized XML context.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages