developer  by smol-ai

Agent for embedding a developer in your app

created 2 years ago
12,111 stars

Top 4.2% on sourcepulse

GitHubView on GitHub
Project Summary

This library provides a "junior developer" AI agent that can scaffold entire codebases from a product specification or be embedded within your own applications. It targets developers seeking to accelerate their workflow by leveraging AI for code generation, offering a human-in-the-loop approach for iterative development and debugging.

How It Works

The core approach involves a multi-step process: first, a "plan" is generated based on the prompt, followed by specifying necessary file paths. Then, code is generated for each file, facilitating a "logbook-driven programming" style where errors or underspecified parts can be directly fed back into the prompt for refinement. This iterative loop allows developers to guide the AI, intervening manually when necessary.

Quick Start & Requirements

  • Library Mode: pip install smol_dev
  • Git Repo Mode: Clone the repository and run poetry install, then python main.py "<your prompt>".
  • Dependencies: Python, Poetry, OpenAI API key (defaults to gpt-4-0613).
  • API Mode: Requires running poetry run api or python smol_dev/api.py.
  • Demo: smol-ai/developer

Highlighted Details

  • Enables "engineering with prompts" rather than just prompt engineering.
  • Supports debugging by pasting error messages directly into the prompt.
  • Offers library mode for integration into existing Python projects.
  • Includes an API mode compatible with Agent Protocol.

Maintenance & Community

  • Actively seeking examples and contributions.
  • Forks exist for JavaScript/TypeScript, C#/Dotnet, and Go.
  • Community channels are not explicitly mentioned in the README.

Licensing & Compatibility

  • The README does not explicitly state a license.

Limitations & Caveats

The feedback loop for code generation can be slow (2-4 minutes per program with GPT-4). Some use-case-specific code for handling image generation in Chrome extensions is not yet generalized. The project notes that Anthropic models do not currently follow instructions for generating file code as well as OpenAI models.

Health Check
Last commit

1 year ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
229 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.