Skip to main content

AI-powered project scaffolding CLI with demo mode for immediate usage

Project description

idea-cli: AI-Driven SDLC Engine

Transform project ideas into production-ready codebases through intelligent validation, planning, and automated implementation with comprehensive demo mode for immediate usage.

๐Ÿš€ Key Features

  • ๐ŸŽญ Demo Mode: Immediate usage without API keys - try all features with fallback implementations
  • ๐Ÿ” Idea Validation: Critical idea validation with external API integration and business viability scoring
  • ๐ŸŽฏ Enhanced Planning: AI-powered feature breakdown into epics and implementable stories
  • ๐Ÿ—๏ธ Smart Scaffolding: Language-aware project generation (Python/Node.js) with comprehensive templates
  • ๐Ÿ”„ Micro-Prompt Queue: Test-driven development automation with multi-provider LLM support
  • ๐Ÿ“Š Experience Learning: Automatic failure analysis and guard-rail generation from development experiences
  • ๐Ÿ› Issue Reporting: Automated GitHub issue creation with system diagnostics and log collection
  • ๐Ÿ”ง Configuration Management: JSON schema validation with user-friendly setup

Quick Start (Zero Configuration Required)

1. Installation

# Install from PyPI
pip install ai-idea-cli

# Or create a virtual environment first (recommended)
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
pip install ai-idea-cli

2. Try Demo Mode Immediately

# Initialize configuration (enables demo mode by default)
idea init-config

# Validate an idea (demo mode)
idea validate "AI-powered task management CLI"

# Create a project (demo mode)
idea new "AI-powered task management CLI" --dry-run

โœ… Success check: All commands work immediately with demo responses and guidance

3. Upgrade to Full Features (Optional)

# Edit configuration file
nano ~/.idea-cli/config.json

# Set your API keys and disable demo mode:
{
  "demoMode": false,
  "validator": {
    "apiKeyEnv": "VALIDATOR_API_KEY"
  },
  "models": {
    "apiKeyEnv": "ANTHROPIC_API_KEY"
  }
}

# Set environment variables
export ANTHROPIC_API_KEY="your_claude_key"
export VALIDATOR_API_KEY="your_validator_key"

Command Reference

Essential Commands

Command Purpose Demo Mode Full Mode
idea init-config Initialize user configuration โœ… Always works โœ… Creates config file
idea validate Validate project idea โœ… Demo validation โœ… Real API validation
idea new Create scaffolded project โœ… Basic template โœ… AI-enhanced planning
idea report-issue Report bugs automatically โœ… Manual instructions โœ… GitHub CLI integration

Advanced Commands (Full Mode Only)

Command Purpose Requirements
idea run-queue Execute implementation queue LLM API key
idea queue-status Show queue progress Project with queue
idea experience collect Log development failure Project directory
idea experience summarise Generate lessons from failures LLM API key
idea upgrade Apply lessons as guard-rails Project directory

Command Options

Option Purpose Example
--dry-run Preview without execution idea new "test" --dry-run
--demo Force demo mode idea new "test" --demo
--skip-validation Bypass idea validation idea new "test" --skip-validation
--project-dir Specify project directory idea run-queue --project-dir ./my-project

Architecture Overview

Demo Mode vs Full Mode

Demo Mode (Default - No API keys required):

  • โœ… Immediate usage for testing and exploration
  • โœ… All CLI commands functional with fallback responses
  • โœ… Basic project scaffolding with "hello world" templates
  • โœ… Clear upgrade paths and configuration guidance
  • โœ… Issue reporting with manual instructions

Full Mode (API keys configured):

  • ๐Ÿš€ Real idea validation with business scoring
  • ๐Ÿš€ AI-enhanced planning with detailed breakdowns
  • ๐Ÿš€ Complete TDD implementation cycle
  • ๐Ÿš€ Automatic lesson generation and guard-rail updates
  • ๐Ÿš€ Automated GitHub issue reporting

How It Works

1. Configuration Stage

  • JSON schema validation ensures configuration integrity
  • User config stored in ~/.idea-cli/config.json
  • Auto-detection of demo mode vs full mode based on API key availability

2. Validation Stage

  • Demo Mode: Provides neutral scoring with upgrade guidance
  • Full Mode: Real validation using external validator API with business viability scoring
  • Configurable score thresholds and acceptance criteria

