autoprogrammer

Autoprogrammer

Autoprogrammer is a software generator that turns a high-level software blueprint into a runnable Python project using AI agents.

Given a structured blueprint describing modules, data models, and behaviours, Autoprogrammer:

All previous RPG / game‑style metaphors have been removed; this tool now focuses purely on software generation.

Features

Requirements

Installation

Clone the repository:

git clone https://github.com/smallville1979/autoprogrammer.git
cd autoprogrammer

Create and activate a virtual environment:

python -m venv .venv
source .venv/bin/activate    # Linux/macOS
# or
.\.venv\Scripts\activate     # Windows

Install dependencies:

pip install -r requirements.txt

Set your AI key (example for Anthropic):

export ANTHROPIC_API_KEY="your-key-here"   # Linux/macOS
# or
setx ANTHROPIC_API_KEY "your-key-here"     # Windows (new shell needed)

Usage

  1. Write a blueprint file, for example blueprint.yaml:
project_name: example_app
description: Simple generated Python service
modules:
  - name: core
    description: Core domain logic
  - name: api
    description: HTTP API layer
  1. Run Autoprogrammer against the blueprint:
python -m autoprogrammer \
  --blueprint blueprint.yaml \
  --output ./generated_project
  1. Inspect the generated project:
cd generated_project
python -m pip install -r requirements.txt
python -m pytest          # if tests were generated
python main.py            # or the entrypoint created by the blueprint

The tool will:

Development

To work on Autoprogrammer itself:

git clone https://github.com/smallville1979/autoprogrammer.git
cd autoprogrammer
python -m venv .venv
source .venv/bin/activate  # or .\.venv\Scripts\activate on Windows
pip install -r requirements-dev.txt

Run tests:

pytest

License

See LICENSE in this repository.