
Part 4 – Building an Action Builder with MindStudio
This article will form the basis of a Learn OmniFocus session that I will be a guest on in April. If you’re a Learn OmniFocus Member, you can join the LIVE, interactive session on April 30 (10-11 Pacific Time). Please register to obtain the Zoom link. A free recording will be available to everyone by May 9, 2025.
The OmniFocus Action Builder
This guide, the thrilling conclusion to our MindStudio saga, takes you on an epic journey through to the creation of the OmniFocus Action Builder, a small AI application that demonstrates the ease of using MindStudio. With this mighty tool, you can turn vague project ideas into glorious, well-structured Action lists, fully compliant with GTD principles and neatly formatted in TaskPaper. OmniFocus won’t know what hit it.
The Secret Sauce: Data Sources
As we have seen previously, MindStudio guides the direction of prompts to LLMs by using the Data Source. The Data Source is where we would put our reference documents, policies, processes, etc. and MindStudio then converts the documents into a vectorized database that is accessed via Rag (Retrieval Augmented Generation).
Retrieval Augmented Generation (RAG) is an AI framework that enhances the capabilities of large language models (LLMs) by combining them with external knowledge sources. RAG addresses key limitations of traditional LLMs, such as providing outdated information or generating inaccurate responses, by grounding the model’s output in current and relevant data.

Image from ai.plainenglish.io
The RAG process involves two main components:
- Retriever: This component acts like a detective, searching through databases, documents, and other knowledge sources to find relevant information related to a given query.
- Generator: This is the LLM itself, which uses the retrieved information along with its pre-trained knowledge to generate a response.
By integrating these components, RAG offers several advantages:
- Improved accuracy and relevance of responses
- Access to up-to-date information
- Reduced likelihood of AI hallucinations
- Enhanced ability to handle domain-specific queries
RAG is particularly useful in enterprise settings, where it can be used to connect LLMs to internal knowledge bases, ensuring that generated responses are both accurate and aligned with an organisation’s specific context and requirements
The OmniFocus Action Builder harnesses the wisdom of four key data sources:
- OmniFocus Data Source: Like a wise old mentor, this contains the sacred texts (vectorised PDFs) of OmniFocus 4, covering project organisation and Action wizardry.
- GTD Data Source: A guiding star for productivity enthusiasts, packed with GTD methodologies to help structure Actions into logical, actionable steps.
- TaskPaper Data Source: Ensures your Actions are formatted to the exacting (and somewhat persnickety) standards of TaskPaper, allowing a seamless OmniFocus import.
- Hierarchical Action Networks (HTN): The algorithmic way to build a network of Actions into that final project solution, in some ways a spider web but without the gruesome consequence.
TaskPaper: A Great Brainstorming Tool
Not a MindStudio feature but it is needed in order for us to communicate with OmniFocus.
TaskPaper is a no-nonsense, plain-text to-do list app for macOS and IOS that keeps things refreshingly simple. It organises tasks with projects, indentation, and tags—no bloated features, no distracting bells and whistles, just you and your neatly structured list. Think of it as a digital notepad that actually cares about your productivity.
For OmniFocus users like ourselves, TaskPaper is like a quick staging area—a place to brainstorm and draft tasks before sending them into OmniFocus’s more structured, deadline-driven world. Since OmniFocus supports TaskPaper formatting, you can easily transfer tasks between the two, making it a perfect lightweight companion. TaskPaper is great for jotting things down fast, or using in automation while OmniFocus is where you get serious about getting them done. Take a look at the OmniFocus TaskPaper Reference Guide for some more information.
What is HTN?
We are using HTN or Hierarchical Task Networks to help us get the AI to breakdown a project into the actions required to complete it’s goal. As with TaskPaper, it is not part of MindStudio but is something that we want our application to do.
HTN (Hierarchical Task Network) planning is basically the art of turning big, scary projects into bite-sized, doable tasks. Instead of staring at a massive goal like “Launch a new product” and panicking, HTN helps you break it down step by step—like chopping up a giant to-do list into digestible chunks.
How HTN Works in Project Breakdown
HTN is all about working from the top down, like a super-organized boss delegating tasks. Here’s how it plays out:

