Class AgenticPlugin

java.lang.Object
com.egoge.ai.atlas.plugin.AgenticPlugin
All Implemented Interfaces:
org.gradle.api.Plugin<org.gradle.api.Project>

public class AgenticPlugin extends Object implements org.gradle.api.Plugin<org.gradle.api.Project>
Gradle plugin that configures a Java project to use the AI-ATLAS framework.

Applies the Java plugin (if not already present) and adds:

  • annotations to implementation
  • processor to annotationProcessor
  • runtime to implementation (when MCP or REST is enabled)

Also configures IntelliJ IDEA to recognize generated source directories, and the contract gate: the contractBaseline and contractLocked options of the main compileJava, with the constraints option next to them, the "atlasContractCheck" task that classes depends on, and the "atlasAccept" task; and the release workflow, "agenticRelease", "agenticReleaseHistoryCheck" (part of check) and "agenticReleaseVerify".

  • Field Details

    • CONTRACT_CHECK_TASK

      public static final String CONTRACT_CHECK_TASK
      The task that checks an empty contract against the baseline.
      See Also:
    • ACCEPT_TASK

      public static final String ACCEPT_TASK
      The task that writes the current contract to the baseline.
      See Also:
    • RELEASE_TASK

      public static final String RELEASE_TASK
      The task that releases the accepted contract as an immutable snapshot.
      See Also:
    • RELEASE_HISTORY_CHECK_TASK

      public static final String RELEASE_HISTORY_CHECK_TASK
      The task, part of check, that verifies the released snapshots' internal consistency.
      See Also:
    • RELEASE_VERIFY_TASK

      public static final String RELEASE_VERIFY_TASK
      The task, not part of check, that verifies the build against a tagged release.
      See Also:
  • Constructor Details

    • AgenticPlugin

      @Inject public AgenticPlugin(org.gradle.workers.WorkerExecutor workerExecutor)
  • Method Details

    • apply

      public void apply(org.gradle.api.Project project)
      Specified by:
      apply in interface org.gradle.api.Plugin<org.gradle.api.Project>