diff --git a/perxis/extensions/extension_setup.py b/perxis/extensions/extension_setup.py
index 9efc47474ce24c299f934705e683cc346c03f262..4fa44311314ebaa67e594fc68eb4cef1d4a020cf 100644
--- a/perxis/extensions/extension_setup.py
+++ b/perxis/extensions/extension_setup.py
@@ -15,7 +15,7 @@ from perxis.items import items_pb2_grpc, items_pb2
 from perxis.common import common_pb2
 from perxis.clients import clients_pb2_grpc, clients_pb2
 from perxis.environments import environments_pb2_grpc, environments_pb2
-from perxis.extensions.actions import make_action_item, make_action_struct, ACTIONS_COLLECTION_ID
+from perxis.extensions.actions import make_action_item, ACTIONS_COLLECTION_ID
 
 
 logger = logging.getLogger(__name__)
@@ -491,7 +491,7 @@ class ExtensionSetup:
             action_item = make_action_item(space_id, env_id, action)
 
             try:
-                r = await self.items_service.Update(
+                await self.items_service.Update(
                     items_pb2.UpdateRequest(
                         item=items_pb2.Item(
                             id=action_item.id,
@@ -508,6 +508,10 @@ class ExtensionSetup:
                     continue
 
                 not_found = True
+            except Exception as e:
+                errors_list.append(f"Не удалось обновить действие {action_item.id}, {e}")
+
+                continue
 
             if not_found:
                 try:
@@ -518,6 +522,10 @@ class ExtensionSetup:
                     )
                 except grpc.RpcError as e:
                     errors_list.append(f"Не удалось создать действие {action_item.id}, {e.details()}")
+                except Exception as e:
+                    errors_list.append(f"Не удалось создать действие {action_item.id}, {e}")
+
+                    continue
 
             try:
                 await self.items_service.Publish(
@@ -526,40 +534,26 @@ class ExtensionSetup:
                     )
                 )
             except grpc.RpcError as e:
-                errors_list.append(f"Не удалось опубликовать действие {action_item.id}, {e.details()}")
+                # Если action уже опубликован
+                if "item cannot be published in this state" not in e.details():
+                    errors_list.append(f"Не удалось опубликовать действие {action_item.id}, {e.details()}")
+            except Exception as e:
+                errors_list.append(f"Не удалось опубликовать действие {action_item.id}, {e}")
 
         return errors_list
 
     async def __remove_actions(self, space_id: str, env_id: str) -> list[str]:
         errors_list = []
-
         for action in self.actions:
             action_item = make_action_item(space_id, env_id, action)
 
-            try:
-                await self.items_service.Unpublish(
-                    items_pb2.UnpublishRequest(
-                        item=items_pb2.Item(
-                            id=action_item.id,
-                            space_id=action_item.space_id,
-                            env_id=action_item.env_id,
-                            collection_id=action_item.collection_id,
-                        )
-                    )
-                )
-            except grpc.RpcError as e:
-                if "not found" not in e.details():
-                    errors_list.append(f"Не удалось снять с публикации действие {action.get('id', 'n/a')}, {e.details()}")
-
             try:
                 await self.items_service.Delete(
                     items_pb2.DeleteRequest(
-                        space_id=space_id,
-                        env_id=env_id,
                         item=items_pb2.Item(
                             id=action_item.id,
-                            space_id=action_item.space_id,
-                            env_id=action_item.env_id,
+                            space_id=space_id,
+                            env_id=env_id,
                             collection_id=action_item.collection_id,
                         ),
                         options=items_pb2.DeleteOptions(
@@ -572,6 +566,8 @@ class ExtensionSetup:
                 # Отсутствие действия это не ошибка
                 if "not found" not in e.details():
                     errors_list.append(f"Не удалось удалить действие {action.get('id', 'n/a')}, {e.details()}")
+            except Exception as e:
+                errors_list.append(f"Не удалось удалить действие - {e}")
 
         return errors_list
 
@@ -605,7 +601,6 @@ class ExtensionSetup:
 
     async def uninstall(self, space_id: str, env_id: str, use_remove: bool) -> list[str]:
         errors = []
-
         if use_remove:
             errors += await self.__remove_collections(space_id, env_id)
             errors += await self.__remove_clients(space_id)
diff --git a/setup.py b/setup.py
index 3d431653216d94a4273f1d76568d6a3f44d585d2..4a9427c9e2462a2435a26a12e64da97730de9c8b 100644
--- a/setup.py
+++ b/setup.py
@@ -14,7 +14,7 @@ def load_requirements():
 
 setup(
     name='perxis',
-    version='1.7.0',
+    version='1.7.1',
     description='Perxis python client',
     long_description=long_description,
     long_description_content_type='text/markdown',