Ortus Solutions today announces the official release of the BoxLang package for Sublime Text 4, the newest member of the BoxLang productivity tool suite.
Blog
BoxLang 1.18.0 Released : Every Cloud, Every Node, Every Agent
Azure joins the serverless family. Scheduled tasks become cluster-safe. And the whole platform gets documentation and skills built for developers and AI agents working side by side.
If you run a technology organization, you are being asked to do three things at once: ship faster, keep the estate you already have running, and make AI part of how your teams work. Most stacks make you choose. BoxLang 1.18 is another step toward not having to.
Copy of BoxLang AI 3.4 Blog Series Part 5 : Reasoning Without the Guesswork
Reasoning-capable models have been usable in BoxLang AI for a while. params passes straight through to the provider body, so params: { thinking: { type: "enabled", budget_tokens: 10000 } } for Claude, or params: { reasoning_effort: "high" } for OpenAI, already reached the API. What never worked was reading the reasoning back. It was parsed out on arrival and silently dropped. In 3.4.0, that's fixed, and it's fixed the same way for every provider.
BoxLang AI 3.4 Blog Series Part 4 : Locking Down Prompt Injection
LLM applications face a class of attack traditional input validation was never built for: prompt injection. An attacker embeds instructions in user input, a retrieved document, a web page your tool fetched, or an MCP result, trying to override your system prompt, exfiltrate data, or hijack a tool call. BoxLang AI 3.4.0 ships four layered, configurable defenses against exactly this, plus one more that's on unconditionally.
BoxLang 1.17 Series Part 4 : WriteDump Enhanced!
You call writeDump() on an ORM entity or a very rich class graph . The browser locks up. Thirty seconds later you get a page with forty thousand rows on it, you scroll for a while, you give up, and you go edit your code to dump a sub-key instead. Or worse, you crash the server.
BoxLang 1.17 Series Part 3 : Encrypted Config Secrets
Everyone knows the datasource password should not be sitting in plain text in a config file. Everyone has also, at some point, shipped exactly that, because the alternative was a pile of environment variable plumbing that nobody wanted to build on a deadline. x
BoxLang AI 3.4 Blog Series Part 3 : Batched Approvals
Here's a bug that's easy to miss until it bites someone in production: an agent turn asks for two tool calls at once, both need human approval, and only the first one actually suspends. The second one gets silently skipped. Not rejected, not queued, just gone. That's what happened before 3.4.0, and it's fixed now with batched tool-call approvals.
BoxLang 3.4 Blog Series Part 2: Revamped Human in The Loop HITL
HumanInTheLoopMiddleware used to do everything itself: decide which tool calls needed approval, present the request, and wait for a decision. In 3.4.0, that logic has been pulled apart into a real subsystem, and the piece developers will feel the most is that a human's "always allow this" now actually means always.
BoxLang 1.17 Series Part2 : BoxLang Check - Syntax Validation Your AI Agent Can Read
Every serious language has a way to ask "is this even parseable?" without running it. bash -n script.sh. node --check file.js. python -m py_compile. As of 1.17.0, BoxLang has one too.
BoxLang 3.4 Blog Series Part I: Gateways, One Interface, Any Platform
Every AI agent that touches something real eventually needs a human in the loop. Someone has to approve the delete, confirm the wire transfer, or just say "go ahead" before a tool call runs. The question BoxLang AI 3.4.0 answers is: approve it how? A terminal prompt? A webhook? A Slack button?