Skip to main content

G-AiCoder - Advanced AI development assistant with multi-modal intelligence

Project description

gCoder - Advanced AI Development Assistant

PyPI version Python versions License: MIT

G-AICoder is an advanced AI-powered development assistant that supports multiple AI providers from local to cloud. It provides intelligent code editing, analysis, and development assistance through a clean command-line interface.

🚀 Quick Start

Installation

pip install g-aicoder

First Run Setup

gcoder chat

On first run, gCoder will guide you through:

  1. Permissions Setup - Grant file operation permissions
  2. Provider Selection - Choose your AI provider
  3. Model Selection - Select specific model
  4. API Key Setup - For cloud providers

✨ Features

  • 🤖 Multi-Provider AI Support - Use any AI model (Ollama, OpenAI, Anthropic, Google, DeepSeek)
  • 💻 Code Intelligence - Smart code editing, analysis, and improvements
  • 📁 File Operations - Create, copy, move, delete files with AI assistance
  • 🔍 Advanced Search - Regex pattern matching across codebases
  • 🖼️ Multi-modal Analysis - Image analysis for screenshots and UI elements
  • 💬 Interactive Chat - Natural conversation with conversation history
  • Real-time Streaming - Live response streaming for better UX
  • 🔧 Command-line Interface - Intuitive CLI with multiple subcommands

🛠️ Usage

Interactive Chat Session

gcoder chat

Edit Files with AI Assistance

gcoder edit main.py --instruction "Add error handling"

Search for Patterns

gcoder search "TODO" --path src/

Analyze Codebase

gcoder analyze --path .

Image Analysis

gcoder image screenshot.png --context code

File Operations

gcoder file create new_file.py
gcoder file copy source.py destination.py
gcoder file move old.py new.py
gcoder file delete unwanted.py

🤖 AI Providers

gCoder supports multiple AI providers with a completely generic configuration system:

Pre-configured Providers

  1. Ollama (Local) - Free, private, offline

    • Models: qwen2.5-coder:7b, codellama:7b, deepseek-coder:6.7b, llava:7b
  2. OpenAI (Cloud) - High-quality responses

    • Models: GPT-4, GPT-3.5-turbo
  3. Anthropic (Cloud) - Excellent for coding tasks

    • Models: Claude-3-Sonnet, Claude-3-Haiku
  4. Google AI (Cloud) - Fast and reliable

    • Models: Gemini Pro
  5. DeepSeek (Cloud) - Specialized for coding

    • Models: DeepSeek Coder

Configuration

All providers are configured through ~/.gcoder/config.json:

{
  "ai_provider": "ollama",
  "providers": {
    "ollama": {
      "name": "Ollama (Local)",
      "type": "local",
      "base_url": "http://localhost:11434",
      "api_endpoint": "/api/generate",
      "models": [
        {
          "name": "qwen2.5-coder:7b",
          "description": "Qwen2.5 Coder 7B - Recommended for coding"
        }
      ],
      "selected_model": "qwen2.5-coder:7b",
      "timeout": 600,
      "temperature": 0.7,
      "max_tokens": 4096
    }
  }
}

📋 Requirements

  • Python: 3.8 or higher
  • Dependencies:
    • aiohttp>=3.13.0
    • Pillow>=10.0.0
  • Optional: Ollama for local AI models

🔧 Development

Installation from Source

git clone https://github.com/prdpspkt/gCoder.git
cd gCoder
pip install -e .

Project Structure

gcoder/
├── main.py                 # CLI entry point
├── core/                   # Core AI functionality
│   ├── ai_assistant.py    # Main AI assistant
│   └── chat_manager.py    # Chat management
├── handlers/              # Request handlers
│   └── request_handlers.py
└── utils/                 # Utility modules

🐛 Troubleshooting

Common Issues

  1. Ollama Connection Error

    • Ensure Ollama is running: ollama serve
    • Check base URL in config: http://localhost:11434
  2. API Key Issues

    • Verify API keys for cloud providers
    • Check provider configuration
  3. Permission Errors

    • Grant permissions during first-run setup
    • Check file/directory permissions

Getting Help

  • Issues: GitHub Issues
  • Documentation: Check this README and inline help: gcoder --help

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📞 Support

If you encounter any problems or have questions:

  1. Check the troubleshooting section
  2. Search existing issues
  3. Create a new issue with detailed information

gCoder - Making AI-assisted development accessible and powerful for everyone! 🚀

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

g_aicoder-1.0.4.tar.gz (34.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

g_aicoder-1.0.4-py3-none-any.whl (33.0 kB view details)

Uploaded Python 3

File details

Details for the file g_aicoder-1.0.4.tar.gz.

File metadata

  • Download URL: g_aicoder-1.0.4.tar.gz
  • Upload date:
  • Size: 34.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for g_aicoder-1.0.4.tar.gz
Algorithm Hash digest
SHA256 adab459b3d597d8dfb585e054370cddcf7ba8f48dd78286d674ba36ce7ea1649
MD5 31f36bac0d5ebea58f79c58324e7610e
BLAKE2b-256 3feef8fef51ba15066665372ea756e2025b3bfa873c87b1039ca1a432246e598

See more details on using hashes here.

File details

Details for the file g_aicoder-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: g_aicoder-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 33.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for g_aicoder-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 64f67d579d6e9612defccf0388ce972cc15c574e133ef164b0a98ca6d8813d9c
MD5 e8088d5212856455ee385431de2f22f4
BLAKE2b-256 7b80a8977a31517fe12e76aa3e31d8c03a4c24e50de1f96703081bfad5e3db9a

See more details on using hashes here.

Supported by

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