Metadata-Version: 2.4
Name: bugsnip
Version: 1.0.0
Summary: AI-powered error detection and fixing for Python applications
Author-email: Ifeanyichukwu Collins <ifeanyichukwucollins008@gmail.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/kariosv4sure/bugsnip
Project-URL: Repository, https://github.com/kariosv4sure/bugsnip
Project-URL: Issues, https://github.com/kariosv4sure/bugsnip/issues
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Debuggers
Classifier: Topic :: Software Development :: Quality Assurance
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: click>=8.1.0
Requires-Dist: rich>=13.0.0
Requires-Dist: requests>=2.31.0
Requires-Dist: watchdog>=3.0.0
Requires-Dist: GitPython>=3.1.0
Requires-Dist: python-dotenv>=1.0.0
Dynamic: license-file

```markdown

# 🐛 BugSniper

**AI-powered error detection and automated fixing for Python applications.**

BugSniper watches your application logs in real-time, detects Python errors, traces them to the exact commit that introduced them, and generates AI-powered fix guides with detailed reports.

---

## 📦 Installation

```bash
pip install bugsnip
```

Or install from source:

```bash
git clone https://github.com/kariosv4sure/bugsnip
cd bugsnip
pip install -e .
```

---

🚀 Quick Start

1. Set your Groq API key

```bash
export GROQ_API_KEY="your_groq_api_key_here"
```

Get a free key at console.groq.com

2. Initialize BugSniper

```bash
bugsnip init
```

3. Watch your logs

```bash
bugsnip watch --file app.log --service myapp
```

Or configure defaults and just run:

```bash
bugsnip config set log_file app.log
bugsnip config set service myapp
bugsnip watch
```

---

🔧 Commands

Command Description
bugsnip watch Watch a log file for errors
bugsnip init Initialize BugSniper configuration
bugsnip origin Show the BugSniper origin story
bugsnip config show Show current configuration
bugsnip config set <key> <value> Set a configuration value
bugsnip config reset Reset configuration to defaults
bugsnip config path Show config file location

---

⚙️ Configuration

BugSniper stores settings in ~/.bugsnip/config.json:

```json
{
    "context_lines": 10,
    "report_dir": "bugsnip_reports",
    "auto_apply": false,
    "service": "default",
    "log_file": null
}
```

Available config keys:

Key Type Default Description
context_lines int 10 Lines of context to show around errors
report_dir string bugsnip_reports Directory for fix reports
auto_apply bool false Auto-apply fixes (use with caution)
service string default Default service name
log_file string null Default log file to watch

---

📝 Reports

When an error is detected, BugSniper saves a detailed markdown report:

```
bugsnip_reports/
├── fix_20260827_174151_11.md
└── fix_20260827_174230_16.md
```

Each report includes:

· Error message and traceback
· Code context with line numbers
· AI-generated fix guide with explanation
· Git commit information (who broke it)

---

🎯 Features

Feature Description
Real-time monitoring Watches log files for errors as they occur
Git blame integration Identifies which commit introduced the error
AI-powered fixes Uses Groq AI to analyze and suggest fixes
Hunter personality Dynamic quotes based on error type
Configurable Store preferences in config file
Report generation Saves detailed markdown fix reports
Service tagging Monitor multiple services with custom names

---

📋 Requirements

· Python 3.8+
· Git (for blame tracking)
· Groq API key (free tier at console.groq.com)

---

🧑‍💻 Author

Ifeanyichukwu Collins

· Portfolio: karios-portfolio.onrender.com
· GitHub: @kariosv4sure

---

📄 License

MIT License

---

🤝 Contributing

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

---

💬 Support

For issues or questions, please open an issue on GitHub.

```

