diff --git a/src/Cake.Frosting/IFrostingTask.cs b/src/Cake.Frosting/IFrostingTask.cs
index 2517b4107f..7563f3bd19 100644
--- a/src/Cake.Frosting/IFrostingTask.cs
+++ b/src/Cake.Frosting/IFrostingTask.cs
@@ -29,6 +29,11 @@ public interface IFrostingTask
///
bool ShouldRun(ICakeContext context);
+ ///
+ /// Gets message used for criteria if returns false.
+ ///
+ string SkippedMessage => string.Empty;
+
///
/// The error handler to be executed if an exception occurs in the task.
///
diff --git a/src/Cake.Frosting/Internal/FrostingEngine.cs b/src/Cake.Frosting/Internal/FrostingEngine.cs
index df3fe760ab..45fc024ca8 100644
--- a/src/Cake.Frosting/Internal/FrostingEngine.cs
+++ b/src/Cake.Frosting/Internal/FrostingEngine.cs
@@ -128,7 +128,7 @@ private void ConfigureTasks()
// Is the criteria method overridden?
if (task.IsShouldRunOverridden(_context))
{
- cakeTask.WithCriteria(task.ShouldRun);
+ cakeTask.WithCriteria(task.ShouldRun, task.SkippedMessage);
}
// Continue on error?