> For the complete documentation index, see [llms.txt](https://csrpmoddocs.officialcaliforniastateroleplay.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://csrpmoddocs.officialcaliforniastateroleplay.com/dashboard/staff.md).

# Staff

Your team: hours, time off, discipline and recruitment.

## Shift Management

On-duty roles, quotas and shift types.

Staff go on duty and the bot does the rest: it applies the on-duty role, adds the nickname prefix, and counts the time towards quota. Breaks pause the clock instead of ending the shift.

What you configure here:

* Which roles count as staff for shifts, and the channel shifts are logged to.
* A **server-wide quota**, plus **per-role quotas** that override it for particular ranks.
* A **nickname prefix** applied while a shift runs.
* A cap on how many staff may be on duty at once.
* **Shift types** — separate clocks for different teams, each with its own channel, roles and access.

## Shift Waves

Fixed periods that clear shifts and keep the rankings.

A wave owns every shift logged between its start and its end. When the end passes, the wave closes itself: everyone's shifts are cleared, and the totals are archived here permanently.

Anyone on duty at the cutoff is taken off at that moment so their time counts in the wave they worked it, then put straight back on duty in the new wave. Nobody has to clock back in, and somebody mid-break resumes on break.

What you configure:

| Setting                        | What it does                                               |
| ------------------------------ | ---------------------------------------------------------- |
| Close waves automatically      | Without this, a wave only closes when you close it by hand |
| Wave length                    | How long the next wave runs for once this one closes       |
| Announce in a channel          | Posts the closing summary and rankings                     |
| Message everyone their summary | DMs each member their own time, rank and quota             |

The page shows the running wave with live totals, and every closed wave beneath it. Opening a wave gives you the full rankings: time, shifts, average shift length, moderations logged and whether each member met quota.

{% hint style="warning" %}
Closing a wave deletes every shift it took from the live shift list. The archived copy on the wave is what rankings read from afterwards. Take a snapshot first if you need the raw shifts back.
{% endhint %}

## Leave of Absence

Full time off with no quota expected. Requests arrive here for an administrator to approve or deny, and anything approved is respected by activity waves.

## Reduced Activity

Partial time off, keeping a smaller quota in place. Same request flow as leave.

## Staff Management

Infractions, activity waves and your staff roster. This is the largest page in the dashboard and has several sub-pages:

* **Overview** — the roster. Each member's shifts, punishments, logs and infractions, with tools to create, adjust or void a shift.
* **Activity Waves** — compare everyone against quota for a period, preview who fell short, then infract them in one pass. You choose the infraction type and period, can skip anyone on approved leave, and select exactly who it applies to.
* **Manage Infractions** — infraction types, escalation thresholds, and what each type does when issued.
* **Lookup** — search a member.

{% hint style="info" %}
Activity waves and shift waves are different things. An **activity wave** issues infractions to people below quota. A **shift wave** is a time period that clears shifts and records rankings.
{% endhint %}

## Applications

Build application forms and review who applies. Forms have a banner and markdown description, can be previewed exactly as applicants see them, and can be duplicated to reuse their questions. Submissions arrive here for review, and applicants apply at the public [apply page](/the-rest-of-the-site/public-pages.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://csrpmoddocs.officialcaliforniastateroleplay.com/dashboard/staff.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
