Run Configurations
The Concord IntelliJ Plugin allows you to execute Concord flows locally directly from the IDE. This is powered by the Concord CLI, enabling rapid feedback loops during development without pushing changes to the server.
Prerequisites
Before running flows, you need to configure the Concord CLI.
- Open Settings | Tools | Concord CLI.
- Either:
- Download: Click "Download..." to fetch the CLI directly from Maven Central. The plugin will download and configure it automatically.
- Manual path: If you already have the CLI installed, specify the path to the executable.
- The plugin validates the path and displays the detected version. If the path is incorrect, you will see a specific error: "File not found" if the file does not exist, or "File is not executable" if the file exists but cannot be run (with a suggestion to select a Java runtime or use a
.shdistribution). - Optionally, select a Java runtime to use for running the CLI. By default, the CLI uses
javafrom the system PATH. You can choose any JDK registered in IntelliJ to run the CLI viajava -jarinstead.

Selecting a specific Java runtime is useful when the Concord CLI requires a different JDK version than your system default, or when java is not on the system PATH.
Running a Flow
There are multiple ways to start a flow execution.
1. Gutter Icons
The easiest way to run a specific flow is using the Run icon in the editor gutter (left margin) next to the flow definition.

Clicking the icon will create a temporary run configuration and start the flow immediately.
2. Context Menu
Right-click anywhere inside a flow definition and select Run <flowName>.
3. Run Configuration Dialog
You can manually create and edit configurations via Run | Edit Configurations.... Click the + button and select Concord.

Configuration Options
When editing a Concord Run Configuration, you can customize the execution environment:
- Entry Point: The name of the flow to execute.
- Working Directory: The root directory for the execution (usually the folder containing
concord.yml). - Parameters: Process arguments passed to the execution (accessible via
${...}in the flow). - Additional Arguments: Any extra flags to pass directly to the CLI command (e.g.,
--verbose).
Execution Modes
The plugin supports two distinct execution modes, which can be configured globally in Settings | Tools | Concord Run Mode.
Direct Mode (Default)
In this mode, the selected flow is executed directly as the entry point.
- Command:
concord run --entry-point <flowName> - Use case: Testing independent flows or simple processes.
Delegating Mode
In this mode, the plugin always runs a specific "Main" entry point (e.g., a main flow) and passes the actual target flow name as a parameter.
- Command:
concord run --entry-point <MainEntryPoint> -e <FlowParamName>=<TargetFlowName> - Use case: Complex projects where a wrapper flow handles initialization, logging, or error handling before calling the target business logic.
Configuration:
- Main Entry Point: The flow that acts as the wrapper (default:
default). - Flow Parameter Name: The variable name used to pass the target flow (default:
flow).

Target Directory
The Target directory setting in Settings | Tools | Concord Run Mode controls where the Concord CLI copies project files during execution. The default is .concord/target, relative to the project root.
When set, the plugin passes --target-dir=<path> to the CLI automatically. You can specify either a relative path (resolved against the project root) or an absolute path.
Automatic Index Exclusion
The target directory is automatically excluded from IntelliJ's indexing. Without this, the copied files inside the target directory would appear in Search Everywhere, Find in Files, and other IDE-wide searches, polluting results with duplicates.
This exclusion happens transparently -- there is nothing to configure. The excluded path updates automatically when you change the target directory setting.
If you notice duplicate results in searches from a previous CLI run, check that the Target directory setting points to the correct location.
Interactive Console
The execution output is displayed in the Run tool window. The console supports:
- ANSI Colors: Full color support for logs.
- Hyperlinks: Error messages in the output (e.g.,
(concord.yml): Error @ line 10) are clickable and navigate directly to the source code location.