A multi-stage AI task orchestration tool that automatically executes complex programming tasks through iterative refinement using multiple AI providers.
AutoTask breaks down complex programming requests into multiple stages (perform, check, cleanup, test, commit, verify) and automatically retries until the task is successfully completed. It coordinates between different AI providers (Claude, Gemini) to ensure robust task completion with built-in verification and git integration.
Ensure you have the following CLI tools installed and available in your PATH:
claude- Claude CLI toolgemini- Google Gemini CLI toolgit- For repository operations
Optional dependency:
pip install colorama # For colored terminal output./autotask "Your task description here"./autotask --task-file path/to/task.txt--providers- Comma-separated list of providers to use (default: "claude,gemini")--max-rounds- Maximum number of retry attempts (default: 5)
./autotask "Create a Python function that calculates fibonacci numbers"./autotask "Refactor the authentication module to use JWT tokens instead of sessions"./autotask --providers claude "Fix the memory leak in the image processing function"./autotask --task-file complex_feature.txt --max-rounds 10For complex multi-line task descriptions, create a .task file:
Implement a REST API for user management with the following endpoints:
- POST /users - Create new user
- GET /users/:id - Get user by ID
- PUT /users/:id - Update user
- DELETE /users/:id - Delete user
Include proper error handling and validation.
Then run:
./autotask --task-file user_api.taskAutoTask creates a work/ directory containing:
- Timestamped attempts for each run
- Stage-by-stage prompts and outputs
- Generated guides for iterative improvement
- Final verification results
- Perform - Initial task execution
- Check & Fix - Error detection and correction
- Cleanup - Code quality improvements
- Test - Run and verify tests
- Commit - Git commit with descriptive message
- Verify - Final validation against requirements
The tool automatically retries if verification fails, using learnings from previous attempts.
