diff --git a/pom.xml b/pom.xml
index 9a91e6e..d51a4d8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -74,7 +74,9 @@
                             org.apache.sling.distribution.serialization,
                             org.apache.sling.distribution.queue.spi,
                             org.apache.sling.distribution.queue,
-                            org.apache.sling.distribution.log.spi
+                            org.apache.sling.distribution.log.spi,
+                            org.apache.sling.distribution.agent,
+                            org.apache.sling.distribution.agent.spi
                         </Export-Package>
                         <Import-Package>
                             org.apache.http.nio.*;resolution:=optional,
diff --git a/src/main/java/org/apache/sling/distribution/agent/impl/AbstractDistributionAgentFactory.java b/src/main/java/org/apache/sling/distribution/agent/impl/AbstractDistributionAgentFactory.java
index 4082f47..275c747 100644
--- a/src/main/java/org/apache/sling/distribution/agent/impl/AbstractDistributionAgentFactory.java
+++ b/src/main/java/org/apache/sling/distribution/agent/impl/AbstractDistributionAgentFactory.java
@@ -27,7 +27,7 @@
 import javax.management.ObjectName;
 
 import org.apache.sling.commons.osgi.PropertiesUtil;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.component.impl.DistributionComponentConstants;
 import org.apache.sling.distribution.component.impl.DistributionComponentKind;
 import org.apache.sling.distribution.component.impl.SettingsUtils;
diff --git a/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java b/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java
index a5a5ff1..16a58fa 100644
--- a/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java
+++ b/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java
@@ -40,7 +40,7 @@
 import org.apache.sling.commons.osgi.PropertiesUtil;
 import org.apache.sling.commons.scheduler.Scheduler;
 import org.apache.sling.distribution.DistributionRequestType;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.component.impl.DistributionComponentConstants;
 import org.apache.sling.distribution.component.impl.SettingsUtils;
 import org.apache.sling.distribution.event.impl.DistributionEventFactory;
