This project has moved from
spring-ai-community/agent-client to
markpollack/agent-client. The Maven groupId changed from
org.springaicommunity.agents to io.github.markpollack.low/medium/high) via AgentOptions.getEffort(), with provider-native overrides for Claude (--effort, up to max) and Codex (model_reasoning_effort, up to xhigh). Provider Parity TCK made real; Codex added to the CI runtime image; weekly CLI canary. Dependency: claude-code-sdk 1.3.0.
Architecture
Three layers, each usable independently:| Layer | Module | Framework Deps |
|---|---|---|
| Core API | agent-client-core | None β plain Java |
| Spring Boot Auto-Config | agent-client-spring-boot-autoconfigure | Spring Boot |
| Starters | agent-starter-claude, etc. | Spring Boot |
Providers
Claude Code, Codex (OpenAI), Gemini CLI, Amazon Q, Amp. Provider selection at construction time β everything afterAgentClient.create(model) is portable.
LOOSE / STRICT Modes
AgentClientMode controls default permissiveness. LOOSE (default) bypasses sandbox restrictions and git checks for frictionless evaluation. STRICT requires explicit opt-in.
Documentation
Getting Started
Plain Java quick start β create your first agent task
Tutorial
Step-by-step lessons from first task to multi-provider
Claude Reference
18 configuration options, trace files, authentication
Portable Options
Configuration precedence, LOOSE/STRICT modes
Source
GitHub
Source code, examples, and getting started guide
Related
Agent Sandbox
Isolated execution β local, Docker, or E2B cloud
Agent Workflow
Uses Agent Client for
ClaudeStep and AgentClientStep