title: AppleScript Application is not allowed to send keystrokes
body: <p>I made an app with AppleScript called FRIDAY. When I tell it to 'open chrome', it opens google chrome, this is working on Script Editor and out side of script editor. I can also tell it to 'open a new tab' and it opens a new tab using keystrokes:</p>
  
  <pre><code>-- this boolean is the reason this script keeps runing
  set condition to false
  say "Welcome sir"
  set commands to {"what is todays date", "what time is it", "what is the time", "what day is it", "what month is it", "which month is it", "friday you up", "friday", "friday you tere", "you there", "empty the trash", "take out the trash", "clean up", "new tab", "next tab", "back", "take a nap", "go to sleep", "take a rest", "wake up", "copy the link", "paste the link", "give me list of running apps", "open a folder", "open chrome", "open youtube", "open atom", "quit atom", "goodbye FRIDAY_AI", "okay thanks", "okay thank you", "thanks", "thank you", "good night", "good morning", "morning", "night", "hey friday"}
  repeat until condition is true
      try
          tell application "SpeechRecognitionServer"
              set FRIDAY_AI to listen continuously for commands with identifier "mine" with section title "FRIDAY's Commands"
          end tell
  
      -- full date
      set todays_date to date string of (current date)
      -- day
      set todays_day to weekday of (current date) as string
      -- time
      set t to time string of (current date)
      -- month
      set m to month of (current date) as string
  
  
      -- time and day
      if FRIDAY_AI = "what is todays date" then
          say todays_date
      end if
      if FRIDAY_AI = "what time is it" then
          say t
      end if
      if FRIDAY_AI = "what is the time" then
          say t
      end if
      if FRIDAY_AI = "what day is it" then
          say todays_day
      end if
      if FRIDAY_AI = "what month is it" then
          say m
      end if
      if FRIDAY_AI = "which month is it" then
          say m
      end if
      -- end of time and day
  
  
      -- Clear trash --
      if FRIDAY_AI = "empty the trash" then
          tell application "Finder"
              empty the trash
          end tell
      end if
  
      -- FRIDAY --
      if FRIDAY_AI = "friday" then
          say "yes"
      end if
  
      if FRIDAY_AI = "friday you up" then
          say "for you sir, alllways"
      end if
  
      if FRIDAY_AI = "friday you there" then
          say "yes"
      end if
  
      if FRIDAY_AI = "you there" then
          say "yes"
      end if
  
      if FRIDAY_AI = "hey friday" then
          say "hey sir, waht can I do for you"
      end if
      -- END OF FRIDAY --
  
  
      if FRIDAY_AI = "take out the trash" then
          tell application "Finder"
              empty the trash
          end tell
      end if
      -- end of clear trash --
  
      -- QUITS EVERY APPLICATION --
      if FRIDAY_AI = "clean up" then
          say "cleaning up"
          delay 2
          say "goodbye sir"
          tell application "System Events" to set the visible of every process to true
  
          set white_list to {"Finder"}
  
          try
              tell application "Finder"
                  set process_list to the name of every process whose visible is true
              end tell
              repeat with i from 1 to (number of items in process_list)
                  set this_process to item i of the process_list
                  if this_process is not in white_list then
                      tell application this_process
                          quit
                      end tell
                  end if
              end repeat
          on error
              tell the current application to display dialog "An error has occurred!" &amp; return &amp; "This script will now quit" buttons {"Quit"} default button 1 with icon 0
          end try
      end if
      -------------------------------------
  
  
      -- SWITCH BETWEEN TABS TABS --
      if FRIDAY_AI = "new tab" then
          tell application "System Events"
              key code 17 using {command down}
          end tell
      end if
      --next tab --
      if FRIDAY_AI = "next tab" then
          tell application "System Events"
              key code 48 using {control down}
          end tell
      end if
      -- priveus tab --
      if FRIDAY_AI = "back" then
          tell application "System Events"
              key code 48 using {shift down, control down}
          end tell
      end if
      -- END OF SWITCH BETWEEN TABS --
  
  
  
  
      -- launches screen saver  
      if FRIDAY_AI = "take a nap" then
          try
              tell application id "com.apple.ScreenSaver.Engine" to launch
          end try
      end if
      if FRIDAY_AI = "go to sleep" then
          try
              tell application id "com.apple.ScreenSaver.Engine" to launch
          end try
      end if
      if FRIDAY_AI = "take a rest" then
          try
              tell application id "com.apple.ScreenSaver.Engine" to launch
          end try
      end if
  
      if FRIDAY_AI = "wake up" then
          tell application "System Events"
              key code 49
          end tell
      end if
      -- END OF SCREEN SAVER --
  
  
  
  
  
      if FRIDAY_AI = "give me list of running apps" then
          tell application "System Events"
              key code 53 using {command down, option down}
          end tell
      end if
  
  
  
      -- copy url --
      if FRIDAY_AI = "copy the link" then
          tell application "System Events"
              key code 37 using {command down}
              delay 0.5
              key code 8 using {command down}
          end tell
      end if
  
      -- paste url --
      if FRIDAY_AI = "paste the link" then
          tell application "System Events"
              key code 37 using {command down}
              delay 0.5
              key code 9 using {command down}
              keystroke return
          end tell
      end if
  
  
  
  
      if FRIDAY_AI = "open a folder" then
          log FRIDAY_AI
          tell application "Finder"
              activate
              make new Finder window
              set target of front window to home
          end tell
      end if
  
      if FRIDAY_AI = "open chrome" then
          tell application "Google Chrome"
              log FRIDAY_AI
              say "Opening Google Chrome sir"
              activate
          end tell
      end if
  
      (* if FRIDAY_AI = "open atom" then
      tell application "Atom"
          log FRIDAY_AI
          say "opening Atom"
          activate
      end tell
  end if 
  
  if FRIDAY_AI = "quit atom" then
      log FRIDAY_AI
      tell application "Atom" to quit
  end if *)
  
      if FRIDAY_AI = "goodbye FRIDAY_AI" then
          log FRIDAY_AI
          say "goodbye sir"
          -- quit = exist the program completely--
          -- Stop the script- -
          exit repeat
      end if
  
      if FRIDAY_AI = "open youtube" then
          log FRIDAY_AI
          tell application "Google Chrome"
              activate
              open location "https://www.youtube.com/"
          end tell
      end if
  
      -- JUST PERSONAL COMMENTARY --
      if FRIDAY_AI = "thanks" then
          log FRIDAY_AI
          say "I am glad, I could be of help sir"
      end if
  
      if FRIDAY_AI = "okay thanks" then
          log FRIDAY_AI
          say "I am glad, I could be of help sir"
      end if
  
      if FRIDAY_AI = "thank you" then
          log FRIDAY_AI
          say "You're welcome sir"
      end if
  
      if FRIDAY_AI = "okay thank you" then
          log FRIDAY_AI
          say "You're welcome sir"
      end if
  
      if FRIDAY_AI = "good night" then
          log FRIDAY_AI
          say "Good night sir"
      end if
  
      if FRIDAY_AI = "night" then
          log FRIDAY_AI
          say "Good night sir"
      end if
  
      if FRIDAY_AI = "good morning" then
          log FRIDAY_AI
          say "Good morning sir"
      end if
  
      if FRIDAY_AI = "morning" then
          log FRIDAY_AI
          say "morning sir"
      end if
  
      -- END OF PERSONAL COMMENTARY --
      -- if an error occurs, it goes back and keep repeating
      on error
          set condition to false
      end try
  
  
  end repeat
  </code></pre>
  
  <p>Now, the code above only works when I run FRIDAY on Script Editor but it DOES NOT WORK when I save FRIDAY as an application and run it.</p>
  
  <p>Script Editor and my application(FRIDAY) have accessibility, in fact FRIDAY has full disk accessibility. But still it cannot send keystrokes.</p>
  
  <p>I am keep getting this ERROR:</p>
  
  <blockquote>
    <p>System Events got an error: FRIDAY is not allowed to send keystrokes.</p>
  </blockquote>
  
  <p>Accessibility:
  <a href="https://i.stack.imgur.com/qSlTr.png" rel="noreferrer"><img src="https://i.stack.imgur.com/qSlTr.png" alt="enter image description here"></a>
  Full Disk Access:
  <a href="https://i.stack.imgur.com/Rbmvv.png" rel="noreferrer"><img src="https://i.stack.imgur.com/Rbmvv.png" alt="enter image description here"></a>
  Automation:
  <a href="https://i.stack.imgur.com/YsA8y.png" rel="noreferrer"><img src="https://i.stack.imgur.com/YsA8y.png" alt="enter image description here"></a></p>
  
  <p>If you could help me solve this problem, I would really appreciate it, thank you!</p>