System requirements
Python
Python 3.11 or higher is required. Check your version:
Docker
Docker Desktop (macOS/Windows) or Docker Engine (Linux) must be installed and running.Verify:
rsync (Linux only)
On Linux, rsync is used for snapshots:
API keys
At minimum, you need an Anthropic API key from console.anthropic.com.Additional keys depend on your agent choice.
Installation methods
- From GitHub (recommended)
- With optional extras
- Virtual environment
Clone the repository and install in editable mode:
Editable mode (
-e) allows you to pull updates with git pull without reinstalling.One-time setup
After installation, run the setup wizard to configure your agent, tester model, and credentials:Agent selection
The wizard prompts you to choose an AI coding agent:- Claude Code
- Codex
- Aider
- Kiro
Recommended. Uses Anthropic’s Claude models with a Code-optimized interface.
- Requires:
ANTHROPIC_API_KEY - Docker image:
vvenne/ftl:latest - Best for: Most users — high-quality code generation with streaming output
~/.ftl/config.json and used as the default for all new projects.
Tester model selection
FTL generates adversarial tests in parallel while the agent codes. Choose your test generation model:- Anthropic API (default)
- AWS Bedrock
- Skip test generation
Uses
claude-haiku-4-5-20251001 via Anthropic’s API.- Requires:
ANTHROPIC_API_KEY - Latency: ~1-3 seconds per test generation
- Cost: Lowest-cost Anthropic model
Any LiteLLM-supported model works. Edit
.ftlconfig to use custom models:API key configuration
The wizard prompts for your Anthropic API key if not already set:~/.ftl/credentials (file mode 600) and loaded automatically on every FTL invocation.
Adding more credentials
For agents requiring additional keys, useftl auth:
~/.ftl/credentials and available to FTL (not directly to the agent — see Shadow credentials).
Docker image verification
Afterftl setup, verify the image was pulled or built:
If image pull fails
If image pull fails
FTL automatically falls back to building the image locally from your cloned Dockerfile.Requirements for local build:
- You must have cloned the full FTL repository (not just pip installed)
- Docker BuildKit must be available
Optional features
AWS integration
Enables S3 snapshots, CloudWatch tracing, Secrets Manager, and Bedrock Guardrails:- S3 bucket
ftl-<account>-<region> - CloudWatch log group
/ftl/<project-name> - Bedrock Guardrail
ftl-<project-name> - Optional Secrets Manager prefix
Credential-swap proxy
Enables live API calls with real credentials while the agent only sees shadow values:- FTL starts an HTTP/HTTPS intercepting proxy on the host
- Container routes all outbound traffic through the proxy
- Proxy replaces shadow values with real credentials before upstream requests
- HTTPS traffic handled via MITM with ephemeral CA
Langfuse tracing
Enables LLM observability for all tester and diff-review LLM calls:litellm.completion() call is traced automatically via LiteLLM’s Langfuse integration.
Project initialization
After one-time machine setup, initialize FTL in each project:.ftlconfig with defaults from ~/.ftl/config.json:
.ftlconfig
.ftlconfig to override settings per-project. See Configuration reference for all available fields.
Verify installation
1
Check FTL version
2
Verify Docker access
3
Check global config
4
Run a test task
Upgrading FTL
If you installed withpip install -e ., pull the latest code:
Troubleshooting
pip install fails with Python version error
pip install fails with Python version error
FTL requires Python 3.11 or higher. Check your version:If you have multiple Python versions installed, use:
Docker build fails on M1/M2 Mac
Docker build fails on M1/M2 Mac
Apple Silicon Macs may need platform specification:Or use Rosetta 2 mode in Docker Desktop settings.
ftl command not found after install
ftl command not found after install
Ensure the pip install directory is in your PATH:If missing, add to
~/.bashrc or ~/.zshrc:rsync not found (Linux)
rsync not found (Linux)
Install rsync for your distribution:
Proxy install fails (cryptography build error)
Proxy install fails (cryptography build error)
The
cryptography package requires system dependencies:Next steps
Run your first task
Follow the 5-minute quickstart guide
CLI reference
Complete command-line documentation
Configuration
All
.ftlconfig fields and optionsAWS setup
Configure production AWS integration