FAQ

Frequent questions answered.
  • Can I collaborate with others in Tana?

    Yes! It is already possible to collaborate with other users in Tana if they have a Tana account.

    To invite another Tana user to collaborate with you in a shared workspace:

    • Create a new workspace
    • Invite them to the workspace by going to the workspace home node and clicking on the "Member" button (they must already have a Tana account)

    Right now you can:

    • Write simultaneously in the same context (not same node) and see where others are, live
    • Invite members to a shared workspace and everyone can see and edit content that is owned by that workspace. All have to be existing Tana users.
    • Notify members of nodes and they get pinged immediately with a link to the node. Notifications show up in the sidebar.

    Collaboration features coming later:

    • Admin tools for managing content and members
    • Access control per member
    • More collaboration tools
  • Can I create aliases in Tana?

    Yes: in Tana when you create an inline reference, you can change what is written and still retain the link.

    Click the inline reference and a toolbar will pop up that allows you to set the alias.

    Related docs:

  • Can I create search nodes using Tana Paste?

    Yes you can: We have a basic syntax for this which you can read about here.

    Example of a task search:

    %%tana%%
    - %%search%% Fei's tasks
    - OR::
    - [[#task]]
    - [[#CS todo]]
    - Assigned to::
    - [[Fei-Ling Tseng]]
    - NOT DONE

    When I paste the above, this is the result:

    Related docs:

  • Can I export my Tana data?

    Yes, you can export your data as a JSON file. Go to your workspace home node and click the ellipsis menu to the right:

    We have not built out an automatic way to re-import Tana JSON into Tana again, so this is currently not possible. Re-import will be available in the future.

  • Can I open the day node of another workspace by default?

    It is not possible to change which workspace's day node you open by default; it is fixed to your private workspace's day node.

    However, open the sidebar and hold Option (Mac) or Alt (Windows) whilst clicking on a workspace in your sidebar to open its day node for today.

    Related docs:

  • Can I retrieve the prompt I used for an AI request?

    Yes, use the open GPT log monitor via the command line. Once open, click on one of the jobs to open it. This shows you the raw inputs and output from OpenAI, including the prompt you used.

    Related docs:

  • Can I show an alternative representation of a field value when building a title?

    Yes you can, with this kind of annotation:

    ${My field.Alternative}

    Where My field is the field you want appearing in the title, and .Alternative is the name of the field within the field value you want to target instead. This is great whenever you, for example, want to swap out written-out states for emojis.

    Example

    You have an Options field with some pre-determined options. For each option, add a field like Icon and put a different value for each.

    When writing out the title expression in the supertag configuration, use the 1. field name in the 2. title expression format, plus add the field (in this case, "Icon") you are targeting inside the field value which will 3. make the value of the new target field appear instead.

    You can go deeper with the targeting by adding more periods. So, you could have something like Field.Field2.Field3 for example.

    For more information on title expressions, check out this section in the Supertag doc.

    Related docs:

  • Can I use Tana on mobile browsers?

    Tana is not optimized for mobile browsers. Tana works best on a desktop browser, or our desktop app which you can download here.

    There's no official release date for a full mobile app, but necessary infrastructure upgrades to start work on this is in development.

    Related docs:

  • Can a command move the current node to a field of a new node?

    Yes, you can. Make a new command node, and use the command Insert Tana Paste with the following prompt:

    - ${name} #note
    - Based on:: [[^${sys:nodeId}]]

    The first line is the new node. It uses the name of the current node to inform the name of the new node by using the title expression ${name}. The supertag #note can be enough for Tana to find the right tag to use, but you can specify it more precisely by adding the ^nodeID to it. See the Tana Paste doc for more info on this convention. To retrieve the nodeID of a supertag, run the command Copy link (HTML formatted) on a supertag definition and paste the results. It will paste with the nodeID written out:

    The second line is the field. After the name of the field and the double-colon :: is a reference to the current node that the command is being run on, which it is able to target by retrieving the nodeID of the current node using the title expression ${sys:nodeId}.

    This is what the command node should look like:

    Special thanks to Navigator Emmanuel Galanos for this clever solution!

    Related docs:

  • Can you build a wiki in Tana?

    Absolutely: The most common place to do this is on the Home node. Here are some examples of top level wiki structures, usually arranged on workspace home nodes:

    Related docs:

  • Can you have a different supertag applied to your day nodes based on a specific interval?

    Background

    Recently the community discovered a peculiar thing was possible with regards to Calendar/Journal nodes. It was code that was put in a while back when we were thinking about how to revamp the calendar nodes, a project we had to shelf for other priorities. It was code that is the wee beginnings of how to do recurring calendar node templates.

    In the Journal node section of your settings, you'll see this:

    There's an expression you can use to define intervals of when you want certain supertags applied to certain calendar nodes. It is loosely based on the cron format (opens Wikipedia)

    In the field values for defining which supertag to use, you can nest the tags under a cron expression to have it apply only during a certain interval The expression takes on this custom format: DAY-OF-MONTH MONTH DAY-OF-WEEK YEAR

    Legend: Cron format

    DAY-OF-MONTH

    • 1-31

    MONTH

    • 1-12, or JAN-DEC

    DAY-OF-WEEK

    • MON-SUN, or 1-7

    YEAR

    • 2024

    Common syntax in cron

    • * (asterisk) represents "every" possible value for that field.
    • ? (question mark) is used to specify "no specific value" and is often used where the day of the month or day of the week should be ignored.
    • , (comma) is used to separate discreet values

    How to use in Tana

    Specify the cron expression as a field value, and nest the supertag you want used at that interval.

    Here are some pattern examples from u/syncretizm on Reddit

    Specific day of the week:

    • ? * FRI * = Every Friday

    Only weekdays:

    • ? * MON-FRI * = Every weekday

    Specific date in a month every year:

    • 31 12 * * = Last day of the year

    Last day of any month:

    • L * ? * = Last day of the month

    Every day in a specified month:

    • * 3 * * = Every day in March

    Here are even more patterns, courtesy of GPT

    A specific day of every month:

    • 15 * * * = The 15th day of every month.

    Specific days of the week throughout the year:

    • * * MON,WED,FRI * = Every Monday, Wednesday, and Friday of every week.

    First day of each quarter:

    • 1 1,4,7,10 * * = January 1, April 1, July 1, and October 1.

    Last weekday of a specific month:

    • LW * SEP * = Last weekday of September.

    Specific day of the week in a specific month:

    • * 11 FRI * = Every Friday in November.

    A day near the end of the month, every month:

    • L-3 * * * = The third-to-last day of every month.

    An annual event on a specific day and month:

    • 14 2 * * = Every February 14th.

    First Monday of every month:

    • 1-7 * MON * = The first Monday that occurs between the 1st and 7th of every month.

    Specific day of the week, only in certain months:

    • * JAN,MAR,JUL FRI * = Every Friday in January, March, and July.

    A specific day if it is a weekday:

    • 5 * MON-FRI * = The 5th of the month if it is a weekday.

    Skipping years for an annual event:

    • 10 10 * * 2023/2 = October 10th, starting in 2023 and every two years thereafter.
    Note that it will only apply to all new day nodes once the rule is established. It will not apply to existing nodes.

    Related docs:

  • Do you offer login options other than Google and AppleID?

    While we are in closed beta we are only offering Google and AppleID logins. More options will be added in the future when we are ready to launch to the general public.

    Related docs:

  • Does Tana have a 500k node limit?

    As of February 2024, when a workspace hits 500k nodes, the API will not sync any new information to the workspace anymore.

    The 500k node limit per workspace only applies when information is being added from an external service like our Input API or Readwise. This is a temporary precaution we've put in place to prevent external services from overloading Tana while we're still at the pre-launch stage.

    You can still use a workspace that has well over 500k nodes as long as you're writing things yourself. There's no performance hit at that mark.

    Related docs:

  • Does Tana have an offline mode? Can Tana run locally on my computer?

    Tana does not have a local storage option, nor does it have an offline mode. You need stable internet connection, preferably not on VPN, to run Tana smoothly.

    Source of FAQ: Tana Community Resource Hub

    Related docs:

  • Does Tana have backlinks?

    Yes, Tana has backlinks.

    We call them References, and there is a Reference section at the bottom of every node that shows all backlinks to this node.

    It is also possible to create a search node using the operator LINKS TO that captures backlinks, which you can customize to scope and filter in different ways.

    Related docs:

  • How can I add supertags on things that I send from Tana Capture?

    While it isn't possible to tag things when you're sending things from Tana Capture, you can have Tana do some post-processing magic to convert written-out tags to real tags once they arrive the Inbox—no AI needed! This method uses a simple Tana Paste command that you can run on the Inbox node, which targets all new children that have "#" in them

    Here's Theo describing the solution:

    "All it does is paste the nodes that have # in them and that are not tagged, using Tana Paste.

    Say we add this through Tana Capture:

    buy milk #todo

    The command will paste that exact text back in with Tana Paste, where ${name} is buy milk #todo and ${sys:content} is very important child note. Using Tana Paste #todo is added as a tag

    Note: this creates a new node, so the created date will change, meaning you’ll lose the time that the node was captured through Tana Capture."

    Related docs:

  • How can I add/remove custom keyboard shortcuts?

    From our docs:

    You can define custom shortcuts for any command in the command line (Cmd/Ctrl+K), all the way down to setting specific tags or field values.

    To trigger shortcut recording, open the command line, find the command you want to set a shortcut for, and hit Cmd/Ctrl+Shift+K.

    To remove or rerecord custom keyboard shortcuts, go to Settings in the Home node or Cmd/Ctrl+K > Open Settings, and look under "Private keyboard shortcuts" for a list of all custom shortcuts you've set.

  • How can I bulk add/remove supertags?

    Select the nodes, then type # or use the command Add tag to add supertags to all selected nodes.

    Use the command Remove tag to bulk-remove supertags.

    Related docs:

  • How can I bulk set a value to fields?

    Select the nodes whose field you want to set. Enter the command line (Cmd/Ctrl+K) and type Set to see your options.

    The Set [field] command only works on field types Option, Instance, Tana User and Checkbox.

    Related docs:

  • How can I configure the view of a search node that exists in a supertag template? It's not showing me all options.

    Problem

    The query doesn't run in the template editor and so there are no search results available with which to set sort or group options.
    Until we have fixed this issue, this is a workaround that has been perfected by community member Darren Brierton (this is part of the new series called Darren's Frequently Answered Questions, or the D'FAQ if you may).

    Answer

    1. Create the search on the actual node, and adjust its options there.
    2. Then, open Filter and fill the text filter with gibberish (like "xyjzkwq") so the search node returns zero results
    3. Then, cut and paste (Cmd/Ctrl+X / Cmd/Ctrl+V) the search node into the supertag template
    4. Expand the node, and remove the gibberish text

    Are the gibberish text instructions necessary?

    The reason why the filter instructions are needed is because it prevents stale results from being copied over to the supertag template.

    Thank you Darren for drafting these thorough instructions until we sort things out!

    Related docs:

  • How can I extract the start date of a range using Commands?

    Use Insert relative date command, here's an example:

    Related docs:

  • How can I find all nodes that have a specific word?

    There are multiple ways to search for a specific word - say you're looking for all nodes with the word bottle in it.

    • Option 1: Use the global search (Cmd/Ctrl+S) and enter bottle - then Option+Enter - and the search will be made into a search node in your workspace, and shown in a panel
    • Option 2: Cmd/Ctrl+K > Find nodes with text="bottle" as list
    • Option 3: In a search node, enter >LINKS TO::@bottle to find only linked items to the node
    • Option 4: In a search node, if you're searching for a node that has this word within its field's value, enter the field in the search and the value /bottle/ . Be sure to put the slashes as shown, this will run the value as a regex match
    Source of FAQ: Tana Community Resource Hub

    Related docs:

  • How can I find all tags that extend a tag?

    One way is to create this search node:

    • >system field Tags : #tag (use supertag that was extended)
    • IS TAG

    Example:

    Related docs:

  • How can I find nodes where the node descriptions are empty/not set?

    You can use regex to find this:

    • Add a reference to the area you want to search within
    • >NOT >Node description:: /.+/

    Related docs:

  • How can I merge two or more nodes/fields/supertags?

    Use the command Merge node.

    It also works on references i.e. it will merge the nodes referenced to and all references will be updated accordingly

    To merge nodes

    Select nodes, then run the command.

    To merge fields

    Get the field definitions in one place (copy/paste), select them and run the command:

    To merge supertags

    Get the supertag definitions in one place (copy/paste or @-mention), select them and run the command:

    Related docs:

  • How can I retrieve tasks dated for today?

    On the daily page (or any calendar node)

    • Create a search that uses PARENT in the field value of the Date field of the task.
    • With PARENT/GRANDPARENT in a date field:
      • you can append with -3 or +3 (use any number) to hit a specific date before/after the PARENT date, respectively. Example:
        • PARENT+3 = Any match on date 3 days from today
      • You can use GT/LT search operators (greater than or less than) together with PARENT to match a range of dates before/after today. Example:
        • >GT:PARENT-3
        • >LT:PARENT
        • = Any match between today and three days ago.

    If not on a day node

    • Use FOR RELATIVE DATE [term] as keyword field value for the Date field of the task, and insert today as the term, without the brackets.

    Related docs:

  • How can I save the image from AI-generated banners?

    Right-click on the banner > Move banner image to node. Then you can download it like you would with any image.

    Related docs:

  • How can I search for content that is nested within one or more nodes?

    There are several ways to find content that is nested within one or more nodes:

    Search within

    Our global search (Cmd/Ctrl+S) and command "Search within" allows you to make that node and its contents the sole scope for your search.

    Search within (query)

    When defining a query in a search node, you can scope the search by adding a reference to the node you'd like to search within.

    Variations of PARENTS DESCENDANTS

    When creating a search node in a supertag template, you can make it a scoped search which looks at all descendants within each supertag instance by using the search operator PARENTS DESCENDANTS and its variations. For more on scoped search operators, see Search nodes.

    Field initialization

    Nodes can "clone" attributes from parent/ancestor nodes through field initialization settings. This can help you resurface things based on related attributes.

    For instance, if your meeting is about a certain client, your #meeting tag may have a field called Client where your "Acme Inc." client is defined. Then, when you are taking meeting notes and define a #task there, your task can have the same Client field inherit the field value "Acme Inc.", which connects it to the same client as the meeting. Then you can separately search for all tasks that are related to that particular client.

    For more on field initialization, check out Fields

    Related docs:

  • How can I use system fields in Title expressions/Build title from field

    Calculated system fields are prefixed with sys: to avoid being mixed up with user-created fields with the same name.

    Calculated system fields and their respective title expressions can be found here.

    Related docs:

  • How do I bulk delete a field and its values?

    In order to bulk-delete fields and their values, they need to:

    1. be in Table view, and
    2. not part of a supertag template.

    Here's how you do it:

    If you know the field you're targeting but do not have a list of nodes with the field already:

    • Use the field definition in a search node to find all nodes with this field.

    With the list of nodes that have the field and values you want to delete:

    • View as table
    • Display that field as a column
    • Right-click header > Delete column and values

    Related docs:

  • How do I change/disable the Tana desktop recording shortcut?

    All desktop apps have access to a top bar with several OS-level menus.

    Go to Options > Customize keybindings to change it

    Mac

    In Mac, the Option menu is visible when the top bar is visible:

    Windows

    In Windows, hit Alt to see the top bar of the window:

    See Tana for Desktop for more.

    Related docs:

  • How do I create a relational database in Tana like in Notion or Airtable?

    Because Tana is a graph, building relational databases is easy.

    Think of supertags as databases, and fields as columns in a database

    Let's use an example:

    • You have two supertags: #person and #project. You want to relate the two by assigning a team lead to each project that draws from person.
    • To relate each project to one team lead, we can make an Instance field called Team lead in the project. This allows us to select the #person supertag so this field will now create a dropdown of options from every instance of the person supertag.
    • Now, every time you assign a team lead to every project, on the other side you can look at a person and see what projects they are noted as Team lead for in the Reference section.

    There are many other ways to relate one database to another in Tana that go beyond what relational databases can do. That's because all information in Tana is stored as a graph, and on top of this we have flexible ways to build schemas with supertags and fields. It's everything a relational database has, with much more freedom and flexibility in the long run.

    Related docs:

  • How do I delete my account?

    You can delete your account by:

    1. Click on the Settings icon in the bottom left corner
    2. Hover your mouse over your email address
    3. Then click on Delete account
    4. Confirm by following the instructions

    Your account will be queued for deletion. You won't have access to Tana anymore after this.

    If you want to factory reset your Tana account instead, read up on the instructions to factory-reset your account

    Related docs:

  • How do I delete nodes?

    It depends what you are deleting, but almost always the cleanest way to delete nodes is using "hard delete" which clears the entire node at once. You can hard delete using the following methods:

    • Keyboard: Cmd/Ctrl+Shift+Backspace
    • Mouse: Right-click the node icon > Delete
    • If you delete a node, it goes to the trash.

    If you delete a node that is referenced one or more times in the graph, the node goes to the trash and the references will have a little trash icon next to them.

    If you want the node and all references deleted, use the command Hard delete including references

    If deleting the node was a mistake, you can click on the trash icon and resurrect the node through one of the references.

    If you delete a reference, it goes to the trash and the node it referred to and other references will still exist and not be trashed.

    Related docs:

  • How do I enable the scan text feature in Tana Capture on iOS?

    The iOS feature Live Text needs to be turned on for all supported languages:

    • 1. Go to iOS Settings > General > Language & Region.
    • 2. Turn on Live Text (green is on).

    This feature is available with iOS 15.4 or later.

    For more details, see Use Live Text to interact with content in a photo or video on iPhone

    Related docs:

  • How do I fix "The aiForBuilders feature is not enabled" error?

    To activate AI for Builders, go to Settings > Tana Labs > AI for Builders

    It can happen that this setting gets reset if you switch browsers or client. This setting is stored per browser/client, not per account.

    Related docs:

  • How do I get the permalink to a node?

    Bookmarking the URL in your browser of the form https://app.tana.inc?wsid=XXX (note the wsid) will break as it is a temporary ID for your window state.

    To grab the permalink to a node, use the following ways:

    • Right clicking on a node > Copy link
    • using the options menu on the node > Copy link
    • running the command Copy link

    The link to a node never changes. They are URLs of the the format https://app.tana.inc?nodeid=XXX (note the nodeid)

    Related docs:

  • How do I remove the strikethrough on a node whose text is not formatted?

    It is likely the legacy implementation of the checkbox node styling. Cycle through the Cmd/Ctrl+Enter checkbox states to see if that removes it.

    Related docs:

  • How do I set up relationships between nodes?

    There are two main ways to create a connection between one node and another:

    References/inline references

    Use references or inline references to create an unstructured two-way connection between the nodes and the place you mention them in.

    The reference section shows you all unstructured mentions under "Referenced in..."

    Fields

    Fields and their field values create structured two-way connection between nodes. Structured in the sense that the connection is labeled via the name of the field.

    • Example: A book node has a field called Author, where you can enter a reference to any person. The relationship between the book and the person is that they are the Author.

    Fields offer a variety of ways to create structured connections:

    • Create a Plain field and copy/paste or @-mention any node into it
    • Create an Options field where you can choose from a list of your choice
    • Create a Supertag from Options field where you can choose from a list of all nodes tagged a chosen supertag.

    Fields show up in the Reference section as "Appears as [field name] in..."

    This screenshot demonstrates how the different connections show up in the Reference section of a node:

    Related docs:

  • How do I share a supertag from my private workspace to a shared one?
    Currently, the easiest and most foolproof way to do this is to not share it but instead build the supertag, with its fields and anything else necessary for the supertag to work, from the ground up in the new space.

    That said, if you still want to move a supertag over that exists only in your private workspace, the main work is to ensure that there's nothing in the supertag that references something in your private workspace, otherwise it will appear as broken to others once it's moved.

    It's like packaging up a zip file. You can't just zip up a bunch of shortcuts, you need the real files in there or the recipient will only see broken shortcuts.

    You'll also have to remember to move over other things like field options, commands, and ensure that no saved view options contain elements from your workspace. Basically, you must ensure that nothing you're moving over from your workspace contains references from your workspace.

    To bring all nodes (except system nodes) into the supertags, fields and commands you want to move, use the command "Bring referenced node here". Alternatively, you can move each necessary node separately too if you foe example want the field definition to exist outside the supertag. But the key is that everything that is connected to what you're sending over gets sent over too, otherwise there will be missing pieces.

    Related docs:

  • How do I use the Autofill command to enrich URL nodes?

    The Autofill command can generate a new node title and description based on the URL.

    To set up the command

    • Create a new command node
    • Add the Autofill fields command
    • Add and check off Autofill title and Autofill description parameters to change both
    • Add Model to use to control which model you prefer. If left empty, Tana will pick the one that returns the answer with best quality and consistency

    To run the command

    • Run the command on a URL node using the command line
    • Put this command node in the Commands section of a supertag you use for URLs. Press the button to run the command.

    Related docs:

  • How do you take notes in Tana?

    Tana has two main areas for note-taking: the daily scratchpad, and the wikis/dashboards.

    Daily scratchpad

    • Plan your days, do braindumps, send yourself reminders - all on your daily notes. This place is the catch-all for anything that needs to be written down and recorded on a daily basis.
    • From the notes you take today, not everything is important tomorrow, let alone in the long run. For the stuff that is important, apply supertags to give it structure and importance in Tana. Using supertags is the first step to building your knowledge graph.

    Wiki/dashboards

    • The best place for your knowledge-base to be is in the more permanent area of the Workspace Home. This place doesn't shift with time like the calendar nodes do. This is also the first thing you see when clicking on a workspace in the sidebar, making it a good entry point.
    • Use the outline to structure your content. Make references to content that should be repeated.
    • Use views like Side menu and Tabs to make sections navigable.
    • Remember that it's easy to move and rename things as you go, so don't be afraid to commit now and change later.
    • For everything you've added a supertag to, you can make search nodes that gather them in one place. These become your dynamic task board, meeting notes, project overview, media library, recipe collection... showing you what you've collected in your graph that is worthy of keeping. If you need to see your information in many different ways, make as many search nodes querying the same data as you need. That's the beauty of a knowledge graph with a powerful search functionality.

    These two modes in Tana form the backbone of all note-taking in Tana.

  • How does the "Set view definition" command work?

    There is a command called Set view definition. It can set the Group, Sort and Display settings of a node view.

    There is no good UX for this at the moment, so the instructions are not conventional nor friendly for beginners. But right now, this is one way of doing it:

    • Mock up a node that will have sample child nodes representing the data you'll be applying this command on
    • Then, create the exact view settings you want with Group, Sort and Display.
    • Go Cmd/Ctrl+K > Debug Node on the parent node and look at Views for node:
    • Clone the fields over to the command node so it looks like this:

    When you run this command on a node, this should change the view settings according to your configuration.

    Related docs:

  • How to use Tana Paste with supertags that have non-alphanumeric characters?

    Tana Paste can usually parse supertags that are one word, such as #task. If a supertag has spaces, numbers or irregular characters, try wrapping the name in double brackets like this:

    #[[1'3$4'6]]

    If you want to grab the supertag definition, include the hashtag within the brackets, like this:

    [[#1'3$4'6]]

    Related docs:

  • I activated "AI for Builders" but using AI commands keeps on producing errors?

    Errors when trying to run AI commands in Tana usually stem from one of two things:

    • Your OpenAI API key has not been entered
    • A payment method for using OpenAI's API has not been entered (this is a separate billing from ChatGPT i.e. not included in a ChatGPT Pro subscription)

    For more on how to setup OpenAI, read this: https://tana.inc/docs/ai-for-builders#setup

    Related docs:

  • I already pay for ChatGPT Pro, can I use that to run AI on Tana?

    No, using ChatGPT and the use of their API are two separate services according to OpenAI, and so there is separate billing for each. The API is pay-as-you-go, so you have to ensure it is activated before you can use AI in Tana.

    For more on how to setup OpenAI, read this: https://tana.inc/docs/ai-for-builders#setup

    Related docs:

  • I have dates written as text, how can I convert them to Tana dates?

    Typically, to insert a date into a node

    • Type @ followed by the date expression: today, tomorrow, friday, last monday
    • Tana understands natural language for dates, so you can say "in two weeks" and Tana will understand

    If you want to convert text to a Tana date object

    • Select text that contains the date
    • Press the @ key
    • Select desired option
    Source of FAQ: Tana Community Resource Hub

    Related docs:

  • I need help with date search! How do I do X?

    It depends on what you want to find, the context of the search (which part of the graph it is made in), and the time scale/granularity you are looking for.

    Below are possible queries you can use to find date-related things in Tana. A quick legend:
    > : Typing this key starts a field anywhere in Tana, so we prefix fields with this sign when writing out queries in text

    LT/GT : Less than/Greater than field operators

    text : Text in this style is meant to be written out

    I want to find all overdue items from a deadline date field...

    • based on what the time is right now (most efficient graph-wise):
      • >LT : >your deadline field : FOR RELATIVE DATE today
      • Example: You are making a task dashboard in the tree that is always showing you information based on the current time
    • based on the date in a date field of parent node:
      • >LT : >your deadline field : PARENT.date field
      • Example: You can see overdue tasks based on the date of the meeting note
    • based on the date of an ancestor calendar node:
      • >LT : >your deadline field : PARENT/GRANDPARENT
      • Example: You have a search node as part of your #day supertag template

    I want to find deadline dates that fall within a range (let's say, a week)...

    • based on what the time is right now, and this/last/next week/month/year:
      • >your deadline field : FOR RELATIVE DATE this/last/next week
    • relative to a date field of the parent node:
      • >LT : >your deadline field : PARENT.date field
      • >GT : >your deadline field : PARENT.date field-7
    • relative to the date of a calendar node:
      • >LT : >your deadline field : PARENT
      • >GT : >your deadline field : PARENT-7

    I want to find nodes based on their location in the journal nodes...

    • To pick up the date based on the calendar node they are nested under, use system field Date from calendar node
    • For field value, use any variation from the above examples depending on need and context

    I want to find nodes relative to the search node's location in a journal node...

    • Relative to parent
      • PARENTS DESCENDANTS
      • Example: A search node on a day page limits search to only nodes that live on the parent Day page
    • Relative to grandparent
      • GRANDPARENTS DESCENDANTS
      • Example: A search node on the day page limits search to only nodes that live on the grandparent Week page
    • For both operators, add WITH REFS to include references in the search

    I want to find nodes based on when they were created/edited/done relative to now (replace X with a number)

    • CREATED LAST X DAYS
    • EDITED LAST X DAYS
    • DONE LAST X DAYS

    I want to find nodes based on when they were created/edited/done relative to a date field of the parent node

    • Use system fields Created time, Last edited time, and Done time
    • As field value, write out PARENT.date field

    To read about these search operators and more, check out Search Operators

    Related docs:

  • I read all the docs on semantic functions Part of/COMPONENTS REC and still do not understand how it works. Do you have a video explanation?

    In the docs, there's a paragraph that goes like this:

    Keep separate the fields used for the definition versus use of semantic information. One thing is establishing the semantic relationships with a field that has semantic functions turned on, another thing is using the semantic map as field values in another field.

    Community member Sabrina asked if someone could explain what this sentence meant. This led to these explainer videos being recorded as an alternative way to show how they work and what the sentence above is trying to say.

    Part 1: Making the semantic connections

    Note: To see the controls to unmute, right-click on the video > Show All Controls

    Part 2: Using the semantic connections

    Related docs:

  • I'm unable to delete nodes/fields in the supertag config, what's going on?

    The tag might be extended, which means that it's inheriting fields from another tag. Check right above the supertag template to see if it has been extended:

    Related docs:

  • In the command line, Set [field] -> [value] doesn't show all my fields, why?

    Set [field] command only works on field types Option, Instance, User and Checkbox.

    Related docs:

  • My supertagged nodes are not updating with the latest changes I'm making! What's going on?

    Supertag template nodes are directly connected to the template until the moment you edit or make a change to them in the instance.

    Editing them in any way separates them from the template, and any change you make to the template will not reflect on edited template nodes. This is part of Tana's way to never destroy information you have touched and edited.

    To refresh template nodes with the updated ones from the supertag template, consider first whether you have content you want to save, and move them out of the template element first. Then, perform a hard delete (Cmd/Ctrl+Shift+Backspace) to clear the stale node, and the template will immediately repopulate it.

    Related docs:

  • Should I have just one or multiple workspaces?

    We suggest you keep one workspace until you need to do one of the following things, many of which will trigger/require the creation of a new workspace anyways:

    • Collaborate with someone in Tana (requires you or the other to create a workspace and invite each other to)
    • Import content from Roam, Logseq, Workflowy, or other (this automatically creates a new workspace for the purpose of the import)
    • Create a holding space (separate from you private workspace with no "Allow access from.." for testing other people's templates and setups before you bring it in to your active workspaces)
    • Creating a Tana Template (which means you want a clean, self-contained workspace setup so you know you're creating a template with no references pointing to other workspaces)
    Source of FAQ: Tana Community Resource Hub

    Related docs:

  • Should I use the DUE DATE field?

    TL;DR: No, create your own date fields.

    Background: Early on in Tana's history the team wanted a way to find overdue tasks but there was no current way of searching for nodes with dates relative to a certain date. So, the system field "Due Date" along with the search operator OVERDUE was created specifically this reason.

    But since the introduction of LT / GT (less than/greater than) operators, there is no reason to use the system Due Date field, along with the OVERDUE search operator.

    A user defined field for Date or Due Date offers more flexibility:

    • You can use initialize feature if desired
    • Consistent color with other fields
    • You can hide the field

    Example of a query to find nodes with a date that is past a certain time:

    Source of FAQ: Tana Community Resource Hub

    Related docs:

  • The calendar nodes I made in other workspaces doesn't have the default tags. How do I make them?

    Calendar nodes don't need the day/week/month/year supertags to work, so they come by default without them. It's only necessary to add supertags if you want to use templates for gathering tasks or doing reviews for that time granularity. To add default tags, right-click on any calendar node to "create default day/week/month/year tag". Once it's created, you can rename and customize it like any other supertag.

    For more detail, check out the documentation on the Dates and Calendar nodes page.

    Related docs:

  • What are all the ways I can copy data out of Tana?

    Basic copy-paste

    Copy-pasting content is the fastest way of getting data out of Tana.

    Select the content you want to copy, then hit Cmd/Ctrl+C. To paste, Cmd/Ctrl+V either in Tana (will create references) or elsewhere.

    More copy-paste options

    Via the command line (Cmd/Ctrl+K) there are various flavors of copy available to you.

    Copy full content to clipboard

    Copies the selected content in plain text format

    Copy as Tana Paste

    Copies the selected content in Tana Paste format

    Copy as plain markdown

    Copies the selected content in plain markdown format

    Other ways to get content out

    Export plain HTML

    Renders a HTML page of the selected content that you can copy the HTML of, or save as a HTML file.

    Export JSON

    To learn more about this, read here.

    Thanks to community member Michael Sklar for the FAQ idea!

    Related docs:

  • What are the system requirements for running the Tana desktop app?

    The system requirements for Tana Desktop app are the same as for Chromium. You can check out the most up to date system requirements here:

    https://support.google.com/chrome/a/answer/7100626?hl=en

    Related docs:

  • What do the AI error messages Out of budget and 0/1 left mean?
    This writeup is from community member Theo Koster outlining a detailed walkthrough on how to set up your OpenAI account so you can use it with AI for Builders. It covers several errors like out of budget, 0/1 left, and rate limit for this api key has been hit. Here's Theo:

    There is no new information in this post, just a handy list of actions that I needed to assemble from different posts. If you get error messages using AI functionality, here is how I solved these.

    First: you've got to understand that Tana uses the OpenAI API. This is a different product than the OpenAI chatbot ChatGPT. So even if you have a paid account with the OpenAI ChatGPT, this is of no use to using the OpenAI API.

    Second: you have a limited amount of free queries available with the OpenAI API. This is why you run into error messages after a week of using the AI facilities in Tana. So you've got to pay extra. If you don't want to do that, fine, but face the limits. The good news here is that you can limit your credit to ± $5 and you can limit your maximum spend per month. My burn rate on my first day on a paid plan was 32 cents.

    How I got it all working:

    Now you should be good to go.

    Thanks Theo for the thorough writeup!

    Related docs:

  • What does "Retrying AI requests failed, giving up operation" error mean?

    This message means that the request to OpenAI was denied upon receipt, and there can be several reasons for this:

    1. Not enough funds

    • Recently, OpenAI changed their payment rules and you have to prepay to cover for API costs.

    2. Token window too small

    • Your request may be spending too many tokens on the prompt. Switch model to one that has a higher token limit

    3. OpenAI service disruption

    • If OpenAI's API is temporarily experiencing instability or down time, this may trigger this error. You can check their status here.

    There may be more causes, and if we identify them we'll add them here.

    Related docs:

  • What does it mean when the yellow message "editing in X places" pops up?

    The "Editing in X places" usually pops up for a moment when you are editing a node that is referenced in multiple places. It's a reminder that the changes you're making here reflects on X amount of other nodes in the graph.

    To see all the other places this node is referenced, zoom into it and go to the Reference section at the bottom of the page. Here you'll find all the places in the graph where a reference of this node appears.

    Related docs:

  • What does the system field "Number of nodes with this tag" do?

    This system field is relevant only for supertag objects, and reveals the number of times a tag has been used.

    How to use it:

    • Make a search node with IS TAG - which will find all supertags in your graph
    • Display: Number of nodes with this tag

    It shows you how many nodes the tags have been applied to.

    Related docs:

  • What does this warning mean: "Fields nested under other nodes or fields will not work as expected"?

    This warning pops up in the supertag template when there are fields that are indented (another word for nested).

    There are several "expected" behaviours of fields in supertags that only work when they are first-level nodes in the template, such as (and not limited by) the following:

    • Searching for nodes based on their field values (all #tasks with Status::Complete)
    • Viewing the node as a table, with fields as columns
    • Using fields to build title using title expressions

    If you do not care for any of the above uses, you can safely ignore the warning.

    Related docs:

  • What is a Reference in Tana?

    A reference in Tana is a mirror copy of a node. It's a node that lives in many places all at once. If you edit one of them, the change reflects in all copies, everywhere.

    References are handy because it makes digital objects work a bit more like reality.

    Example:

    Spinach doesn't only belong in your pantry, it also belongs as an ingredient in your quiche #recipe, an item at a local #vendor, or as a source of iron #nutrient.

    What's really helpful here is that all references to Spinach refer to the same node, so the node Spinach becomes an index for all things spinach in your life, whether it be in recipes, found in shops, or a nutrient source. As you encounter spinach more in your life, and connect it to more things in your graph, your knowledge about spinach will just keep on growing.

    Just like knowledge does in real life.

    For more on nodes vs. references, go here.

    Related docs:

  • What is the difference between supertags in Tana and hashtags used in social media?

    Here's a comparison between hashtags and supertags:

    • Primary function
      • Hashtags: identify keywords and trends that are relevant to a piece of content
      • Supertags: identify items and entries in one's data or knowledge-base
    • Placement
      • Hashtags: Can appear anywhere in the content
      • Supertags: Applies to the whole content (node), always appears at end
    • Search
      • Hashtags: Finds all content tagged with that hashtag across the platform
      • Supertags: Similar to hashtags
    • Value
      • Hashtags: Connects users to the broader conversation across the platform
      • Supertags: Connects users with their own content, improving knowledge management and retrieval
    • Shorthand
      • Hashtags: "This content is related to X"
      • Supertags: "This content is an X"
    • Examples
      • Hashtags:
        • Example: This content relates to [#topic1, #topic2]
        • #TaylorSwift
        • #ErasTour
        • #BlankSpace
      • Supertags:
        • Example: This item is a #[type of item/entity]
        • Taylor Swift #artist
        • Eras Tour #event
        • Blank Space #song

    Using supertags this way is a good starting point for getting to know them. Once you become more familiar, it's not a problem if you want to break the rules and use supertags like hashtags - as long as you know what the tradeoffs are and why you are doing this.

    Related docs:

  • What is the difference between the Owner and a Parent of a node?

    The Owner is the node's home (where it was created). A node has only one owner, but can have many parents.

    PARENT / GRANDPARENT search operators are used to refer to one and two levels up in the outline, respectively

    Source of FAQ: Tana Community Resource Hub

    Related docs:

  • What is the difference between the desktop and the web app?

    Right now they are more or less the same, with a few differences:

    • The web app can receive CSS modifications, although we do not encourage doing this because it can easily break due to rapid iteration of the codebase at this time.
    • The Desktop app has a couple more features like global voice recording that the web version doesn't have. In the future, the feature gap will grow larger when we add things like reminders, notifications, and more.

    We encourage users to use the desktop app, so Tana can remain open without needing the browser to be open as well.

    Download the desktop app here

    Related docs:

  • What is the difference between the field operator CHILD OF and the keyword operator PARENTS DESCENDANTS

    The search operators CHILD OF and PARENTS DESCENDANTS are similar, but have some key differences:

    • With CHILD OF, the target node is the node that you reference in it, and the results will only be direct children of the referenced node, including references
    • With PARENTS DESCENDANTS, the target node is the parent relative to the search node, and the results will match any descendant (children, grandchildren, great grandchildren etc.) of the target node, ignoring reference nodes
    • With PARENTS DESCENDANTS WITH REFS, the same as PARENTS DESCENDANTS except it includes reference nodes.
    Source of FAQ: Tana Community Resource Hub, rewritten for clarity

    Related docs:

  • When I check a checkbox node, it disappears. Where does it go?

    This is likely because you have "Show completed items" unchecked.

    Go to your Settings and check the Show completed items setting.

    Related docs:

  • When will Tana have a dedicated mobile app?

    There's no official release date for a full mobile app, but necessary infrastructure upgrades to start work on this is in development.

    To provide your feedback on what you'd like to see in a mobile app, leave an idea or a vote on an existing idea here: https://ideas.tana.inc/

  • When will Tana start charging users?

    As of January 2024, we are still not charging users. We will publish pricing tiers when we are closer to launch in 2024.

    When they are published, they will appear here: Pricing

    Related docs:

  • Where can I find the most common keyboard shortcuts in Tana?

    Open the side panel to see the most common keyboard shortcuts from ths sidebar:

    Related docs:

  • Where do deleted/trashed nodes go? Does the trash get emptied?

    When you delete something, they go to Trash.

    You can access Trash via the command Open trash

    The team is working on an "Empty trash" function, which is currently being tested internally.

    Related docs:

  • Where is my imported content? The new workspace appears to be empty

    Imported content is placed either under the new workspace's Library, or under the appropriate daily page depending on the contents of your import file.

    For more on import, see Import data into Tana

    Related docs:

  • Why are line breaks not supported in Tana?

    Tana's speed is reliant on each node being a small packet of information. Larger nodes are slower to edit, slower to index, slower to update, and so on. Line breaks would encourage longer entries of information, and would break many other situations where the contents of a node needs to be rendered as one line, such as inline references, option values, title expressions just to name a few.

    We do recognize that some want to store small pieces of information under one node, like a poem or quote. We are continuing to do research to explore ways to solve this, and also to solve for other issues related to long-form writing. If you would like to contribute your thoughts on this, please visit ideas.tana.inc and submit your thoughts under an existing or new post there.

    Related docs:

  • Why can I not drag nodes from one workspace to another?

    In regards to error messages:

    • Cannot move notes between different shared areas
    • Cannot move nodes between different workspaces - use move command

    The reason for this message is that nodes are not made to easily move between workspaces. The workspace they belong to dictates a lot of things, such as permission to view and edit. This will become more important in the future when we build up the collaboration functionality but for now there are a couple of methods you can use to move nodes from one workspace to the other:

    • Option 1: Cut (Cmd/Ctrl+X) and Paste (Cmd/Ctrl+V) into new workspace
    • Option 2: Cmd/Ctrl+K > Move node to > choose workspace and target (you can set custom targets in addition to the defaults of Today/Library/Home etc)

    Related docs:

  • Why is my field not auto-initializing?

    How auto-initialization works

    There could be several reasons why a field isn't auto-initializing.

    Currently, field auto-initialization is triggered only on the event where

    • a supertag is applied to a node, and
    • the field is in a placeholder state (i.e. doesn't exist/have its own nodeID).

    Fields will therefore not auto-initialize under the following events:

    • 1. When added anywhere as a solo field
    • 2. On nodes where the supertag is already applied and the field is added after the fact
    • 3. If the field is nested under a node in the supertag template. Fields have to be direct children to the supertag to auto-initialize

    The next question is likely: can I trigger auto-initialization somehow?

    As a result of how initialization is triggered today, there is an unintentional quirk that can be used to re-initialize fields.

    For fields that fall under category 2 (from the list above), it is possible to trigger initialization by applying any supertag to the node. The fields have to be in a placeholder state, or it won't work. Video demo:

    Related docs: