diff --git a/Runtime/GuruAdjust/Plugins.meta b/Runtime/GuruAdjust/Editor.meta
similarity index 100%
rename from Runtime/GuruAdjust/Plugins.meta
rename to Runtime/GuruAdjust/Editor.meta
diff --git a/Runtime/GuruAdjust/Editor/GuruAdjust.Editor.asmdef b/Runtime/GuruAdjust/Editor/GuruAdjust.Editor.asmdef
new file mode 100644
index 0000000..09af48d
--- /dev/null
+++ b/Runtime/GuruAdjust/Editor/GuruAdjust.Editor.asmdef
@@ -0,0 +1,6 @@
+{
+  "name": "GuruAdjust.Editor",
+  "includePlatforms": [
+    "Editor"
+  ]
+}
\ No newline at end of file
diff --git a/Runtime/GuruAdjust/Editor/GuruAdjust.Editor.asmdef.meta b/Runtime/GuruAdjust/Editor/GuruAdjust.Editor.asmdef.meta
new file mode 100644
index 0000000..33190d6
--- /dev/null
+++ b/Runtime/GuruAdjust/Editor/GuruAdjust.Editor.asmdef.meta
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 82f90ccbb33b42e9ad29f5f5a861dc4a
+timeCreated: 1717137351
\ No newline at end of file
diff --git a/Runtime/GuruAdjust/Editor/Signature.meta b/Runtime/GuruAdjust/Editor/Signature.meta
new file mode 100644
index 0000000..68f133c
--- /dev/null
+++ b/Runtime/GuruAdjust/Editor/Signature.meta
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 522c3aca8edd4e5bb3c57f54460df356
+timeCreated: 1717137307
\ No newline at end of file
diff --git a/Runtime/GuruAdjust/Editor/Signature/AdjustSignatureHelper.cs b/Runtime/GuruAdjust/Editor/Signature/AdjustSignatureHelper.cs
new file mode 100644
index 0000000..0e05266
--- /dev/null
+++ b/Runtime/GuruAdjust/Editor/Signature/AdjustSignatureHelper.cs
@@ -0,0 +1,81 @@
+using System.IO;
+using UnityEditor;
+using UnityEngine;
+
+namespace Guru
+{
+    public class AdjustSignatureHelper
+    {
+        
+        private static readonly string AndroidLib = "adjust-android-signature-3.13.1.aar";
+        private static readonly string iOSLib = "AdjustSigSdk.a";
+
+        public static void DeployFiles()
+        {
+            var dir = GetParentDir();
+            var files = $"{dir}/Files";
+            if (Directory.Exists(files))
+            {
+                string from, to;
+                bool res;
+                from = $"{files}/{AndroidLib}.f";
+                to = $"{Application.dataPath}/Plugins/Android/{AndroidLib}";
+                res = CopyFile(from, to);
+                if (res) Debug.Log($"Copy {AndroidLib} to {to} success...");
+                from = $"{files}/{AndroidLib}.f.meta";
+                to = $"{Application.dataPath}/Plugins/Android/{AndroidLib}.meta";
+                CopyFile(from, to);
+                
+                from = $"{files}/{iOSLib}.f";
+                to = $"{Application.dataPath}/Plugins/iOS/{iOSLib}";
+                res = CopyFile(from, to); 
+                if (res) Debug.Log($"Copy {iOSLib} to {to} success...");
+                from = $"{files}/{iOSLib}.f.meta";
+                to = $"{Application.dataPath}/Plugins/iOS/{iOSLib}.meta";
+                CopyFile(from, to);
+                
+                AssetDatabase.Refresh();
+            }
+            else
+            {
+                Debug.Log($"Files not found: {files}");
+            }
+        }
+
+
+        private static string GetParentDir()
+        {
+            var guids = AssetDatabase.FindAssets(nameof(AdjustSignatureHelper));
+            if (guids != null && guids.Length > 0)
+            {
+                var path = AssetDatabase.GUIDToAssetPath(guids[0]);
+                var dir = Directory.GetParent(Path.GetFullPath(path));
+                return dir.FullName;
+            }
+            return Path.GetFullPath($"{Application.dataPath}/../Packages/com.guru.unity.sdk.core/Runtime/GuruAdjust/Editor/Signature");
+        }
+
+        private static bool CopyFile(string source, string dest)
+        {
+            if (File.Exists(source))
+            {
+                if (!File.Exists(dest))
+                {
+                    File.Delete(dest);
+                }
+                else
+                {
+                    var destDir = Directory.GetParent(dest);
+                    if(!destDir.Exists) destDir.Create();
+                }
+                
+                File.Copy(source, dest, true);
+                return true;
+            }
+           
+            Debug.Log($"File not found: {source}...");
+            return false;
+        }
+
+    }
+}
\ No newline at end of file
diff --git a/Runtime/GuruAdjust/Editor/Signature/AdjustSignatureHelper.cs.meta b/Runtime/GuruAdjust/Editor/Signature/AdjustSignatureHelper.cs.meta
new file mode 100644
index 0000000..4fa0866
--- /dev/null
+++ b/Runtime/GuruAdjust/Editor/Signature/AdjustSignatureHelper.cs.meta
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: fcbb67d0a48d4b88bc8fd1430c4bbda4
+timeCreated: 1717137470
\ No newline at end of file
diff --git a/Runtime/GuruAdjust/Editor/Signature/AdjustSignatureMenuItem.cs b/Runtime/GuruAdjust/Editor/Signature/AdjustSignatureMenuItem.cs
new file mode 100644
index 0000000..89b6170
--- /dev/null
+++ b/Runtime/GuruAdjust/Editor/Signature/AdjustSignatureMenuItem.cs
@@ -0,0 +1,14 @@
+namespace Guru
+{
+    using UnityEditor;
+    
+    public class AdjustSignatureMenuItem
+    {
+        [MenuItem("Guru/Adjust/SignatureV3/Deploy Libs")]
+        private static void CopyLibsToPlugins()
+        {
+            AdjustSignatureHelper.DeployFiles();
+        }
+
+    }
+}
\ No newline at end of file
diff --git a/Runtime/GuruAdjust/Editor/Signature/AdjustSignatureMenuItem.cs.meta b/Runtime/GuruAdjust/Editor/Signature/AdjustSignatureMenuItem.cs.meta
new file mode 100644
index 0000000..ca2b012
--- /dev/null
+++ b/Runtime/GuruAdjust/Editor/Signature/AdjustSignatureMenuItem.cs.meta
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 5f624e98bef44a399cf808a6aa7f5499
+timeCreated: 1717137523
\ No newline at end of file
diff --git a/Runtime/GuruAdjust/Plugins/iOS.meta b/Runtime/GuruAdjust/Editor/Signature/Files.meta
similarity index 100%
rename from Runtime/GuruAdjust/Plugins/iOS.meta
rename to Runtime/GuruAdjust/Editor/Signature/Files.meta
diff --git a/Runtime/GuruAdjust/Plugins/iOS/AdjustSigSdk.a b/Runtime/GuruAdjust/Editor/Signature/Files/AdjustSigSdk.a.f
similarity index 100%
rename from Runtime/GuruAdjust/Plugins/iOS/AdjustSigSdk.a
rename to Runtime/GuruAdjust/Editor/Signature/Files/AdjustSigSdk.a.f
diff --git a/Runtime/GuruAdjust/Plugins/iOS/AdjustSigSdk.a.meta b/Runtime/GuruAdjust/Editor/Signature/Files/AdjustSigSdk.a.f.meta
similarity index 100%
rename from Runtime/GuruAdjust/Plugins/iOS/AdjustSigSdk.a.meta
rename to Runtime/GuruAdjust/Editor/Signature/Files/AdjustSigSdk.a.f.meta
diff --git a/Runtime/GuruAdjust/Plugins/Android/adjust-android-signature-3.13.1.aar b/Runtime/GuruAdjust/Editor/Signature/Files/adjust-android-signature-3.13.1.aar.f
similarity index 100%
rename from Runtime/GuruAdjust/Plugins/Android/adjust-android-signature-3.13.1.aar
rename to Runtime/GuruAdjust/Editor/Signature/Files/adjust-android-signature-3.13.1.aar.f
diff --git a/Runtime/GuruAdjust/Plugins/Android/adjust-android-signature-3.13.1.aar.meta b/Runtime/GuruAdjust/Editor/Signature/Files/adjust-android-signature-3.13.1.aar.f.meta
similarity index 100%
rename from Runtime/GuruAdjust/Plugins/Android/adjust-android-signature-3.13.1.aar.meta
rename to Runtime/GuruAdjust/Editor/Signature/Files/adjust-android-signature-3.13.1.aar.f.meta
diff --git a/Runtime/GuruAdjust/Plugins/Android.meta b/Runtime/GuruAdjust/Plugins/Android.meta
deleted file mode 100644
index 87ac13f..0000000
--- a/Runtime/GuruAdjust/Plugins/Android.meta
+++ /dev/null
@@ -1,3 +0,0 @@
-fileFormatVersion: 2
-guid: 8597d2c1bebc4dc39ffc6f7700b61dfe
-timeCreated: 1717034055
\ No newline at end of file