Documentation Index
Fetch the complete documentation index at: https://docs.codeflash.ai/llms.txt
Use this file to discover all available pages before exploring further.
Java Configuration
Codeflash stores its configuration inside your existing build file —pom.xml properties for Maven projects, or gradle.properties for Gradle projects. No separate config file is needed.
Maven Configuration
For Maven projects, Codeflash writes properties under the<properties> section of your pom.xml with the codeflash. prefix:
Gradle Configuration
For Gradle projects, Codeflash writes settings togradle.properties with the codeflash. prefix:
Codeflash auto-detects most settings from your project structure. Running
codeflash init will set up the correct config — manual configuration is usually not needed. For standard Maven/Gradle layouts, Codeflash may write no config at all if all defaults are correct.Auto-Detection
When you runcodeflash init, Codeflash inspects your project and auto-detects:
| Setting | Detection logic |
|---|---|
| Source root | Looks for src/main/java (Maven/Gradle standard layout), falls back to pom.xml sourceDirectory |
| Test root | Looks for src/test/java, test/, tests/ |
| Build tool | Detects Maven (pom.xml) or Gradle (build.gradle / build.gradle.kts) |
| Test framework | Checks build file dependencies for JUnit 5, JUnit 4, or TestNG |
Configuration Options
| Property | Description | Default |
|---|---|---|
moduleRoot | Source directory to optimize | src/main/java |
testsRoot | Test directory | src/test/java |
gitRemote | Git remote for pull requests | origin |
formatterCmds | Code formatter command ($file placeholder for file path) | (none) |
disableTelemetry | Disable anonymized telemetry | false |
ignorePaths | Paths within source root to skip during optimization | (none) |
Only non-default values are written to the config. If your project uses the standard
src/main/java and src/test/java layout with the default origin remote, Codeflash may not need to write any config properties at all.Multi-Module Projects
For multi-module Maven/Gradle projects, runcodeflash init from the module you want to optimize. The config is written to that module’s pom.xml or gradle.properties:
client/src/), codeflash init will prompt you to override the detected paths.
Tracer Options
When usingcodeflash optimize to trace a Java program, these CLI options are available:
| Option | Description | Default |
|---|---|---|
--timeout | Maximum time (seconds) for each tracing stage | No limit |
--max-function-count | Maximum captures per method | 100 |
--trace-only | Trace and generate replay tests without optimizing | false |
Example
Standard Maven project
codeflash init detects everything automatically.
Gradle project
codeflash init detects everything automatically.