Keep the team: 10 AI skills for after they start
shift-swap
the rule that ends the WhatsApp chaos
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: shift-swap description: Turns shift swapping from an argument in a group chat into one written rule, a five field swap slip, and a log that proves who was meant to be on and who approved the change. Use when shifts get covered by WhatsApp, nobody is sure who is on Saturday, and somebody did not turn up. --- # One rule for swaps, and the end of two hundred unread messages on a Sunday You give me your rota, the group chat where swaps currently happen, and the list of who holds which ticket: personal licence, allergen training, keyholder, first aider. You get back a one page swap rule written in the words your team use, a five field swap slip they can send from a phone in twenty seconds, a running swap log kept in one place, a ninety second check the duty manager runs before approving anything, and a monthly sheet that shows nobody has been quietly pushed over the working time limits by a run of covers nobody counted. ## What it does 1. **Write down what the rota already promises each person, before you write any swap rule.** Pull the written statement you gave each member of staff on their first day. GOV.UK says the statement must include "hours and days of work and if and how they may vary (also if employees or workers will have to work on Sundays, during the 'night period' or take overtime)", and that "The employer must provide the principal statement on the first day of employment". For each person write one line: contracted hours a week, the days they are committed to, whether those days are fixed or variable, and whether they have signed anything about the 48 hour week. If a statement is missing or says nothing about hours, that is the first thing to fix, because a swap rule sitting on top of a contract nobody wrote down is a rule you cannot enforce. Do not guess the missing ones. Write "not recorded" and put a date beside it. 2. **Name the one place a swap becomes real, and say out loud that the group chat is not it.** Pick a single log: a printed sheet by the pass, a shared spreadsheet, a page in the rota app. Every swap lands there or it did not happen. The Information Commissioner's Office, writing about keeping employment records, says you "could store employment records centrally rather than locally, so you are not dependent on the availability of individual managers for access". A swap that lives only in a manager's phone dies when that manager is off, when they change phone, or when they leave. The group chat can carry on, and probably will, but the rule is one sentence: a message is a request, the log is the answer. Print that sentence and put it where the rota is. 3. **Cut the swap slip down to five fields so it can be sent while somebody is walking to the bus.** Date of the shift. Shift start and finish. Who is giving it up. Who is taking it. Who approved it, and at what time. Nothing else. No reason, no apology, no medical detail, no family circumstances. The Information Commissioner's Office says you "must identify the minimum amount of personal information you need to hold about your workers, and not hold more information than that", and a swap log that fills up with "my mum is in hospital" is a record you now have to protect, justify and delete on a schedule. If somebody volunteers a reason, it does not go in the log. 4. **Give the duty manager four checks and ninety seconds, in this order.** First, the ticket check: can the person taking the shift legally and safely do it, which means personal licence if they are the only one on for alcohol, allergen training if they will be taking food orders, keyholder if it is a close. Second, the rest gap: GOV.UK states "Workers have the right to 11 hours rest between working days", so a close finishing at 00:30 cannot be followed by an open at 09:00. Third, the break: "Workers have the right to one uninterrupted 20 minute rest break during their working day, if they work more than 6 hours a day", so if the swap turns a five hour shift into a nine hour double, the break has to appear on the rota, not be assumed. Fourth, the weekly rest: the right is to "an uninterrupted 24 hours without any work each week" or "an uninterrupted 48 hours without any work each fortnight", which a person picking up four covers in a row quietly loses. Any check fails, the swap is refused and the reason is one word in the log: rest, ticket, break, or cover. 5. **Count the 48 hour average once a month, not once a swap.** Regulation 4(1) of the Working Time Regulations 1998 says "a worker's working time, including overtime, in any reference period which is applicable in his case shall not exceed an average of 48 hours for each seven days", normally averaged over 17 weeks. Regulation 4(2) puts the duty on you, not on the person who took the extra shifts: "An employer shall take all reasonable steps, in keeping with the need to protect the health and safety of workers, to ensure that the limit specified in paragraph (1) is complied with in the case of each worker employed by him in relation to whom it applies." So once a month, total each person's rostered hours including every swap they picked up, divide by the weeks, and list anyone over 45. Anyone under 18 is a hard stop, not an average: GOV.UK says "If you're under 18, you cannot work more than 8 hours a day or 40 hours a week", and a sixteen year old kitchen porter covering a Saturday double is the most common way a small kitchen breaks this without noticing. 6. **Treat the opt-out as a separate piece of paper, and never as something a swap implies.** GOV.UK says an opt-out from the 48 hour week "must be voluntary and in writing", that "Your employer cannot force you to cancel your opt-out agreement", and that a worker cancelling one "must give your employer at least 7 days' notice" and "may have to give your employer up to 3 months' notice depending on what's in your agreement". Somebody agreeing to cover Friday is not agreeing to opt out. List who has signed one, with the date. Anyone not on that list gets their swaps refused at 48, not argued with at 52. 7. **Do the night check separately, because nights are where hospitality rotas break the rules quietly.** GOV.UK says "Staff who regularly work at least 3 hours during the 'night period' are night workers", that "The night period is 11pm to 6am, unless the worker and employer agree a different night period", and that "Night workers must not work more than an average of 8 hours in a 24-hour period", usually averaged over 17 weeks. A late bar close plus a clean down is three hours after 23:00 without anyone calling it night work. Mark on the rota which shifts cross 23:00, count who is doing three or more hours of that regularly, and put them on the monthly sheet with their own average. 8. **Set a cutoff, and say who owns the shift when the swap fails.** Pick a time: swaps requested more than 48 hours before the shift go in the log and are approved or refused within twelve hours; inside 48 hours they are a phone call to the duty manager, not a message. Then write the sentence that stops every argument: until a swap is approved in the log, the shift belongs to the person originally rostered. That is the whole point of the rule. Nobody gets to post "anyone cover Saturday?", get no reply, and treat silence as cover. Add what happens if a swap turns into a no show, and make it the same procedure you would use for any other absence, handled by your usual process rather than invented on the night. 9. **Review the log monthly, then take out what you no longer need.** Once a month look for three patterns: the same person giving shifts away every week, which is usually a rota that does not fit their life; the same person picking everything up, which is the one heading for the 48 hour list; and the same shift nobody wants, which is a staffing problem wearing a swap costume. Acas warns that a change to a contract can happen through custom and practice, where "terms and conditions change over time and everyone's agreement can be implied", so if you have let one person move permanently onto Tuesdays by swapping every week for a year, write that down properly rather than leaving it informal. Then prune: the Information Commissioner's Office says that once you no longer need workers' information "you should erase it or, if possible, anonymise it". Keep the swap log as long as you keep your rotas and pay records, ask your accountant or HR adviser what that period is, and delete the WhatsApp thread contents you copied out. ## Then it checks 1. Every person on the rota has a line recording contracted hours, committed days, whether hours vary, and whether an opt-out is signed, or the words "not recorded" with a date. 2. Every swap in the log has all five fields filled, including who approved it and the time, and no swap sits in the log approved by nobody. 3. No approved swap leaves less than 11 hours between the end of one shift and the start of the next for either person involved, and any shift over six hours shows a 20 minute break on the rota. 4. The monthly sheet lists every person's average weekly hours including swaps, names anyone over 45, and shows anyone over 48 as either holding a signed opt-out or having the swap reversed. 5. Nobody under 18 appears on the rota for more than 8 hours in a day or 40 hours in a week after swaps are applied. 6. The swap log contains no reason, no health detail and no family circumstance, and every entry that had one has had it removed with the date of removal noted. 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 write a swap into the log as approved unless a named person approved it, because the value of the log is that it answers one question on a Monday morning: who said this was fine. A log with unattributed entries is a group chat with better formatting. - Never record why somebody wanted the shift off. A reason in a rota log is health, family or religious information sitting in a file that half the team can see, and once it is written down you have to justify holding it, secure it, and delete it. - Never treat a run of accepted swaps as a permanent change to somebody's hours. Either it is a swap, in which case it ends, or it is a new pattern, in which case it is agreed and written down. Acas says a change must be agreed by both sides unless the contract allows otherwise. - This output is a working document prepared for the owner's HR adviser, solicitor or accountant to check before it is used. It does not decide anyone's contractual hours, it is not a working time compliance audit, and it is not employment law advice. ## Built from - GOV.UK, "Maximum weekly working hours", https://www.gov.uk/maximum-weekly-working-hours and https://www.gov.uk/maximum-weekly-working-hours/weekly-maximum-working-hours-and-opting-out, no publication date shown on the page, read 14 September 2026: the 48 hour average over 17 weeks, the under 18 limits that shaped the hard stop in step 5, and the opt-out wording that became step 6. - legislation.gov.uk, "The Working Time Regulations 1998, regulation 4", https://www.legislation.gov.uk/uksi/1998/1833/regulation/4/made, no publication date shown on the page, read 14 September 2026: the exact wording of the limit and, more importantly, regulation 4(2) placing the duty on the employer, which is why step 5 is a monthly count the owner runs rather than something left to the person picking up covers. - GOV.UK, "Rest breaks at work", https://www.gov.uk/rest-breaks-work, no publication date shown on the page, read 14 September 2026: the 11 hours between working days, the 20 minute break above six hours, and the 24 hours a week or 48 hours a fortnight, which are the second, third and fourth of the duty manager's four checks in step 4. - GOV.UK, "Night working hours", https://www.gov.uk/night-working-hours, no publication date shown on the page, read 14 September 2026: the definition of a night worker, the 11pm to 6am night period and the average of 8 hours in 24, which shaped the separate night check in step 7. - GOV.UK, "Employment contracts and conditions: Written statement of employment particulars", https://www.gov.uk/employment-contracts-and-conditions/written-statement-of-employment-particulars, no publication date shown on the page, read 14 September 2026: the requirement to state hours and days of work and if and how they may vary, which is why step 1 starts with the written statement rather than with the rota. - Acas, "Changing an employment contract: Employer responsibilities", https://www.acas.org.uk/changing-an-employment-contract/employer-responsibilities, last updated 10 August 2026, read 14 September 2026: that changes must be agreed by both sides, and the custom and practice warning that shaped the monthly review in step 9 and the third rule above. - Information Commissioner's Office, "Employment practices and data protection: keeping employment records - Collecting and keeping employment records", https://ico.org.uk/for-organisations/uk-gdpr-guidance-and-resources/employment/employment-practices-and-data-protection-keeping-employment-records/collecting-and-keeping-employment-records/, no publication date shown on the page, read 14 September 2026: central rather than local records, holding the minimum information needed, and erasing what you no longer need, which shaped steps 2, 3 and 9 and the rule about never recording a reason.
Prompt for Codex
# shift-swap ## You are given A folder from one UK hospitality business holding: the rota for the period, as a spreadsheet, an app export or a photograph of the printed sheet; an export or copy-out of the group chat where swaps currently happen; the written statement of employment particulars for each person, or whatever the owner has instead; the list of who holds which ticket, meaning personal licence, allergen training, keyholder and first aider, with dates; the list of who has signed a 48 hour opt-out, with dates; and each person's date of birth or a marker saying who is under 18. Names are spelled several ways between the rota and the chat, and many swaps exist only as messages. ## Produce Write into an `output/` folder next to the inputs: 1. `contracted-hours.csv` with these columns in this order: `name`, `contracted_hours_per_week`, `committed_days`, `hours_vary`, `sunday_night_or_overtime_stated`, `opt_out_signed`, `opt_out_date`, `under_18`, `statement_source_file`, `date_checked`. Any value with no source reads `not recorded` and carries the date it was checked. 2. `swap-log.csv` with columns: `swap_ref`, `shift_date`, `shift_start`, `shift_finish`, `given_up_by`, `taken_by`, `requested_at`, `approved_by`, `approved_at`, `outcome`, `refusal_reason`. `swap_ref` is S001 upward. `outcome` is exactly one of `approved`, `refused`, `not approved by anyone`. `refusal_reason` is exactly one of `rest`, `ticket`, `break`, `cover`, or empty where the outcome is approved. 3. `swap-checks.csv` with columns: `swap_ref`, `person`, `previous_shift_finish`, `next_shift_start`, `hours_between`, `rest_11_hours_met`, `shift_length_hours`, `break_20_minutes_on_rota`, `consecutive_days_worked`, `longest_gap_without_24_hours_off`, `ticket_required`, `ticket_held`, `ticket_expiry`, `check_result`. One row per person affected by each swap, so a swap produces two rows. `check_result` is `all four met` or names the first check that is not met. 4. `monthly-hours.csv` with columns: `name`, `reference_period_start`, `reference_period_end`, `weeks_in_period`, `rostered_hours`, `swap_hours_added`, `swap_hours_given_away`, `total_hours`, `average_weekly_hours`, `over_45`, `over_48`, `opt_out_signed`, `under_18`, `longest_day_hours`, `highest_week_hours`. Sorted by average weekly hours, highest first. 5. `night-workers.csv` with columns: `name`, `shifts_crossing_2300`, `hours_after_2300_total`, `average_hours_after_2300_per_shift`, `three_or_more_hours_regularly`, `average_hours_per_24_hour_period`, `reference_period_start`, `reference_period_end`, `source_file`. 6. `tickets.csv` with columns: `name`, `personal_licence`, `personal_licence_expiry`, `allergen_training_date`, `keyholder`, `first_aider`, `source_file`, `date_checked`. 7. `swap-slip.txt` - the blank five field slip, with exactly these five fields and nothing else: date of the shift; shift start and finish; who is giving it up; who is taking it; who approved it and at what time. 8. `reasons-removed.csv` with columns: `swap_ref`, `field_it_was_in`, `type_of_detail`, `date_removed`. `type_of_detail` is exactly one of `health`, `family`, `religious observance`, `other personal`. The detail itself is never copied into this file or any other. 9. `gaps.md` - a numbered list of: every swap with no named approver or no approval time; every person with no written statement on file; every swap failing one of the four checks; every person over 45 average weekly hours; every person over 48 without a signed opt-out; every person under 18 rostered over 8 hours in a day or 40 in a week after swaps; every expired ticket; and every name that appeared in more than one spelling. ## Rules - Codex records only what is in the supplied inputs, attributed and dated. Never invent a shift, a name, an approval, an hours figure or a ticket. - Never write a swap into the log as approved unless a named person and a time were supplied. With no approver the outcome reads `not approved by anyone` and the shift stays with the person originally rostered. - Never copy a reason, a health detail, a family circumstance or a religious observance out of the group chat into any output file. Drop it, count it in `reasons-removed.csv` by type only, and never restate the detail. - Never state or imply that a rota, a swap or an hours figure is lawful, compliant, safe or acceptable. Show the arithmetic against the limits the owner supplied and stop. - Never treat a run of accepted swaps as a change to anyone's contracted hours. Record the swaps and list the pattern in `gaps.md`. - Never average an under 18's hours. The under 18 columns are daily and weekly figures compared against the daily and weekly limits supplied, and an exceedance is a row in `gaps.md`. - Every date, hour and ticket must trace to a supplied input file named in the row. Never fill a contracted hours figure from the rota when the written statement is missing. - Use British English, £ where money appears and DD Month YYYY dates. No em dashes. - Every file ends with this line: this is a working document prepared for the owner's HR adviser, solicitor or accountant to check before it is used. It is not advice, it does not decide anyone's contractual hours, and it is not a working time compliance audit. ## Return The absolute path of each file written, the row count of each CSV, the number of swaps read from the chat and how many had a named approver, the number failing each of the four checks broken down by reason, every person over 45 average weekly hours with their figure, every person over 48 and whether an opt-out is on file, every person under 18 exceeding a daily or weekly figure, the count of night workers identified, the number of personal details removed by type, and the `gaps.md` item count.
Built from the best public work on this
Sources for shift-swap
Everything below was opened and read on 14 September 2026. Nothing is cited that could not be loaded.
1. GOV.UK, "Maximum weekly working hours"
https://www.gov.uk/maximum-weekly-working-hours and the sub-page https://www.gov.uk/maximum-weekly-working-hours/weekly-maximum-working-hours-and-opting-out, no publication date shown on the page, read 14 September 2026.
GOV.UK is the UK government's own statement of the working time rules, written for workers and employers rather than lawyers, and it is the page a member of staff will read if they ever go looking. The lines that drove the skill are short. On the limit: "You cannot work more than 48 hours a week on average", "normally averaged over 17 weeks". On young workers: "If you're under 18, you cannot work more than 8 hours a day or 40 hours a week." On the opt-out: "You can choose to work more than 48 hours a week on average if you're over 18", "It must be voluntary and in writing", "Your employer cannot force you to cancel your opt-out agreement", "You must give your employer at least 7 days' notice" and "You may have to give your employer up to 3 months' notice depending on what's in your agreement." The page also lists who cannot opt out at all, including airline staff, workers on ships or boats, and road transport workers.
The 17 week averaging is why step 5 counts monthly rather than per swap. A single Saturday double never breaks the limit on its own, and checking it swap by swap produces false alarms and trains the duty manager to ignore the check. The under 18 rule is the opposite shape, a hard daily and weekly ceiling with no averaging and no opt-out, which is why it appears as a separate stop in step 5 and as its own line in the checks. The opt-out wording became step 6 in full, because the failure this skill is built to prevent is a manager treating "he was happy to cover" as consent to exceed the limit.
Where the skill departs from the source: GOV.UK is written to tell a worker what their rights are. The skill flips it round and makes the owner the one who counts, because the owner is the one holding the risk. The skill also sets its alarm at 45 hours rather than 48, which is nowhere on the page. That is a deliberate operational margin so a swap is refused before the limit is crossed rather than after, and it is presented as a working practice, not as a legal figure.
2. legislation.gov.uk, "The Working Time Regulations 1998, regulation 4"
https://www.legislation.gov.uk/uksi/1998/1833/regulation/4/made, no publication date shown on the page, read 14 September 2026.
This is the statutory instrument itself, published by The National Archives, and it is the text behind the GOV.UK summary. Regulation 4(1): "a worker's working time, including overtime, in any reference period which is applicable in his case shall not exceed an average of 48 hours for each seven days." Regulation 4(2) is the one that changed how the skill is written: "An employer shall take all reasonable steps, in keeping with the need to protect the health and safety of workers, to ensure that the limit specified in paragraph (1) is complied with in the case of each worker employed by him in relation to whom it applies."
That second paragraph is the whole argument for step 5 existing as a monthly count the owner runs. The common small-business belief is that if a member of staff volunteers for the extra shifts, the responsibility has moved to them. The regulation says the employer must take all reasonable steps. A monthly total, written down, with anyone over 45 named, is a reasonable step that takes fifteen minutes. Nothing in the skill claims it is sufficient, because that is not a judgement this document is entitled to make.
Where the skill departs: the regulation allows a 17 week rolling period, and in some cases 26 weeks under regulation 21. The skill does not attempt to reproduce that machinery, because a pub owner with a spreadsheet will get it wrong. It uses a monthly snapshot as an early warning and sends the actual averaging question to the owner's HR adviser. Saying "check this properly with someone qualified" is more useful than a half-implemented reference period calculation that looks authoritative and is not.
3. GOV.UK, "Rest breaks at work"
https://www.gov.uk/rest-breaks-work, no publication date shown on the page, read 14 September 2026.
Three lines from this page became three of the four checks the duty manager runs in step 4, and they were chosen because each one is broken by an ordinary hospitality swap without anybody intending it. "Workers have the right to one uninterrupted 20 minute rest break during their working day, if they work more than 6 hours a day." "Workers have the right to 11 hours rest between working days." "Workers have the right to either: an uninterrupted 24 hours without any work each week [or] an uninterrupted 48 hours without any work each fortnight."
The 11 hour rule is the one that makes a close followed by an open impossible, and it is the single most useful sentence in this skill, because a close-then-open is the swap a tired team agrees to most readily. The 20 minute rule matters because a swap that turns a five hour shift into a nine hour double silently creates a break entitlement that was never rostered. The weekly rest rule matters because it is the one that disappears across a run of four covers where every individual swap looked fine.
Where the skill departs: the page is about the worker's right. The skill turns each right into a yes or no question asked before approval, with a one word refusal reason recorded in the log. That conversion from right to pre-approval test is the skill's own design, not the page's, and it is the part that actually changes what happens on a Friday.
4. GOV.UK, "Night working hours"
https://www.gov.uk/night-working-hours, no publication date shown on the page, read 14 September 2026.
"Staff who regularly work at least 3 hours during the 'night period' are night workers." "The night period is 11pm to 6am, unless the worker and employer agree a different night period." "Night workers must not work more than an average of 8 hours in a 24-hour period. The average is usually calculated over 17 weeks, but it can be over a longer period of up to 52 weeks if the workers and the employer agree."
This produced step 7 as a separate check rather than a line inside step 4. The reason is that a bar close plus a clean down routinely puts somebody past 02:00 without anybody in the building using the words "night work", so the category is missed rather than breached. Marking which rostered shifts cross 23:00 is a five minute job on a rota and it makes the population visible, which is the only way the average can then be counted.
Where the skill departs: the page mentions a health assessment entitlement on a linked sub-page that was not opened, so the skill says nothing about health assessments at all rather than describing something unread. That gap is recorded here deliberately.
5. GOV.UK, "Employment contracts and conditions: Written statement of employment particulars"
https://www.gov.uk/employment-contracts-and-conditions/written-statement-of-employment-particulars, no publication date shown on the page, read 14 September 2026.
The line that shaped step 1 is the requirement that the principal statement includes "hours and days of work and if and how they may vary (also if employees or workers will have to work on Sundays, during the 'night period' or take overtime)", together with "The employer must provide the principal statement on the first day of employment".
The skill starts here rather than at the rota because a swap rule is only enforceable against something written down. If nobody recorded whether a person's days are fixed or variable, then "you agreed to work Saturdays" is an argument rather than a fact, and the swap log cannot settle it. Step 1 deliberately allows the answer "not recorded" with a date, because a skill that forces an owner to invent a contractual term in order to complete step 1 has created the exact problem it was meant to prevent.
Where the skill departs: the page lists many other required particulars, including pay, holiday and probation. The skill uses only the hours and days item and ignores the rest, because widening step 1 into a full contract audit would stop an owner finishing it in an evening.
6. Acas, "Changing an employment contract: Employer responsibilities"
https://www.acas.org.uk/changing-an-employment-contract/employer-responsibilities, last updated 10 August 2026, read 14 September 2026.
Acas is the statutory advisory service and its guidance is what a tribunal expects an employer to have read. Two lines mattered. "You must both agree to the changes. This is unless there's a clause in the contract that allows you to make a change without agreement." And, in its list of ways a contract change can come about, that a change can happen through custom and practice, where "terms and conditions change over time and everyone's agreement can be implied".
The custom and practice point is the hidden cost of an informal swap culture, and it is why step 9 reviews the log for somebody who has swapped onto the same day every week for a year. That person may now have a contractual pattern nobody agreed to on purpose. Naming it in the monthly review turns a slow accident into a decision.
Where the skill departs: Acas is writing about deliberate contract changes and about dismissal and re-engagement, which is a subject far beyond a swap log. The skill uses only the agreement principle and the custom and practice warning, and it sends the actual question of whether a pattern has become contractual to the owner's HR adviser rather than answering it.
7. Information Commissioner's Office, "Employment practices and data protection: keeping employment records - Collecting and keeping employment records"
https://ico.org.uk/for-organisations/uk-gdpr-guidance-and-resources/employment/employment-practices-and-data-protection-keeping-employment-records/collecting-and-keeping-employment-records/, no publication date shown on the page, read 14 September 2026.
The ICO is the UK data protection regulator. Three lines shaped the skill. On minimisation: "you must identify the minimum amount of personal information you need to hold about your workers, and not hold more information than that." On where records live: "you could store employment records centrally rather than locally, so you are not dependent on the availability of individual managers for access." On disposal: "Once you no longer need the information, you should erase it or, if possible, anonymise it."
The central storage line is the argument for step 2, and it is a better argument than "group chats are untidy" because it names the real failure: the manager who holds the only record of Saturday's cover is off, has changed phone, or has left. The minimisation line is the argument for the five field slip in step 3 and for the rule against recording reasons. A swap log that accumulates "hospital", "court", "her dad" has turned into a file of health and family information that the owner now has to secure, justify and delete, held in a place where it can be screenshotted by anyone in the chat.
Where the skill departs: the ICO page sets no retention period and says so plainly, noting that data protection law does not fix time limits. The skill therefore refuses to give a number for how long a swap log should be kept and hands that question to the owner's accountant or HR adviser, alongside their rota and pay records. Inventing a figure here would have been the easiest sentence to write and the least defensible.
Note on access: this page returns HTTP 403 to the WebFetch tool. It was retrieved with curl using a normal browser user agent and read as text. The parent page at the same path without the final segment is a contents list only and carries none of the quoted wording.
Best public prompt we found for this job
The closest public project is **MandarJoshii/shiftswap**, described as "Trade shifts, not text messages. A full-stack shift scheduling and swap platform." Read from https://api.github.com/repos/MandarJoshii/shiftswap on 14 September 2026: **0 stars, 0 forks, created 2 September 2026, last pushed 6 September 2026, no licence specified.** It is a fortnight old and unstarred, so it is included as a design reference and nothing more. The README was read at https://raw.githubusercontent.com/MandarJoshii/shiftswap/main/README.md.
The one line worth copying is the state machine: "A full swap lifecycle state machine: `PENDING → APPROVED` or `PENDING → REJECTED`", with "automatic rejection of competing claims once one is approved". That is exactly the rule this skill puts in step 8 in plain English: until a swap is approved in the log, the shift belongs to the person originally rostered, and once one person has it, everyone else's offer is dead. The overlap test, "an employee cannot claim a shift that overlaps a shift they already hold", is the same idea as the rest gap check, only stricter in the wrong direction: it stops a double booking but would happily allow a close followed by an open.
What was deliberately not copied: everything else. The project is software that assumes a database, a login and a manager at a screen, and it enforces nothing about rest, breaks, night work or the 48 hour average, because those are UK rules and it is not a UK compliance tool. A hospitality owner with six staff does not need a Prisma transaction, they need a printed sheet by the pass and four questions a duty manager can answer in ninety seconds. The skill also rejects the project's implicit model where staff post shifts to an open pool and anyone claims them, because an open pool is precisely what produces one person picking up every cover and crossing the working time limits without anyone counting.
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