> ## Documentation Index
> Fetch the complete documentation index at: https://docs.neoagent.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Technician working hours

> Set each technician's weekly hours, breaks and shifts in Neo, so dispatch reads the hours you set instead of your PSA calendar

A **schedule** is a named set of weekly hours, such as "Day shift" or "Nights". You put each technician on one schedule, and dispatch then reads that technician's hours from it. Use it when your PSA has no working hours, when its hours are out of date, or when the hours you need are hard to keep in the PSA.

You manage schedules on the [**Technicians** → **Schedules**](https://dashboard.neoagent.io/profiles?view=schedules) tab, and each technician's hours on their card.

## Set up schedules

<Steps>
  <Step title="Create a schedule">
    Select **New schedule**, give it a name, and pick a starting point such as **Mon–Fri 09:00–17:00**, **Mon–Fri with lunch** or **Nights 21:00–06:00**. Then adjust each day.
  </Step>

  <Step title="Adjust the week">
    * Switch a day off for a day the technician does not work.
    * Use a day's **Add a break** button to split it around a lunch break, then move the times.
    * Use **Copy Monday to weekdays** to give Monday's hours to Tuesday through Friday. Each day's copy button copies that day instead.
    * An end time before the start time is a night shift. The editor marks it **Ends next day**.
  </Step>

  <Step title="Put technicians on it">
    Open a technician's card and go to **Working hours** to choose a schedule. To move several technicians at once, use **Choose technicians…** on the schedule's card on the **Schedules** tab.
  </Step>
</Steps>

Make one schedule for each set of hours your team works. When the day shift changes, edit that one schedule and every technician on it moves with it. A technician with hours of their own gets a schedule with only them on it.

## Time zones

By default a schedule's times are on each technician's own clock: the time zone set for them in your PSA. If a team works to a clock that is not their own, for example a remote technician who works US Central hours, pick a **Time zone** on the schedule. Neo converts the hours to each technician's clock before dispatch reads them.

## What dispatch reads

| Technician | Hours dispatch reads |
| - | - |
| On a schedule | The schedule's hours, in place of the PSA working hours |
| Not on a schedule | The PSA working hours, as before |
| Not on a schedule, and the workflow has **Should Neo respect PSA working hours?** off | The hours in your custom instructions, as before |

A schedule applies whether that workflow setting is on or off, on [Dispatch Ticket](/building-automations/actions/ai/ticket-dispatch-suggest-technician) workflows and on agents that use [Get Technician Context](/agents/tools/psa/get-technician-context). Dispatch sees which schedule the hours came from.

A schedule replaces only the weekly hours. Time off, holidays, calendar entries and Microsoft Teams presence still count exactly as before.

<Tip>
  Once a technician is on a schedule, remove the hours you wrote about them in custom instructions, so dispatch reads one set of hours. A technician's card shows **Instructions mention hours** when their custom instructions still state hours, and **Ask Neo to tidy this up** hands the edit to the Neo Support Agent.
</Tip>

## Ask Neo to set it up

The Neo Support Agent can read and change schedules for you. For example: "Move the working hours in our dispatch instructions into schedules." It shows you the schedules and who goes on each before it saves anything, and by default it asks for approval before each change.

Schedules are also available in the [public API](/developers/introduction) under `/public-api/technician-schedules`.
