> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://help.moveworks.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://help.moveworks.com/_mcp/server.

# Agent Studio Overview

#### [Quickstart](/agent-studio/quickstart-guide)

Build your first plugin in minutes

#### [Core Concepts](/agent-studio/core-concepts/assistants-agents-plugins)

Detailed information about how Moveworks AI agents work in our platform

#### [Cookbooks](/agent-studio/cookbooks)

Collection of best practices & recommendations for common types of use cases

# New to Agent Studio? Start Here

#### Build your first plugin

Follow [Quickstart #1: Build Your First Plugin](/agent-studio/quickstart-guide/quickstart-build-your-first-plugin) to build a working plugin in minutes.

#### Understand the architecture

Read [Assistants, Agents, & Plugins](/agent-studio/core-concepts/assistants-agents-plugins) to understand how the pieces fit together.

#### Learn the Golden Rule

Read [The Golden Rule](/agent-studio/guides/best-practices/the-golden-rule) before building anything complex — it's the most important design pattern.

#### Build with the reference below

Use the Building Blocks Reference and Guides sections on this page to find specific docs as you build.

#### Test before you ship

Review [Testing & Error Handling](/agent-studio/guides/getting-started/testing-and-error-handling) before publishing your plugin.

# Agentic Frameworks

Agent Studio lets you connect AI assistants to your business systems and content. For bounded actions backed by a remote MCP server, use [MCP Workspace](/agent-studio/mcp-workspace/overview). There are three **Agentic Frameworks** that you can build on.

#### [Content Gateway](/ai-assistant/enterprise-search/content-gateway)

Index your content for semantic search experiences.

#### [Conversational AI Agents](/agent-studio/core-concepts/conversational-plugins)

Execute real-time actions to create, modify, read, & remove data from business systems.

#### [Ambient AI Agents](/agent-studio/core-concepts/ambient-agents)

Set up Ambient AI agents that run in the background

These agentic frameworks are interoperable on the Moveworks platform, so you can build experiences that span multiple patterns.

# Guides & Best Practices

#### [The Golden Rule](/agent-studio/guides/best-practices/the-golden-rule)

The single most important pattern for building reliable plugins

#### [Decision Frameworks](/agent-studio/guides/getting-started/decision-frameworks)

When to use compound actions vs conversation processes, slot types, and more

#### [Slot Best Practices](/agent-studio/guides/best-practices/slot-best-practices)

Anti-patterns and best practices for slot design

#### [Conversation Process Best Practices](/agent-studio/guides/best-practices/conversation-process-best-practices)

Anti-patterns and best practices for conversation processes

#### [LLM Action Best Practices](/agent-studio/guides/best-practices/llm-action-best-practices)

When NOT to use LLM actions and the decision matrix

# Building Blocks Reference

Quick links to every Agent Studio building block.

## Common tasks

Starting from an outcome and not sure which primitive to use? Start here.

| I want to…                                | Use                                                                                                                       |
| ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| Call an API                               | [HTTP Action](/agent-studio/actions/http-actions)                                                                         |
| Orchestrate multiple actions              | [Compound Action](/agent-studio/actions/compound-actions)                                                                 |
| Call an LLM inline                        | [generate\_text\_action / generate\_structured\_value\_action](/agent-studio/actions/llm-actions)                         |
| Send a message to a user                  | [`notify`](/agent-studio/actions/compound-actions/notify) expression                                                      |
| Branch on a condition                     | [`switch`](/agent-studio/actions/compound-actions/switch) expression                                                      |
| Handle an API failure                     | [`try_catch` / `raise`](/agent-studio/actions/compound-actions/try-catch-and-raise-error)                                 |
| Loop over a list                          | [`for`](/agent-studio/actions/compound-actions/for) expression                                                            |
| Run actions concurrently                  | [`parallel`](/agent-studio/actions/compound-actions/parallel) expression                                                  |
| End a compound action and return data     | [`return`](/agent-studio/actions/compound-actions/return) expression                                                      |
| Look up a user by email                   | [`get_user_by_email`](/agent-studio/actions/built-in-actions#get_user_by_email)                                           |
| Look up many users at once                | [`batch_get_users_by_email`](/agent-studio/actions/built-in-actions#batch_get_users_by_email)                             |
| Request human approval                    | [`create_generic_approval_request`](/agent-studio/actions/built-in-actions#create_generic_approval_request)               |
| Send batch chat notifications             | [`batch_send_plaintext_chat_notification`](/agent-studio/actions/built-in-actions#batch_send_plaintext_chat_notification) |
| Collect user input                        | [Slots](/agent-studio/conversation-process/slots)                                                                         |
| Validate a slot value                     | [Validation policy](/agent-studio/guides/best-practices/slot-best-practices#missing-validation-policy) with DSL           |
| Branch a conversation on an action result | [Decision Policy](/agent-studio/conversation-process/control-flow#pattern-action--decision-policy--branch)                |
| Display a knowledge article or form       | [Content Activity](/agent-studio/conversation-process/activities/content-activities)                                      |
| Handle large API responses (>7K tokens)   | [Response Sizes / SDA](/agent-studio/conversation-process/activities/response-sizes)                                      |

## Actions

#### [HTTP Actions](/agent-studio/actions/http-actions)

REST API calls to external systems

#### [Compound Actions](/agent-studio/actions/compound-actions)

Orchestrate multi-step workflows

#### [LLM Actions](/agent-studio/actions/llm-actions)

generate\_text and generate\_structured\_value

## Compound Action Expressions

#### [action](/agent-studio/actions/compound-actions/action)

Invoke an HTTP, script, or compound action

#### [for](/agent-studio/actions/compound-actions/for)

Loop over arrays sequentially

#### [switch](/agent-studio/actions/compound-actions/switch)

Conditional branching

#### [parallel](/agent-studio/actions/compound-actions/parallel)

Run expressions concurrently

#### [return](/agent-studio/actions/compound-actions/return)

End execution and return data

#### [try / catch / raise](/agent-studio/actions/compound-actions/try-catch-and-raise-error)

Error handling

#### [notify](/agent-studio/actions/compound-actions/notify)

Send messages with action buttons

## Conversation Process

#### [Slots](/agent-studio/conversation-process/slots)

Collect input values from users

#### [Resolver Strategies](/agent-studio/conversation-process/resolver-strategies)

Convert natural language to data types

#### [Activities](/agent-studio/conversation-process/activities)

Action and content blocks

#### [Control Flow](/agent-studio/conversation-process/control-flow)

Decision policies, exit, and continue

## Data & Configuration

#### [Data Bank](/agent-studio/core-concepts/data-bank)

Reference patterns: data.*, meta\_info.*, response, value

#### [DSL Reference](/agent-studio/configuration-languages/dsl)

Validation rules, conditions, string functions

#### [Data Mappers](/agent-studio/configuration-languages/mapper)

MAP(), MERGE(), FILTER(), RENDER(), LOOKUP()

#### [Data Types](/agent-studio/core-concepts/data-types)

Built-in and custom data types

## Triggers

#### [Natural Language Triggers](/agent-studio/core-concepts/conversational-plugins/natural-language-triggers)

Conversational plugin activation

#### [System Triggers](/agent-studio/system-triggers)

Webhooks and scheduled triggers

# Samples

You can view hundreds of AI agents on our [AI Agent Marketplace](https://aka.mw/marketplace) and import example templates to better understand how they are built.

![](https://files.readme.io/8c69e09ceaf6dea2c55ef9838b172d79b3466c525d9cd9bc0e3ac8176ad97104-CleanShot_2025-06-30_at_17.49.09.gif)

# Ready to get started?

Dive into our [Quickstart Guides](/agent-studio/quickstart-guide) to start building your first plugins