Redouble AI Nucleo documentation

Overview

Intelligence as a Java component.

Nucleo is a runtime for AI agents that live inside your Java application: in-stack, in-process, inside your own security perimeter. An agent is worth exactly as much as the systems it can act through - the transactions, the entitlements, the audit trails - and those are the systems nobody should have to hand to an external runtime. Nucleo runs the agents where that software already lives.

Authoring frameworks give an engineer a way to write an agent. Nucleo is the layer those agents run in - it sits with them the way an application server sits with a web framework, and code written with any of them can run inside one of its tools.

Philosophy

The systems you build already encode how the business works: the validations, the entitlements, the edge cases, the audit. And nobody knows better than you where their judgment calls live, because you built those seams: the review queue, the approval step, the exception workbasket, the branch that routes a case to a human specialist. Wherever the code could not decide, it stopped and prompted a human.

We built Nucleo so that this prompt can go to a model, without the case ever leaving your process. You wrap the code you already trust - the data access, the service call, the validation - as typed Tools, hand a set of them to a Thinker with a prompt stating its objective, and that seam in the workflow can exercise judgment: the model decides which tools to call and what to conclude, much like a human decides how to interact with a user interface; your code does what it always did, and everything that can be deterministic stays deterministic, because code is cheaper, faster, testable, and already right.

The AI engineering is the runtime's job. Everything between "call the model" and a typed answer landing in your code - the provider APIs and their differences, the malformed replies, the retries, the bookkeeping - is carried for you, out of your code and out of sight until you choose to look, but fully customizable, extendable and moldable when you do. You use the model the way you use a database: a component you build on, whose internals are somebody else's job.

And it asks nothing of the rest of your architecture. Your data and your internal logic stay unexposed: there is no hosted runtime to feed and no fleet of MCP servers publishing your data access to the network. There is no parallel stack: agents deploy inside the application they serve, through the pipeline you already run. There is no new profession to hire for: the engineer who knows the business logic is the qualified author, on day one.

The process stays in charge

Enterprises have run non-deterministic actors inside deterministic processes forever; they are called people, and systems govern their input with types, validation and permissions. Nucleo governs the model the same way, in code, and here is what that buys you:

Hundreds of agents inside the JVM you already run

Agents are greedy workloads: they hold things for minutes that everything else holds for milliseconds, they arrive in bursts, and their ceiling is a provider quota rather than your hardware. Nucleo runs them beside your application anyway, safely: hundreds of concurrent agents on virtual threads, each acquiring everything it needs before it runs or waiting its turn holding nothing - the same discipline you already trust in a connection pool, applied to everything a job touches. Provider rate limits are respected before a request is sent rather than apologized for after, so your application keeps its capacity and the agents queue for theirs.

Getting started

Set up and run the demo sets up the demo and is written to your coding agent: open this repository in the agent and ask it to read AGENTS.md. Every step is a command with a checkable result, so it works as a by-hand quickstart too.

The demo runs the same work on two hosts - a Spring Boot process and a Quarkus one, the Quarkus host on the JVM or compiled to a native image - through the runtime against your own account's models: ask a model a question, watch an agent choose its own tools and skills, push a folder of documents through parallel extraction, race one workload across every model your account can call - judged blind - to see which quality tier the job actually needs, and run an agent on a decision model, a third kind of model that never writes a word and only ranks the options code puts in front of it (deciding). It serves its own documentation at /docs.

After the demo, nucleo-examples is where to start writing: a first question to a model in twenty lines (hello), then a first tool, agent and doer, and one small program per thing the runtime keeps under the application's control.

Documentation

Every package carries a PACKAGE.md that is the contract of record for what the package does, readable in the tree where the code lives. Contents puts them in reading order, from a first look through writing, governing, running, observing and hosting agents, and the site follows that order. mvn site (after a build) generates the browsable site with the full javadoc under src/main/docs: open src/main/docs/index.html. The demo serves the same site at /docs.

The runtime and the platform

Nucleo is Apache-2.0 and complete on its own: everything above ships here and works with nothing behind it. Redouble AI's commercial platform, Silverlake, builds on Nucleo for enterprise deployments: durable run records for every job and model call, conversation persistence stores, and fleet-level controls. The boundary is the package name - ai.redouble.nucleo is the open runtime.

Requirements

Java 25 and Maven.

License

Apache-2.0. Copyright 2024-present Redouble AI, Inc. Authors.

^