Skip to main content

Bootkicker - Project Specification Review Tool

An AI-powered CLI tool that analyzes project specifications and provides intelligent improvement suggestions using multiple Large Language Models.

Features

  • 🤖 Multi-Model Analysis: Leverages multiple LLMs for comprehensive reviews
  • ⚡ Parallel Processing: Calls multiple models simultaneously for faster results
  • 🔄 Robust Error Handling: Automatic retries and graceful failure handling
  • 📊 Progress Tracking: Real-time progress bars for long-running operations
  • 📝 Markdown Support: Processes and merges multiple markdown specification files
  • ⚙️ Configurable: YAML-based configuration for model selection and settings
  • 🔑 OpenRouter Integration: Uses OpenRouter API for access to various LLM providers

Installation

pip install bootkicker

From Source

git clone <repository-url>
cd bootkicker
pip install -e .

Quick Start

  1. Set up your API key:

    export OPENROUTER_API_KEY="your_api_key_here"
    
  2. Create a configuration file (.review.conf.yml) in your project directory:

    models:
      - "openai/gpt-4"
      - "anthropic/claude-3-sonnet"
      - "google/gemini-pro"
      - "meta-llama/llama-2-70b-chat"
    
    summarizer: "google/gemini-2.5-flash"
    
  3. Add your project specification as markdown files in the same directory

  4. Run the review:

    bootkicker /path/to/your/project/directory
    

Configuration

Configuration File Format

Create a .review.conf.yml file in your project directory:

# Required: List of models to use for review
models:
  - "openai/gpt-4"
  - "anthropic/claude-3-sonnet"
  - "google/gemini-pro"
  - "deepseek/deepseek-chat"

# Optional: Model for final summarization (default: google/gemini-2.5-flash)
summarizer: "google/gemini-2.5-flash"

Environment Variables

  • OPENROUTER_API_KEY: Your OpenRouter API key (required)

Supported File Types

  • All .md (Markdown) files in the specified directory
  • Files are processed in alphabetical order
  • Content is merged with proper headers and separators

Usage Examples

Basic Usage

bootkicker ./my-project

With Custom Directory

bootkicker /path/to/project/specs

Example Output

# Project Review Results

Based on analysis from 4 model(s):

## Review 1

[Detailed feedback from first model...]

---

## Review 2

[Detailed feedback from second model...]

---

[Final summarized recommendations...]

Error Handling

The tool provides comprehensive error handling:

  • Missing configuration: Clear error with file path
  • Invalid YAML: Detailed parsing error information
  • Missing API key: Environment variable guidance
  • API failures: Automatic retries with progress reporting
  • No markdown files: Helpful error message
  • Network issues: Graceful degradation and fallback

Development

Requirements

  • Python 3.12+
  • OpenRouter API key
  • Dependencies: openai, langchain, tqdm, pyyaml, aiohttp

Testing

Run with the provided test configuration:

export OPENROUTER_API_KEY="your_key"
bootkicker test

License

MIT License - see LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit issues and enhancement requests.

Changelog

See CHANGELOG.md for version history and changes.

Metadata

Release files for bootkicker 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bootkicker 0.1.1
File Size Uploaded
bootkicker-0.1.1.tar.gz 7.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for bootkicker 0.1.1
File Interpreter ABI Platform
bootkicker-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 15.8 kB

Release files / bootkicker-0.1.1.tar.gz

Download URL bootkicker-0.1.1.tar.gz
Size 7.6 kB
Tags Source
SHA-256 checksum
How to use checksums
ee65b1804826ac930e552c80393a32d8b0671a2625c3e682d1a2198318c8827b
BLAKE2b-256 checksum
How to use checksums
54cb33108bd289437f95848c3ee9225f2f455f83c91b261d2ad4264f2bfe71c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release files / bootkicker-0.1.1-py3-none-any.whl

Download URL bootkicker-0.1.1-py3-none-any.whl
Size 8.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
473da96fca6b54493dfbbf8b763cfaaba25afbf3d4b66ffbc68fddbc302b7324
BLAKE2b-256 checksum
How to use checksums
58083f1652e7dfa0cdff0784965ece62874c7b29df71b4ddc2a159ac916696b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page