diff --git a/source/RobotAPI/libraries/skills/core/SkillID.cpp b/source/RobotAPI/libraries/skills/core/SkillID.cpp
index ece268aeeec9234a8dd4b2dcaa437d616988317e..2bf5cb5596a89a8daab37ef8e957a8c9fcc2b532 100644
--- a/source/RobotAPI/libraries/skills/core/SkillID.cpp
+++ b/source/RobotAPI/libraries/skills/core/SkillID.cpp
@@ -50,7 +50,7 @@ namespace armarx
         manager::dto::SkillID
         SkillID::toManagerIce() const
         {
-            ARMARX_CHECK(isFullySpecified());
+            ARMARX_CHECK(isFullySpecified()) << "Got: " << toString();
             return {providerId->toManagerIce(), skillName};
         }
 
diff --git a/source/RobotAPI/libraries/skills/manager/SkillManagerComponentPlugin.cpp b/source/RobotAPI/libraries/skills/manager/SkillManagerComponentPlugin.cpp
index 3999c956b3ec3d85be444e7b27d56c27fbc2d98e..14e4e64e8a0ba1af5d8a22a824bc76543cc91fe2 100644
--- a/source/RobotAPI/libraries/skills/manager/SkillManagerComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/skills/manager/SkillManagerComponentPlugin.cpp
@@ -84,7 +84,8 @@ namespace armarx::plugins
     skills::SkillStatusUpdate
     SkillManagerComponentPlugin::executeSkill(const skills::SkillExecutionRequest& executionRequest)
     {
-        ARMARX_CHECK(executionRequest.skillId.isFullySpecified());
+        ARMARX_CHECK(executionRequest.skillId.isFullySpecified())
+            << "Got: " << executionRequest.skillId.toString();
 
         std::unique_lock l(skillProviderMapMutex);
 
@@ -157,7 +158,8 @@ namespace armarx::plugins
     SkillManagerComponentPlugin::executeSkillAsync(
         const skills::SkillExecutionRequest& executionRequest)
     {
-        ARMARX_CHECK(executionRequest.skillId.isFullySpecified());
+        ARMARX_CHECK(executionRequest.skillId.isFullySpecified())
+            << "Got: " << executionRequest.skillId.toString();
 
         std::unique_lock l(skillProviderMapMutex);
 
@@ -231,7 +233,8 @@ namespace armarx::plugins
     SkillManagerComponentPlugin::updateSkillParameters(const skills::SkillExecutionID& executionId,
                                                        const aron::data::DictPtr& data)
     {
-        ARMARX_CHECK(executionId.skillId.isFullySpecified());
+        ARMARX_CHECK(executionId.skillId.isFullySpecified())
+            << "Got: " << executionId.skillId.toString();
 
         std::unique_lock l(skillProviderMapMutex);
         if (auto it = skillProviderMap.find(*executionId.skillId.providerId);
@@ -272,7 +275,8 @@ namespace armarx::plugins
     bool
     SkillManagerComponentPlugin::abortSkill(const skills::SkillExecutionID& executionId)
     {
-        ARMARX_CHECK(executionId.skillId.isFullySpecified());
+        ARMARX_CHECK(executionId.skillId.isFullySpecified())
+            << "Got: " << executionId.skillId.toString();
 
         std::unique_lock l(skillProviderMapMutex);
         if (auto it = skillProviderMap.find(*executionId.skillId.providerId);
@@ -312,7 +316,8 @@ namespace armarx::plugins
     bool
     SkillManagerComponentPlugin::abortSkillAsync(const skills::SkillExecutionID& executionId)
     {
-        ARMARX_CHECK(executionId.skillId.isFullySpecified());
+        ARMARX_CHECK(executionId.skillId.isFullySpecified())
+            << "Got: " << executionId.skillId.toString();
 
         std::unique_lock l(skillProviderMapMutex);
         if (auto it = skillProviderMap.find(*executionId.skillId.providerId);
@@ -350,7 +355,7 @@ namespace armarx::plugins
     std::optional<skills::SkillDescription>
     SkillManagerComponentPlugin::getSkillDescription(const skills::SkillID& skillId)
     {
-        ARMARX_CHECK(skillId.isFullySpecified());
+        ARMARX_CHECK(skillId.isFullySpecified()) << "Got: " << skillId.toString();
 
         std::unique_lock l(skillProviderMapMutex);
         if (auto it = skillProviderMap.find(*skillId.providerId); it != skillProviderMap.end())
@@ -453,7 +458,8 @@ namespace armarx::plugins
     SkillManagerComponentPlugin::getSkillExecutionStatus(
         const skills::SkillExecutionID& executionId)
     {
-        ARMARX_CHECK(executionId.skillId.isFullySpecified());
+        ARMARX_CHECK(executionId.skillId.isFullySpecified())
+            << "Got: " << executionId.skillId.toString();
 
         std::unique_lock l(skillProviderMapMutex);
         if (auto it = skillProviderMap.find(*executionId.skillId.providerId);