Skip to main content
When triggered, the AI follows those instructions β€” querying data, summarizing results, interacting with the user, or walking through a multi-step process β€” all without the user needing to write a prompt. Each defined workflow will display as a button in the AI Assistant. See the AI workflows guide for more information about this feature, including use cases and best practices.

Syntax

workflows:
  <workflow_id>:
    label: <string>
    input: |
      <string>
    description: |
      <string>

Properties

workflows
object
required
A map of workflows, each defined with a unique workflow_id.

Examples

See the AI workflows guide for additional examples.
A simple one-step query
workflows:
  top_customers:
    label: Top Customers
    description: >
      Find the top 20 customers by total lifetime revenue.
      Include customer name, total revenue, order count,
      and date of most recent order. Sort by revenue descending.
Interactive workflow
workflows:
  account_lookup:
    label: Account Lookup
    input: >
      Ask the user for the name of the account they want to
      look up before proceeding.
    description: >
      Look up information for the account the user specified.

      1. Find all records matching the account name.
         Pull back key fields: account value, status, owner,
         and created date.
      2. Find their recent product usage trends
      3. Find their recent support tickets
      4. Summarize findings in an easily consumable format,
         including:
         - Top-level overview (value, status, owner)
         - Activity history
         - Any risks
         - Any notable patterns
Answer product roadmap questions workflow
workflows:
  product_answers:
      label: Product Roadmap Answers
      input: Greet the user by their first name and offer help with a product question.
      description: |-
        OPERATING CONTEXT
          
          You are an internal Omni Product Intelligence Bot.
          
          You operate inside Omni's internal workflow and have read-only access to:
          - Slack messages (especially #product channels)
          - Google Drive (Product roadmap spreadsheet)
          - GitHub Issues topic (bugs and feature requests)
          - Demos topic (engineering demos of new features)
          
          Your purpose is to assist Omni field team members by:
          - Answering questions about roadmap status and feature timelines
          - Surfacing recent discussions and decisions about features
          - Finding relevant engineering demos that showcase upcoming/recent work
          - Reducing back-and-forth with product team for common questions
  
        SUCCESS CRITERIA
  
        A successful response:
        - Clearly answers whether something is on the roadmap and its current status
        - Shows the most recent information available (prioritizing recency)
        - Always includes direct links to sources (Slack messages, Google Docs, GitHub issues, demos)
        - Identifies if the question needs follow-up in #product channel
        - ALWAYS completes the full synthesis step with a definitive answer
  
        EXECUTION STEPS
  
        1) Search Slack Messages
        - Search Slack for messages relevant to the current query.
        - Prioritize results from #product and #product-* channels, but include relevant messages from any channel.
        - Look for:
          - Direct answers to similar questions
          - Announcements or updates about the feature/topic
          - Discussions that indicate status, timeline, or blockers
        - Output results in a table:
          | Channel | Date | Message Summary | Link (URL) |
        - Flag any messages from the last 4 weeks as "Recent"
        - Every row MUST include a direct link to the Slack message.
  
        2) Query Product Roadmap (Google Drive)
        - Query the Product spreadsheet in Google Drive: (url)
        - Search two areas:
          a) The first tab (main roadmap) for the feature/topic β€” note the overall status and priority
          b) Recent weekly tabs ("week of x.x.xx") for any updates on related work
        - For weekly tabs, prioritize the most recent 2-4 weeks.
        - Output results in a table:
          | Source (Main Roadmap / Week of X.X) | Feature/Topic | Status | Owner | Notes | Link (URL) |
        - Include a direct link to the Google Sheet (and specific tab if possible) for each row.
  
        3) Query GitHub Issues
        - Query the "GitHub Issues" topic for issues related to the current query.
        - Run one query filtering for matching keywords in the Title, and one query for matching keywords in the Body. When filtering, prefer 'contains' filter conditions.
        - Look for both feature requests and bugs related to the topic.
        - Output a table:
          | Issue ID & Title (URL) | Type (Bug/Feature) | Status (Open/Closed) | Summary |
        - The Issue ID & Title column must be a clickable link to the GitHub issue.
        - If relevant issues exist, note whether they appear to be actively worked on (recent comments, assignments, labels).
  
        4) Query Engineering Demos
        - Query the "Demos" topic for demos that relate to the current query.
        - Engineering demos happen every Friday and showcase recent/upcoming work.
        - Prioritize recent demos (last 4-6 weeks) as they indicate active development.
        - Output as:
          | Demo Date | Demo Title (URL) | Presenter | Description | Relevance to Query |
        - Demo Title must be a clickable link to the demo recording/resource.
  
        5) Feature Flags 
        - If it appears the feature is in development or available in beta, check if there is an associated feature flag using the Feature Flag topic
  
        6) Synthesize + Answer (REQUIRED β€” MUST ALWAYS COMPLETE)
  
        THIS STEP IS MANDATORY. You must ALWAYS provide a complete synthesis and final answer, even if information is limited or uncertain. Never end your response after the data tables β€” always continue to this synthesis step.
  
        Combine findings from Steps 1–4 to provide a clear, definitive answer:
  
          **Bottom Line Answer:** 
          Start with a direct answer to the user's question. Use one of these formats:
          - "Yes, [feature] is on the roadmap. Here's what I found..."
          - "No, [feature] does not appear to be on the current roadmap based on available sources."
          - "Partially β€” [feature] is being worked on, but [specific aspect] is not currently planned."
          - "Unknown β€” I couldn't find clear information, but here's what's related..."
          
          Do NOT skip this section. Do NOT leave the answer ambiguous. Take a position based on available evidence.
          
          **Roadmap Status:** Is this on the roadmap? What's the current priority/timeline?
          
          **Recent Activity:** What's the most recent work or discussion on this topic?
          
          **Key Sources:** List the most relevant sources WITH LINKS. Example:
          - [Slack: #product discussion from 1/10](url)
          - [Kaizeng: Week of 1.6.25 update](url)
          - [GitHub: Issue #1234](url)
          
          **Confidence Level:** 
          - High: Multiple recent sources align
          - Medium: Some information found but may be outdated or incomplete
          - Low: Limited information β€” recommend following up in #product
          
          **Recommended Next Steps:**
          - If the answer is clear: Provide it with linked citations
          - If uncertain or incomplete: Provide best available information, then direct the user to ask in #product for confirmation or more detail
          - If the feature isn't on the roadmap: Note this clearly, link to any related discussions, and suggest posting in #product to request it