diff --git a/pkgs/tools/misc/claws/default.nix b/pkgs/tools/misc/claws/default.nix
new file mode 100644
index 000000000000..10347e6e794d
--- /dev/null
+++ b/pkgs/tools/misc/claws/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  pname = "claws";
+  version = "0.3.2";
+
+  goPackagePath = "github.com/thehowl/${pname}";
+
+  src = fetchFromGitHub {
+    rev = version;
+    owner = "thehowl";
+    repo = pname;
+    sha256 = "0nl7xvdivnabqr98mh3m1pwqznprsaqpagny6zcwwmz480x4pmfz";
+  };
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/thehowl/claws";
+    description = "Interactive command line client for testing websocket servers";
+    license = licenses.mit;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ petabyteboy ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 267cbcc5bca0..3dbd8d5a2843 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -770,6 +770,8 @@ in
 
   chkcrontab = callPackage ../tools/admin/chkcrontab { };
 
+  claws = callPackage ../tools/misc/claws { };
+
   codespell = with python3Packages; toPythonApplication codespell;
 
   cozy = callPackage ../applications/audio/cozy-audiobooks { };