@@ -71,7 +71,7 @@
 import org.osgi.service.cm.ConfigurationAdmin;
 
 /**
- * An OSGi service factory for {@link org.apache.sling.distribution.agent.DistributionAgent}s which references already existing OSGi services.
+ * An OSGi service factory for {@link DistributionAgent}s which references already existing OSGi services.
  */
 @Component(metatype = true,
         label = "Apache Sling Distribution Agent - Forward Agents Factory",
diff --git a/src/main/java/org/apache/sling/distribution/agent/impl/QueueDistributionAgentFactory.java b/src/main/java/org/apache/sling/distribution/agent/impl/QueueDistributionAgentFactory.java
index 3dff208..fa92378 100644
--- a/src/main/java/org/apache/sling/distribution/agent/impl/QueueDistributionAgentFactory.java
+++ b/src/main/java/org/apache/sling/distribution/agent/impl/QueueDistributionAgentFactory.java
@@ -33,7 +33,7 @@
 import org.apache.sling.api.resource.ResourceResolverFactory;
 import org.apache.sling.commons.osgi.PropertiesUtil;
 import org.apache.sling.distribution.DistributionRequestType;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.component.impl.DistributionComponentConstants;
 import org.apache.sling.distribution.component.impl.SettingsUtils;
 import org.apache.sling.distribution.event.impl.DistributionEventFactory;
@@ -59,7 +59,7 @@
  * An OSGi service factory for "queuing agents" that queue resources from the local instance (and can be eventually
  * pulled from another remote "reverse agent").
  *
- * @see {@link org.apache.sling.distribution.agent.DistributionAgent}
+ * @see {@link DistributionAgent}
  */
 @Component(metatype = true,
         label = "Apache Sling Distribution Agent - Queue Agents Factory",
diff --git a/src/main/java/org/apache/sling/distribution/agent/impl/ReverseDistributionAgentFactory.java b/src/main/java/org/apache/sling/distribution/agent/impl/ReverseDistributionAgentFactory.java
index f25d6a9..7e9189b 100644
--- a/src/main/java/org/apache/sling/distribution/agent/impl/ReverseDistributionAgentFactory.java
+++ b/src/main/java/org/apache/sling/distribution/agent/impl/ReverseDistributionAgentFactory.java
@@ -35,7 +35,7 @@
 import org.apache.sling.api.resource.ResourceResolverFactory;
 import org.apache.sling.commons.osgi.PropertiesUtil;
 import org.apache.sling.distribution.DistributionRequestType;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.component.impl.DistributionComponentConstants;
 import org.apache.sling.distribution.component.impl.SettingsUtils;
 import org.apache.sling.distribution.event.impl.DistributionEventFactory;
@@ -63,7 +63,7 @@
 /**
  * An OSGi service factory for "reverse agents" that pull resources from remote instances (e.g. from "queueing agents").
  *
- * @see {@link org.apache.sling.distribution.agent.DistributionAgent}
+ * @see {@link DistributionAgent}
  */
 @Component(metatype = true,
         label = "Apache Sling Distribution Agent - Reverse Agents Factory",
diff --git a/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgent.java b/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgent.java
index c50fdf2..e9bed63 100644
--- a/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgent.java
+++ b/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgent.java
@@ -24,7 +24,7 @@
 import org.apache.sling.distribution.DistributionRequestState;
 import org.apache.sling.distribution.DistributionRequestType;
 import org.apache.sling.distribution.DistributionResponse;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.agent.DistributionAgentState;
 import org.apache.sling.distribution.common.DistributionException;
 import org.apache.sling.distribution.component.impl.DistributionComponentKind;
@@ -57,7 +57,7 @@
 import java.util.concurrent.atomic.AtomicInteger;
 
 /**
- * Basic implementation of a {@link org.apache.sling.distribution.agent.DistributionAgent}
+ * Basic implementation of a {@link DistributionAgent}
  */
 public class SimpleDistributionAgent implements DistributionAgent {
     private final static String DEFAULT_AGENT_SERVICE = "defaultAgentService";
diff --git a/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgentFactory.java b/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgentFactory.java
index 27c236c..2186610 100644
--- a/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgentFactory.java
+++ b/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgentFactory.java
@@ -33,7 +33,7 @@
 import org.apache.felix.scr.annotations.ReferencePolicy;
 import org.apache.sling.api.resource.ResourceResolverFactory;
 import org.apache.sling.commons.osgi.PropertiesUtil;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.component.impl.DistributionComponentConstants;
 import org.apache.sling.distribution.component.impl.SettingsUtils;
 import org.apache.sling.distribution.event.impl.DistributionEventFactory;
@@ -53,7 +53,7 @@
 import org.osgi.framework.BundleContext;
 
 /**
- * An OSGi service factory for {@link org.apache.sling.distribution.agent.DistributionAgent}s which references already existing OSGi services.
+ * An OSGi service factory for {@link DistributionAgent}s which references already existing OSGi services.
  */
 @Component(metatype = true,
         label = "Apache Sling Distribution Agent - Simple Agents Factory",
diff --git a/src/main/java/org/apache/sling/distribution/agent/impl/SyncDistributionAgentFactory.java b/src/main/java/org/apache/sling/distribution/agent/impl/SyncDistributionAgentFactory.java
index 0506ce0..b8cb5e0 100644
--- a/src/main/java/org/apache/sling/distribution/agent/impl/SyncDistributionAgentFactory.java
+++ b/src/main/java/org/apache/sling/distribution/agent/impl/SyncDistributionAgentFactory.java
@@ -23,7 +23,7 @@
 import org.apache.sling.api.resource.ResourceResolverFactory;
 import org.apache.sling.commons.osgi.PropertiesUtil;
 import org.apache.sling.distribution.DistributionRequestType;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.component.impl.DistributionComponentConstants;
 import org.apache.sling.distribution.component.impl.SettingsUtils;
 import org.apache.sling.distribution.event.impl.DistributionEventFactory;
@@ -54,7 +54,7 @@
 /**
  * An OSGi service factory for "synchronizing agents" that synchronize (pull and push) resources between remote instances.
  *
- * @see {@link org.apache.sling.distribution.agent.DistributionAgent}
+ * @see {@link DistributionAgent}
  */
 @Component(metatype = true,
         label = "Apache Sling Distribution Agent - Sync Agents Factory",
diff --git a/src/main/java/org/apache/sling/distribution/agent/impl/TriggerAgentRequestHandler.java b/src/main/java/org/apache/sling/distribution/agent/impl/TriggerAgentRequestHandler.java
index 07851dc..21b76c7 100644
--- a/src/main/java/org/apache/sling/distribution/agent/impl/TriggerAgentRequestHandler.java
+++ b/src/main/java/org/apache/sling/distribution/agent/impl/TriggerAgentRequestHandler.java
@@ -23,7 +23,7 @@
 
 import org.apache.sling.api.resource.ResourceResolver;
 import org.apache.sling.distribution.DistributionRequest;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.component.impl.DistributionComponentKind;
 import org.apache.sling.distribution.log.impl.DefaultDistributionLog;
 import org.apache.sling.distribution.trigger.DistributionRequestHandler;
diff --git a/src/main/java/org/apache/sling/distribution/agent/package-info.java b/src/main/java/org/apache/sling/distribution/agent/package-info.java
new file mode 100644
index 0000000..59b30d6
--- /dev/null
+++ b/src/main/java/org/apache/sling/distribution/agent/package-info.java
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+@Version("0.0.0")
+package org.apache.sling.distribution.agent;
+
+import aQute.bnd.annotation.Version;
+
diff --git a/src/main/java/org/apache/sling/distribution/agent/DistributionAgent.java b/src/main/java/org/apache/sling/distribution/agent/spi/DistributionAgent.java
similarity index 92%
rename from src/main/java/org/apache/sling/distribution/agent/DistributionAgent.java
rename to src/main/java/org/apache/sling/distribution/agent/spi/DistributionAgent.java
index f64f334..66b2ddb 100644
--- a/src/main/java/org/apache/sling/distribution/agent/DistributionAgent.java
+++ b/src/main/java/org/apache/sling/distribution/agent/spi/DistributionAgent.java
@@ -16,15 +16,16 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.sling.distribution.agent;
+package org.apache.sling.distribution.agent.spi;
 
 import javax.annotation.CheckForNull;
 import javax.annotation.Nonnull;
 
-import aQute.bnd.annotation.ProviderType;
+import aQute.bnd.annotation.ConsumerType;
 import org.apache.sling.api.resource.ResourceResolver;
 import org.apache.sling.distribution.DistributionRequest;
 import org.apache.sling.distribution.DistributionResponse;
+import org.apache.sling.distribution.agent.DistributionAgentState;
 import org.apache.sling.distribution.common.DistributionException;
 import org.apache.sling.distribution.log.spi.DistributionLog;
 import org.apache.sling.distribution.queue.spi.DistributionQueue;
@@ -36,7 +37,7 @@
  * specific path(s) which will resume pulling resources from a certain Sling instance and / or pushing resources to
  * other instances.
  */
-@ProviderType
+@ConsumerType
 public interface DistributionAgent {
 
     /**
@@ -77,7 +78,7 @@
      * The content to be sent will be assembled according to the information contained in the request.
      * A {@link org.apache.sling.distribution.DistributionResponse} holding the {@link org.apache.sling.distribution.DistributionRequestState}
      * of the provided request will be returned.
-     * Synchronous {@link org.apache.sling.distribution.agent.DistributionAgent}s will usually block until the execution has finished
+     * Synchronous {@link DistributionAgent}s will usually block until the execution has finished
      * while asynchronous agents will usually return the response as soon as the content to be distributed has been assembled
      * and scheduled for distribution.
      *
diff --git a/src/main/java/org/apache/sling/distribution/agent/spi/package-info.java b/src/main/java/org/apache/sling/distribution/agent/spi/package-info.java
new file mode 100644
index 0000000..e60a106
--- /dev/null
+++ b/src/main/java/org/apache/sling/distribution/agent/spi/package-info.java
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+@Version("0.0.0")
+package org.apache.sling.distribution.agent.spi;
+
+import aQute.bnd.annotation.Version;
+
diff --git a/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionComponentProvider.java b/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionComponentProvider.java
index 5745d38..1ba3743 100644
--- a/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionComponentProvider.java
+++ b/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionComponentProvider.java
@@ -31,7 +31,7 @@
 import org.apache.felix.scr.annotations.References;
 import org.apache.felix.scr.annotations.Service;
 import org.apache.sling.commons.osgi.PropertiesUtil;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.agent.impl.DistributionRequestAuthorizationStrategy;
 import org.apache.sling.distribution.packaging.DistributionPackageBuilder;
 import org.apache.sling.distribution.packaging.DistributionPackageExporter;
diff --git a/src/main/java/org/apache/sling/distribution/component/impl/DistributionComponentKind.java b/src/main/java/org/apache/sling/distribution/component/impl/DistributionComponentKind.java
index e34a2f0..f5316f8 100644
--- a/src/main/java/org/apache/sling/distribution/component/impl/DistributionComponentKind.java
+++ b/src/main/java/org/apache/sling/distribution/component/impl/DistributionComponentKind.java
@@ -34,7 +34,7 @@
 import java.util.Map;
 import java.util.Map.Entry;
 
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.agent.impl.DistributionRequestAuthorizationStrategy;
 import org.apache.sling.distribution.agent.impl.ForwardDistributionAgentFactory;
 import org.apache.sling.distribution.agent.impl.PrivilegeDistributionRequestAuthorizationStrategy;
diff --git a/src/main/java/org/apache/sling/distribution/impl/DefaultDistributor.java b/src/main/java/org/apache/sling/distribution/impl/DefaultDistributor.java
index 4c84eb1..ef1bf87 100644
--- a/src/main/java/org/apache/sling/distribution/impl/DefaultDistributor.java
+++ b/src/main/java/org/apache/sling/distribution/impl/DefaultDistributor.java
@@ -29,7 +29,7 @@
 import org.apache.sling.distribution.DistributionRequestState;
 import org.apache.sling.distribution.DistributionResponse;
 import org.apache.sling.distribution.Distributor;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.component.impl.DistributionComponentProvider;
 import org.apache.sling.distribution.common.DistributionException;
 import org.slf4j.Logger;
diff --git a/src/main/java/org/apache/sling/distribution/log/spi/DistributionLog.java b/src/main/java/org/apache/sling/distribution/log/spi/DistributionLog.java
index d05a2bb..289f81b 100644
--- a/src/main/java/org/apache/sling/distribution/log/spi/DistributionLog.java
+++ b/src/main/java/org/apache/sling/distribution/log/spi/DistributionLog.java
@@ -25,7 +25,7 @@
 import aQute.bnd.annotation.ConsumerType;
 
 /**
- * The log of a distribution component activity (e.g. a {@link org.apache.sling.distribution.agent.DistributionAgent})
+ * The log of a distribution component activity (e.g. a DistributionAgent)
  */
 @ConsumerType
 public interface DistributionLog {
diff --git a/src/main/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheck.java b/src/main/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheck.java
index 15dc16d..38bf41e 100644
--- a/src/main/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheck.java
+++ b/src/main/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheck.java
@@ -35,7 +35,7 @@
 import org.apache.felix.scr.annotations.References;
 import org.apache.felix.scr.annotations.Service;
 import org.apache.sling.commons.osgi.PropertiesUtil;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.queue.spi.DistributionQueue;
 import org.apache.sling.distribution.queue.DistributionQueueEntry;
 import org.apache.sling.distribution.queue.DistributionQueueItemStatus;
diff --git a/src/main/java/org/apache/sling/distribution/monitor/impl/ForwardDistributionAgentMBeanImpl.java b/src/main/java/org/apache/sling/distribution/monitor/impl/ForwardDistributionAgentMBeanImpl.java
index 3baef0a..09a55f7 100644
--- a/src/main/java/org/apache/sling/distribution/monitor/impl/ForwardDistributionAgentMBeanImpl.java
+++ b/src/main/java/org/apache/sling/distribution/monitor/impl/ForwardDistributionAgentMBeanImpl.java
@@ -21,7 +21,7 @@
 import java.util.Map;
 
 import org.apache.sling.commons.osgi.PropertiesUtil;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 
 /**
  * The ForwardDistributionAgent MBean implementation, based on the OSGi configuration.
diff --git a/src/main/java/org/apache/sling/distribution/monitor/impl/QueueDistributionAgentMBeanImpl.java b/src/main/java/org/apache/sling/distribution/monitor/impl/QueueDistributionAgentMBeanImpl.java
index ec9527b..1c7863c 100644
--- a/src/main/java/org/apache/sling/distribution/monitor/impl/QueueDistributionAgentMBeanImpl.java
+++ b/src/main/java/org/apache/sling/distribution/monitor/impl/QueueDistributionAgentMBeanImpl.java
@@ -21,7 +21,7 @@
 import java.util.Map;
 
 import org.apache.sling.commons.osgi.PropertiesUtil;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 
 /**
  * The QueueDistributionAgent MBean implementation, based on the OSGi configuration.
diff --git a/src/main/java/org/apache/sling/distribution/monitor/impl/ReverseDistributionAgentMBeanImpl.java b/src/main/java/org/apache/sling/distribution/monitor/impl/ReverseDistributionAgentMBeanImpl.java
index c29323b..430b2e6 100644
--- a/src/main/java/org/apache/sling/distribution/monitor/impl/ReverseDistributionAgentMBeanImpl.java
+++ b/src/main/java/org/apache/sling/distribution/monitor/impl/ReverseDistributionAgentMBeanImpl.java
@@ -21,7 +21,7 @@
 import java.util.Map;
 
 import org.apache.sling.commons.osgi.PropertiesUtil;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 
 /**
  * The ReverseDistributionAgent MBean implementation, based on the OSGi configuration.
diff --git a/src/main/java/org/apache/sling/distribution/monitor/impl/SimpleDistributionAgentMBeanImpl.java b/src/main/java/org/apache/sling/distribution/monitor/impl/SimpleDistributionAgentMBeanImpl.java
index 1ec1880..47187f7 100644
--- a/src/main/java/org/apache/sling/distribution/monitor/impl/SimpleDistributionAgentMBeanImpl.java
+++ b/src/main/java/org/apache/sling/distribution/monitor/impl/SimpleDistributionAgentMBeanImpl.java
@@ -21,7 +21,7 @@
 import java.util.Map;
 
 import org.apache.sling.commons.osgi.PropertiesUtil;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 
 /**
  * The SimpleDistributionAgent MBean implementation, based on the OSGi configuration.
diff --git a/src/main/java/org/apache/sling/distribution/monitor/impl/SyncDistributionAgentMBeanImpl.java b/src/main/java/org/apache/sling/distribution/monitor/impl/SyncDistributionAgentMBeanImpl.java
index bcbfd92..8ba28af 100644
--- a/src/main/java/org/apache/sling/distribution/monitor/impl/SyncDistributionAgentMBeanImpl.java
+++ b/src/main/java/org/apache/sling/distribution/monitor/impl/SyncDistributionAgentMBeanImpl.java
@@ -21,7 +21,7 @@
 import java.util.Map;
 
 import org.apache.sling.commons.osgi.PropertiesUtil;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 
 /**
  * The SyncDistributionAgent MBean implementation, based on the OSGi configuration.
diff --git a/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporter.java b/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporter.java
index 0bf46aa..cf2f7b1 100644
--- a/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporter.java
+++ b/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporter.java
@@ -23,7 +23,7 @@
 import org.apache.sling.api.resource.ResourceResolver;
 import org.apache.sling.distribution.DistributionRequest;
 import org.apache.sling.distribution.DistributionRequestType;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.common.DistributionException;
 import org.apache.sling.distribution.log.spi.DistributionLog;
 import org.apache.sling.distribution.log.impl.DefaultDistributionLog;
diff --git a/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterFactory.java b/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterFactory.java
index 73b9b1f..3837b7a 100644
--- a/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterFactory.java
+++ b/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterFactory.java
@@ -31,7 +31,7 @@
 import org.apache.sling.api.resource.ResourceResolver;
 import org.apache.sling.commons.osgi.PropertiesUtil;
 import org.apache.sling.distribution.DistributionRequest;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.common.DistributionException;
 import org.apache.sling.distribution.component.impl.DistributionComponentConstants;
 import org.apache.sling.distribution.packaging.DistributionPackage;
diff --git a/src/main/java/org/apache/sling/distribution/queue/impl/jobhandling/DistributionAgentJobConsumer.java b/src/main/java/org/apache/sling/distribution/queue/impl/jobhandling/DistributionAgentJobConsumer.java
index 1e2a142..2bd37e0 100644
--- a/src/main/java/org/apache/sling/distribution/queue/impl/jobhandling/DistributionAgentJobConsumer.java
+++ b/src/main/java/org/apache/sling/distribution/queue/impl/jobhandling/DistributionAgentJobConsumer.java
@@ -18,6 +18,7 @@
  */
 package org.apache.sling.distribution.queue.impl.jobhandling;
 
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.queue.DistributionQueueEntry;
 import org.apache.sling.distribution.queue.impl.DistributionQueueProcessor;
 import org.apache.sling.event.jobs.Job;
@@ -26,7 +27,7 @@
 import org.slf4j.LoggerFactory;
 
 /**
- * {@link JobConsumer} for {@link org.apache.sling.distribution.agent.DistributionAgent}s using {@link JobHandlingDistributionQueue}
+ * {@link JobConsumer} for {@link DistributionAgent}s using {@link JobHandlingDistributionQueue}
  */
 class DistributionAgentJobConsumer implements JobConsumer {
 
diff --git a/src/main/java/org/apache/sling/distribution/queue/spi/DistributionQueue.java b/src/main/java/org/apache/sling/distribution/queue/spi/DistributionQueue.java
index 66642d6..f520d79 100644
--- a/src/main/java/org/apache/sling/distribution/queue/spi/DistributionQueue.java
+++ b/src/main/java/org/apache/sling/distribution/queue/spi/DistributionQueue.java
@@ -22,6 +22,7 @@
 import javax.annotation.Nonnull;
 
 import aQute.bnd.annotation.ConsumerType;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.packaging.DistributionPackage;
 import org.apache.sling.distribution.queue.DistributionQueueEntry;
 import org.apache.sling.distribution.queue.DistributionQueueItem;
@@ -31,7 +32,7 @@
 
 /**
  * A queue is responsible for collecting the {@link DistributionPackage}s
- * exported by a {@link org.apache.sling.distribution.agent.DistributionAgent} in
+ * exported by a {@link DistributionAgent} in
  * order to be able to process them also when there are multiple (concurrent)
  * {@link org.apache.sling.distribution.DistributionRequest}s executed
  * on that same agent.
diff --git a/src/main/java/org/apache/sling/distribution/resources/impl/ExtendedDistributionServiceResourceProvider.java b/src/main/java/org/apache/sling/distribution/resources/impl/ExtendedDistributionServiceResourceProvider.java
index 6d5ae84..57f75d1 100644
--- a/src/main/java/org/apache/sling/distribution/resources/impl/ExtendedDistributionServiceResourceProvider.java
+++ b/src/main/java/org/apache/sling/distribution/resources/impl/ExtendedDistributionServiceResourceProvider.java
@@ -26,7 +26,7 @@
 import java.util.Map;
 
 
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.agent.DistributionAgentState;
 import org.apache.sling.distribution.component.impl.DistributionComponent;
 import org.apache.sling.distribution.component.impl.DistributionComponentKind;
diff --git a/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentCreationFilter.java b/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentCreationFilter.java
index 0721255..af24cbb 100644
--- a/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentCreationFilter.java
+++ b/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentCreationFilter.java
@@ -33,7 +33,7 @@
 import org.apache.felix.scr.annotations.Property;
 import org.apache.felix.scr.annotations.Service;
 import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.InvalidSyntaxException;
 import org.osgi.framework.ServiceReference;
diff --git a/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentLogServlet.java b/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentLogServlet.java
index 95ad92b..1e2e485 100644
--- a/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentLogServlet.java
+++ b/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentLogServlet.java
@@ -27,6 +27,7 @@
 import org.apache.sling.api.SlingHttpServletResponse;
 import org.apache.sling.api.servlets.SlingAllMethodsServlet;
 import org.apache.sling.distribution.DistributionRequest;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.log.spi.DistributionLog;
 import org.apache.sling.distribution.resources.DistributionResourceTypes;
 import org.apache.sling.distribution.util.RequestUtils;
@@ -34,7 +35,7 @@
 import org.slf4j.LoggerFactory;
 
 /**
- * Servlet to ask {@link org.apache.sling.distribution.agent.DistributionAgent}s to distribute (via HTTP POST).
+ * Servlet to ask {@link DistributionAgent}s to distribute (via HTTP POST).
  */
 @SuppressWarnings("serial")
 @SlingServlet(resourceTypes = DistributionResourceTypes.LOG_RESOURCE_TYPE, methods = "GET", extensions = "txt")
diff --git a/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentQueueServlet.java b/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentQueueServlet.java
index bc0db4e..31f61fa 100644
--- a/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentQueueServlet.java
+++ b/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentQueueServlet.java
@@ -28,7 +28,7 @@
 import org.apache.sling.api.SlingHttpServletResponse;
 import org.apache.sling.api.resource.ResourceResolver;
 import org.apache.sling.api.servlets.SlingAllMethodsServlet;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.common.DistributionException;
 import org.apache.sling.distribution.packaging.DistributionPackage;
 import org.apache.sling.distribution.packaging.DistributionPackageInfo;
diff --git a/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentServlet.java b/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentServlet.java
index 3121bdc..edada7c 100644
--- a/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentServlet.java
+++ b/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentServlet.java
@@ -28,14 +28,14 @@
 import org.apache.sling.api.servlets.SlingAllMethodsServlet;
 import org.apache.sling.distribution.DistributionRequest;
 import org.apache.sling.distribution.DistributionResponse;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.resources.DistributionResourceTypes;
 import org.apache.sling.distribution.util.RequestUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * Servlet to ask {@link org.apache.sling.distribution.agent.DistributionAgent}s to distribute (via HTTP POST).
+ * Servlet to ask {@link DistributionAgent}s to distribute (via HTTP POST).
  */
 @SuppressWarnings("serial")
 @SlingServlet(resourceTypes = DistributionResourceTypes.AGENT_RESOURCE_TYPE, methods = "POST")
diff --git a/src/main/java/org/apache/sling/distribution/trigger/impl/ScheduledDistributionTrigger.java b/src/main/java/org/apache/sling/distribution/trigger/impl/ScheduledDistributionTrigger.java
index c243b14..ad0464b 100644
--- a/src/main/java/org/apache/sling/distribution/trigger/impl/ScheduledDistributionTrigger.java
+++ b/src/main/java/org/apache/sling/distribution/trigger/impl/ScheduledDistributionTrigger.java
@@ -30,6 +30,7 @@
 import org.apache.sling.commons.scheduler.Scheduler;
 import org.apache.sling.distribution.DistributionRequestType;
 import org.apache.sling.distribution.SimpleDistributionRequest;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.common.DistributionException;
 import org.apache.sling.distribution.trigger.DistributionRequestHandler;
 import org.apache.sling.distribution.trigger.DistributionTrigger;
@@ -39,7 +40,7 @@
 
 /**
  * {@link org.apache.sling.distribution.trigger.DistributionTrigger} to schedule distributions on a certain
- * {@link org.apache.sling.distribution.agent.DistributionAgent}
+ * {@link DistributionAgent}
  */
 public class ScheduledDistributionTrigger implements DistributionTrigger {
     private final static String SCHEDULE_NAME = "scheduledEventTrigger";
diff --git a/src/test/java/org/apache/sling/distribution/agent/impl/TriggerAgentRequestHandlerTest.java b/src/test/java/org/apache/sling/distribution/agent/impl/TriggerAgentRequestHandlerTest.java
index 9f949e4..14ba6f7 100644
--- a/src/test/java/org/apache/sling/distribution/agent/impl/TriggerAgentRequestHandlerTest.java
+++ b/src/test/java/org/apache/sling/distribution/agent/impl/TriggerAgentRequestHandlerTest.java
@@ -20,7 +20,7 @@
 
 import org.apache.sling.api.resource.ResourceResolver;
 import org.apache.sling.distribution.DistributionRequest;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.log.impl.DefaultDistributionLog;
 import org.junit.Test;
 
diff --git a/src/test/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheckTest.java b/src/test/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheckTest.java
index 68ce1a4..3c33bab 100644
--- a/src/test/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheckTest.java
+++ b/src/test/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheckTest.java
@@ -24,7 +24,7 @@
 import java.util.HashMap;
 import java.util.List;
 
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.queue.DistributionQueueItemState;
 import org.apache.sling.distribution.queue.spi.DistributionQueue;
 import org.apache.sling.distribution.queue.DistributionQueueEntry;
diff --git a/src/test/java/org/apache/sling/distribution/monitor/impl/ForwardDistributionAgentMBeanTest.java b/src/test/java/org/apache/sling/distribution/monitor/impl/ForwardDistributionAgentMBeanTest.java
index 8372600..5f25692 100644
--- a/src/test/java/org/apache/sling/distribution/monitor/impl/ForwardDistributionAgentMBeanTest.java
+++ b/src/test/java/org/apache/sling/distribution/monitor/impl/ForwardDistributionAgentMBeanTest.java
@@ -25,7 +25,7 @@
 import java.util.HashMap;
 import java.util.Map;
 
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.agent.DistributionAgentState;
 import org.junit.Test;
 
diff --git a/src/test/java/org/apache/sling/distribution/monitor/impl/QueueDistributionAgentMBeanTest.java b/src/test/java/org/apache/sling/distribution/monitor/impl/QueueDistributionAgentMBeanTest.java
index f9426e4..fe77c0f 100644
--- a/src/test/java/org/apache/sling/distribution/monitor/impl/QueueDistributionAgentMBeanTest.java
+++ b/src/test/java/org/apache/sling/distribution/monitor/impl/QueueDistributionAgentMBeanTest.java
@@ -25,7 +25,7 @@
 import java.util.HashMap;
 import java.util.Map;
 
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.agent.DistributionAgentState;
 import org.junit.Test;
 
diff --git a/src/test/java/org/apache/sling/distribution/monitor/impl/ReverseDistributionAgentMBeanTest.java b/src/test/java/org/apache/sling/distribution/monitor/impl/ReverseDistributionAgentMBeanTest.java
index 3886706..1854621 100644
--- a/src/test/java/org/apache/sling/distribution/monitor/impl/ReverseDistributionAgentMBeanTest.java
+++ b/src/test/java/org/apache/sling/distribution/monitor/impl/ReverseDistributionAgentMBeanTest.java
@@ -25,7 +25,7 @@
 import java.util.HashMap;
 import java.util.Map;
 
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.agent.DistributionAgentState;
 import org.junit.Test;
 
diff --git a/src/test/java/org/apache/sling/distribution/monitor/impl/SimpleDistributionAgentMBeanTest.java b/src/test/java/org/apache/sling/distribution/monitor/impl/SimpleDistributionAgentMBeanTest.java
index 7e259f5..e94336c 100644
--- a/src/test/java/org/apache/sling/distribution/monitor/impl/SimpleDistributionAgentMBeanTest.java
+++ b/src/test/java/org/apache/sling/distribution/monitor/impl/SimpleDistributionAgentMBeanTest.java
@@ -25,7 +25,7 @@
 import java.util.HashMap;
 import java.util.Map;
 
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.agent.DistributionAgentState;
 import org.junit.Test;
 
diff --git a/src/test/java/org/apache/sling/distribution/monitor/impl/SyncDistributionAgentMBeanTest.java b/src/test/java/org/apache/sling/distribution/monitor/impl/SyncDistributionAgentMBeanTest.java
index 4b0ff8d..03b8a6c 100644
--- a/src/test/java/org/apache/sling/distribution/monitor/impl/SyncDistributionAgentMBeanTest.java
+++ b/src/test/java/org/apache/sling/distribution/monitor/impl/SyncDistributionAgentMBeanTest.java
@@ -25,7 +25,7 @@
 import java.util.HashMap;
 import java.util.Map;
 
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.agent.DistributionAgentState;
 import org.junit.Test;
 
diff --git a/src/test/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterTest.java b/src/test/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterTest.java
index e6351c8..80582dd 100644
--- a/src/test/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterTest.java
+++ b/src/test/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterTest.java
@@ -24,7 +24,7 @@
 import org.apache.sling.distribution.DistributionRequestType;
 import org.apache.sling.distribution.DistributionResponse;
 import org.apache.sling.distribution.SimpleDistributionRequest;
-import org.apache.sling.distribution.agent.DistributionAgent;
+import org.apache.sling.distribution.agent.spi.DistributionAgent;
 import org.apache.sling.distribution.packaging.DistributionPackageProcessor;
 import org.apache.sling.distribution.packaging.DistributionPackage;
 import org.apache.sling.distribution.packaging.DistributionPackageBuilderProvider;
