diff --git a/core/plugin/command/command.rb b/core/plugin/command/command.rb
index 4d1e5b16..7059ff17 100644
--- a/core/plugin/command/command.rb
+++ b/core/plugin/command/command.rb
@@ -170,18 +170,11 @@ Plugin.create :command do
   command(:open_link,
           name: _('リンクを開く'),
           condition: Plugin::Command[:HasOneMessage] & lambda{ |opt|
-            opt.messages[0].entity.to_a.any? {|u| [:urls, :media].include?(u[:slug]) } },
+            !Plugin[:"score"].score_of(opt.messages[0]).map(&:uri).compact.empty? },
           visible: true,
           role: :timeline) do |opt|
-    opt.messages[0].entity.to_a.each {|u|
-      url =
-        case u[:slug]
-        when :urls
-          u[:expanded_url] || u[:url]
-        when :media
-          u[:media_url]
-        end
-      ::Gtk::TimeLine.openurl(url) if url } end
+    Plugin[:"score"].score_of(opt.messages[0]).map(&:uri).compact.each {|uri|
+      ::Gtk::TimeLine.openurl(uri.to_s) } end
 
   command(:copy_link,
           name: _('リンクをコピー'),
