diff --git a/package.json b/package.json
index 74c68eaa5be18dd6a281d4b21ffdf51ac9b72bc4..995101d38bc3db6ebfbcfac9d30cffe737541861 100644
--- a/package.json
+++ b/package.json
@@ -51,6 +51,7 @@
     "https-proxy-agent": "^5.0.1",
     "husky": "^7.0.0",
     "node-fetch": "^3.2.0",
+    "prettier": "^2.6.2",
     "pretty-quick": "^3.1.3",
     "sass": "^1.51.0",
     "typescript": "^4.6.4",
diff --git a/scripts/check.mjs b/scripts/check.mjs
index 3661f823e744a8e3aa459d25fc2fb2f21c516d09..f8d0cf976bf2d3f4e861f7cb0baaaeb058c6d36d 100644
--- a/scripts/check.mjs
+++ b/scripts/check.mjs
@@ -83,7 +83,10 @@ async function resolveClashMeta() {
 async function resolveSidecar() {
   const sidecarDir = path.join(cwd, "src-tauri", "sidecar");
 
-  const host = execSync("rustc -vV | grep host").toString().slice(6).trim();
+  const host = execSync("rustc -vV")
+    .toString()
+    .match(/(?<=host: ).+(?=\s*)/g)[0];
+
   const ext = process.platform === "win32" ? ".exe" : "";
 
   await clash();
diff --git a/yarn.lock b/yarn.lock
index f917aeb860591bc0d20df95d3e5a96bd3e928907..b13dd0a3b7616cd8f6794f19b96f1a2e751be394 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1913,6 +1913,11 @@ postcss@^8.4.13:
     picocolors "^1.0.0"
     source-map-js "^1.0.2"
 
+prettier@^2.6.2:
+  version "2.6.2"
+  resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.6.2.tgz#e26d71a18a74c3d0f0597f55f01fb6c06c206032"
+  integrity sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==
+
 pretty-quick@^3.1.3:
   version "3.1.3"
   resolved "https://registry.yarnpkg.com/pretty-quick/-/pretty-quick-3.1.3.tgz#15281108c0ddf446675157ca40240099157b638e"