Skip to main content

Documentation Index

Fetch the complete documentation index at: https://springaicommunity.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Overview

The Claude agent wraps the Claude Code CLI via ClaudeAgentApi. Configure it through Spring properties under agent-client.claude.*.
agent-client:
  claude:
    model: claude-sonnet-4-5
    timeout: PT5M
    yolo: true

Configuration Properties

Prefix: agent-client.claude
PropertyTypeDefaultDescription
modelStringclaude-sonnet-4-5Claude model to use for agent tasks
timeoutDuration5mTimeout for agent task execution
yolobooleantrueBypass all permission checks
executable-pathStringPath to the Claude CLI executable (auto-discovered if not set)
max-thinking-tokensIntegerMaximum thinking tokens for extended thinking mode
system-promptStringSystem prompt to use for the agent
allowed-toolsList<String>[]Tools that are allowed to be used
disallowed-toolsList<String>[]Tools that are not allowed to be used
permission-modeStringPermission mode for tool execution (overrides yolo if set)
json-schemaMap<String,Object>JSON schema for structured output
max-tokensIntegerMaximum tokens for the response
max-turnsIntegerMaximum number of agentic turns before stopping
max-budget-usdDoubleMaximum budget in USD before stopping
fallback-modelStringFallback model if the primary model is unavailable
append-system-promptStringAdditional text appended to the default system prompt

Advanced Options

These options provide full parity with the Claude Code Python SDK:
PropertyTypeDefaultDescription
add-dirsList<String>[]Additional directories to include in Claude’s context
settingsStringCustom settings file path
permission-prompt-tool-nameStringPermission prompt tool name for interactive permission handling
extra-argsMap<String,String>Arbitrary extra CLI arguments (keys are flag names without --)
envMap<String,String>Custom environment variables for the CLI process
max-buffer-sizeIntegerMaximum buffer size for JSON parsing in bytes (default 1MB)
userStringUnix user to run the CLI process as (requires sudo configuration)

Permission Modes

The permission-mode property overrides yolo when set. Available modes:
ModeDescription
bypassPermissionsSkip all permission checks (equivalent to yolo=true)
defaultUse Claude Code’s default permission behavior
agent-client:
  claude:
    permission-mode: bypassPermissions
    # yolo is ignored when permission-mode is set

Tool Filtering

Control which tools Claude can use:
agent-client:
  claude:
    allowed-tools:
      - Read
      - Write
      - Bash
    disallowed-tools:
      - WebSearch
allowed-tools and disallowed-tools are mutually exclusive in practice. If both are set, allowed-tools takes precedence.

Budget Controls

Limit agent execution costs and turns:
agent-client:
  claude:
    max-turns: 10           # Stop after 10 agentic turns
    max-budget-usd: 0.50    # Stop after $0.50 spent
    max-tokens: 4096        # Limit response tokens

Structured Output

Request structured JSON output using a JSON schema:
agent-client:
  claude:
    json-schema:
      type: object
      properties:
        summary:
          type: string
        files_changed:
          type: array
          items:
            type: string

Authentication