diff --git a/bin/changelog b/bin/changelog
index 45b6295e3311543a0c814d41ca143708fd51e83f..bdf159a0a2240f1c2886c74543e7cc529c9e5c5e 100755
--- a/bin/changelog
+++ b/bin/changelog
@@ -8,16 +8,6 @@
 require 'optparse'
 require 'yaml'
 
-Options = Struct.new(
-  :amend,
-  :author,
-  :dry_run,
-  :force,
-  :merge_request,
-  :title,
-  :type,
-  :ee
-)
 INVALID_TYPE = -1
 
 module ChangelogHelpers
@@ -40,6 +30,17 @@ end
 class ChangelogOptionParser
   extend ChangelogHelpers
 
+  Options = Struct.new(
+    :amend,
+    :author,
+    :dry_run,
+    :force,
+    :merge_request,
+    :title,
+    :type,
+    :ee
+  )
+
   Type = Struct.new(:name, :description)
   TYPES = [
     Type.new('added', 'New feature'),
diff --git a/bin/feature-flag b/bin/feature-flag
index c6019722e7fb5dbcb155bc6a26a1faeb5e8966f0..46d93a11ebd9e8d05fc5e68768536df2e3394341 100755
--- a/bin/feature-flag
+++ b/bin/feature-flag
@@ -12,18 +12,6 @@ require 'cgi'
 
 require_relative '../lib/feature/shared' unless defined?(Feature::Shared)
 
-Options = Struct.new(
-  :name,
-  :type,
-  :group,
-  :ee,
-  :amend,
-  :dry_run,
-  :force,
-  :introduced_by_url,
-  :rollout_issue_url
-)
-
 module FeatureFlagHelpers
   Abort = Class.new(StandardError)
   Done = Class.new(StandardError)
@@ -43,6 +31,18 @@ class FeatureFlagOptionParser
   extend FeatureFlagHelpers
   extend ::Feature::Shared
 
+  Options = Struct.new(
+    :name,
+    :type,
+    :group,
+    :ee,
+    :amend,
+    :dry_run,
+    :force,
+    :introduced_by_url,
+    :rollout_issue_url
+  )
+
   class << self
     def parse(argv)
       options = Options.new