The rota, without the WhatsApp chaos: 10 AI skills for shifts
night-worker-health-check
find out who's legally a night worker before anyone else has to tell you
How the two work together
Claude thinks it through. Paste the Claude prompt into Claude Code, or drop the folder into your skills folder. Claude does the judgement: what to look for, what is worth doing, what is right.
Codex gets it done. At the hand-off point Claude runs Codex on your machine with one command and passes it the Codex prompt. Codex does the mechanical part and hands the result back. Claude checks it before you see it.
No API key to set up: Claude calls the Codex you already have installed. If Codex is not installed, Claude does that half itself and tells you.
Prompt for Claude
--- name: night-worker-health-check description: Tracks who on the rota actually meets the legal definition of a night worker, and whether each one has been offered the free health assessment the Working Time Regulations 1998 require before they started and at regular intervals since, because the duty is tied to a specific definition most managers apply by instinct rather than by the hours actually worked. It checks the assessment was offered, not just scheduled, and that a refusal was recorded rather than silently dropped. Use when you roster anyone onto a regular late or early shift, and before you assume "they only do a couple of lates" puts someone outside the rule. --- # Who is legally a night worker, and whether they have had the health check they are owed You give this each worker's rota pattern. You get back who actually meets the night worker definition, whether each one has had a health assessment offered before starting and at proper intervals since, and what happened with anyone who declined. ## What it does 1. **Apply the actual definition, not a rough guess.** Regulation 2(1) of the Working Time Regulations 1998 defines "night time" as a period "the duration of which is not less than seven hours" and "which includes the period between midnight and 5 a.m.", defaulting to "the period between 11 p.m. and 6 a.m." where no agreement sets a different window. A "night worker" is then someone "who, as a normal course, works at least three hours of his daily working time during night time." A kitchen porter who regularly finishes at 1am, working from 9pm, is inside this definition even if nobody has ever called them a night worker, because three hours of an 11pm-to-6am window is a low bar to cross. 2. **Offer the free assessment before the pattern starts, not after someone complains of being tired.** GOV.UK states: "Employers must offer workers a free health assessment before they become a night worker." The offer has to happen before the regular pattern begins, which means the trigger is the rota decision, not the first bad night. 3. **Keep offering it at proper intervals, not once and forgotten.** Regulation 7(1) requires the employer to ensure each night worker has "the opportunity of a free health assessment at regular intervals" appropriate to their circumstances, and GOV.UK confirms how often later ones are due depends "on the results of the assessment for each worker." A single assessment on day one with nothing scheduled since is not meeting a duty that is explicitly ongoing. 4. **Record a decline properly, because it is not the same as never having offered it.** GOV.UK notes workers "do not have to accept" the assessment. The duty is to offer it; a worker's right to decline does not remove the employer's duty to make the offer and to be able to show, later, that it was made. 5. **Act on a result that links health problems to night work.** Where that link is found, GOV.UK is direct: "The employer must find them other suitable work, where possible." This is not a recommendation to think about; it is the stated consequence of a confirmed result, and the rota needs to reflect any move that followed. ## Then it checks 1. Every worker on the rota is checked against the night worker definition using their actual shift hours, not their job title. 2. Every confirmed night worker has a recorded offer of a health assessment made before their night pattern began. 3. Every confirmed night worker has a recorded assessment interval since the first one, or a recorded reason none has been offered since. 4. Any decline is recorded with the date it was offered and the date it was declined, not left blank. 5. Any assessment result that identified a health problem linked to night work has a recorded response: suitable day work found, or a recorded reason it was not possible. Any check fails: name it, redo that step once. Failed twice: say what is wrong and stop. ## Rules - Public information only. - Never invent a fact, a number or a quote. - Anything sent in someone's name says whose name it is. - Never exclude a worker from the night worker definition because their shift is "only occasional"; the test is whether night work is a normal course of their pattern, not how it is described informally. - Never record an assessment as declined without a date and without confirming the offer itself happened first. - Never leave a confirmed linked health result unresolved in the record; it must show either the move to suitable work or the stated reason none was possible. - This output is a working document prepared for the owner to check against their own rota and occupational health records, and for their adviser to check any case where a transfer to day work has not been possible. It applies the Working Time Regulations 1998 to the rota supplied; it is not legal advice and it is not confirmation that every assessment duty has been met. ## Built from - The Working Time Regulations 1998, regulation 2, https://www.legislation.gov.uk/uksi/1998/1833/regulation/2, SI 1998/1833, read 3 November 2026: the definitions of night time and night worker, behind step 1. - The Working Time Regulations 1998, regulation 7, https://www.legislation.gov.uk/uksi/1998/1833/regulation/7, SI 1998/1833, read 3 November 2026: the duty to offer a health assessment before night work starts and at regular intervals, behind steps 2 and 3. - GOV.UK, "Night working hours: Health assessments", https://www.gov.uk/night-working-hours/health-assessments, published by the Department for Business and Trade, no revision date shown on the page, read 3 November 2026: the plain-English statement of the offer, the refusal position, the interval depending on results, and the duty to move a worker to suitable day work where a link is confirmed, behind steps 2, 4 and 5.
Prompt for Codex
# night-worker-health-check ## You are given The rota for each worker, with actual shift start and end times for a representative period. Any relevant or workforce agreement that sets a different night-time window than the default 11pm to 6am, if one exists. Each worker's health assessment history: date offered, date completed or declined, and the result if completed, stated as `no link to night work found`, `link to night work found`, or `not yet assessed`. Any record of a worker being moved to day work following a confirmed link. ## Produce Write into a `./night-worker-health-check-output/` folder: 1. `night-worker-status.csv` with columns: `worker_name`, `shift_pattern_summary`, `hours_within_night_window_per_shift`, `normal_course_confirmed`, `night_window_used`, `night_worker_verdict`. `night_window_used` is `11pm to 6am default` or the agreed alternative. `normal_course_confirmed` is `yes` or `no`, based on whether the pattern is regular rather than a one-off. `night_worker_verdict` is `night worker` or `not a night worker`. 2. `assessment-offer-log.csv` with columns: `worker_name`, `date_became_night_worker_or_started`, `date_assessment_offered`, `offered_before_start`, `response`, `response_date`. `offered_before_start` is `yes`, `no`, or `cannot confirm`. `response` is `completed`, `declined`, or `no response recorded`. 3. `assessment-interval-log.csv` with columns: `worker_name`, `assessment_number`, `assessment_date`, `result`, `days_since_previous_assessment`, `verdict`. `verdict` is `pass` or `no further assessment offered since first one`. 4. `linked-result-action.csv` with columns: `worker_name`, `assessment_date`, `result`, `action_taken`, `action_date`. `action_taken` is `moved to suitable day work`, `no suitable work available, reason recorded`, or `no action recorded`. 5. `gaps.md` - a numbered list of: every worker marked `night worker` with no `completed` or `declined` row in `assessment-offer-log.csv`; every `offered_before_start` of `no` or `cannot confirm`; every `no further assessment offered since first one` row; and every `linked-result-action.csv` row where `action_taken` is `no action recorded`, listed first as the most serious. ## Rules - Codex counts, matches and checks. It never decides whether a result constitutes a confirmed link to night work, and it never decides what suitable day work would look like; it records what was supplied and flags what is missing. - `hours_within_night_window_per_shift` and `normal_course_confirmed` are calculated from the supplied rota pattern, never assumed from a job title or a manager's description of the role. - A worker is marked `night worker` only where the supplied hours and pattern meet the regulation 2(1) definition; a worker who occasionally covers a late shift but does not normally work three or more hours in the night window is marked `not a night worker` and excluded from the remaining checks, with the reason shown. - Never mark `linked-result-action.csv` as resolved without either a recorded move to day work or a recorded reason none was possible. - Use British English and DD Month YYYY dates. No em dashes in any file you write. - Every file ends with this line: this is a working document prepared for the owner to check against their own rota and occupational health records, and for their adviser to check any case where a transfer to day work has not been possible. It applies the Working Time Regulations 1998 to the rota supplied and is not confirmation that every assessment duty has been met. ## Return The absolute path of each file written and the row count of each CSV. The number of workers confirmed as night workers and the window used. Every worker with no recorded offer or no recorded response. Every worker with no second assessment logged since the first. Every linked result with no recorded action, named first. The `gaps.md` item count.
Built from the best public work on this
Sources for night-worker-health-check
Everything below was opened and read on 3 November 2026. Nothing is cited that could not be loaded.
1. The Working Time Regulations 1998, regulation 2
https://www.legislation.gov.uk/uksi/1998/1833/regulation/2, SI 1998/1833, read 3 November 2026.
Regulation 2(1) defines "night time" as a period "the duration of which is not less than seven hours" and "which includes the period between midnight and 5 a.m.", set by a relevant agreement or, "in default of such a determination," the period "between 11 p.m. and 6 a.m." The same regulation defines a "night worker" as a worker "who, as a normal course, works at least three hours of his daily working time during night time", or who is likely to during a specified proportion of annual working time under an agreement.
This definition is the whole reason step 1 exists as a separate step rather than something managers are trusted to eyeball. Three hours inside an 11pm-to-6am window, as a normal course, is a low threshold, and a worker nobody thinks of as a "night shift" person, someone finishing a 6pm-to-1am closing shift several times a week, meets it anyway.
Where the skill departs: the "likely... proportion of annual working time" limb of the definition depends on a specified agreement figure that most small hospitality businesses will not have set, so this skill's check relies on the "normal course, three hours" limb unless such an agreement is supplied.
2. The Working Time Regulations 1998, regulation 7
https://www.legislation.gov.uk/uksi/1998/1833/regulation/7, SI 1998/1833, read 3 November 2026.
Regulation 7(1) requires an employer to ensure a night worker is given "the opportunity of a free health assessment" before being assigned night work, and, for a worker already doing night work when the duty applies, "at regular intervals" after that. Regulation 7(6), as summarised by GOV.UK below, ties the consequence of a confirmed health problem to a transfer duty.
Step 2 and step 3 split the single word "opportunity" into two separate checks, before the pattern starts and then repeatedly afterwards, because the regulation itself uses two different moments and a system that only checks the first one misses half the duty.
Where the skill departs: regulation 7's provisions for young night workers, who have their own separate assessment timing requirements, are not covered here; a young worker's shifts should be checked with young-worker-rota instead.
3. GOV.UK, "Night working hours: Health assessments"
https://www.gov.uk/night-working-hours/health-assessments, published by the Department for Business and Trade, no revision date shown on the page, read 3 November 2026.
This page turns the regulation's language into the practical statements the skill's steps quote directly. "Employers must offer workers a free health assessment before they become a night worker." Workers "do not have to accept." How often later assessments are due "depends on the results of the assessment for each worker." And where a health professional links a problem to night work, "the employer must find them other suitable work, where possible."
Step 4 and the linked-result-action check exist because of the gap between "must offer" and "must accept": a worker's decline is a legitimate outcome, but it only closes the loop if the offer itself is on record, and step 5 exists because the consequence of a confirmed link is not advisory language, it is a stated duty with only one named escape, "where possible", which itself needs a recorded reason rather than a shrug.
Where the skill departs: the page's note that assessments "can take different forms, such as a questionnaire designed with a health professional's input" is background only; this skill does not check the format of the assessment, only whether it was offered, completed or declined, and at what interval.
Best public prompt we found for this job
The closest public artefact is the `crm-hygiene-check` skill in Anthropic's `knowledge-work-plugins` repository, raw source at https://raw.githubusercontent.com/anthropics/knowledge-work-plugins/main/sales/skills/crm-hygiene-check/SKILL.md. The repository has 34,654 stars, read from api.github.com on 3 November 2026. It is a CRM data audit, not an occupational health tracker, but the shape is close: identify which records actually meet a defined category, then check each one against a required field that is easy to assume is filled in and often is not.
The useful part is its treatment of a missing value as information, not an error to paper over:
say "blank" versus "not queried"
We took that distinction directly into `assessment-offer-log.csv`'s three-way `response` field, `completed`, `declined`, or `no response recorded`, because a worker who was never actually offered the assessment is a different, more serious gap than one who was offered it and simply has not replied yet, and collapsing both into "no" loses exactly the distinction that matters for proving the duty was met.
We did not copy two things. A CRM record's category, whether a deal is "open" or "closed", rarely changes who the audit applies to; this skill's first step is entirely about correctly identifying who the duty even applies to, since the night worker definition itself is the part most likely to be got wrong before any health-assessment question is reached. And we did not copy its flat treatment of every gap as equally worth flagging; a missing second assessment and an unresolved confirmed health link are not the same severity, so `gaps.md` here is explicitly ordered, with the unresolved linked result listed first.
Want this running in your business?
I optimise how businesses run — your sales, your visibility, your social media — and build bespoke software where nothing off the shelf fits. The first conversation is free. Work starts from £150 a day.
Foxera