Build apps autonomously with Claude Code CLI
Project description
autonomous-claude
Build apps autonomously with Claude Code CLI. Uses your existing Claude subscription - no API key required.
Based on Anthropic's long-running agents guide.
Installation
# Install uv if you haven't
curl -LsSf https://astral.sh/uv/install.sh | sh
# Install autonomous-claude
uv tool install autonomous-claude
Or install from source:
git clone https://github.com/ferdousbhai/autonomous-claude.git
cd autonomous-claude
uv tool install .
Prerequisites
Claude Code CLI must be installed and authenticated:
npm install -g @anthropic-ai/claude-code
claude login
Usage
Build a new app
# From a description
autonomous-claude build "An Apple Notes clone as a web app - uses local directory structure and .md files for storage, supports folders, rich text editing, and search"
# From a spec file
autonomous-claude build ./app-spec.md -o ./notes-app
# With options
autonomous-claude build "Markdown notes app with folder organization" -o ./notes -n 50
Resume an existing project
Continue implementing existing features where you left off:
autonomous-claude resume ./notes-app
Continue with new features
Add new features to any existing project - whether built with this tool or not.
Note: If your project has incomplete features, you'll be asked to confirm. Use
resumeto continue without adding new features.
# Adopt an external project for maintenance
autonomous-claude continue ./my-nextjs-app "Add dark mode toggle and fix the sidebar collapse bug"
# Add new features to a project built with this tool
autonomous-claude continue ./notes-app "Add note sharing via public links and real-time collaboration"
Options
| Option | Short | Description | Default |
|---|---|---|---|
--output |
-o |
Output directory | prompted |
--model |
-m |
Claude model | Claude Code default |
--max-sessions |
-n |
Max sessions (Claude Code invocations) | 100 |
--timeout |
-t |
Timeout per session (seconds) | 18000 (5 hours) |
--verbose |
-V |
Stream Claude output in real-time | false |
Configuration
Create ~/.config/autonomous-claude/config.toml to customize defaults:
[session]
timeout = 18000 # Seconds per session (default: 5 hours)
max_turns = 2000 # Max turns per Claude session
max_sessions = 100 # Max Claude sessions before stopping
spec_timeout = 600 # Timeout for spec generation (10 minutes)
[tools]
allowed = ["Read", "Write", "Edit", "Glob", "Grep", "Bash"]
[ui]
pending_display_limit = 10 # Max pending features to show
feature_name_max_length = 500 # Truncate long feature names
Spec Confirmation
Before building, Claude generates a detailed spec from your description. You can review and request changes:
Accept? [y] n
What needs changing? Add offline support and keyboard shortcuts
Updating spec...
Type y (or press Enter) to accept, or describe what to change.
Project Files
The tool creates these files in your project:
| File | Purpose |
|---|---|
feature_list.json |
Tracks features and their completion status |
app_spec.txt |
The full application specification |
claude-progress.txt |
Session notes and progress updates |
.autonomous-claude/logs/ |
Session logs (stdout, stderr, prompts) |
Use --verbose (-V) to stream Claude's output in real-time instead of showing a spinner.
How It Works
Building new projects (build)
- Session 1 (Initializer): Creates
feature_list.jsonwith testable features - Sessions 2+ (Coding Agent): Implements features one by one, marking them as passing
Adopting existing projects (continue)
- Session 1 (Adoption Initializer): Analyzes codebase, creates
feature_list.jsonfor requested tasks - Sessions 2+ (Coding Agent): Implements the new features
Adding features to existing projects (continue with feature_list.json)
- Session 1 (Enhancement Initializer): Appends new features to existing
feature_list.json - Sessions 2+ (Coding Agent): Implements the new features
Progress is persisted via feature_list.json and git commits. Press Ctrl+C to stop, then resume to continue.
Example
$ autonomous-claude build "An Apple Notes clone - web app with local .md file storage, folder organization, rich text editing, and full-text search"
Project name: apple-notes-clone
╔═╗╦ ╦╔╦╗╔═╗╔╗╔╔═╗╔╦╗╔═╗╦ ╦╔═╗
╠═╣║ ║ ║ ║ ║║║║║ ║║║║║ ║║ ║╚═╗
╩ ╩╚═╝ ╩ ╚═╝╝╚╝╚═╝╩ ╩╚═╝╚═╝╚═╝
Claude Code CLI
Project /home/user/apple-notes-clone
Model Claude Code default
Sessions 100
Starting new project - initializer will run first
...
Security Note
This tool uses --dangerously-skip-permissions for autonomous operation. Only run in trusted environments.
License
MIT - Based on Anthropic's claude-quickstarts
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file autonomous_claude-0.5.1.tar.gz.
File metadata
- Download URL: autonomous_claude-0.5.1.tar.gz
- Upload date:
- Size: 17.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d52ffb9556042585d2ac18649f43cb835ed1973dad0b8d95abedf319ae1ae749
|
|
| MD5 |
991810f038cbb3e7cc74fe549084f3da
|
|
| BLAKE2b-256 |
3c79a3c7f065c821650f9e1f6bbac4379e23f5823dfce2d12848e055ded2b3c5
|
Provenance
The following attestation bundles were made for autonomous_claude-0.5.1.tar.gz:
Publisher:
release.yml on ferdousbhai/autonomous-claude
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
autonomous_claude-0.5.1.tar.gz -
Subject digest:
d52ffb9556042585d2ac18649f43cb835ed1973dad0b8d95abedf319ae1ae749 - Sigstore transparency entry: 739558486
- Sigstore integration time:
-
Permalink:
ferdousbhai/autonomous-claude@c95b5daf4058e489eaf8baee6dcd5ddc108301e9 -
Branch / Tag:
refs/tags/v0.5.1 - Owner: https://github.com/ferdousbhai
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@c95b5daf4058e489eaf8baee6dcd5ddc108301e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file autonomous_claude-0.5.1-py3-none-any.whl.
File metadata
- Download URL: autonomous_claude-0.5.1-py3-none-any.whl
- Upload date:
- Size: 23.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3f4652977670419cddd08c29a433620971a0b46ad22f36ebf4ec09bf7742eb24
|
|
| MD5 |
40b6a2fc715fcc149c2e992221ee9abf
|
|
| BLAKE2b-256 |
82d3d336aa252f5604a0ffc2a4809b2c77efa0698c116ebdb265770873f90983
|
Provenance
The following attestation bundles were made for autonomous_claude-0.5.1-py3-none-any.whl:
Publisher:
release.yml on ferdousbhai/autonomous-claude
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
autonomous_claude-0.5.1-py3-none-any.whl -
Subject digest:
3f4652977670419cddd08c29a433620971a0b46ad22f36ebf4ec09bf7742eb24 - Sigstore transparency entry: 739558487
- Sigstore integration time:
-
Permalink:
ferdousbhai/autonomous-claude@c95b5daf4058e489eaf8baee6dcd5ddc108301e9 -
Branch / Tag:
refs/tags/v0.5.1 - Owner: https://github.com/ferdousbhai
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@c95b5daf4058e489eaf8baee6dcd5ddc108301e9 -
Trigger Event:
push
-
Statement type: