Class CodexAgentHandler
java.lang.Object
hudson.model.AbstractDescribableImpl<AiAgentTypeHandler>
io.jenkins.plugins.aiagentjob.AiAgentTypeHandler
io.jenkins.plugins.aiagentjob.codex.CodexAgentHandler
- All Implemented Interfaces:
ExtensionPoint,Describable<AiAgentTypeHandler>
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class io.jenkins.plugins.aiagentjob.AiAgentTypeHandler
AiAgentTypeHandler.AcpExecutionSpec, AiAgentTypeHandler.ModelSelectionNested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuildDefaultCommand(AiAgentConfiguration config, String prompt) Default API-key environment variable, or empty when the agent uses node-level auth.getId()Stable identifier for this agent implementation.Returns the log format parser for this agent's JSONL output.Returns the stats extractor for this agent's JSONL output.Reasoning efforts recognized when appended to a model identifier.booleanprepareExecution(AiAgentConfiguration config, FilePath workspace, TaskListener listener) voidsetAdditionalExecArgs(String additionalExecArgs) voidsetAdditionalGlobalArgs(String additionalGlobalArgs) voidsetCustomConfigEnabled(boolean customConfigEnabled) voidsetCustomConfigToml(String customConfigToml) voidRejects unsupported execution settings before any process or temporary file is created.Methods inherited from class io.jenkins.plugins.aiagentjob.AiAgentTypeHandler
buildAcpExecution, resolveExitCode, resolveModelSelection, supportsManualApprovalsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface hudson.model.Describable
getDescriptor
-
Constructor Details
-
CodexAgentHandler
@DataBoundConstructor public CodexAgentHandler()
-
-
Method Details
-
getId
Description copied from class:AiAgentTypeHandlerStable identifier for this agent implementation.- Specified by:
getIdin classAiAgentTypeHandler
-
getDefaultApiKeyEnvVar
Description copied from class:AiAgentTypeHandlerDefault API-key environment variable, or empty when the agent uses node-level auth.- Specified by:
getDefaultApiKeyEnvVarin classAiAgentTypeHandler
-
getSupportedReasoningEfforts
Description copied from class:AiAgentTypeHandlerReasoning efforts recognized when appended to a model identifier.- Overrides:
getSupportedReasoningEffortsin classAiAgentTypeHandler
-
validateExecution
Description copied from class:AiAgentTypeHandlerRejects unsupported execution settings before any process or temporary file is created.- Overrides:
validateExecutionin classAiAgentTypeHandler
-
buildDefaultCommand
- Specified by:
buildDefaultCommandin classAiAgentTypeHandler
-
prepareExecution
public AiAgentExecutionCustomization prepareExecution(AiAgentConfiguration config, FilePath workspace, TaskListener listener) throws IOException, InterruptedException - Overrides:
prepareExecutionin classAiAgentTypeHandler- Throws:
IOExceptionInterruptedException
-
isCustomConfigEnabled
public boolean isCustomConfigEnabled() -
setCustomConfigEnabled
@DataBoundSetter public void setCustomConfigEnabled(boolean customConfigEnabled) -
getCustomConfigToml
-
setCustomConfigToml
-
getAdditionalGlobalArgs
-
setAdditionalGlobalArgs
-
getAdditionalExecArgs
-
setAdditionalExecArgs
-
getLogFormat
Description copied from class:AiAgentTypeHandlerReturns the log format parser for this agent's JSONL output.The returned format's
AiAgentLogFormat.classify(long, net.sf.json.JSONObject)method should returnnullfor any JSON it does not recognise, so the parser can fall through to the shared format and generic fallback.- Specified by:
getLogFormatin classAiAgentTypeHandler
-
getStatsExtractor
Description copied from class:AiAgentTypeHandlerReturns the stats extractor for this agent's JSONL output.The returned extractor's
AiAgentStatsExtractor.extract(net.sf.json.JSONObject, io.jenkins.plugins.aiagentjob.AgentUsageStats)method should returnfalsefor any JSON it does not recognise, so the shared extractor handles it as a fallback.- Specified by:
getStatsExtractorin classAiAgentTypeHandler
-