UiPath Documentation
delegate
latest
false
Delegate & Cartographer user guide

Repeating work with Routines

Create, manage, and run Routines in Delegate and Cartographer to save reusable task workflows and execute them with a single click.

Routines are reusable workflows that you can run with a single click. They capture patterns of work you perform repeatedly, allowing you to automate common tasks without rebuilding them each time. They live in the Routines section of the sidebar, alongside a Scheduled routines entry for the ones you've scheduled.

Delegate and Cartographer come with a set of predefined routines out of the box, alongside any you create yourself.

What is a routine?​

A routine is a skill that has been marked user-invocable — same packaging, same publishing, one extra property. Well-designed routines typically have:

  • A clear trigger description that explains when to use them
  • Inputs (parameters) that vary each run
  • A consistent output (document, report, update, etc.)

Every routine is a skill; not every skill is a routine — the difference is that one extra property. This is why the sidebar has a Routines list for the invocable ones, while Add-ons & Integrations → Skills lists everything the agent can draw on, invocable or not. See Skills reference.

Think of Routines as your personal automation library — workflows you design once and run whenever needed.

When to create a routine​

Create a Routine when you find yourself:

  • Asking Delegate for the same type of task weekly (e.g., "Prepare my Monday morning brief")
  • Following a consistent process with varying data (e.g., "Generate a status report from this Jira project")
  • Sharing a workflow with teammates who need to perform the same task
  • Wanting to schedule automation to run at specific times

Creating a routine​

Select New routine in the Routines section of the sidebar, and choose one of four methods:

MethodWhat it does
Create from promptDescribe a task and let the agent build the routine
Create from skillStart from an existing skill template
Create from recordingTurn a recorded workflow into a routine
Record a new workflowRecord your screen to capture a new workflow

Recording a workflow is also available from Recordings in Settings — see Recordings settings and Recording your tasks.

Under the hood, a routine is a SKILL.md file — for users comfortable with Markdown and file system configuration, editing it directly is another way to shape a routine. An example structure:

---
name: my-routine
friendly_name: Weekly Sales Report
version: 1.0.0
description: "Generates a weekly sales summary from spreadsheet data"
icon: FaChartBar
color: "3B82F6"
trigger: "When you need a summary of weekly sales performance"
inputs:
  - name: week_ending
    type: date
    description: "The last day of the week to report on"
  - name: data_file
    type: file
    description: "Path to the sales data spreadsheet"
output:
  type: file
  description: "PowerPoint presentation with sales charts"
---

## Steps

1. Read the sales data from {data_file}
2. Filter for the week ending {week_ending}
3. Calculate total sales, top products, and regional breakdown
4. Create a PowerPoint with:
   - Title slide: "Weekly Sales Report - {week_ending}"
   - Summary slide with key metrics
   - Chart slide showing product performance
   - Regional breakdown table
5. Save as "Sales_Report_{week_ending}.pptx" on the Desktop
---
name: my-routine
friendly_name: Weekly Sales Report
version: 1.0.0
description: "Generates a weekly sales summary from spreadsheet data"
icon: FaChartBar
color: "3B82F6"
trigger: "When you need a summary of weekly sales performance"
inputs:
  - name: week_ending
    type: date
    description: "The last day of the week to report on"
  - name: data_file
    type: file
    description: "Path to the sales data spreadsheet"
output:
  type: file
  description: "PowerPoint presentation with sales charts"
---

## Steps

1. Read the sales data from {data_file}
2. Filter for the week ending {week_ending}
3. Calculate total sales, top products, and regional breakdown
4. Create a PowerPoint with:
   - Title slide: "Weekly Sales Report - {week_ending}"
   - Summary slide with key metrics
   - Chart slide showing product performance
   - Regional breakdown table
5. Save as "Sales_Report_{week_ending}.pptx" on the Desktop

Running a routine​

  • Select a routine from the Routines list in the sidebar. This autofills the chat box with the routine's / command — send it to run.
  • Type / in the chat box to open a menu of available routines and commands, and select one to autofill it the same way.
  • Reference the routine by name in a conversation, for example: Run the Weekly Sales Report for last week using the file in ~/Documents/Sales/. Delegate recognizes the routine name and executes it with your specified parameters.

Managing routines​

Open the options menu next to a routine in the Routines list for these actions:

ActionWhat it does
FavoritePin the routine so it's easier to find
View fileSee what the routine does and how to use it
ScheduleSet up a recurring or one-time run — see Scheduling a routine
RenameChange the routine's display name
Move to projectMove the routine to a different project
DeleteRemove the routine

To edit a routine, edit its associated SKILL.md file directly — see Advanced: routine storage.

Scheduling a routine​

Select Schedule next to a routine, or Schedule routine from the Routines list, and configure:

FieldDescription
RoutineWhich routine to run
Schedule routineDate and time of the run
RecurrenceHow often it repeats — defaults to None (one-time)
ModeForeground (uses apps, mouse, and keyboard) or Background
ModelWhich model runs the scheduled routine

Managing scheduled routines​

View and manage all scheduled routines from Scheduled routines in the sidebar: see upcoming runs, last run status and history, and enable, disable, edit, or delete individual schedules.

Scheduled routines run using your stored connections and permissions. If authentication expires, the routine may fail until you reconnect.

Sharing a routine​

Because a routine is a skill, sharing one with a teammate or publishing it more broadly follows the same publish, review, and install flow as any other skill — see Sharing skills with your team.

Routine best practices​

Design for clarity​

  • Name descriptively: "Weekly Sales Report" not "Report 1"
  • Write clear triggers: Explain when someone should use this Routine
  • Document inputs: Explain what each parameter is for and expected format
  • Specify outputs: Describe what the user will receive

Handle variability​

  • Use input parameters for anything that changes (dates, file paths, names)
  • Provide sensible defaults where possible
  • Validate inputs in the Routine steps (e.g., "Check the file exists")
  • Handle missing inputs gracefully with fallback behavior

Test thoroughly​

  • Run in Guided mode first to catch unexpected steps
  • Test with edge cases (empty files, future dates, special characters)
  • Verify outputs match expectations before sharing
  • Test on different machines if sharing with a team

Version control​

  • Duplicate before major changes to preserve working versions
  • Document changes in the Routine description or a CHANGELOG
  • Use semantic versioning in SKILL.md (1.0.0, 1.1.0, 2.0.0) — versions only ever go forward

Security considerations​

  • Do not hardcode credentials in Routine steps — use connections
  • Be cautious with file paths — use relative paths or input parameters
  • Review permissions before sharing — ensure recipients have access to required systems
  • Sanitize inputs that go into shell commands or URLs

Advanced: routine storage​

Routines are stored as SKILL.md files under the LocalSkills/ folder:

LocalSkills/
├── my-routine/
│   └── SKILL.md
└── another-routine/
    └── SKILL.md
LocalSkills/
├── my-routine/
│   └── SKILL.md
└── another-routine/
    └── SKILL.md

See Settings file locations for where this folder lives. You can back up your routines by copying it, or sync it across machines via cloud storage — be careful with absolute paths in routines if you do, since they may not work on a different machine.

Next steps​

Was this page helpful?

Connect

Need help? Support

Want to learn? UiPath Academy

Have questions? UiPath Forum

Stay updated