3. Planning Stage

  • Demo Mode: Basic project structure with common patterns
  • Full Mode: AI-powered breakdown into epics and implementable stories
  • Technology stack recommendations based on idea analysis

4. Implementation Stage

  • Demo Mode: Static templates with development guidance
  • Full Mode: Micro-prompt queue drives TDD implementation
  • Support for multiple LLM providers (Anthropic Claude, OpenAI GPT)

5. Learning Stage

  • Experience collection from development failures
  • AI summarization into actionable lessons
  • Auto-generated guard-rails from lessons

Configuration

Quick Setup Guide

For Demo Mode (Default - No Setup Required):

idea init-config  # Creates config with demo mode enabled
idea validate "test idea"  # Works immediately

For Full Mode (API Keys Required):

# 1. Initialize configuration
idea init-config

# 2. Set environment variables
export ANTHROPIC_API_KEY="your_claude_api_key_here"
export VALIDATOR_API_KEY="your_validator_api_key_here"  # Optional

# 3. Edit config to disable demo mode
nano ~/.idea-cli/config.json
# Change: "demoMode": false

Configuration File (~/.idea-cli/config.json)

The configuration file is automatically created when you run idea init-config. Here's what each section does:

Demo Mode Configuration (Default):

{
  "demoMode": true,
  "retentionDays": 30,
  "scaffold": {
    "templateVersion": "main"
  }
}

Full Mode Configuration:

{
  "demoMode": false,
  "validator": {
    "endpoint": "https://api.example.com/validate",
    "apiKeyEnv": "VALIDATOR_API_KEY",
    "minScore": 0.7
  },
  "models": {
    "plan": "claude-3-5-sonnet-20241022",
    "queue": "claude-3-5-sonnet-20241022",
    "summarise": "claude-3-5-sonnet-20241022",
    "apiKeyEnv": "ANTHROPIC_API_KEY"
  },
  "scaffold": {
    "templateVersion": "main"
  },
  "retentionDays": 30
}

Environment Variables

Variable Required Purpose
ANTHROPIC_API_KEY Full mode Claude API for planning, queue execution, summarization
OPENAI_API_KEY Alternative OpenAI API as alternative to Claude
VALIDATOR_API_KEY Optional Custom validator API for real idea validation

Supported LLM Providers

Anthropic Claude (Recommended):

OpenAI GPT:

Project Structure

idea-cli/
โ”œโ”€โ”€ idea/                          # Core package
โ”‚   โ”œโ”€โ”€ cli.py                     # Main CLI with global error handling
โ”‚   โ”œโ”€โ”€ config.py                  # Configuration management with JSON schema
โ”‚   โ”œโ”€โ”€ demo.py                    # Demo mode implementations
โ”‚   โ”œโ”€โ”€ validator.py               # Idea validation with demo support
โ”‚   โ”œโ”€โ”€ llm.py                     # Multi-provider LLM integration
โ”‚   โ”œโ”€โ”€ issue_reporter.py          # GitHub issue reporting
โ”‚   โ”œโ”€โ”€ planner.py                 # AI-powered planning
โ”‚   โ”œโ”€โ”€ queue.py                   # Queue management
โ”‚   โ”œโ”€โ”€ runner.py                  # Story implementation engine
โ”‚   โ”œโ”€โ”€ experience.py              # Learning system
โ”‚   โ””โ”€โ”€ scaffold/                  # Project scaffolding
โ”‚       โ”œโ”€โ”€ python.py              # Python project scaffolder
โ”‚       โ””โ”€โ”€ node.py                # Node.js project scaffolder
โ”œโ”€โ”€ config/                        # Configuration schema and defaults
โ”‚   โ”œโ”€โ”€ schema.json                # JSON schema for validation
โ”‚   โ””โ”€โ”€ default.json               # Default configuration template
โ”œโ”€โ”€ templates/                     # Copier templates
โ”œโ”€โ”€ .github/workflows/             # CI/CD pipelines
โ””โ”€โ”€ scripts/                       # Development scripts

Generated Project Structure

my-project/
โ”œโ”€โ”€ .idea/                        # Project metadata
โ”‚   โ”œโ”€โ”€ plan.json                 # Enhanced plan with epics/stories
โ”‚   โ”œโ”€โ”€ queue.json                # Implementation queue
โ”‚   โ””โ”€โ”€ _logs/                    # Development logs and failures
โ”œโ”€โ”€ src/                          # Source code
โ”œโ”€โ”€ tests/                        # Test files
โ”œโ”€โ”€ lessons/                      # Project-specific lessons
โ”œโ”€โ”€ .github/workflows/            # CI/CD for the project
โ””โ”€โ”€ README.md                     # ADHD-friendly instructions

