Developer (smol developer) is a junior developer agent that turns a product specification written as a prompt into a whole codebase. Rather than a fixed starter template for one stack, it acts as a general scaffolding generator: you refine the prompt in a tight loop, and the agent regenerates the program.
Generation runs in three steps. The agent first writes a plan of shared dependencies across files, then decides which file paths the program needs (using OpenAI function calling to return structured output), and finally generates the code for each file against that shared plan. The shared-dependencies step keeps names and cross-file references consistent, which matters for programs such as Chrome extensions where one wrong cross-reference breaks the whole build.
It works in three modes. In repo mode you run it on a prompt in a markdown file, read and run the output, and add clarifications or pasted error messages to the prompt until the program works, with a debugger script that reads the whole codebase to suggest specific fixes. In library mode you import the plan, file-path, and code-generation functions into your own app. In API mode it exposes the Agent Protocol so clients can create tasks and execute them step by step. It defaults to GPT-4, and Modal handles parallel code generation and retries on API calls.
Community ports exist in JavaScript and TypeScript, C#, and Go.
Features
- Spec to codebase: generates an entire program from a markdown product specification
- Shared-dependency planning: plans cross-file names and dependencies before writing each file for whole-program coherence
- Human-in-the-loop iteration: refine the prompt and paste errors back in until the program works
- Codebase debugger: reads the whole codebase with an error message to suggest specific code changes
- Library mode: import plan, file-path, and code-generation functions into your own app
- Agent Protocol API: create tasks and execute steps over a standard agent HTTP API
- Parallel generation: Modal parallelises code generation and retries API calls

