{"id":72904,"date":"2024-09-26T21:00:23","date_gmt":"2024-09-26T13:00:23","guid":{"rendered":"https:\/\/www.hongkiat.com\/blog\/?p=72904"},"modified":"2024-09-25T21:58:22","modified_gmt":"2024-09-25T13:58:22","slug":"automate-app-opening-positioning-mac","status":"publish","type":"post","link":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/","title":{"rendered":"How to Automate Opening and Positioning Multiple Apps on Mac"},"content":{"rendered":"<p>Here\u2019s a simple app I recently created for a friend who needed to regularly open multiple instances of the same app and position them for easy viewing. While doing this manually isn\u2019t difficult, it can become tedious when you have to repeat the process daily.<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/hero.jpg\" alt=\"App demonstration\" width=\"1600\" height=\"900\"><\/figure>\n<p>This app automates the task, positioning the app exactly where I want them to be every time it\u2019s executed.<\/p>\n<p>Watch the video below (sped up 5x) to see exactly how the app works when executed.<\/p>\n<div style=\"position: relative; width: 100%; padding-bottom: 56.25%; height: 0; overflow: hidden;\">\n  <video style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%;\" controls><source src=\"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/demo.mp4\" type=\"video\/mp4\">Your browser does not support the video tag.<\/source><\/video>\n<\/div>\n<p>If you\u2019d like to create a similar setup \u2013 whether it\u2019s for opening multiple instances of the same app or a combination of different apps \u2013 this article will guide you through the process. I\u2019ll provide the AppleScript used and explain how to customize it to suit your needs, so you can open and arrange apps automatically.<\/p>\n<hr>\n<h2>Prerequisites\/Requirements<\/h2>\n<p>Here\u2019s everything you\u2019ll need to make this work:<\/p>\n<h3>The Apps<\/h3>\n<ul>\n<li><strong>Automator<\/strong> \u2013 This built-in macOS app allows you to create custom workflows and turn them into executable apps.<\/li>\n<li><strong><a href=\"https:\/\/apps.apple.com\/us\/app\/magnet\/id441258766?mt=12\">Magnet<\/a><\/strong> \u2013 This app lets you arrange open windows on your Mac desktop into different positions and sizes using keyboard shortcuts.<\/li>\n<li><strong>Code Editor<\/strong> \u2013 A <a href=\"https:\/\/www.hongkiat.com\/blog\/free-code-editors-reviewed\/\">code editor<\/a> is required to edit the AppleScript that will be added to the Automator app later. If you don\u2019t have a code editor installed, the Notes app will work too.<\/li>\n<\/ul>\n<h3 id=\"applescript\">AppleScript<\/h3>\n<p>Here\u2019s the full version of the AppleScript I used, which I\u2019ll explain in detail later.<\/p>\n<pre>\r\ntell application \"Cricut Design Space\" to activate\r\ndelay 15 -- Wait 15 seconds for the app to fully launch\r\n\r\ntell application \"System Events\"\r\n    -- Step 2: Simulate Control + Option + U\r\n    key code 32 using {control down, option down} -- U key has key code 32\r\n    delay 5 -- Short delay after keypress\r\n\r\n    -- Step 3: Open first new window via File > New Window\r\n    tell process \"Cricut Design Space\"\r\n        click menu item \"New Window\" of menu \"File\" of menu bar 1\r\n    end tell\r\n    delay 5 -- Wait 2 seconds for the new window to open\r\n\r\n    -- Step 4: Simulate Control + Option + I\r\n    key code 34 using {control down, option down} -- I key has key code 34\r\n    delay 5 -- Short delay after keypress\r\n\r\n    -- Step 5: Open second new window via File > New Window\r\n    tell process \"Cricut Design Space\"\r\n        click menu item \"New Window\" of menu \"File\" of menu bar 1\r\n    end tell\r\n    delay 5 -- Wait 2 seconds for the new window to open\r\n\r\n    -- Step 6: Simulate Control + Option + J\r\n    key code 38 using {control down, option down} -- J key has key code 38\r\n    delay 5 -- Short delay after keypress\r\n\r\n    -- Step 7: Open third new window via File > New Window\r\n    tell process \"Cricut Design Space\"\r\n        click menu item \"New Window\" of menu \"File\" of menu bar 1\r\n    end tell\r\n    delay 5 -- Wait 2 seconds for the new window to open\r\n\r\n    -- Step 8: Simulate Control + Option + K\r\n    key code 40 using {control down, option down} -- K key has key code 40\r\nend tell\r\n<\/pre>\n<hr>\n<h2>1. Launch Automator App<\/h2>\n<p>Launch the Automator app, choose \u201c<strong>Application<\/strong>,\u201d and click \u201c<strong>Choose<\/strong>.\u201d<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/automator-application.jpg\" width=\"1933\" height=\"1163\" alt=\"Automator app interface with Application selected\"><\/figure>\n<p>Under the Actions tab, search for \u201c<strong>Run AppleScript<\/strong>,\u201d then select it and drag it over to the right panel.<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/run-applescript.jpg\" width=\"2124\" height=\"1139\" alt=\"Automator app showing Run AppleScript action dragged to the panel\"><\/figure>\n<hr>\n<h2>2. Edit AppleScript<\/h2>\n<p>Now, referring to the <a href=\"#applescript\">AppleScript provided above<\/a>, you\u2019ll need to edit it to fit your requirements.<\/p>\n<p>Let me break down what you need to modify, with explanations along the way. The <strong>codes highlighted in bold are the ones you need to edit <\/strong>to fit your requirements.<\/p>\n<h3>Step 1<\/h3>\n<pre>\r\ntell application \"<strong>Cricut Design Space<\/strong>\" to activate\r\ndelay <strong>15<\/strong> -- Wait 15 seconds for the app to fully launch\r\n<\/pre>\n<p>First, replace <code><strong>Cricut Design Space<\/strong><\/code> with the name of the app you want to use.<\/p>\n<p>How do you find the exact name of your app? Simple. Go to the <em>Applications\/<\/em> folder, copy the app name (without the <span class=\"key\">.app<\/span> extension), and replace the one in the script.<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/application-app-example.jpg\" width=\"730\" height=\"482\" alt=\"Application folder showing app names\"><\/figure>\n<p>The <code><strong>delay 15<\/strong><\/code> means the script will wait <code>15<\/code> seconds to allow the app to fully load. You can reduce this if your app is lighter and loads faster (e.g., Google Chrome, Safari), or increase it for heavier apps (e.g., Adobe Photoshop, Adobe Premiere).<\/p>\n<p>So far, we\u2019ve instructed the script to launch the app we want and added a 15-second delay to ensure it has enough time to fully load before executing the rest of the commands.<\/p>\n<p>Next, the remaining actions are marked with step numbers, and they are enclosed within:<\/p>\n<pre>tell application \"System Events\"<\/pre>\n<p>and<\/p>\n<pre>end tell<\/pre>\n<p>Here\u2019s an explanation of what each step does, along with the parts you need to edit (in <strong>bold<\/strong>) to fit your needs.<\/p>\n<p><strong>Note:<\/strong> Refer to the table at the end of the page for a full list of <a href=\"#applescript_key_code\">AppleScript key codes<\/a>.<\/p>\n<h3>Step 2<\/h3>\n<pre>\r\n    -- Step 2: Simulate Control + Option + U\r\n    key code <strong>32<\/strong> using {<strong>control down<\/strong>, <strong>option down<\/strong>} -- U key has key code 32\r\n    delay <strong>2<\/strong> -- Short delay after keypress\r\n<\/pre>\n<p>Simulates the keystroke <span class=\"key\">Control<\/span> + <span class=\"key\">Option<\/span> + <span class=\"key\">U<\/span>, using the Magnet app to position the first opened app at the top-right corner of the screen.<\/p>\n<h3>Step 3<\/h3>\n<pre>\r\n    -- Step 3: Open first new window via File > New Window\r\n    tell process \"<strong>Cricut Design Space<\/strong>\"\r\n        click menu item \"<strong>New Window<\/strong>\" of menu \"<strong>File<\/strong>\" of menu bar 1\r\n    end tell\r\n    delay <strong>2<\/strong> -- Wait 2 seconds for the new window to open\r\n<\/pre>\n<p>Simulates clicking on the app\u2019s navigation menu \u201cFile\u201d &gt; \u201cNew Window\u201d to open a second copy of the app, then waits <code>2<\/code> seconds for it to load.<\/p>\n<h3>Step 4<\/h3>\n<pre>\r\n    -- Step 4: Simulate Control + Option + I\r\n    key code <strong>34<\/strong> using {<strong>control down<\/strong>, <strong>option down<\/strong>} -- I key has key code 34\r\n    delay <strong>2<\/strong> -- Short delay after keypress\r\n<\/pre>\n<p>Simulates the keystroke <span class=\"key\">Control<\/span> + <span class=\"key\">Option<\/span> + <span class=\"key\">I<\/span> to position the second opened app at the top-left of the screen, then waits <code>2<\/code> seconds to ensure the action is fully executed.<\/p>\n<h3>Step 5<\/h3>\n<pre>\r\n    -- Step 5: Open second new window via File > New Window\r\n    tell process \"<strong>Cricut Design Space<\/strong>\"\r\n        click menu item \"<strong>New Window<\/strong>\" of menu \"<strong>File<\/strong>\" of menu bar 1\r\n    end tell\r\n    delay <strong>2<\/strong> -- Wait 2 seconds for the new window to open\r\n<\/pre>\n<p>Simulates clicking on the app\u2019s navigation menu \u201cFile\u201d &gt; \u201cNew Window\u201d to open a third copy of the app, then waits <code>2<\/code> seconds for it to load.<\/p>\n<h3>Step 6<\/h3>\n<pre>\r\n    -- Step 6: Simulate Control + Option + J\r\n    key code <strong>38<\/strong> using {<strong>control down<\/strong>, <strong>option down<\/strong>} -- J key has key code 38\r\n    delay <strong>5<\/strong> -- Short delay after keypress\r\n<\/pre>\n<p>Simulates the keystroke <span class=\"key\">Control<\/span> + <span class=\"key\">Option<\/span> + <span class=\"key\">J<\/span> to position the third opened app at the bottom-left of the screen, then waits <code>5<\/code> seconds for the action to be fully executed.<\/p>\n<h3>Step 7<\/h3>\n<pre>\r\n    -- Step 7: Open third new window via File > New Window\r\n    tell process \"<strong>Cricut Design Space<\/strong>\"\r\n        click menu item \"<strong>New Window<\/strong>\" of menu \"<strong>File<\/strong>\" of menu bar 1\r\n    end tell\r\n    delay <strong>2<\/strong> -- Wait 2 seconds for the new window to open\r\n<\/pre>\n<p>Simulates clicking on the app\u2019s navigation menu \u201cFile\u201d &gt; \u201cNew Window\u201d to open a fourth and final copy of the app, then waits <code>2<\/code> seconds for it to load.<\/p>\n<h3>Step 8<\/h3>\n<pre>\r\n    -- Step 8: Simulate Control + Option + K\r\n    key code <strong>40<\/strong> using {<strong>control down<\/strong>, <strong>option down<\/strong>} -- K key has key code 40\r\n<\/pre>\n<p>Simulates the keystroke <span class=\"key\">Control<\/span> + <span class=\"key\">Option<\/span> + <span class=\"key\">K<\/span> to position the fourth opened app at the bottom-right of the screen.<\/p>\n<hr>\n<h2>3. Replace Script, Test Script<\/h2>\n<p>With your edited version of the script, paste it inside the \u201c<strong>Run AppleScript<\/strong>\u201d action, replacing the existing one. Click the <strong>Run<\/strong> button directly on top or the <strong>Run<\/strong> button in the top-right corner of the screen to test if it works. If it doesn\u2019t, debug the script and test it again.<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/tun-rest-script.jpg\" width=\"1525\" height=\"924\" alt=\"Running AppleScript within Automator to test the script\"><\/figure>\n<p>Once it runs successfully as expected, go to the top menu bar and click <strong>File<\/strong> &gt; <strong>Save<\/strong>. Make sure the File Format is set to \u201c<strong>Application<\/strong>\u201d so it\u2019s saved as an executable program.<\/p>\n<hr>\n<h2>4. Edit Privacy & Security Settings<\/h2>\n<p>Since the app performs automated keystrokes on your Mac, macOS will block it by default. To ensure it works correctly, you\u2019ll need to grant the app the necessary permissions.<\/p>\n<p>Open System Settings and navigate to <strong>Privacy & Security<\/strong> &gt; <strong>Accessibility<\/strong>. Enable the app, or click the \u201c<strong>+<\/strong>\u201d button at the bottom to add it if it\u2019s not already listed.<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/privacy-security-accessibility.jpg\" width=\"1239\" height=\"1024\" alt=\"macOS Privacy and Security settings showing Accessibility options\"><\/figure>\n<hr>\n<h2 id=\"applescript_key_code\">AppleScript Key Code Reference<\/h2>\n<table>\n<tr>\n<th>Key<\/th>\n<th>Key Code<\/th>\n<th>Key<\/th>\n<th>Key Code<\/th>\n<\/tr>\n<tr>\n<td><strong>A<\/strong><\/td>\n<td>0<\/td>\n<td><strong>B<\/strong><\/td>\n<td>11<\/td>\n<\/tr>\n<tr>\n<td><strong>C<\/strong><\/td>\n<td>8<\/td>\n<td><strong>D<\/strong><\/td>\n<td>2<\/td>\n<\/tr>\n<tr>\n<td><strong>E<\/strong><\/td>\n<td>14<\/td>\n<td><strong>F<\/strong><\/td>\n<td>3<\/td>\n<\/tr>\n<tr>\n<td><strong>G<\/strong><\/td>\n<td>5<\/td>\n<td><strong>H<\/strong><\/td>\n<td>4<\/td>\n<\/tr>\n<tr>\n<td><strong>I<\/strong><\/td>\n<td>34<\/td>\n<td><strong>J<\/strong><\/td>\n<td>38<\/td>\n<\/tr>\n<tr>\n<td><strong>K<\/strong><\/td>\n<td>40<\/td>\n<td><strong>L<\/strong><\/td>\n<td>37<\/td>\n<\/tr>\n<tr>\n<td><strong>M<\/strong><\/td>\n<td>46<\/td>\n<td><strong>N<\/strong><\/td>\n<td>45<\/td>\n<\/tr>\n<tr>\n<td><strong>O<\/strong><\/td>\n<td>31<\/td>\n<td><strong>P<\/strong><\/td>\n<td>35<\/td>\n<\/tr>\n<tr>\n<td><strong>Q<\/strong><\/td>\n<td>12<\/td>\n<td><strong>R<\/strong><\/td>\n<td>15<\/td>\n<\/tr>\n<tr>\n<td><strong>S<\/strong><\/td>\n<td>1<\/td>\n<td><strong>T<\/strong><\/td>\n<td>17<\/td>\n<\/tr>\n<tr>\n<td><strong>U<\/strong><\/td>\n<td>32<\/td>\n<td><strong>V<\/strong><\/td>\n<td>9<\/td>\n<\/tr>\n<tr>\n<td><strong>W<\/strong><\/td>\n<td>13<\/td>\n<td><strong>X<\/strong><\/td>\n<td>7<\/td>\n<\/tr>\n<tr>\n<td><strong>Y<\/strong><\/td>\n<td>16<\/td>\n<td><strong>Z<\/strong><\/td>\n<td>6<\/td>\n<\/tr>\n<tr>\n<td><strong>1<\/strong><\/td>\n<td>18<\/td>\n<td><strong>2<\/strong><\/td>\n<td>19<\/td>\n<\/tr>\n<tr>\n<td><strong>3<\/strong><\/td>\n<td>20<\/td>\n<td><strong>4<\/strong><\/td>\n<td>21<\/td>\n<\/tr>\n<tr>\n<td><strong>5<\/strong><\/td>\n<td>23<\/td>\n<td><strong>6<\/strong><\/td>\n<td>22<\/td>\n<\/tr>\n<tr>\n<td><strong>7<\/strong><\/td>\n<td>26<\/td>\n<td><strong>8<\/strong><\/td>\n<td>28<\/td>\n<\/tr>\n<tr>\n<td><strong>9<\/strong><\/td>\n<td>25<\/td>\n<td><strong>0<\/strong><\/td>\n<td>29<\/td>\n<\/tr>\n<tr>\n<td><strong>Equal (=)<\/strong><\/td>\n<td>24<\/td>\n<td><strong>Minus (-)<\/strong><\/td>\n<td>27<\/td>\n<\/tr>\n<tr>\n<td><strong>Right Bracket (])<\/strong><\/td>\n<td>30<\/td>\n<td><strong>Left Bracket ([)<\/strong><\/td>\n<td>33<\/td>\n<\/tr>\n<tr>\n<td><strong>Quote (\u2018)<\/strong><\/td>\n<td>39<\/td>\n<td><strong>Semicolon (;)<\/strong><\/td>\n<td>41<\/td>\n<\/tr>\n<tr>\n<td><strong>Comma (,)<\/strong><\/td>\n<td>43<\/td>\n<td><strong>Period (.)<\/strong><\/td>\n<td>47<\/td>\n<\/tr>\n<tr>\n<td><strong>Slash (\/)<\/strong><\/td>\n<td>44<\/td>\n<td><strong>Backslash (\\)<\/strong><\/td>\n<td>42<\/td>\n<\/tr>\n<tr>\n<td><strong>Tab<\/strong><\/td>\n<td>48<\/td>\n<td><strong>Space<\/strong><\/td>\n<td>49<\/td>\n<\/tr>\n<tr>\n<td><strong>Return (Enter)<\/strong><\/td>\n<td>36<\/td>\n<td><strong>Escape (Esc)<\/strong><\/td>\n<td>53<\/td>\n<\/tr>\n<tr>\n<td><strong>Delete<\/strong><\/td>\n<td>51<\/td>\n<td><strong>Forward Delete<\/strong><\/td>\n<td>117<\/td>\n<\/tr>\n<tr>\n<td><strong>Home<\/strong><\/td>\n<td>115<\/td>\n<td><strong>End<\/strong><\/td>\n<td>119<\/td>\n<\/tr>\n<tr>\n<td><strong>Page Up<\/strong><\/td>\n<td>116<\/td>\n<td><strong>Page Down<\/strong><\/td>\n<td>121<\/td>\n<\/tr>\n<tr>\n<td><strong>Left Arrow<\/strong><\/td>\n<td>123<\/td>\n<td><strong>Right Arrow<\/strong><\/td>\n<td>124<\/td>\n<\/tr>\n<tr>\n<td><strong>Down Arrow<\/strong><\/td>\n<td>125<\/td>\n<td><strong>Up Arrow<\/strong><\/td>\n<td>126<\/td>\n<\/tr>\n<\/table>","protected":false},"excerpt":{"rendered":"<p>Create an app that automatically opens multiple instances of the same app, or different apps, and positions them wherever you want on the screen.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[3397],"tags":[],"topic":[],"class_list":["entry-content","is-maxi"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v22.8 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How to Automate Opening and Positioning Multiple Apps on Mac - Hongkiat<\/title>\n<meta name=\"description\" content=\"Create an app that automatically opens multiple instances of the same app, or different apps, and positions them wherever you want on the screen.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Automate Opening and Positioning Multiple Apps on Mac\" \/>\n<meta property=\"og:description\" content=\"Create an app that automatically opens multiple instances of the same app, or different apps, and positions them wherever you want on the screen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/\" \/>\n<meta property=\"og:site_name\" content=\"Hongkiat\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/hongkiatcom\" \/>\n<meta property=\"article:published_time\" content=\"2024-09-26T13:00:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/hero.jpg\" \/>\n<meta name=\"author\" content=\"Hongkiat Lim\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@hongkiat\" \/>\n<meta name=\"twitter:site\" content=\"@hongkiat\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Hongkiat Lim\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/automate-app-opening-positioning-mac\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/automate-app-opening-positioning-mac\\\/\"},\"author\":{\"name\":\"Hongkiat Lim\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/person\\\/e3613a3bf757e4f67770f0b7a339edd0\"},\"headline\":\"How to Automate Opening and Positioning Multiple Apps on Mac\",\"datePublished\":\"2024-09-26T13:00:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/automate-app-opening-positioning-mac\\\/\"},\"wordCount\":920,\"publisher\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/automate-app-opening-positioning-mac\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/automate-app-opening-positioning-mac\\\/hero.jpg\",\"articleSection\":[\"Desktop\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/automate-app-opening-positioning-mac\\\/\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/automate-app-opening-positioning-mac\\\/\",\"name\":\"How to Automate Opening and Positioning Multiple Apps on Mac - Hongkiat\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/automate-app-opening-positioning-mac\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/automate-app-opening-positioning-mac\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/automate-app-opening-positioning-mac\\\/hero.jpg\",\"datePublished\":\"2024-09-26T13:00:23+00:00\",\"description\":\"Create an app that automatically opens multiple instances of the same app, or different apps, and positions them wherever you want on the screen.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/automate-app-opening-positioning-mac\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/automate-app-opening-positioning-mac\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/automate-app-opening-positioning-mac\\\/#primaryimage\",\"url\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/automate-app-opening-positioning-mac\\\/hero.jpg\",\"contentUrl\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/automate-app-opening-positioning-mac\\\/hero.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/automate-app-opening-positioning-mac\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Automate Opening and Positioning Multiple Apps on Mac\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\",\"name\":\"Hongkiat\",\"description\":\"Tech and Design Tips\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\",\"name\":\"Hongkiat.com\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/wp-content\\\/uploads\\\/hkdc-logo-rect-yoast.jpg\",\"contentUrl\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/wp-content\\\/uploads\\\/hkdc-logo-rect-yoast.jpg\",\"width\":1200,\"height\":799,\"caption\":\"Hongkiat.com\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/hongkiatcom\",\"https:\\\/\\\/x.com\\\/hongkiat\",\"https:\\\/\\\/www.pinterest.com\\\/hongkiat\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/person\\\/e3613a3bf757e4f67770f0b7a339edd0\",\"name\":\"Hongkiat Lim\",\"description\":\"Founder and Editor in Chief of Hongkiat.com. Hongkiat is also a designer, developer, entrepreneur, and an active investor in the US stock market.\",\"sameAs\":[\"http:\\\/\\\/www.hongkiat.com\\\/blog\"],\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/author\\\/hongkiat\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to Automate Opening and Positioning Multiple Apps on Mac - Hongkiat","description":"Create an app that automatically opens multiple instances of the same app, or different apps, and positions them wherever you want on the screen.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/","og_locale":"en_US","og_type":"article","og_title":"How to Automate Opening and Positioning Multiple Apps on Mac","og_description":"Create an app that automatically opens multiple instances of the same app, or different apps, and positions them wherever you want on the screen.","og_url":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/","og_site_name":"Hongkiat","article_publisher":"https:\/\/www.facebook.com\/hongkiatcom","article_published_time":"2024-09-26T13:00:23+00:00","og_image":[{"url":"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/hero.jpg","type":"","width":"","height":""}],"author":"Hongkiat Lim","twitter_card":"summary_large_image","twitter_creator":"@hongkiat","twitter_site":"@hongkiat","twitter_misc":{"Written by":"Hongkiat Lim","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/#article","isPartOf":{"@id":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/"},"author":{"name":"Hongkiat Lim","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/person\/e3613a3bf757e4f67770f0b7a339edd0"},"headline":"How to Automate Opening and Positioning Multiple Apps on Mac","datePublished":"2024-09-26T13:00:23+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/"},"wordCount":920,"publisher":{"@id":"https:\/\/www.hongkiat.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/#primaryimage"},"thumbnailUrl":"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/hero.jpg","articleSection":["Desktop"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/","url":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/","name":"How to Automate Opening and Positioning Multiple Apps on Mac - Hongkiat","isPartOf":{"@id":"https:\/\/www.hongkiat.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/#primaryimage"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/#primaryimage"},"thumbnailUrl":"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/hero.jpg","datePublished":"2024-09-26T13:00:23+00:00","description":"Create an app that automatically opens multiple instances of the same app, or different apps, and positions them wherever you want on the screen.","breadcrumb":{"@id":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/#primaryimage","url":"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/hero.jpg","contentUrl":"https:\/\/assets.hongkiat.com\/uploads\/automate-app-opening-positioning-mac\/hero.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hongkiat.com\/blog\/automate-app-opening-positioning-mac\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hongkiat.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Automate Opening and Positioning Multiple Apps on Mac"}]},{"@type":"WebSite","@id":"https:\/\/www.hongkiat.com\/blog\/#website","url":"https:\/\/www.hongkiat.com\/blog\/","name":"Hongkiat","description":"Tech and Design Tips","publisher":{"@id":"https:\/\/www.hongkiat.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hongkiat.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.hongkiat.com\/blog\/#organization","name":"Hongkiat.com","url":"https:\/\/www.hongkiat.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.hongkiat.com\/blog\/wp-content\/uploads\/hkdc-logo-rect-yoast.jpg","contentUrl":"https:\/\/www.hongkiat.com\/blog\/wp-content\/uploads\/hkdc-logo-rect-yoast.jpg","width":1200,"height":799,"caption":"Hongkiat.com"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/hongkiatcom","https:\/\/x.com\/hongkiat","https:\/\/www.pinterest.com\/hongkiat\/"]},{"@type":"Person","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/person\/e3613a3bf757e4f67770f0b7a339edd0","name":"Hongkiat Lim","description":"Founder and Editor in Chief of Hongkiat.com. Hongkiat is also a designer, developer, entrepreneur, and an active investor in the US stock market.","sameAs":["http:\/\/www.hongkiat.com\/blog"],"url":"https:\/\/www.hongkiat.com\/blog\/author\/hongkiat\/"}]}},"jetpack_featured_media_url":"https:\/\/","jetpack_shortlink":"https:\/\/wp.me\/p4uxU-iXS","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/72904","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/comments?post=72904"}],"version-history":[{"count":2,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/72904\/revisions"}],"predecessor-version":[{"id":72906,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/72904\/revisions\/72906"}],"wp:attachment":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/media?parent=72904"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/categories?post=72904"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/tags?post=72904"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/topic?post=72904"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}