Skip to content

Auto config fixes#522

Merged
johnsonr merged 2 commits intomainfrom
auto-config-fixes
Jun 24, 2025
Merged

Auto config fixes#522
johnsonr merged 2 commits intomainfrom
auto-config-fixes

Conversation

@alexheifetz
Copy link
Contributor

This pull request introduces significant enhancements to the Embabel Agent framework, focusing on improving annotation-driven configuration, simplifying profile management, and enriching documentation. The changes include the addition of a foundational @AgentPlatform meta-annotation, updates to specialized annotations like @EnableAgentShell and @EnableAgentMcpServer, and comprehensive documentation updates in the README.md file. These updates aim to streamline the configuration process, enhance flexibility, and provide clearer guidance for developers.

Enhancements to Annotation-Driven Configuration

  • Introduction of @AgentPlatform Meta-Annotation: Added a new @AgentPlatform annotation to act as the core building block for all agent-specific annotations. It simplifies profile activation, auto-configuration imports, and component scanning. This meta-annotation is now used by specialized annotations like @EnableAgentShell, @EnableAgentMcpServer, and @EnableAgentBedrock to activate appropriate Spring profiles.

  • Refactoring of Specialized Annotations:

    • @EnableAgentShell: Updated to use @AgentPlatform("shell") for activating the "shell" profile, along with detailed documentation on its features and usage.
    • @EnableAgentMcpServer: Refactored to use @AgentPlatform("mcp-server"), removing redundant attributes and enhancing documentation for MCP server configuration.
    • @EnableAgentBedrock: Updated to use @AgentPlatform("shell, bedrock"), with extended documentation on AWS Bedrock integration and configuration properties.
    • @EnableAgents: Enhanced to support additional attributes (loggingTheme, localModels, mcpClients) for fine-grained profile activation.

Documentation Improvements

  • Expanded README.md: Updated the documentation to provide detailed explanations of the annotation-driven configuration process, including examples for basic and advanced usage. Added sections on profile activation order, available logging themes, and implementation details of the EmbabelEnvironmentPostProcessor.

Key Benefits

  1. Simplified Configuration: Developers can now use intuitive annotations like @EnableAgentShell and @EnableAgentBedrock without worrying about low-level configuration details.
  2. Enhanced Flexibility: The @EnableAgents annotation allows for fine-grained control over logging themes, local models, and MCP clients.
  3. Improved Documentation: Comprehensive examples and explanations make it easier for developers to adopt and extend the Embabel framework.

@sonarqubecloud
Copy link

@alexheifetz alexheifetz marked this pull request as ready for review June 24, 2025 07:12
@alexheifetz alexheifetz requested a review from johnsonr June 24, 2025 07:12
Copy link
Contributor

@johnsonr johnsonr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@johnsonr johnsonr merged commit 5280cd6 into main Jun 24, 2025
4 checks passed
@johnsonr johnsonr deleted the auto-config-fixes branch June 24, 2025 07:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants