How to use WorkFlowy & Intend together

WorkFlowy is an epic infinite-tree organizer, that lets you create bullet lists of bullet lists of bullet lists, and zoom in to any level of the tree. It's a great place to break down goals into projects and projects into tasks, and that's why it pairs so nicely with Intend, which intentionally deprioritizes organizing, and focuses on a fresh list every day.

The basic idea is to put intentions in WorkFlowy, and then tag them with the date that you want them to show up in your intentions drafts. You can fetch them using a button next to your intentions box that looks like this:

The "pull from workflowy" action will get automatically triggered after you complete your outcomes, to pull in intentions for the next day.

When you set your intentions, the tasks are linked to workflowy, and checking off the task in Intend means it'll be marked done in WorkFlowy too. (The reverse doesn't happen same-day, but if you complete a node in WorkFlowy then it won't be pulled into Intend on future days.)


If it seems to not be working, re-read this guide before contacting support. Usually it's due to a typo in the format, not a software bug. Also note that the arrows, calendars, and other symbols that show up in the tags below are not something you have to manually enter—they're displayed by a custom style (see the bottom of this page).

Basic tags to know

and . If you tag something , it will get pulled whenever you press fetch. If you tag something , it will get pulled only when you're first setting your intentions, i.e. your list is empty (this fetch is automatically triggered after you complete your outcomes).

and . If you tag something with a day of the week, it will get pulled on that day. If you don't do it that day, it'll get pulled again the following week. You can also tag a task with a specific date in YYYY-MM-DD format. That task will only get pulled in on that day; if you miss it, Intend will forget about it. WorkFlowy is beta-testing built-in dates, including ranges. Those should now also work with Intend, though they might change that format any time which could break it.

Add to the WorkFlowy node, and it will pull it in but not link the Intend intention with the node (so eg. if you complete it it won't tell WorkFlowy)

Use instead and it'll link it but still won't tell WorkFlowy to complete the task. The difference is that by linking it you get a little button to click through to the node. This could be good if the task exists within workflowy:

This would then just show up as &) review my daily reminders in workflowy wf (and clicking the little WorkFlowy icon would take you to that list)

However, you probably won't need to use the tag very often, because there's usually a shorthand way to represent it. Keep reading to find out.

Other date tags

You can stick an 's' on the end of days-of-the-week to make a task repeating as well! So is equivalent to .

Is it Friday and you want to tag a work task for tomorrow, but not have it show up until Monday? Use . The reverse? Tag it . The "stick an 's' on the end to make a task repeat" trick works here too. So if something's part of your monday-friday routine, tag it .

Monthly repeats: You can use and it'll make a repeating task on the 15th of every month. Note that will miss February, as it just checks if the day number is correct. But you can use for that!

And, just so you don't have to check: for one-digit days, leading zero is optional: both and will work.

Another common pattern is something like "first sunday of every month". This is supported as , and there's also or . Note that while repeating dates are more typical here, you still do need to use a tag or an 's' on the end for it to repeat, just to maintain consistency.

Yearly repeats: Want to do something on a particular day every year? There's now something for that too! Both and will cause an event to get pulled in every March 15th (exception: the second one will be on March 14th during leap years). January 1st is day 1.

Every other day: There are a few ways to do this. If you want it to be very strictly every other day, you'll probably want to use day-of-year tags. This will still break when the year ticks over (unless it's a leap-year) but mostly will be consistent. For this, use or . For example, January 2nd is an even day of the year, and December 31st is (usually) day 365 so it's an odd day of the year. If you'd like to be better able to predict where it'll fall, use the day-of-month tags: or . These work pretty intuitively: April Nth is odd if and only if N is an odd number. Same for every month. Pick odd to sometimes get 2 days on in a row; pick even to sometimes get 2 days off in a row (eg after July 31st comes another odd day, August 1st).

Be careful with these, as they can very easily clutter up your intentions with things you aren't actually planning to do, leading to major staleness.

