Class SelectingAgent
java.lang.Object
ai.redouble.nucleo.harness.AbstractJob<SelectedOrders>
ai.redouble.nucleo.tools.AbstractTool<OrderQuestion, SelectedOrders>
ai.redouble.nucleo.tools.AbstractOrchestrator<OrderQuestion, SelectedOrders>
ai.redouble.nucleo.tools.thinking.AbstractThinker<OrderQuestion, SelectedOrders>
ai.redouble.nucleo.tools.thinking.SingleObjectiveThinker<OrderQuestion, SelectedOrders>
ai.redouble.examples.artifacts.SelectingAgent
- All Implemented Interfaces:
GuardedExecution, ScopeAuthority, ArtifactRegistryAware, ConversationCarrier, Identifiable, Job<SelectedOrders>, ModelDependent, ModelDependentTool<OrderQuestion, SelectedOrders>, Orchestrator<OrderQuestion, SelectedOrders>, Thinker<OrderQuestion, SelectedOrders>, Tool<OrderQuestion, SelectedOrders>
An agent that selects data instead of retelling it: it lists a customer's orders with its
one tool and answers with the references of exactly the orders the question asks for. Its
answer class carries one field of its own, a one-sentence summary; the selection travels
on
ThinkerOutput, whose references are looked up in the registry when the agent
finishes, so getArtifacts() returns the records the tool built. The summary is
the model's prose and may paraphrase; the records cannot.- Since:
- 0.1 (2026-09-27)
- Author:
- Andrey Santrosyan
-
Nested Class Summary
Nested classes/interfaces inherited from class AbstractThinker
AbstractThinker.CompactedReply<R>, AbstractThinker.ModelCall<R> -
Field Summary
Fields inherited from class SingleObjectiveThinker
answerHandler, DEFAULT_MAX_ITERATIONS, finalAnswer, maxIterationsFields inherited from class AbstractThinker
cacheAllMessages, comfortContextTokens, compactionTrigger, conversationId, grade, interactive, invokedAsTool, OBS_ARTIFACTS_IN, OBS_ARTIFACTS_OUT, outputDeclaration, TASK_OBJECTIVE_KEY, toolRegistryFields inherited from class AbstractOrchestrator
META_ITERATIONFields inherited from class AbstractTool
inputFields inherited from class AbstractJob
timeout, upstreamRetriesFields inherited from interface Job
DEFAULT_UPSTREAM_RETRIESFields inherited from interface Tool
OBS_INPUT, OBS_OUTPUT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionDeclares the core tools this thinker always has loaded with full schemas.protected StringSimple-case override: return the static system-prompt text.Methods inherited from class SingleObjectiveThinker
getAnswerHandler, getDepth, getMaxIterations, getResult, getSeededFollowupMessage, getSystemPrompt, logReasoning, resolveArtifacts, runThinkingLoop, setAnswerHandler, setMaxIterations, streamAnswer, submitThinkingCallMethods inherited from class AbstractThinker
addTool, addTool, admitConfiguredSkills, appendCorrection, buildToolDefinitionBlocks, cacheAllMessages, compactAndRetry, correctableFailureAppended, declareCompatibleSkills, declareCompatibleTools, declareDefaultProviders, declareDefaultSkills, declareValidationGuardrails, delegationThreshold, execute, executeTools, forceCompaction, getArtifactRegistry, getConversationId, getFinalRetainDuration, getGrade, getOutputDeclaration, getProviders, getRetainDuration, getTools, hasTool, hasTool, isConversationMinted, isForceReadOnly, isInteractive, isInvokedAsTool, mintConversationId, newLLMCall, performCompactionLoop, pinModel, pinnedModel, reconcileCatalog, reconcileSkillCatalog, reconcileToolRegistry, removeTool, removeTool, setArtifactRegistry, setCacheAllMessages, setComfortContextTokens, setCompactionTrigger, setConversationId, setFinalRetainDuration, setGrade, setInvokedAsTool, setOutputBudget, setOutputSize, setRetainDuration, submitToolCall, transcript, validateToolCallMethods inherited from class AbstractOrchestrator
execute, getJobType, getRequirements, getScopeGuard, getTimeout, sealScopeGuard, setScopeGuard, setTimeout, submitInIteration, submitInIteration, submitInIterationMethods inherited from class AbstractTool
getInput, postExecute, preExecute, setInputMethods inherited from class AbstractJob
getId, getName, getParentJobId, getPriority, getUpstreamRetries, getUserId, getWorkflowId, randomIdSuffix, setUpstreamRetries, toStringMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface GuardedExecution
declareAdmissionGuardrails, declareAuthGuardrails, declareContentGuardrailsMethods inherited from interface Identifiable
getParentJobId, getUserId, getWorkflowIdMethods inherited from interface Job
getDisplayName, getId, getJobId, getJobType, getName, getPriority, getRequirements, getTimeout, getUpstreamRetries, postExecute, preExecuteMethods inherited from interface ModelDependent
requireSeatMethods inherited from interface ScopeAuthority
getScopeGuard, sealScopeGuard, setScopeGuardMethods inherited from interface Tool
execute, getInput, guardedInputTarget, setInput
-
Constructor Details
-
SelectingAgent
-
-
Method Details
-
getSystemPromptText
Description copied from class:SingleObjectiveThinkerSimple-case override: return the static system-prompt text. Annotate the override with@StaticPromptto declare the immutability contract.The auto-derived registry key is the subclass FQN. Pin an explicit key on the annotation (
@StaticPrompt("ops.visible.key")) when ops needs a stable name for DB-stored overrides that survives class renames.- Overrides:
getSystemPromptTextin classSingleObjectiveThinker<OrderQuestion, SelectedOrders>
-
declareDefaultTools
Description copied from class:AbstractThinkerDeclares the core tools this thinker always has loaded with full schemas. Called during construction to initialize the tool registry.- Specified by:
declareDefaultToolsin classAbstractThinker<OrderQuestion, SelectedOrders>- Returns:
- List of tool classes, or empty list if no tools needed
-