What Clepsy is, and what it is not
Clepsy is a scheduling app for emergency medicine residencies. It turns shifts, blocks, staffing targets, blackouts, and rules into a constraint model, then runs a CP-SAT solver (Google OR-Tools) to propose coverage. You review the result, deploy it as a draft, and publish it when ready.
Two terms matter: Deploy (or engage) writes draft assignments into the live schedule; Publish makes them visible to residents. Distribution separately creates calendar and public links.
Accounts and approval
Clepsy is invite-only. There is no self-registration form. An account exists only after an approved application or an administrator creates you as a user.
Two application paths
- An invite-key application at
/apply/?code=.... A program administrator generates the link from Onboarding. - A public application from the landing page sign-up dialog. It arrives in the same review queue and is marked as coming from the landing page.
What approval creates
Admin or Superduper reviews applications in Onboarding (heading: Applications Admin). Approving creates or reuses the Health System to Residency to Site branch, clones roles, seeds three default shifts, creates the first user, and mints a login link.
The defaults are Day 07:00-17:00, Evening 12:00-22:00, and Night 19:00-07:00; edit them before generating.
Director and coordinator become a Super User, shown as "Superuser (program manager)". A chief becomes an ordinary core service role with the chief flag set; everyone else becomes a core service role.
The login link is valid for seven days. Approval does not create a password; sign in with the matching email via Google, Microsoft, email and password, QR code, or passkey. If it expires, an administrator can resend from Users.
Your first sign-in
On the login page, choose one:
- Continue with Google or Continue with Microsoft, if configured by your program.
- Email and Password, if an administrator set one.
- Sign in with QR code on a shared workstation. Scan it with your phone camera and approve the sign-in on the phone.
- Use a passkey on this device on a device you control. Passkeys use Face ID, Touch ID, or your device unlock.
Only an existing Clepsy email can sign in. If a provider says the account is not recognized, ask your administrator to confirm your email. Manage passkeys from the Passkeys modal in the sidebar.
Simple mode and Advanced mode
Simple and Advanced are display preferences for your own account, not permission levels. They do not change what you may do or server authorization. Advanced is the default. The toggle sits in the sidebar footer, next to the theme control, and asks for confirmation.
Simple mode hides:
- Schedule Generator and Simulation in the sidebar.
- Annual Promotion.
- Blackout constraints.
- Capacity, prefer, and fill-priority fields on shifts.
- Yearly quota columns in User Roles and quota fields in the user editor.
- Permission Definitions, Allow Intern Supervision, and the yearly quota block.
- Include visiting residents in schedule solver in Residency Settings.
Hidden fields keep their values; switching does not erase capacity settings, quotas, or permission definitions. Switch back to edit them.
Your first schedule as a resident
The Dashboard shows pending swaps, off-request controls, and shortcuts for your role.
- Open Schedule, then View Schedule, for the published schedule at your site. Drafts stay hidden until an administrator uses Publish.
- Open My Schedule for your own assignments, with dates, times, and sites.
- Use Request Swap to trade a shift: choose your source, then a valid target. The target must accept; a three-way swap also needs the bridge.
- Use Request Off on the Dashboard for strong or weak requests; it shows your remaining academic-year quota and each request's status.
- Subscribe to your personal calendar feed so published shifts appear on your phone. See Calendar sync.
Off-request statuses are Pending, Approved, Denied, and Cancelled; pending can be cancelled. Defaults are 4 strong and 12 weak per academic year, though role or per-user overrides may differ. Swap requests have a separate quota, 10 per academic year by default; chiefs and above are exempt.
Swaps are also constrained by rest, turnaround, weekly hours, and day-off rules. Client-side checks are the main guardrail; server checks are narrower. Read Shift swaps before promising a trade.
Your first week as a chief or program manager
Set up in order. The generator depends on the organization tree, shifts, roles, and block dates being in place first.
- Confirm the Health System, Residency, and Site branch in Residency Settings. Review the seeded Day, Evening, and Night shifts; adjust hours, staffing, and capacity.
- Review the five permission levels, permissions, and yearly quota defaults in User Roles. Role defaults flow to users unless overridden.
- Add or review people in Users. Import via AI asks for Current AY (Immediate start) or Upcoming AY (Matriculating); upcoming stages them for next year only. Admin / chief requires Super User or above.
- In Block Editor, build the academic year: dates, block length, week alignment, and half-blocks. Review B1 through B13, then mark EM versus off-service weeks; unavailable weeks become strong off.
- In Schedule Generator, choose the site and block, then set shifts, staffing, blackouts, and parameters. Run Reality Check, choose a budget, and click Start Simulation.
- Review the Simulation result: OPTIMAL (Proven) or FEASIBLE. Deploy Schedule writes drafts; it does not publish.
- Review drafts in the Schedule editor, then click Publish. There is no unpublish or revert-to-draft control.
- Use Distribute Schedules for personal webcal and public schedule links. Distribution is not publishing.
Calendar sync
Each resident has a personal feed built from published assignments: a webcal:// URL, with an https:// form for apps that prefer it. It covers roughly 30 days back through one year forward and includes only active, published shifts. Overnight shifts roll their end date forward.
Apple and Google Calendar are documented; Outlook is not, so do not assume support. The server caches for 5 minutes, while the app warns changes may take up to 24 hours depending on refresh rate.
Setup steps, the public schedule, and the time-zone caveat are in Calendar sync.
Roles and terminology
Clepsy has five system permission levels; the app label matters more than the internal name.
| UI label | What it is for |
|---|---|
| Admin | Cross-residency setup, migrations, and every role and user, including other Admins. |
| Superduper User | Switches residencies, reviews applications, manages users below Admin, and resets passwords. Cannot create or edit Admin. |
| Super User | Residency-scoped manager: users, roles, chief flags, and residency settings. Onboarding is hidden. |
| Chief Resident | Schedules, swaps, off requests, block availability, promotion, and distribution. |
| Resident | Published schedule, My Schedule, swap requests, and the public schedule. |
PGY-1 through PGY-4 are PGY levels, not system roles. PGY is stored per academic year; the underlying role is usually a service role such as EM Resident. Chief is a per-academic-year flag, not a role; the user editor calls it Admin / chief, and only Super User and above can change it. A flagged resident is treated as a Chief Resident for authorization.
There is no built-in Attending role; a custom role with that name would carry no built-in permissions. Program Director and Coordinator applications map to Super User. System Administrator maps to Admin.
Where to get help
The FAQ is searchable and grouped by Resident, Chief, Admin, and Account or Troubleshooting. For walkthroughs, use Shift swaps, ACGME compliance, Calendar sync, and the Admin guide.
If something is still unclear, email signups@clepsy.cc with your residency, site, and the screen you were on. Include the exact label or message you saw.