Fancy tricks

This is designed to be really powerful, and to avoid cluttering up your WorkFlowy too much.

Tagging parent nodes with a date

Say you want to sort some tasks into today, some into tomorrow, some into a backlog... the easiest way to do that is to drag, not to tag them all individually. So you can!

Note that currently this only goes one layer deep— the intentions have to be children, not grandchildren.

Tagging parent nodes with a goal

Use the tag to indicate that all of the children of a given node are towards goal 1. Then you don't need to use the Intend 1)   format, you can just tag them with a date and you're good to go. (Use #Goal& for misc tasks. It works even though workflowy doesn't recognize it as a tag. Or )

(Note: you need to use either the notation or the Intend 1)   format for something to get pulled from WorkFlowy. Otherwise Intend can't be quite certain that you want it.)

These goal tags will get automagically updated when you renumber your goals in Intend! But items using Intend format still don't get fixed when you renumber, because many people use the same format just to make a numbered list.

[prefix]: your lists

Say you have a bunch of articles to read. You might want your intention to say e.g. "5) read", but in workflowy, you want it to just be a list of urls. Well, that's possible! Put []: around text on a parent and it'll get prepended to the node's immediate children. Note that the colon (:) is part of it!

There's a :[postfix]operator too, so you can have a parent node called notes to [integrate]::[into main model] and then a child called "convo notes with Sarah" becomes eg "1) integrate convo notes with Sarah into main model", with a link to the convo notes node—super convenient if the notes are on that node.

Prefix and postfix both only work with the -style pull, because otherwise Intend is just directly fetching the node and doesn't see what its parents are.

Tagging parent nodes with both goal and date

You might think you could do something like the example below, but it won't work. Can you see why?

The problem is that there's ambiguity about what's intended to be a task. Maybe "tasks for" is the task, and the things underneath are notes on it. If you do it like this, it will try to pull in the "tasks for #today" task, not the children individually.

Instead, the solution is to put the date tag as a prefix. So it's as if all of the children of that node have their own little tag, and they all get pulled in separately:

Queues, stacks, etc

This was a popularly requested feature: the ability to tell Intend "each day, I'd like to do the first (not-yet-done) item from this WorkFlowy list." Well now you can—and not just the first item, but the last item too, or a random item! Use , , or and you'll get exactly that.

Even better, you can do multiple children by tagging , , or .

In order to do this, you need to ensure that the node that gets one of these tags also has a date associated with it. Here are some examples.

So with that one, each Saturday & Sunday, you'll get 3) Do kon-mari method on kitchenware, until you've completed "kitchenware", at which point the next time you pull you'll get 3) Do kon-mari method on office supplies, etc. Once the list is empty, nothing gets pulled.

This one will pull in the top 3 priorities from that list, each day. If you use instead of then you could push the button midday and it would pull in new items if the top 3 had been moved or completed.

Mirror bullets new!

WorkFlowy users had been asking for the mirror feature for awhile, and presumably pressure from Roam prompted WorkFlowy to actually implement this. Basically it lets a node be in 2 places at once.

Intend now supports this for at least 1 use-case: planning your week. With the following tree, 1) file TPS report will show up on Monday and again on Wednesday if you don't complete it.

No other use cases have been tested yet, but one thing that is known not to work given how things are implemented is having a mirrored intention show up twice in your list because it's under different goals or prefixes. A given workflowy node will only ever create 1 intention on a given day, no matter how you organize it. So don't do this:

Pretty WorkFlowy tags!

One thing you might not know about the internet is that you can style any website however you want.

Install the extension Stylus, then click Install directly with Stylus and Install Style, to get the workflowy tags described above to show up in color, like they do on this page.

If you're logged in, this section will show custom CSS for your goal colors.

Want to experience it yourself?

10 minutes from now you could be in purposeful flow!

Help me achieve my goals