Skip to main content

Autonomous iterative coding agent — builds until the vibe is right

Project description

InductiveClaw

Autonomous iterative coding agent — builds until the vibe is right.

InductiveClaw wraps the Claude Agent SDK in a persistent autonomous loop. Unlike Claude Code, which stops after completing one task and waits for the next prompt, InductiveClaw continuously builds, verifies, evaluates, and iterates on a software project until it reaches a quality threshold or exhausts its budget.

Installation

pip install iclaw

For screenshot-based visual evaluation (optional):

pip install iclaw[screenshot]
playwright install chromium

Requires the Claude Code CLI (npm install -g @anthropic-ai/claude-code) because the Claude Agent SDK shells out to claude for OAuth. Run claude login once before launching InductiveClaw if you plan to use a Max/Pro subscription.

Authentication

InductiveClaw prefers OAuth (your existing Claude Code / Max subscription login) by default, falling back to an API key. OAuth works via the Claude CLI, so you need claude installed and claude login completed on the machine running iclaw.

Option 1 — Max/Pro subscription (recommended):

claude login   # one-time setup
iclaw -g "your goal"

Option 2 — API key:

export ANTHROPIC_API_KEY=sk-ant-...
iclaw -g "your goal"

Option 3 — Explicit key:

iclaw --api-key sk-ant-... -g "your goal"

Usage

# Build a game from scratch
iclaw -g "Build a roguelike deckbuilder with pixel art style"

# Continue on existing project
iclaw -p ./my-game -g "Polish visuals, add sound effects, improve the tutorial"

# Quick prototype with low quality bar
iclaw -g "Simple snake game in the browser" --threshold 5 --max-iterations 10

# Disable screenshots for non-visual projects
iclaw -g "Build a CLI tool for CSV analysis" --no-screenshot

How It Works

  1. You give InductiveClaw a goal
  2. It initializes the project, creates a backlog, and builds the first feature
  3. Each iteration: orient → plan → build → verify → evaluate → document → continue
  4. The loop runs until quality threshold is met, max iterations reached, or you interrupt with Ctrl+C

Project state is persisted on disk (BACKLOG.md, EVALUATIONS.md, source files), so you can stop and resume at any time.

CLI Reference

usage: iclaw [-h] -g GOAL [-p PROJECT] [-m MODEL] [-t THRESHOLD]
             [--max-iterations N] [--eval-frequency N]
             [--use-api-key] [--api-key KEY]
             [--no-screenshot] [--port PORT]
             [--dev-cmd CMD] [-q] [-v]
Flag Default Description
-g, --goal required What to build
-p, --project ./project Project directory
-m, --model SDK default Model override
-t, --threshold 8 Quality threshold (1-10)
--max-iterations 100 Max outer loop iterations
--eval-frequency 3 Self-evaluate every N iterations
--use-api-key off Prefer API key over OAuth
--api-key env Explicit API key
--no-screenshot off Disable visual evaluation
--port 3000 Dev server port for screenshots
--dev-cmd auto Dev server command (parsed but not consumed by the runtime)
-q, --quiet off Suppress verbose agent reasoning output (no effect unless -v is also set)
-v, --verbose off Print the agent's reasoning/tool output; --quiet disables this mode

Architecture

inductiveclaw/
├── __init__.py
├── __main__.py     # CLI entrypoint (argparse)
├── auth.py         # OAuth-first authentication
├── agent.py        # Outer autonomous loop + Agent SDK calls
├── tools.py        # Custom MCP tools (backlog, evaluate, screenshot, docs)
├── config.py       # Configuration + usage tracking
└── display.py      # Terminal output formatting (Rich)

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iclaw-0.1.0.tar.gz (20.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

iclaw-0.1.0-py3-none-any.whl (18.2 kB view details)

Uploaded Python 3

File details

Details for the file iclaw-0.1.0.tar.gz.

File metadata

  • Download URL: iclaw-0.1.0.tar.gz
  • Upload date:
  • Size: 20.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for iclaw-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fd97324e8aded7ce28653fe447bb428b191b0184995c53b2f4ad0bf4b724e52b
MD5 829184af6e8b515902201880c5b5d902
BLAKE2b-256 deab4097114b89612a1fa02ad9ca0323a873f3e39c6a1ca04e5c14d4678ee5c1

See more details on using hashes here.

File details

Details for the file iclaw-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: iclaw-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 18.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for iclaw-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 88b6017ebafa6bebaf3aba1b7b08685e9cc61492498e66d41c0925722830e744
MD5 7bd0cefefc8ee78e982eb98102c35295
BLAKE2b-256 97ff2a2a298232673bc80087b67c28ef726e65e3516958d93a6c369df9c412d2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page