You can use AppleScript with Things to automate actions on your Mac. This page will help you get started.
Sometimes there are actions you want to perform which are repetitive, or complicated, or simply not possible in Things’ interface. AppleScript makes it possible to automate these actions and perform them quickly.
Below, you’ll find some example scripts that demonstrate what’s possible, learn how to run them, and find information on how to get started writing your own.
AppleScript is only available for Mac. Consider using Apple Shortcuts instead; it’s available on all devices, and provides functionality that isn’t available via AppleScript (e.g., editing headings and checklists).
In this article:
What is AppleScript?
AppleScript is a scripting language that lets you automate actions in compatible apps, including Things. You can write scripts to create new to-dos, move items between projects, or perform other repetitive actions automatically.
While AppleScript is designed to be easy to read, it can be a bit tricky to learn, so we provide a few examples below.
Example Scripts
We’ve written a few scripts to demonstrate using AppleScript with Things. You can run them in Apple’s Script Editor by clicking the ⏵
button.
Show Quick Entry
This script will reveal the Quick Entry panel, ready for you to type a new to-do.
tell application "Things3" show quick entry panel end tell
Show modification info
This script will show the creation and modification dates for a to-do. You must select a to-do before running it.
tell application "Things3" set selected to selected to dos if (count of selected) is 0 then display dialog "No items selected. Please select one or more to-dos before running this script." buttons {"OK"} with icon note return end if repeat with toDo in selected set msg to name of toDo & linefeed & linefeed & "Created on " & (creation date of toDo as text) & linefeed & "Modified on " & (modification date of toDo as text) display dialog msg buttons {"OK"} with icon note end repeat end tell
Import a text file as to-dos
A simple text file can be imported, with each row of text being used to create a new to-do. Download this demo text file and use the script below to import it to Things’ Inbox.
set chosenFile to (choose file with prompt "Select a file to import:") open for access chosenFile --- use newlines (linefeed) to separate values; if you prefer CSV, change the delimiter to: {","} set fileContents to read chosenFile using delimiter {linefeed} close access chosenFile tell application "Things3" --- open/foreground Things and reveal destination list activate show list "Inbox" --- work in reverse to maintain order repeat with currentLine in reverse of fileContents --- use rows as each to-do's title (name) set newToDo to make new to do ¬ with properties {name:currentLine} ¬ at beginning of list "Inbox" --- here you can perform more operations using newToDo, if you’d like end repeat end tell
Run Your Scripts
You can run a script from directly inside the Script Editor app, but there are more convenient ways to do it. Here are a few options:
Apple Shortcuts
A script can be saved inside of a shortcut in Apple’s Shortcuts app. You can then run your shortcut to run the script. To do this, you’ll need to use Apple’s Run AppleScript action. To learn more, see Apple’s documentation.
Reminder: Even though your shortcut will sync over to mobile devices, it won’t run there, because those devices don’t support AppleScript.
Scripts Menus
There are two places in your Mac’s menu bar where you can put scripts for quick access: Things’s Scripts menu, or the system’s global Scripts menu.
Add a Scripts menu to Things
Once you’ve created a script, you can add it to Things’ menu bar at the top of your screen. This menu is only accessible when Things is running. Here’s how to set it up:
- Quit Things.
- Go to the menu bar at the top of your screen, and click Go → Go to Folder...
- Paste this path into the pop-up window that opens:
~/Library/Containers/com.culturedcode.ThingsMac/Data/Library/Application Support
- Navigate to the folder
Cultured Code
– if it doesn't exist, create it. - In that folder, create a new folder and name it
Things Scripts
. - Move the script into that folder.
- Open Things again.
- In the menu bar at the top of your screen, check that the scripts menu has appeared (an S-shaped icon) and contains your script(s).
Any other scripts you add to that folder will also appear in Things’ scripts menu. To make running a script easier, set a custom keyboard shortcut.
Add your scripts to the global menu bar
You can also add scripts to your system's Scripts menu, which remains visible in your menu bar even when Things isn’t running. Here’s how to set it up:
- In Finder, go to
/Applications/Utilities/
and open Script Editor. - In Script Editor, go to Script Editor → Settings.
- In the General settings pane, enable Show Script menu in menu bar.
This will reveal a Scripts menu (an S-shaped icon) on the right side of your menu bar. Next, you’ll need to create a folder for Things’ scripts:
- In Finder, go to
~/Library/Scripts/Applications/
(if you don’t see the Applications folder, create it). - Create a folder called
Things
. - Place any Things-related scripts here that you would like to access from your system’s global scripts menu.
Save as App
You can convert your script into a standalone application that runs without Script Editor by exporting it as a .app
file. The exported app can be run like any other Mac application.
- Open your script in Script Editor.
- Go to File → Export...
- Choose save location and enter filename.
- Set File Format to Application.
- Click Save.
Write Your Own Scripts
If you’re interested in writing your own scripts, consult our technical documentation, but please note:
- Not all of Things’ features are accessible via AppleScript; if it’s not documented, it’s not possible (for more power, use Apple Shortcuts). If you run into a bug with something that is documented, let us know.
- We cannot provide assistance with writing or troubleshooting custom scripts.
You can also consult Apple’s Introduction to AppleScript and Commands Reference.
Please note that Script Editor is made by Apple. If you have any problems with that app, please contact Apple for assistance.