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

BoxLang Jsoup: Powerful HTML Parsing, Cleaning and Fluent Navigation

BoxLang Jsoup: Powerful HTML Parsing, Cleaning and Fluent Navigation

We're excited to announce the release of bx-jsoup, a powerful new BoxLang module that brings enterprise-grade HTML parsing and cleaning capabilities to your applications. Built on top of the proven Jsoup library, this module provides developers with safe, flexible tools for handling HTML content while maintaining BoxLang's signature ease of use. It also enhances the core document classes to provide you with a fluent BoxDocument result that you can navigate, query, and even convert your HTML representation to XML or JSON.

Luis Majano
Luis Majano
July 15, 2025
CBWire: Smarter UIs, Simpler Development!

CBWire: Smarter UIs, Simpler Development!

CBWire isn’t just a productivity boost, it’s a shift in how we think about building modern web apps in CFML. It empowers developers to create rich, responsive interfaces while keeping development clean, fast, and focused on what matters.

If you’re building ColdBox applications and want to streamline your front-end work, CBWire is one of the most impactful tools you can add to your stack.

Maria Jose Herrera
Maria Jose Herrera
July 14, 2025
Ortus Monthly Digest: June 2025

Ortus Monthly Digest: June 2025

June was a transformative month at Ortus Solutions as we crossed the halfway point of the year. With major product updates, powerful community engagements, and continued improvements across the BoxLang ecosystem, our mission to modernize development and empower engineers took center stage. Whether you're a longtime member of the Ortus community or just joining us, here's everything we accomplished in June packed with announcements, tools, and opportunities to grow.

Victor Campos
Victor Campos
July 08, 2025