Releases: embabel/embabel-agent
Releases · embabel/embabel-agent
Release list
Embabel Agent 1.5.1
What's Changed
- Update POM(s) for Next Dev Cycle by @alexheifetz in #1922
- Fix Bedrock chat options conversion by @arnabnandy7 in #1924
- Resolve LLM roles through an SPI so a role is not tied to one provider by @jasperblues in #1894
- Update POM(s) version to 1.5.1 Release by @alexheifetz in #1926
- RAG enhancement: Add
SectionReaderto navigate document sections by name by @johnsonr in #1928 - Add embedding-driven skills by @johnsonr in #1934
- Enhance streaming test for Object as String by @igordayen in #1932
- Document a remote Streamable HTTP MCP connection by @georgeatparallel in #1865
- feat: add Atlas Cloud BYOK support by @binyangzhu000-sudo in #1908
- Restore the AgentProcess a thread already held, rather than clearing it by @jasperblues in #1912
- Make integration test suite runnable in bulk by @arnabnandy7 in #1929
- Ship credential factories for the whole BYOK surface, and name the role and model a deployment cannot satisfy by @jasperblues in #1942
- Fully support type hierarchy in domain types by @johnsonr in #1944
- fix(tool-loop): replace the blank turn before re-prompting by @azanux in #1943
- fix(openai): use versioned Mistral base URL by @arnabnandy7 in #1938
- Fix prompt-based thinking extraction for Ollama by @igordayen in #1952
- Let a deployment add a BYOK provider without naming an SPI type by @jasperblues in #1949
- Feature: Add tag selection control to Thinking via included / excluded Tags by @igordayen in #1954
- Fix eager search metadata filtering by @arnabnandy7 in #1958
- Say which expression syntax a text query mode means by @jasperblues in #1963
- Memoize ChatModel streaming capability probes by @LordKay-sudo in #1927
- Share search property filter dispatch by @arnabnandy7 in #1962
- fix: retain chunks when applying entity filters by @arnabnandy7 in #1964
- Upgrade apache httpcomponents core5 due to High Vulnerability by @igordayen in #1961
- Prepare 1.5.1 Release by @alexheifetz in #1977
New Contributors
- @georgeatparallel made their first contribution in #1865
- @binyangzhu000-sudo made their first contribution in #1908
Full Changelog: v1.5.0...v1.5.1
Embabel Agent 1.5.0
What's Changed
- Sync 2.0.0-061326 with 2.0.0: port native structured output to SB4 / Spring AI 2 / Jackson 3 by @alexheifetz in #1719
- Spring AI 2.0.0 GA Migration by @alexheifetz in #1722
- Synchronize with 1.0 06222026 by @alexheifetz in #1738
- 1.5.0 by @alexheifetz in #1765
- 1.5.0 synchup 1.0.x by @alexheifetz in #1807
- 2.0.0 by @alexheifetz in #1697
- Include authors page on hub by @jasperblues in #1820
- Netty Upgrade to 4.2.15 by @igordayen in #1824
- test: add unit coverage for uncovered utilities by @tuannx in #1823
- Prove multi-level RunSubagent composition by @Stuckya in #1825
- Fix model binding broken by Spring AI 2.0 options merge removal by @igordayen in #1818
- fix: correct RAG result ordering, metadata, and latency logging by @tuannx in #1812
- Nety Upgrade to 4.2.16 by @igordayen in #1827
- docs: update emabel docs to match current codebase by @Sam42R in #1830
- test: cover InMemoryPropertyFilter entity and reflection matching (#29) by @wxggzz in #1817
- test(mcp): add in-process MCP protocol E2E coverage by @tuannx in #1832
- test: add regression test for Ollama configured model binding (#1735) by @sumin220 in #1828
- fix: stop escaped-quote repair from corrupting valid JSON in JacksonOutputConverter by @nikita-kibitkin in #1831
- Replace Spring AI 2.0 deprecated API by @guanxuc in #1840
- refactor: extract shared tool execution support by @arnabnandy7 in #1837
- Replace
tools.jackson.databind.JsonNodedeprecated API by @guanxuc in #1845 - feat: Add Alibaba Cloud DashScope models support by @guanxuc in #1841
- Add Alibaba Cloud DashScope models User Guide and enhance parameter clamping by @guanxuc in #1849
- feat: add vendor-neutral streaming tool loop by @arnabnandy7 in #1826
- Bump org.springframework.retry:spring-retry from 2.0.12 to 2.0.13 in /embabel-agent-api in the maven group across 1 directory by @dependabot[bot] in #1844
- doc: Update the latest(1.5.0-SNAPSHOT) documentation link in README.md by @guanxuc in #1855
- Typo in LLM name sonnet by @igordayen in #1858
- Never sever a markdown table row from its header when chunking by @johnsonr in #1859
- feat(rag): promote structural chunk metadata to typed ChunkStructure by @arimu1 in #1851
- chore(deps): upgrade LangChain4j to 1.14.1 by @arnabnandy7 in #1863
- Remove the deprecated
convertOptions(options)API by @guanxuc in #1857 - feat: add TemplatedPromptRunnerBuilder to render system prompts from templates by @nikita-kibitkin in #1866
- Log an existing SearchTools at debug, like every branch beside it by @johnsonr in #1869
- fix(rag): close ChunkMergingEnhancer crash path, complete typed ChunkStructure migration by @nikita-kibitkin in #1867
- Reduce log level / remove stacktraces from Model Loader logging by @igordayen in #1872
- fix(observability): use Spring Boot 4 packages in ObservabilityAutoConfiguration afterName by @arimu1 in #1850
- Fix/1871 observability boot4 regressions by @azanux in #1877
- Alert user by throwing exception on infra jackson deserialization errors by @igordayen in #1878
- Fix/1758 OpenAI pro responses api by @azanux in #1874
- LM Studio: send completions to /v1, keep discovery on the raw address by @johnsonr in #1885
- fix(openai): route GPT-5.6 models to the Responses API by @azanux in #1896
- fix(openai): generically handle models that reject unsupported request params by @arimu1 in #1852
- BYOK: build an embedding service from a runtime-supplied key by @jasperblues in #1892
- Pin prompt assembly cost, and name the contributors that are actually slow by @jasperblues in #1893
- Fix thinking mode parse error: Strip what a model writes after JSON block as well as before by @johnsonr in #1904
- fix(deepseek): take the shared HTTP client, and honor the retry properties (also google-genai) by @azanux in #1902
- Prepare 1.5.0 release by @alexheifetz in #1906
- Add embabel-agent-starter-byok so a BYOK app can boot without keys by @jasperblues in #1890
- RAG improvements: Make full-text scores absolute, and stop asking the LLM for a similarity threshold by @johnsonr in #1903
- Issue 1887: Wrap Embabel ObjectMapper (#1887) by @stefanks-px in #1907
- Fix broken IT tests due to GPT model deprecation by @igordayen in #1914
- Let a text-search implementation say how it reads a query by @jasperblues in #1916
- Let a BYOK app with RAG start, without letting it guess a dimension by @jasperblues in #1910
- Restore star history by @johnsonr in #1918
- Add an opt-in knob to fetch neighbouring chunks around every search hit by @johnsonr in #1917
- Change log level from warn to info for tool call by @alexheifetz in #1921
New Contributors
- @tuannx made their first contribution in #1823
- @wxggzz made their first contribution in #1817
- @sumin220 made their first contribution in #1828
- @nikita-kibitkin made their first contribution in #1831
- @guanxuc made their first contribution in #1840
- @arnabnandy7 made their first contribution in #1837
- @dependabot[bot] made their first contribution in #1844
- @arimu1 made their first contribution in #1851
Full Changelog: v1.0.0...v1.5.0
Embabel Agent 1.0.0
What's Changed
- Prepare for 1.0.0-RC1 development by @alexheifetz in #1734
- Introduce Generic Media and Document support by @igordayen in #1737
- Improve error message when default llm is not available by @poutsma in #1736
- Remove references to deprecated features in Asciidoc and KDOC by @igordayen in #1743
- Netty High Vilnerability Jun-26 by @igordayen in #1745
- Sonar blockers - missing asserts in tests by @igordayen in #1748
- update for new DeepSeek model names by @zhangjessey in #1749
- Remove deprecated methods by @poutsma in #1750
- refactor(anthropic): extract AnthropicModelFactory into plain embabel… by @jasperblues in #1752
- Promote Experimental APIs and update docs by @igordayen in #1753
- fix: remove unreachable null checks flagged by Sonar (S2583) by @azanux in #1755
- fix: #1759 drop retired Gemini 2.0 models, add all-models smoke ITs by @azanux in #1761
- Fix #1557: close MCP SSE connections before Tomcat graceful shutdown… by @igordayen in #1766
- fix(mistral): #1757 - two independent bugs in
embabel-agent-mistral-ai-autoconfigureby @azanux in #1767 - Feature/zai GLM model integration by @azanux in #1768
- Add appropriate error message to the log whenever a goal is not reachable by @deleSerna in #1769
- fix(tools): glob '**/' now matches zero or more directories (root & direct children) by @azanux in #1770
- Fix regex: path matcher to normalize separators cross-platform by @alexheifetz in #1772
- Skip fenced code blocks in skill file-reference extraction by @johnsonr in #1658
- Configure planner behavior for multiple goals with the same or different return types by @igordayen in #1775
- Address duplicate logging and logging of 'null' by @igordayen in #1776
- Add chat message events and event-publishing in-memory conversation t… by @jasperblues in #1777
- feat(mcpserver): expose MCP server health via Spring Boot Actuator by @LordKay-sudo in #1773
- Fix 1774: Have Subagent to inherit Verbosity Settings of a parent process by @igordayen in #1778
- Resolve target class for CGLIB-proxied beans in @LLMTool discovery by @jimador in #1782
- #1783 - enhancement: reduce logging level to DEBUG to minimize low-value log messages: ToolGroupsConfiguration : MCP is available. Found 0 clients: by @simeshev in #1784
- Propagate tool failures as ToolExecutionException so MCP clients see isError by @jimador in #1781
- Update build parent 0.1.15 and common 0.1.14 by @alexheifetz in #1785
- Prepare for 1.0.0-GA Dev Cycle by @alexheifetz in #1787
- Promote RAG experimental APIs to prod status by @igordayen in #1791
- fix(skills): confine script engine inputs to a root and harden both engines (#1754) by @azanux in #1789
- bug: JacksonOutputConverter breaks valid LLM response containing mermaid diagram by @Sam42R in #1788
- fix: widen DefaultAgentPlatform.platformServices type (#1793) by @ebullient in #1794
- Looging Enhancements and Streaming reasoning clean-up by @igordayen in #1797
- Log improvement: locale format millisecond timings by @johnsonr in #1798
- Prepare 1.0.0 Release by @alexheifetz in #1802
- Prepare 1.0.0 Release by @alexheifetz in #1803
New Contributors
- @zhangjessey made their first contribution in #1749
- @LordKay-sudo made their first contribution in #1773
- @Sam42R made their first contribution in #1788
Full Changelog: v0.5.0...v1.0.0
Euroa
What's Changed
- Prepare for 1.0.0-RC1 development by @alexheifetz in #1734
- Introduce Generic Media and Document support by @igordayen in #1737
- Improve error message when default llm is not available by @poutsma in #1736
- Remove references to deprecated features in Asciidoc and KDOC by @igordayen in #1743
- Netty High Vilnerability Jun-26 by @igordayen in #1745
- Sonar blockers - missing asserts in tests by @igordayen in #1748
- update for new DeepSeek model names by @zhangjessey in #1749
- Remove deprecated methods by @poutsma in #1750
- refactor(anthropic): extract AnthropicModelFactory into plain embabel… by @jasperblues in #1752
- Promote Experimental APIs and update docs by @igordayen in #1753
- fix: remove unreachable null checks flagged by Sonar (S2583) by @azanux in #1755
- fix: #1759 drop retired Gemini 2.0 models, add all-models smoke ITs by @azanux in #1761
- Fix #1557: close MCP SSE connections before Tomcat graceful shutdown… by @igordayen in #1766
- fix(mistral): #1757 - two independent bugs in
embabel-agent-mistral-ai-autoconfigureby @azanux in #1767 - Feature/zai GLM model integration by @azanux in #1768
- Add appropriate error message to the log whenever a goal is not reachable by @deleSerna in #1769
- fix(tools): glob '**/' now matches zero or more directories (root & direct children) by @azanux in #1770
- Fix regex: path matcher to normalize separators cross-platform by @alexheifetz in #1772
- Skip fenced code blocks in skill file-reference extraction by @johnsonr in #1658
- Configure planner behavior for multiple goals with the same or different return types by @igordayen in #1775
- Address duplicate logging and logging of 'null' by @igordayen in #1776
- Add chat message events and event-publishing in-memory conversation t… by @jasperblues in #1777
- feat(mcpserver): expose MCP server health via Spring Boot Actuator by @LordKay-sudo in #1773
- Fix 1774: Have Subagent to inherit Verbosity Settings of a parent process by @igordayen in #1778
- Resolve target class for CGLIB-proxied beans in @LLMTool discovery by @jimador in #1782
- #1783 - enhancement: reduce logging level to DEBUG to minimize low-value log messages: ToolGroupsConfiguration : MCP is available. Found 0 clients: by @simeshev in #1784
- Propagate tool failures as ToolExecutionException so MCP clients see isError by @jimador in #1781
- Update build parent 0.1.15 and common 0.1.14 by @alexheifetz in #1785
New Contributors
- @zhangjessey made their first contribution in #1749
- @LordKay-sudo made their first contribution in #1773
Full Changelog: v0.5.0...v1.0.0-RC1
Darwin
What's Changed
- Update version numbers in pom.xml by @alexheifetz in #1680
- Upgrade Build Deps Parent to 0.1.14-SNAPSHOT by @alexheifetz in #1681
- Reject @AchievesGoal on void action methods by @poutsma in #1682
- Don't depend on Spring AI being on classpath to handle tool annotations by @johnsonr in #1676
- OllamaOptionsConverter now forwards LlmOptions regarding thinking. by @jorander in #1684
- StreamingJacksonOutputConverter.getFormat() respects disabled thinking by @jorander in #1687
- Fixes #1298, resolving inconsistency in Lucene search syntax by @johnsonr in #1653
- Recognize @nullable annotation when resolving action parameters by @poutsma in #1686
- Allow unescaped CTRL characters by @deleSerna in #1688
- #1467 - Removed explicitely setting the ArchUnit version 1.3.0. Now it will be picked up from the embabel-build-dependencies that now sets the ArchUnit version to 1.4.0 by @simeshev in #1670
- Increase code coverage - issue #29 by @igordayen in #1698
- Unit tests additions cross embabel-agent modules by @igordayen in #1699
- Polishing by @poutsma in #1693
- Code coverage increase to the level of 73% by @igordayen in #1701
- MVC/REST-Enabled Agent by @igordayen in #1695
- Add OCI Generative AI starter by @markxnelson in #1700
- Enhance tool names matching algorithm for ToolNotFound strategy by @igordayen in #1690
- Add primary to upgrade branch sync workflow by @igordayen in #1706
- Spring upgrade branch fixed by @igordayen in #1707
- Do not support agents with multiple distinct goal types by @poutsma in #1703
- docs: fix typo in documentation site domain (emababel -> embabel) by @helloworld010234 in #1711
- #1713 - Add Claude Opus 4.8 to the Anthropic model registry by @simeshev in #1714
- feat: upgrade MiniMax default model to M3 by @octo-patch in #1702
- Improve LlmDataBindingProperties logging message by @deleSerna in #1689
- Enhance Google GenAI support for thought signatures by @kenkc in #1691
- adds missing Gemini 3.1 and 3.5 models by @n47stefanmaurer in #1704
- Add native structured output support for OpenAI by @igordayen in #1715
- Feature/migration observability and fix #1561 & #1588 by @azanux in #1718
- Update build 0.1.14 and common 0.1.13 by @alexheifetz in #1732
- Fix #1694: Remove spring.threads.virtual.enabled fom application prop… by @igordayen in #1730
New Contributors
- @deleSerna made their first contribution in #1688
- @markxnelson made their first contribution in #1700
- @helloworld010234 made their first contribution in #1711
- @n47stefanmaurer made their first contribution in #1704
Full Changelog: v0.4.0...v0.5.0
Curdimurka
What's Changed
- Prepare 0.4.0 Iteration by @alexheifetz in #1559
- #1427 : Remove Spring AI tool loop path option by @azanux in #1560
- Use RestClient.Builder instead of request factory for model clients by @poutsma in #1567
- Fix SlidingWindowTransformer to preserve tool call/result message grouping by @igordayen in #1569
- Fixes #1562 apply platform action-qos properties to DSL and workflow-built actions by @alexheifetz in #1572
- Bring up the model list and pricing up to date by @simeshev in #1568
- Point at 0.1.13-SNAPSHOT of embabel-build by @jasperblues in #1576
- Fix JaCoCo coverage reporting for SonarCloud by @jasperblues in #1575
- Fix ONNX model download redirect handling in OnnxModelLoader by @jasperblues in #1578
- Prepare IT tests for automation execution by @igordayen in #1577
- Extract EmbeddingAwareChunkingContentElementRepository by @jasperblues in #1574
- Make consistent OPENAI base url by @jasperblues in #1579
- Update README with itest notes by @jasperblues in #1580
- Tests for 5 classes (Issue #29) by @drhiidden in #1573
- Consistently allow for aiModelRestClientBuilder by @poutsma in #1583
- #1566 Fix AssistantMessageGuardRail not invoked for structured object by @azanux in #1582
- Add MvnRepository badge to README by @alexheifetz in #1586
- Consistently allow for aiModelWebClientBuilder by @poutsma in #1590
- Introduce vendor-neutral message streamer for streaming LLM operations by @igordayen in #1581
- #1566 Add guardrail integration tests for Gemini and parallel tool loop validation by @azanux in #1589
- RunSubagent methods always throw and code after the call is unreachable (#1390) by @alexheifetz in #1596
- Add TerminationScope to ToolGroupRequirement for customizable failure… by @john-mcpeek in #1593
- Add TestContainers Dependency by @alexheifetz in #1601
- Disable DockerSkillScriptExecutionEngineTest on Windows by @alexheifetz in #1605
- feat(core): extend ReplanRequestedException support to ConcurrentAgentProcess by @rwbennett in #1599
- Generalize byok factory by @jasperblues in #1609
- Issue/1607 by @alexheifetz in #1614
- Move application-test.yml from main to test by @alexheifetz in #1613
- feature: TokenCounter SPI by @jimador in #1536
- Add metadata to Tool.Definition by @johnsonr in #1603
- Add IntelliJ Plugin information to User Guide by @alexheifetz in #1617
- #368 fix cost aggregation on AgentProcess with nested subprocesses by @azanux in #1615
- Prohibit OperationContext constructor injection in @agent beans (#1538) by @alexheifetz in #1618
- Align TestStarNewsFinder description with actual goal (#1616) by @alexheifetz in #1619
- #1602 Fix thread-safety of
_llmInvocationsand_historyinAbstractAgentProcessby @azanux in #1620 - Deep refactoring of streaming area by @igordayen in #1600
- Expose internal types for use outside of the module by @poutsma in #1622
- Fix flaked onyx test by @jasperblues in #1626
- Fix/race condition agentprocess by @azanux in #1625
- Fix metadata getting nuked instead of merged by @jasperblues in #1627
- Streaming Area Refactoring - Introduction of Tool Call Inspectors by @igordayen in #1628
- 1623 Enable passing of Budget to ChatBot by @stefanks-px in #1624
- Introduced NestedTool superinterface of Progressive and Playbook tools by @johnsonr in #1631
- Fix docker autoconfigure test to simulate unavailable endpoint (#1568) by @alexheifetz in #1639
- Resolve logging configuration conflicts with user-supplied logback-spring.xml by @igordayen in #1634
- Pin BC version for Tika vulnerability. by @jasperblues in #1640
- Accomodate rename of embabel-agent-rag-graph by @jasperblues in #1641
- Adding integration test support for streaming calls by @jorander in #1598
- #402 feature : track EmbeddingService usage and pricing by @azanux in #1637
- Introduce
LoopMemo, allowing a tool to check if it's the first time it has been invoked during a tool loop by @johnsonr in #1642 - Add a configurable policy on empty responses by @johnsonr in #1630
- The Anthropic-specific caching mechanism by @igordayen in #1645
- Add feature toggles for REST endpoints and related tests by @john-mcpeek in #1643
- Action Retry with Exception Classification as Retriable / Non-Retriable by @igordayen in #1652
- Introduction of Ephemeral Agent Process by @igordayen in #1659
- Upgrade Netty to version 4.2.13 Final by @igordayen in #1661
- Use thread context classloader in JvmType.toClass() by @ebullient in #1660
- Java terminateAction test by @igordayen in #1665
- #1604 Track LLM and embedding cost per individual call by @azanux in #1663
- Update Documentation on Integation Testing, issue #445 by @igordayen in #1666
- #29 - add behavioral coverage for autoconfigure entrypoints by @simeshev in #1664
- Fix missing of parent's ProcessOptions.listeners propagation for sub-agents by @drewlakee in #1669
- #29 - Add direct unit coverage for internal test support apps, DSL helpers, and fake AI config by @simeshev in #1671
- Introduce Gobal Guardrails configuration by @igordayen in #1672
- #1597 doc/global guardails config by @azanux in #1674
- Fix thinking blocks accumulation across tool loop iterations by @igordayen in #1678
- Prepare 0.4.0 by @alexheifetz in #1679
New Contributors
- @drhiidden made their first contribution in #1573
- @jimador made their first contribution in #1536
- @stefanks-px made their first contribution in #1624
- @ebullient made their first contribution in #1660
- @drewlakee made their first contribution in #1669
Full Changelog: v0.3.5...v0.4.0
Bendigo
What's Changed
- Update version numbers in pom.xml by @alexheifetz in #1422
- Update version to 0.1.12-SNAPSHOT in pom.xml by @alexheifetz in #1423
- fix(docs): remove unclosed example block in llms/page.adoc by @alexheifetz in #1424
- Fix Guide Issue 31 - don't call out for vector dimensions if already … by @jasperblues in #1429
- ToolLoop Callbacks by @igordayen in #1428
- Use Asyncer for async LLM operations instead of raw CompletableFuture… by @alexheifetz in #1433
- Fix NPE when LLM API key lacks model access by @jasperblues in #1435
- Fixes # 1430 by @alexheifetz in #1437
- Decommision claude-3-7-sonnet-latest by @alexheifetz in #1443
- Add event triggers feature by @jasperblues in #1439
- Add build failure notification to workflow by @alexheifetz in #1446
- Refactor createObjectIfPossible API by @igordayen in #1444
- Allow for field filtering in FilterJacksonOutputConverter by @poutsma in #1434
- MaybeReturn enhancements by @igordayen in #1448
- Refactor and fix broken IT tests by @igordayen in #1450
- Fixes #1447: Include HITL tools by @alexheifetz in #1451
- Add Unit Test to validate HITL Tools by @alexheifetz in #1452
- Copy Identities in Subagent.createProcessOptions by @poutsma in #1460
- Make LlmOptions.criteria read-only for Jackson by @poutsma in #1459
- feature: migration from gemini 3 preview to gemini 3.1 preview by @azanux in #1453
- Embabel Obsevability : fix observability spam, add new metrics, and locale-safe… by @azanux in #1457
- Fix: ResultExpanderTools crashes with "Text content cannot be empty" when expandResult returns an empty list by @coolduebtn in #1441
- Fix README metrics table to reflect agent tag added by @alexheifetz in #1464
- Deep Refactoring of API createObjectWithThinking by @igordayen in #1458
- Deep Refactoring of API createObjecIfPossible WithThinking by @igordayen in #1469
- Add workflow step to trigger acceptance tests by @alexheifetz in #1476
- Disable validation for filtered fields by @poutsma in #1472
- AgentProcess propagation to worker threads by @igordayen in #1477
- fix(google-genai): localize JSON wrapping of tool responses to Gemini… by @alexheifetz in #1468
- Pass metadata context through tool pipeline to MCP calls (#1323) by @alexheifetz in #1462
- Ensure Asyncer consistent usage cross framework by @igordayen in #1482
- Add mockk Async to ShellCommandsContextTest by @alexheifetz in #1483
- Feature/google genai 3.1 flash lite and customtools by @azanux in #1470
- Onxy module, bring-your-own-key support, tool calling tweaks by @jasperblues in #1478
- Revert "Onxy module, bring-your-own-key support, tool calling tweaks" by @jasperblues in #1488
- Add recovery notification for successful builds by @alexheifetz in #1496
- Consolidate and restructure shell documentation by @alexheifetz in #1502
- Tools required by @john-mcpeek in #1493
- Improve RequiredToolGroupException diagnostics and correctness by @alexheifetz in #1503
- Multi-threading correctness verification by @igordayen in #1498
- Integrate ToolCallContextMcpMetaConverter into MCP tool pipeline (#1323) by @alexheifetz in #1504
- Ensure that Java tools are executed with Java reflection by @poutsma in #1501
- Support custom HTTP headers and completions path in OpenAI Custom autoconfigure by @akulyakhtin in #1494
- Add withToolCallContext() to PromptRunner fluent API (#1323) by @alexheifetz in #1505
- Makes completionsPath and embeddingsPath configurable by @alexheifetz in #1506
- Trigger build on changes in embabel-common by @alexheifetz in #1512
- Toolish RAG : Content fetcher and zoom tool fix. by @jasperblues in #1484
- Publish agent-snapshot-deployed cross all repos by @alexheifetz in #1513
- Revert "Publish agent-snapshot-deployed cross all repos" by @alexheifetz in #1514
- Trigger build in downstream projects by @alexheifetz in #1516
- Update list of subscribers for agent-snapshot-deployed event by @alexheifetz in #1518
- Feature/onyx module 2 by @jasperblues in #1489
- Global netty confing by @jasperblues in #1487
- Bugfix/unfolding context tool loop by @jasperblues in #1517
- Update list of downstream repos requiring build trigger by @alexheifetz in #1519
- Refactor Ollama Configuration by @igordayen in #1523
- Tool Security Annotations and Enforcement by @alexheifetz in #1524
- Revert "Tool Security Annotations and Enforcement" by @alexheifetz in #1525
- Tool Security Annotations and Enforcement by @alexheifetz in #1526
- Add Secured McpServer Starter by @alexheifetz in #1527
- Add McpServer Security Autoconfiguration by @alexheifetz in #1530
- Consistent Package Names in McpServer Security Module by @alexheifetz in #1531
- Report validation error for duplicate action names by @poutsma in #1528
- Collect all validation error codes by @poutsma in #1534
- Update User Guide with Mcp Server Security content by @alexheifetz in #1535
- Agent and Action Early Termination by @igordayen in #1537
- Netty Codec Upgrade due to HIGH Vulnerability by @igordayen in #1540
- Update onyx usage docs. by @jasperblues in #1529
- Add MiniMax as first-class LLM provider by @octo-patch in #1539
- Use requireNotNull for nullable Double comparison in MiniMaxOptionsConverterTest by @alexheifetz in #1542
- Add MiniMax section to Docs by @alexheifetz in #1543
- Fixes #1463 MCP Client Lazy Initialization by @alexheifetz in #1544
- Add Just-In-Time MCP Tools documentation by @alexheifetz in #1545
- Update KDOC for clarity by @alexheifetz in #1547
- Bring your own key : clean API by @jasperblues in #1541
- Cascade Agent kill API to SubAgents by @igordayen in #1546
- Fix onxy module Netty config by @jasperblues in #1532
- Cascading Agent Termination to Subagents by @igordayen in #1551
- Update models by @alexheifetz in #1553
- Update list of available Anthropic Models. by @alexheifetz in #1556
- Prepare 0.3.5 Release by @alexheifetz in #1558
New Contributors
- @coolduebtn made their first contribution in #1441
- @john-mcpeek made their first contribution in #1493
- @akulyakhtin made their first contribution in #1494
- @octo-patch made their first contribution in #1539
**Full...
Bermagui
What's Changed
- Update embabel-common.version to 0.1.10-SNAPSHOT by @alexheifetz in #1344
- Removed toolGroup and toolGroupRequirements according to gh-1291 by @haydenrear in #1318
- Update reference documentation to reflect #1328 by @poutsma in #1348
- Fix: handleStuck() ignoring KILLED status causing infinite replan loop by @Stuckya in #1349
- Support setting HTTP Header for LLM by @alexheifetz in #1351
- Add embabel-agent-observability by @alexheifetz in #1353
- Experimental GuardRails Integration with OpenAI SDK by @igordayen in #1347
- Manage read and connection timeout for Ollama Models by @alexheifetz in #1354
- Doc changes and additions in section 2.5 through 3.7 by @jorander in #1356
- Issue/1267 by @alexheifetz in #1366
- Remove dependencies on webmvc and servlet-api by @alexheifetz in #1367
- Improve FakePromptRunner#createObject(List, Class) by @poutsma in #1364
- Performance Enhancement by Caching JvmType children by @igordayen in #1361
- Add embabel-agent-mvcstarter by @alexheifetz in #1368
- Improve Tool execution logic by @poutsma in #1371
- Update Netty Client configuration section by @alexheifetz in #1374
- Add more detailed instructions on Bedrock Models by @alexheifetz in #1376
- Fix missing Tools Group Resolution and Tool Decorator in Streaming mode by @igordayen in #1375
- Align version with snapshots as 0.1.11-SNAPSHOT by @igordayen in #1382
- Use embabel.agent.application.name for Naming Strategy prefixes by @igordayen in #1380
- Fix: Merge consecutive ToolResponseMessages for Gemini parallel tool call by @azanux in #1385
- Fix missing Tools Group Resolution and Tool Decorator in Thinking mode: by @igordayen in #1384
- Promptrunner polishing by @poutsma in #1387
- doc: Fixes compilation error in example code in section 3.8.2. by @jorander in #1388
- embabel-chat-store integration by @jasperblues in #1373
- Better contextualName for span label by @alexheifetz in #1398
- Provide both Kotlin and Java code samples. by @jasperblues in #1395
- Add Google GenAI embedding model support by @azanux in #1389
- Experimental Configurable Feature Parallel Tool Loop by @igordayen in #1394
- Fix missing method. by @jasperblues in #1399
- Ensure that com.embabel.agent.api is not used by com.embabel.agent.spi (batch 1) by @poutsma in #1397
- feature : Add observability module (tracing, metrics, MDC) by @azanux in #1396
- Fix: reset OTel context in @beforeeach to prevent cross-test leakage on Windows. by @alexheifetz in #1401
- Update import for Ranking type by @alexheifetz in #1402
- Fix: isolate servlet-dependent beans to prevent NoClassDefFoundError by @alexheifetz in #1403
- Documentation adjustments by @igordayen in #1406
- Fixes Issue # 1404 by @alexheifetz in #1407
- Add OTel context cleanup to ChatModelObservationFilterTest by @alexheifetz in #1409
- Move LlmOperations to core.internal package by @poutsma in #1410
- Ensure that com.embabel.agent.api is not used by com.embabel.agent.spi (batch 2) by @poutsma in #1411
- Fixes # 1408 by @alexheifetz in #1416
- Allow ARN-based model IDs in Bedrock model validation by @alexheifetz in #1417
- Fixes #532 by @alexheifetz in #1415
- Add tool chaining support to
PromptRunnerby @johnsonr in #1419 - Prepare 0.3.4 by @alexheifetz in #1421
New Contributors
Full Changelog: v0.3.3...v0.3.4
Bendemeer
What's Changed
- Update to build and common for next dev iteration by @alexheifetz in #1280
- Migrate internal uses of Spring AI
ToolCallbackto EmbabelToolinterface and implement our own tool calling loop by @johnsonr in #1276 - Fix KotlinReflectionInternalError for Java records by @alexheifetz in #1281
- Replace
LlmwithLlmServiceby @johnsonr in #1282 - Update descriptions of default process tools. by @smilyanovr in #1294
- Introduce PromptExecutionDelegate by @poutsma in #1296
- Allow nested tools by @johnsonr in #1289
- Process Pending Beans fix in DelegatingAgentScanningBeanPostProcessor by @igordayen in #1288
- Add the ability to exit the current agentic loop if a tool call requests replanning by @johnsonr in #1305
- Refine state management by @johnsonr in #1307
- fix #1285: Expose streamingLlmOperations.generateStream by @jorander in #1310
- Update LMStudioModelsConfig to differentiate and register embeddings LLMs by @josetesan in #1302
- Add validatedProperties for custom validations by @dsilahcilar in #1301
- Fixes #883 by @alexheifetz in #1315
- Fixes #1300 by @alexheifetz in #1316
- Fixed unused tools parameter in promptTransformer gh-1317 by @haydenrear in #1319
- Add AssetView concept and ensure that AgenticTool correctly returns artifacts from sub-tools by @johnsonr in #1322
- Guardrail framework for User input and LLM responses by @igordayen in #1303
- Fix property ordering for cross-platform consistency by @alexheifetz in #1335
- Remove Properties Migration Framework by @igordayen in #1332
- Fix inconsistent naming of PromptRunner sub-runners by @poutsma in #1328
- Fix self-invocation in ContextualPromptElementImpl (Updated) by @alexheifetz in #1339
- doc: Additions to section 2.1 and 2.2.2 by @jorander in #1330
- Update Maven command in deploy-snapshots.yml by @alexheifetz in #1341
- Updated per action retry using annotation and properties by @haydenrear in #1223
- Move to experimental by @alexheifetz in #1342
- Prepare Release 0.3.3 by @alexheifetz in #1343
New Contributors
- @josetesan made their first contribution in #1302
- @dsilahcilar made their first contribution in #1301
Full Changelog: v0.3.2...v0.3.3
Bendalong
What's Changed
- Update version numbers in pom.xml by @alexheifetz in #1201
- Add Gemini 3 Flash Preview model support by @azanux in #1202
- Create first version of
embabel-agent-specmodule that enables externalizing actions and goals by @johnsonr in #1205 - Change docling command from PDF to HTML conversion by @sikandar in #1204
- Add embabel-agent-common module by @alexheifetz in #1207
- Remove dependency on embabel-common-ai by @alexheifetz in #1208
- Remove dependency to embabel-common-ai by @alexheifetz in #1209
- Trigger to publish docs by @alexheifetz in #1210
- added action qos provider by @haydenrear in #1216
- Update Unified Banner Tool with @tool annotation by @alexheifetz in #1218
- Convert @tool back to @LLMTool in UnifiedBanner by @alexheifetz in #1220
- EMBABEL-1226: Move LM studio properties config from spring.ai to embabel.agent by @codebuster007 in #1230
- EMBABEL-1182: Add Documentation for LM Studio support by @codebuster007 in #1231
- Fix #1203 by @alexheifetz in #1234
- Fix #1232 by @alexheifetz in #1236
- Move OpenAi Converters over to agent-openai module by @alexheifetz in #1238
- Update BOM with embabel-agent-openai-compatible-autoconfigure by @alexheifetz in #1239
- Add OpenAi Compatible Autoconfigure by @alexheifetz in #1240
- Add starter for embabel-agent-openai-compatible models by @alexheifetz in #1241
- Use OpenAi Converters from agent-openai module by @alexheifetz in #1242
- Update module name to better reflect its purpose by @alexheifetz in #1244
- Document OpenAI custom models setup by @alexheifetz in #1243
- Align core
DomainTypeand RAGNamedEntityDataconcepts by @johnsonr in #1246 - Thinking blocks support by @igordayen in #1219
- Property conventions for API Key configuration by @alexheifetz in #1254
- Add OpenAi apiKey validation by @alexheifetz in #1255
- Copyright Year 2026 by @alexheifetz in #1257
- Synch up README.md for shell modules by @alexheifetz in #1260
- Allow injection of ChatClientCustomizer to include additional advisors by @smilyanovr in #1261
- Architectural Diagrams addition to User Guide by @igordayen in #1258
- Introduce ability to disable validation on PromptRunner by @poutsma in #1252
- Refactor ValidationResult, ValidationError, ValidationSeverity by @igordayen in #1259
- Fixes #990 by @alexheifetz in #1263
- Revert "Fixes #990 (#1263)" by @alexheifetz in #1265
- Fixes #990 by @alexheifetz in #1266
- Update A2A SDK to 0.3.2.Final for A2A Inspector compatibility by @cpage-pivotal in #1268
- Fixes #1228 by @alexheifetz in #1269
- Update User Guide by @alexheifetz in #1270
- Update User Guide copyright year to 2026 by @alexheifetz in #1271
- Update legal entity name by @alexheifetz in #1272
- Introduce navigation on entity proxies by @johnsonr in #1274
- Polishing AnthropicModelsConfig.kt by @alexheifetz in #1277
- Update user guide with connect-timeout instructions by @alexheifetz in #1278
- Prepare 0.3.2 by @alexheifetz in #1279
New Contributors
- @sikandar made their first contribution in #1204
- @haydenrear made their first contribution in #1216
- @codebuster007 made their first contribution in #1230
- @cpage-pivotal made their first contribution in #1268
Full Changelog: v0.3.1...v0.3.2