- Start with the Big Goal – Identify what you actually want to accomplish.
- Example: “Launch a new product” (sounds simple, right?)
- Break It Into Manageable Chunks – Divide the goal into broad categories so it stops feeling overwhelming.
- Example: “Develop the product,” “Create marketing materials,” “Plan the launch event.”
- Decompose It Even Further – Keep breaking each part down until you reach individual, actionable steps.
- Example: Under “Develop the product,” you might have:
- “Design the initial prototype”
- “Conduct user testing”
- “Finalize product features”
- Example: Under “Develop the product,” you might have:
- Assign Actions & Dependencies – Now that everything is neatly broken down, you can assign tasks, set deadlines, and pretend you’re totally in control. -Example: “Design initial prototype” goes to the design team with a due date (and hopefully no last-minute surprises).
Why HTN is Your Secret Productivity Weapon
HTN helps keep projects from becoming overwhelming monsters by turning them into clear, step-by-step roadmaps. It’s great for:
- Tackling complex projects without losing your mind.
- Ensuring every task has a logical next step (so no one can say “I didn’t know what to do next!”).
- Looking like an organizational genius.
Many task managers (like OmniFocus) naturally follow HTN logic, letting you break down projects into neatly nested actions. So instead of feeling lost, you always know exactly what to do next—one small, manageable step at a time.
The (Mostly) Painless Workflow
Now lets look at the workflow we will follow as we step through the solution.
1. Collect User Input
A simple form collects the vital piece of information:
- Project Description: Keep it short and sweet (e.g., “Launch a world-changing website”).
- Error Handling: If you forget one, the system will remind you. Nicely.
2. Generate Project Title
The AI, channelling its inner Shakespeare, transforms your project description into a snazzy title. Example: “Marketing Website Extravaganza.”
3. Query the Data Sources
- OmniFocus Guidelines: Because we like to do things the OmniFocus way.
- GTD Principles: Helping break big scary projects into bite-sized, actionable chunks.
- TaskPaper Formatting: Making sure OmniFocus won’t throw a tantrum when you import your Actions.
- Hierarchical Action Networks: Ensuring that the AI delves into the dark recesses of the Action plan.
4. Action Breakdown & Metadata
- Action Groups: Logical clusters of Actions (usually 3–7, because we’re sensible).
- Individual Actions: Each one kicks off with a solid action verb (“Draft”, “Review”, “Celebrate”).
- Metadata Magic: Every Action gets a title, time estimate (@estimate(1h)), dependencies (@parallel(false)), and must-have @tags(aiDerived, mailDrop).
5. TaskPaper Document Generation
The AI will be doing the heavy lifting when it comes to formatting TaskPaper and what you see here will give you an idea of how TaskPaper works and how important it is to get the syntax right.
- Project Header: – Project Title @due(YYYY-MM-DD) (No indentation. Be strong.)
- Project Note: note This is the project description (Adds a touch of narrative.)
- Actions:
- Action Group @parallel(false)
- Action @AIDerived @mailDrop @estimate(1h)
- Action Group @parallel(false)
- Strict Formatting: If TaskPaper had a middle name, it would be “Picky.” So, we will get the AI to follow all syntax rules to the letter.
6. Email Automation
Once the TaskPaper document is assembled in all its glory, it is:
- Packaged into a neat email.
- Fired off to you, ready to copy and paste into OmniFocus.
7. Error Handling (a.k.a. Preventing Chaos)
Validation checks ensure no missing inputs, bizarre formatting, or existential crises in your Action breakdown. If something’s off, the system will politely request a fix.
The Final Masterpiece: A Worked Example
Now let’s look at the workflow we need to follow in order to build our solution using MindStudio.
Here is the statement that I typed into MindStudio’s “Generate Workflow”. I did not go into too much detail as I will be checking everything before I run the application:
Create an AI application that will ask the user to enter a brief project description. The AI will improve the description and it will create a Project Title, both inline with GTD recommendations. The AI will then breakdown the project into it's constituent Actions using HTN, GTD and OmniFocus as guides. The AI will need 4 Data Sources in order to understand GTD, OmniFocus, Hierarchical Action Networks, and TaskPaper. When the project has been broken down the project and Actions will need to be formatted as TaskPaper with each including an estimate in minutes and a tag “aiDerived”.
The AI must not add any text to the header or footer of the TaskPaper when creating it and after it is created.
(Build Statement)
After putting in the text to describe what I want generated the MindStudio elf’s took over and analysed my request. For about 2 minutes it munched the data, whirred while it thought about it, and finally gave a loud shout of excitement. Well maybe without the soundtrack but it does now tell you what it is going to do.
After the “Generate Workflow” has completed its magic you are left with a descriptive text telling you the design decisions the AI is about to take. I would advise you to spend some time looking at these words as AIs are not perfect. The following is what to expect if you enter the build statement previously into the generater.
GTD Project Planner
A workflow that transforms a brief project description into a comprehensive GTD-style project plan, breaking down the project into hierarchical Actions with time estimates, formatted in TaskPaper syntax.
Invocation
This workflow will be invoked manually by the user. When run, it will present a form with a text input field where the user can enter their brief project description.
System Prompt
The system prompt will define the workflow’s purpose: to help users transform brief project descriptions into well-structured GTD project plans using HTN principles. It will instruct the AI to:
- Analyse and improve project descriptions
- Generate appropriate GTD-style project titles
- Break down projects into hierarchical Actions
- Add time estimates and appropriate tagging
- Format output in TaskPaper syntax The system prompt will also include context about GTD methodology, HTN planning, OmniFocus organizational concepts, and TaskPaper syntax to guide the AI’s responses.
Workflow Steps
- Collect the brief project description from the user using a User Input block
- Use a Generate Text block to improve and expand the description
- Use a Generate Text block to generate a project title following GTD best practices
- Use a Query Data Source block to retrieve GTD methodology information
- Use a Query Data Source block to retrieve OmniFocus organizational concepts
- Use a Query Data Source block to retrieve HTN planning information
- Use a Query Data Source block to retrieve TaskPaper syntax guidelines
- Use a Generate Text block to break down the project into Actions using the retrieved information
- Use a Generate Text block to format the final output in TaskPaper syntax with time estimates and tags
- Present the final output to the user with a Generate Text block (system message)
- End the workflow with an End block
Variables
interface WorkflowVariables {
// User input
briefDescription: string; // Example: "Create a marketing campaign for our new product launch"
// Improved description and title
improvedDescription: string; // Example: "Develop and execute a comprehensive marketing campaign for our new product launch, including digital, social, and traditional marketing channels, with a focus on reaching our target demographic of 25-45 year old professionals."
projectTitle: string; // Example: "New Product Marketing Campaign"
// Data source query results
gtdMethodology: string; // Long string (500+ words) containing GTD principles and best practices
omnifocusConcepts: string; // Long string (500+ words) containing OmniFocus organizational concepts
htnPlanning: string; // Long string (500+ words) containing HTN planning information
TaskPaperSyntax: string; // Long string (300+ words) containing TaskPaper syntax guidelines
// Final output
ActionBreakdown: string; // Long string (1000+ words) containing the hierarchical Action breakdown
finalOutput: string; // Long string (1000+ words) containing the complete TaskPaper formatted output
}
Data Sources
The workflow requires four data sources to be created and configured:
- GTD Methodology: A data source containing documentation about Getting Things Done methodology, principles, and best practices
- OmniFocus Concepts: A data source containing information about OmniFocus organizational concepts and approaches
- HTN Planning: A data source containing information about Hierarchical Action Network planning methodologies
- TaskPaper Syntax: A data source containing guidelines and examples of TaskPaper syntax and formatting
Specific Notes
- The final output must be formatted in TaskPaper syntax
- Each Action must include a time estimate in hours (e.g., @estimate(2h))
- Each Action must be tagged with “aiDerived” (e.g., @aiDerived)
- The workflow will use a hierarchical approach to Action breakdown, following HTN principles
- The project title should follow GTD best practices (action-oriented, specific, clear)
Generate System Prompt
The instructions below will be used to generate a system prompt for your workflow. “`
System Prompt Specification: GTD Project Planner
Purpose
Create a system prompt that guides the AI to transform brief project descriptions into comprehensive GTD-style project plans using Hierarchical Action Network (HTN) principles, formatted in TaskPaper syntax.
Key Components
1. Role and Purpose Definition
- Define the AI’s role as a GTD project planning expert
- Explain that the workflow helps users transform brief project descriptions into well-structured GTD project plans
- Emphasize the importance of creating actionable, hierarchical Action breakdowns
2. GTD Methodology Context
- Include core GTD principles (capturing, clarifying, organizing, reflecting, engaging)
- Explain how GTD approaches project planning through next actions and outcomes
- Describe how effective GTD projects are defined by clear outcomes and actionable steps
3. HTN Planning Framework
- Explain how Hierarchical Action Network planning breaks complex projects into manageable subActions
- Describe the process of decomposing high-level goals into progressively more detailed actions
- Emphasize the importance of proper Action dependencies and sequencing
4. OmniFocus Organizational Concepts
- Include information about effective project organization (folders, projects, Actions, subActions)
- Explain how OmniFocus users typically organize their work and projects
- Describe best practices for Action hierarchy and organization
5. TaskPaper Syntax Guidelines
- Provide clear instructions on TaskPaper formatting (projects end with colons, Actions start with hyphens, indentation indicates hierarchy)
- Include examples of proper TaskPaper syntax for projects, Actions, notes, and tags
- Explain how to format time estimates using the @estimate tag
6. Process Instructions
The prompt should instruct the AI to follow this process:
- Analyze and improve the user’s brief project description for clarity and completeness
- Generate an appropriate GTD-style project title (action-oriented, specific, clear)
- Break down the project into a hierarchical structure of Actions and subActions
- Add realistic time estimates to each Action using @estimate(Xh) format
- Tag all generated Actions with @aiDerived
- Format the entire output in proper TaskPaper syntax
- Ensure the final output is comprehensive yet practical
7. Output Requirements
- All Actions must include time estimates in hours (e.g.,
@estimate(2h)
) - All Actions must be tagged with “aiDerived” (e.g.,
@aiDerived
) - The final output must follow proper TaskPaper syntax
- The project structure should be hierarchical, with clear parent-child relationships
- The project title should follow GTD best practices (action-oriented, specific, clear)
8. Example
Include a brief example of input and expected output to illustrate the transformation process.
Finally Complete
With all the design and building completed MindStudio is now ready for you to review the build and test the functionality. Please always remember that AI can sometimes get things wrong, such as, forget to enter variables, etc., so spend time checking it through before you run it.

Wrapping Up
By following this guide, you’ll build an OmniFocus Action Builder so powerful it might just apply for a job at your company. It integrates GTD wisdom, TaskPaper precision, and OmniFocus expertise to deliver a well-structured, actionable Action list that’s ready to roll. If you don’t use OmniFocus then it is very easy to get the AI to output the list of actions in another formatt including CSV, PDF, etc.. There is a lot of features, and I mean a lot, that I have not touched in this article, such as:
- Functions to using tools like Zapier, Make, IFTTT, etc.
- Text to Speech
- Image Creation
- etc.
Go and experiment, play with MindStudio, see what it can do for you,
Now, go forth and conquer your to-dos!
A link to my AI Application
For those of you who want to jump straight to the end I have included below a link to MindStudio, $5 when you sign up for free, and a link to this application, the version after I have taken time to look through what has been created.
Firstly you will need to sign-up to use MindStudio, Use this link and enter your details for the free subscription. You will get $5 to start you off and this will go towards the tokens used each time you run the application. The costs do vary but on average they come out around, or less than $0.01 per run, it has taken me a year to use $20.
The 4 Data Sources will need populating with your own PDFs. I will leave the documents that I found on the Internet (please acknowledge their use somewhere) but the PDF versions of books will not be there. I will only use these PDFs if I have purchased the book and even then I will only use it for myself.
The MindStudio application can be found at app.mindstudio.ai//agents/omnifocus-project-builder-8ff8995f/remix
Previously in this series:
Part 1 – Mastering Prompting in MindStudio: Driving Empathy and Context in AI Workflows
Part 2 – A Guide to MindStudio: A Day in the Life of Using MindStudio
Part 3 – MindStudio’s Toolkit: Evaluating, Diagnosing, Profiling, and Debugging AI
