diff --git a/cmd/root.go b/cmd/root.go
index a78d42e9677eb01a51dc172666e98ebdf1530efc..4f7fa88f0856a85435af9c2122ce2020e6253892 100644
--- a/cmd/root.go
+++ b/cmd/root.go
@@ -27,6 +27,7 @@ func init() {
 	RootCmd.AddCommand(readCmd)
 	RootCmd.AddCommand(writeCmd)
 	RootCmd.AddCommand(deleteCmd)
+	RootCmd.AddCommand(versionCmd)
 	RootCmd.PersistentFlags().StringP("addr", "a", "http://127.0.0.1:8200", "Address to the vault server")
 	RootCmd.PersistentFlags().StringP("token", "t", "", "Vault access token")
 	readCmd.Flags().BoolP("shell", "s", false, "Format output for eval(...)")
diff --git a/cmd/version.go b/cmd/version.go
new file mode 100644
index 0000000000000000000000000000000000000000..5857844304fbaf1711877dcf9529704818683c98
--- /dev/null
+++ b/cmd/version.go
@@ -0,0 +1,17 @@
+package cmd
+
+import (
+	"fmt"
+
+	"github.com/spf13/cobra"
+	"gitlab.hedenstroem.com/go/vaultenv/constant"
+)
+
+var versionCmd = &cobra.Command{
+	Use:   "version",
+	Short: "version Short",
+	Long:  `version Long`,
+	Run: func(cmd *cobra.Command, args []string) {
+		fmt.Printf("Version: %s", constant.Version)
+	},
+}
diff --git a/constant/version.go b/constant/version.go
new file mode 100644
index 0000000000000000000000000000000000000000..8befc95f435fe6ac8cb156f7a2cc8ee5059c9676
--- /dev/null
+++ b/constant/version.go
@@ -0,0 +1,6 @@
+//go:generate sh -c "sed -i \"s/const Version = \\\".*\\\"/const Version = \\\"`git describe --tags --long`\\\"/\" version.go"
+
+package constant
+
+// Version git version number
+const Version = ""