diff --git a/docs/content/docs/get-started/installation.md b/docs/content/docs/get-started/installation.md
index f6f0154a0..1aa4c1625 100644
--- a/docs/content/docs/get-started/installation.md
+++ b/docs/content/docs/get-started/installation.md
@@ -151,6 +151,65 @@ After building:
- The Python package is installed and ready to use
- The distribution JAR is located at: `dist/target/flink-agents-dist-*.jar`
+## Maven Dependencies (For Java)
+
+For developing Flink Agents applications in Java, add the following dependencies to your `pom.xml`:
+
+**Required**
+- **`flink-agents-api`** : Flink Agents API
+- **`flink-streaming-java`** and/or **`flink-table-api-java`** : Flink DataStream and/or Table API
+
+**Optional**
+- **`flink-agents-ide-support`** : Runtime execution dependencies (required for local execution/testing).
+ - Unlike running in a Flink cluster, when running in IDE, because the runtime dependencies are absent, user need additional dependencies.
+ To simplify the complexity for adding multiple dependencies in pom, flink-agents provide the above artifact.
+ This way, users only need to add this single dependency in their pom.xml.
+
+{{< hint info >}}
+All the above dependencies should be in provided scope, to avoid potential conflict with the Flink cluster.
+
+For execution in IDE, enable the feature `add dependencies with provided scope to classpath` in your IDE.
+{{< /hint >}}
+
+**Example `pom.xml`**
+
+```xml
+
+ 2.2
+ 0.2-SNAPSHOT
+
+
+
+
+
+ org.apache.flink
+ flink-agents-api
+ ${flink-agents.version}
+ provide
+
+
+
+ org.apache.flink
+ flink-streaming-java
+ ${flink.version}
+ provided
+
+
+ org.apache.flink
+ flink-table-api-java
+ ${flink.version}
+ provided
+
+
+
+
+ org.apache.flink
+ flink-agents-ide-support
+ ${project.version}
+ provided
+
+
+```
## Deploy to Flink Cluster
diff --git a/examples/pom.xml b/examples/pom.xml
index 96ee9b717..5e5e8a4e3 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -29,44 +29,35 @@ under the License.
Flink Agents : Examples
+
org.apache.flink
flink-agents-api
${project.version}
+ provided
-
-
-
- org.apache.flink
- flink-agents-runtime
- ${project.version}
-
-
- org.apache.flink
- flink-connector-files
- ${flink.version}
-
+
org.apache.flink
flink-streaming-java
${flink.version}
+ provided
+
org.apache.flink
- flink-table-api-java-bridge
- ${flink.version}
-
-
- org.apache.flink
- flink-table-planner_2.12
+ flink-connector-files
${flink.version}
+
+
+
org.apache.flink
- flink-clients
- ${flink.version}
+ flink-agents-ide-support
+ ${project.version}
+ provided
-
\ No newline at end of file
diff --git a/examples/src/main/java/org/apache/flink/agents/examples/agents/ProductSuggestionAgent.java b/examples/src/main/java/org/apache/flink/agents/examples/agents/ProductSuggestionAgent.java
index b7742f207..4daac9adf 100644
--- a/examples/src/main/java/org/apache/flink/agents/examples/agents/ProductSuggestionAgent.java
+++ b/examples/src/main/java/org/apache/flink/agents/examples/agents/ProductSuggestionAgent.java
@@ -60,7 +60,7 @@ public static ResourceDescriptor generateSuggestionModel() {
return ResourceDescriptor.Builder.newBuilder(OLLAMA_CHAT_MODEL_SETUP)
.addInitialArgument("connection", "ollamaChatModelConnection")
.addInitialArgument("model", "qwen3:8b")
- .addInitialArgument("extract_reasoning", "true")
+ .addInitialArgument("extract_reasoning", true)
.addInitialArgument("prompt", "productSuggestionPrompt")
.build();
}
diff --git a/ide-support/pom.xml b/ide-support/pom.xml
new file mode 100644
index 000000000..0bbd554db
--- /dev/null
+++ b/ide-support/pom.xml
@@ -0,0 +1,203 @@
+
+
+
+ 4.0.0
+
+ org.apache.flink
+ flink-agents
+ 0.2-SNAPSHOT
+
+
+ flink-agents-ide-support
+ Flink Agents : IDE Support
+
+ This module contains no source code, is just for assembling flink-agents and flink dependencies
+ needed when run agent in IDE.
+
+
+
+
+
+ org.apache.flink
+ flink-agents-runtime
+ ${project.version}
+
+
+ org.apache.flink
+ flink-agents-api
+
+
+
+
+
+ org.apache.flink
+ flink-agents-integrations-chat-models-ollama
+ ${project.version}
+
+
+ org.apache.flink
+ flink-agents-api
+
+
+
+
+ org.apache.flink
+ flink-agents-integrations-chat-models-openai
+ ${project.version}
+
+
+ org.apache.flink
+ flink-agents-api
+
+
+
+
+ org.apache.flink
+ flink-agents-integrations-chat-models-anthropic
+ ${project.version}
+
+
+ org.apache.flink
+ flink-agents-api
+
+
+
+
+ org.apache.flink
+ flink-agents-integrations-chat-models-azureai
+ ${project.version}
+
+
+ org.apache.flink
+ flink-agents-api
+
+
+
+
+ org.apache.flink
+ flink-agents-integrations-embedding-models-ollama
+ ${project.version}
+
+
+ org.apache.flink
+ flink-agents-api
+
+
+
+
+ org.apache.flink
+ flink-agents-integrations-vector-stores-elasticsearch
+ ${project.version}
+
+
+ org.apache.flink
+ flink-agents-api
+
+
+
+
+ org.apache.flink
+ flink-agents-integrations-mcp
+ ${project.version}
+
+
+ org.apache.flink
+ flink-agents-api
+
+
+
+
+
+ org.apache.flink
+ flink-streaming-java
+ ${flink.version}
+
+
+ org.apache.flink
+ flink-table-api-java
+ ${flink.version}
+
+
+ org.apache.flink
+ flink-clients
+ ${flink.version}
+
+
+ org.apache.flink
+ flink-streaming-java
+
+
+ org.apache.flink
+ flink-core
+
+
+ org.apache.flink
+ flink-runtime
+
+
+ org.apache.flink
+ flink-core-api
+
+
+ org.apache.flink
+ flink-annotations
+
+
+ org.apache.flink
+ flink-metrics-core
+
+
+
+
+ org.apache.flink
+ flink-table-api-java-bridge
+ ${flink.version}
+
+
+ org.apache.flink
+ flink-table-api-java
+
+
+ org.apache.flink
+ flink-streaming-java
+
+
+
+
+ org.apache.flink
+ flink-table-planner_2.12
+ ${flink.version}
+
+
+ org.apache.flink
+ flink-core
+
+
+ org.apache.flink
+ flink-streaming-java
+
+
+ org.apache.flink
+ flink-table-api-java
+
+
+
+
+
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 97584bc8d..243c6faa5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -63,6 +63,7 @@ under the License.
e2e-test
integrations
dist
+ ide-support