Error Handling & Issue Reporting

Automatic Issue Reporting

When errors occur, idea-cli can automatically create GitHub issues with:

  • System information (OS, Python version, architecture)
  • Configuration summary (sanitized, no secrets)
  • Recent log files from .idea/_logs/
  • Steps to reproduce template
# Report an issue manually
idea report-issue "CLI command failed" --dry-run

# Automatic issue reporting on unexpected errors
# (triggered automatically with user confirmation)

Manual Issue Creation

If GitHub CLI is not available, idea-cli provides:

  • Pre-formatted issue content
  • System diagnostics
  • Copy-paste ready templates

Troubleshooting

Common Issues

"Command 'idea' not found"

  • Fix: Ensure package is installed: pip install ai-idea-cli
  • Check: pip show ai-idea-cli should show installation
  • Try: Restart your terminal or source your shell profile

"Configuration error: API key environment variable not configured"

  • For Demo Mode: Run idea init-config and verify "demoMode": true in config
  • For Full Mode: Set export ANTHROPIC_API_KEY=your_key and ensure "demoMode": false

"Failed to initialize config"

  • Fix: Check permissions: ls -la ~/ (should be writable)
  • Try: mkdir -p ~/.idea-cli && idea init-config
  • Alternative: Use --config-dir flag to specify different location

"Import errors for anthropic/openai packages"

  • Fix: pip install anthropic (for Claude) or pip install openai (for GPT)
  • Note: Only needed for full mode, demo mode works without these packages

Commands work but show demo responses

  • This is normal! Demo mode is the default
  • To upgrade: Set API keys and change "demoMode": false in config
  • Verify: echo $ANTHROPIC_API_KEY should show your key

Performance Tips

  • Use --dry-run for testing without API calls
  • Use --demo flag to force demo mode temporarily
  • Set appropriate model choices in config (haiku for speed, sonnet for quality)

Debug Mode

# Enable verbose logging
export IDEA_CLI_DEBUG=1
idea validate "test idea"

# Check configuration
idea init-config  # Shows current config path and status

Contributing

We welcome contributions! Here's how to get started:

Quick Setup

# Fork the repository on GitHub
git clone https://github.com/yourusername/ai-idea-cli.git
cd ai-idea-cli

# Install in development mode
pip install -e .

# Test the installation
idea --help

Development Workflow

  1. Test demo mode: All commands should work without API keys
  2. Test full mode: Set API keys and test enhanced features
  3. Run quality checks: ruff check . && ruff format --check .
  4. Test error handling: Verify issue reporting functionality
  5. Update documentation: Keep README and docstrings current

Pull Request Guidelines

  • Test both demo and full modes
  • Include tests for new features
  • Update documentation for user-facing changes
  • Follow existing code style and patterns

License

MIT License - see LICENSE file for details.


๐ŸŽญ Start in demo mode, upgrade when ready!

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

ai_idea_cli-0.3.0.tar.gz (26.7 kB view details)

Uploaded Source

Built Distribution

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

ai_idea_cli-0.3.0-py3-none-any.whl (28.4 kB view details)

Uploaded Python 3

File details

Details for the file ai_idea_cli-0.3.0.tar.gz.

File metadata

  • Download URL: ai_idea_cli-0.3.0.tar.gz
  • Upload date:
  • Size: 26.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for ai_idea_cli-0.3.0.tar.gz
Algorithm Hash digest
SHA256 ed13270d349f9fca58099adc48b51d6ae6a78aafcae88bb07e8ba6d1f11efca6
MD5 b806e910b3b48c21beff25d404c3be06
BLAKE2b-256 8261b4355abd68dd122b9d277de474d41cb2ad4362c8901cfc6c429298b09e47

See more details on using hashes here.

File details

Details for the file ai_idea_cli-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: ai_idea_cli-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 28.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for ai_idea_cli-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c9e2926b598759af4d3b562ebc6ac660b9e749fbbf78c6e0a547ee8a0bc84b03
MD5 7ad63847fecc0d4f922b91d056b01044
BLAKE2b-256 df57963e5250219026bdb51ce3365854e2b456ef23bc7c9e3389a152b0fcb0d9

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