Blog

Luis Majano

June 19, 2025

Spread the word


Share your thoughts

Weโ€™re excited to announce the release of BoxLang AI v1.2, a major update to the BoxLang AI module that powers intelligent applications with a unified AI abstraction layer across even more providers: OpenAI, Claude, Grok, Gemini, and more. This release packs new features for providers, tools, debugging, and customization โ€” making it easier than ever to build multi-runtime, AI-driven BoxLang and CFML applications.

๐ŸŽ‰ Whatโ€™s New in v1.2

โœ… Claude Support

Weโ€™ve upgraded our Claude support to the claude-sonnet-4-0 model โ€” now used as the default for Anthropic requests.

๐Ÿ›  New Tooling APIs

Weโ€™ve added powerful capabilities to the Tool object:

  • getArgumentsSchema(): Generate and return a toolโ€™s argument schema in real-time โ€” perfect for OpenAI-style function calling and prompt introspection.
  • Fallback message for OpenAI: If no tools are available locally, the system provides a helpful OpenAI fallback tool message.

๐Ÿ’ฌ Smarter Message Handling

  • New method: ChatMessage.getNonSystemMessages() โ€” get all non-system messages in one call.
  • The ChatRequest object now retains a reference to the original ChatMessage object, giving you full context inside your requests.

๐Ÿž Easier Debugging

Quickly debug whatโ€™s being sent and received by the AI provider: โ€ข logRequestToConsole โ€ข logResponseToConsole

โš™๏ธ New Config Options

You now have more control than ever with these new global options in your boxlang.json:

"logRequest": false,
"logResponse": false,
"timeout": 30,
"returnFormat": "single"

๐Ÿงช New Gradle Build System

Weโ€™ve modernized the BX-AI build system with the latest Gradle wrapper for faster builds and better cross-platform compatibility.

๐Ÿ’ก CFML Compatibility

BX-AI 1.2 introduces better backwards compatibility with ColdFusion and Lucee runtimes.

โšก๏ธ New Event: onAIResponse

The new onAIResponse event lets you intercept or modify AI responses โ€” perfect for implementing analytics, filters, or audits.

๐Ÿงช Real-World Tool Example

BX-AIโ€™s Tool system lets you expose local functions as callable tools for AI providers like Claude or OpenAI.

Hereโ€™s a real-world example of a temperature lookup tool using aiTool():

weatherTool = aiTool(
	"get_weather",
	"Get current temperature for a given location.",
	location => {
		switch( location.toLowerCase() ) {
			case "kansas city": return "85ยฐF";
			case "san salvador": return "90ยฐF";
			default: return "unknown";
		}
	})
	.describeLocation( "City and country, e.g. 'San Salvador, El Salvador'" );

result = aiChat( "Which city is hotter: Kansas City or San Salvador?", {
	tools: [ weatherTool ],
	model: "gpt-4",
	seed: 42
} )

println( result )

You can also inspect your toolโ€™s schema dynamically:

println( weatherTool.getArgumentsSchema() )

This allows the AI provider to understand the toolโ€™s purpose and expected input โ€” enabling OpenAI function calling or Claude tool selection intelligently.

๐Ÿ“ฆ Install / Upgrade

install-bx-module bx-ai

Or update via:

update-bx-module bx-ai

Then configure your provider and logging in boxlang.json.

๐Ÿ”ฎ Looking Ahead

BX-AI 1.2 lays the foundation for more features coming soon:

  • More tooling support
  • More providers
  • Image ease of use
  • MCP framework
  • Server Side Events
  • Chat Streaming

Stay tuned for more AI innovation in the BoxLang ecosystem!

๐Ÿ“š View full documentation, providers, and examples at: ๐Ÿ‘‰ https://boxlang.ortusbooks.com/boxlang-framework/modularity/ai ๐Ÿ™ Want to support BoxLang and BX-AI? Become a sponsor: https://www.patreon.com/ortussolutions ๐Ÿ™ Or purchase a BoxLang +/++ License: https://boxlang.io/plans ๐Ÿ“ฐ Subscribe to our newsletterย for exclusive content.

Resources

Looking for more information, support, or community engagement? Check out the following resources:

Professional Open Source

BoxLang is a professional open-source product, with three different licences:

  1. Open-Source Apache2
  2. BoxLang +
  3. BoxLang ++

BoxLang is free, open-source software under the Apache 2.0 license. We encourage and support community contributions. BoxLang+ and BoxLang ++ are commercial versions offering support and enterprise features. Our licensing model is based on fairness and the golden rule: Do to others as you want them to do to you. No hidden pricing or pricing on cores, RAM, SaaS, multi-domain or ridiculous ways to get your money. Transparent and fair.

BoxLang Subscription Plans

BoxLang is more than just a language; it's a movement.

Join us and redefine development on the JVM Ready to learn more? Explore BoxLang's Features, Documentation, and Community.

Add Your Comment

Recent Entries

๐Ÿš€ ColdBox CLI 8.11: The Era of AI Skills Comes to Every ColdBox & BoxLang App

๐Ÿš€ ColdBox CLI 8.11: The Era of AI Skills Comes to Every ColdBox & BoxLang App

ColdBox CLI 8.11 is here, and it's one of the most significant releases we've shipped for AI-assisted development. This release wires the CLI directly into our brand new public skills directory at skills.boxlang.io, brings our AI tooling in line with industry-wide agent conventions, and introduces a wave of quality-of-life improvements that make AI integration feel less like setup and more like infrastructure.

Luis Majano
Luis Majano
April 30, 2026
๐Ÿ›ฐ๏ธ Introducing cbMCP โ€” Your ColdBox App, Live to Every AI Agent

๐Ÿ›ฐ๏ธ Introducing cbMCP โ€” Your ColdBox App, Live to Every AI Agent

Today we're releasing cbMCP, the official ColdBox MCP Server โ€” a BoxLang-only module that turns your running ColdBox application into a fully-compliant Model Context Protocol (MCP) server. Plug in any MCP-capable AI client โ€” Claude Desktop, VS Code Copilot, Cursor, Codex, Gemini CLI, OpenCode โ€” and your AI assistant gets live, read-only introspection across the entire ColdBox platform: routing, handlers, modules, WireBox, CacheBox, LogBox, schedulers, interceptors, and async executors. ๐ŸŽฏ

Luis Majano
Luis Majano
April 30, 2026