skilldrop-cli 1.6.0 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/catalogue.json +25 -2
- package/model-routing.json +20 -0
- package/package.json +1 -1
- package/packs/event-planner/pack.json +61 -0
- package/packs/event-planner/skills/run-of-show/SKILL.md +144 -0
- package/packs/event-planner/skills/run-of-show/evals/eval_queries.json +30 -0
- package/packs/event-planner/skills/run-of-show/evals/evals.json +103 -0
- package/packs/event-planner/skills/run-of-show/evals/files/1/agenda.md +16 -0
- package/packs/event-planner/skills/run-of-show/evals/files/2/schedule.csv +8 -0
- package/packs/event-planner/skills/run-of-show/evals/files/3/notes.txt +3 -0
- package/packs/event-planner/skills/run-of-show/evals/files/4/sessions_export.csv +25 -0
- package/packs/event-planner/skills/run-of-show/evals/files/4/venue_and_crew.txt +27 -0
- package/packs/event-planner/skills/run-of-show/evals/files/5/runsheet_v4.csv +28 -0
- package/packs/event-planner/skills/run-of-show/evals/files/5/venue_and_suppliers.txt +22 -0
- package/packs/event-planner/skills/run-of-show/evals/files/6/acts_from_booker.csv +26 -0
- package/packs/event-planner/skills/run-of-show/evals/files/6/venue_rooms_and_crew.txt +14 -0
- package/packs/event-planner/skills/run-of-show/evals/files/7/runsheet_draft_v4.csv +25 -0
- package/packs/event-planner/skills/run-of-show/evals/files/7/venue_and_fixed_times.txt +24 -0
- package/packs/event-planner/skills/run-of-show/examples/product-launch.md +77 -0
- package/packs/event-planner/skills/run-of-show/examples/product-launch.svg +58 -0
- package/packs/event-planner/skills/run-of-show/manifest.json +44 -0
- package/packs/event-planner/skills/run-of-show/scripts/show_check.py +295 -0
- package/packs/event-planner/skills/run-of-show/templates/show.json +15 -0
- package/packs/event-planner/skills/seating-plan/SKILL.md +155 -0
- package/packs/event-planner/skills/seating-plan/evals/eval_queries.json +30 -0
- package/packs/event-planner/skills/seating-plan/evals/evals.json +164 -0
- package/packs/event-planner/skills/seating-plan/evals/files/1/guests.csv +31 -0
- package/packs/event-planner/skills/seating-plan/evals/files/10/hall_notes.txt +13 -0
- package/packs/event-planner/skills/seating-plan/evals/files/10/quiz_night_registrations.csv +67 -0
- package/packs/event-planner/skills/seating-plan/evals/files/11/notes_for_the_plan.txt +21 -0
- package/packs/event-planner/skills/seating-plan/evals/files/11/rsvp_list.csv +77 -0
- package/packs/event-planner/skills/seating-plan/evals/files/11/table_plan_draft.csv +78 -0
- package/packs/event-planner/skills/seating-plan/evals/files/2/table-plan.txt +8 -0
- package/packs/event-planner/skills/seating-plan/evals/files/3/brief.txt +4 -0
- package/packs/event-planner/skills/seating-plan/evals/files/3/guests.csv +49 -0
- package/packs/event-planner/skills/seating-plan/evals/files/4/rsvp_export.csv +127 -0
- package/packs/event-planner/skills/seating-plan/evals/files/4/seating_notes.txt +21 -0
- package/packs/event-planner/skills/seating-plan/evals/files/5/organiser_notes.txt +10 -0
- package/packs/event-planner/skills/seating-plan/evals/files/5/registrations.csv +93 -0
- package/packs/event-planner/skills/seating-plan/evals/files/5/table_plan_v3.csv +94 -0
- package/packs/event-planner/skills/seating-plan/evals/files/6/bridgets_notes.txt +30 -0
- package/packs/event-planner/skills/seating-plan/evals/files/6/ticket_export.csv +117 -0
- package/packs/event-planner/skills/seating-plan/evals/files/6/venue_floorplan_notes.txt +14 -0
- package/packs/event-planner/skills/seating-plan/evals/files/7/keep_apart_CONFIDENTIAL.txt +9 -0
- package/packs/event-planner/skills/seating-plan/evals/files/7/prom_seating_v3.csv +101 -0
- package/packs/event-planner/skills/seating-plan/evals/files/7/ticket_list.csv +101 -0
- package/packs/event-planner/skills/seating-plan/evals/files/7/venue_info.txt +16 -0
- package/packs/event-planner/skills/seating-plan/evals/files/8/registrations_export.csv +147 -0
- package/packs/event-planner/skills/seating-plan/evals/files/8/room_layout.md +22 -0
- package/packs/event-planner/skills/seating-plan/evals/files/8/seating_requests.txt +31 -0
- package/packs/event-planner/skills/seating-plan/evals/files/9/guest_list.csv +84 -0
- package/packs/event-planner/skills/seating-plan/evals/files/9/notes.txt +16 -0
- package/packs/event-planner/skills/seating-plan/evals/files/9/table_plan.csv +85 -0
- package/packs/event-planner/skills/seating-plan/examples/wedding-dinner.md +61 -0
- package/packs/event-planner/skills/seating-plan/examples/wedding-dinner.svg +39 -0
- package/packs/event-planner/skills/seating-plan/manifest.json +44 -0
- package/packs/event-planner/skills/seating-plan/scripts/seating_check.py +324 -0
- package/packs/event-planner/skills/seating-plan/templates/seating.json +28 -0
- package/packs/experience-design/pack.json +5 -0
- package/packs/experience-design/skills/locale-check/SKILL.md +139 -0
- package/packs/experience-design/skills/locale-check/evals/eval_queries.json +38 -0
- package/packs/experience-design/skills/locale-check/evals/evals.json +104 -0
- package/packs/experience-design/skills/locale-check/evals/files/1/budget.json +1 -0
- package/packs/experience-design/skills/locale-check/evals/files/1/locales/ar.json +16 -0
- package/packs/experience-design/skills/locale-check/evals/files/1/locales/de.json +12 -0
- package/packs/experience-design/skills/locale-check/evals/files/1/locales/en.json +12 -0
- package/packs/experience-design/skills/locale-check/evals/files/1/locales/pl.json +12 -0
- package/packs/experience-design/skills/locale-check/evals/files/2/app/src/main/res/values/strings.xml +12 -0
- package/packs/experience-design/skills/locale-check/evals/files/2/app/src/main/res/values-es/strings.xml +11 -0
- package/packs/experience-design/skills/locale-check/evals/files/2/app/src/main/res/values-fr/strings.xml +12 -0
- package/packs/experience-design/skills/locale-check/evals/files/3/po/ja.po +20 -0
- package/packs/experience-design/skills/locale-check/evals/files/3/po/messages.pot +23 -0
- package/packs/experience-design/skills/locale-check/evals/files/3/po/ru.po +22 -0
- package/packs/experience-design/skills/locale-check/evals/files/4/budgets.json +15 -0
- package/packs/experience-design/skills/locale-check/evals/files/4/locales/ar.json +265 -0
- package/packs/experience-design/skills/locale-check/evals/files/4/locales/de.json +265 -0
- package/packs/experience-design/skills/locale-check/evals/files/4/locales/en.json +265 -0
- package/packs/experience-design/skills/locale-check/evals/files/4/locales/fr.json +265 -0
- package/packs/experience-design/skills/locale-check/evals/files/4/locales/pl.json +265 -0
- package/packs/experience-design/skills/locale-check/evals/files/5/app/src/main/res/values/strings.xml +77 -0
- package/packs/experience-design/skills/locale-check/evals/files/5/app/src/main/res/values-es/strings.xml +63 -0
- package/packs/experience-design/skills/locale-check/evals/files/5/app/src/main/res/values-ja/strings.xml +61 -0
- package/packs/experience-design/skills/locale-check/evals/files/6/po/cs.po +605 -0
- package/packs/experience-design/skills/locale-check/evals/files/6/po/marlin.pot +602 -0
- package/packs/experience-design/skills/locale-check/evals/files/6/po/pt_BR.po +602 -0
- package/packs/experience-design/skills/locale-check/evals/files/6/po/ru.po +608 -0
- package/packs/experience-design/skills/locale-check/evals/files/7/Tidewatch/Resources/en.lproj/Localizable.strings +160 -0
- package/packs/experience-design/skills/locale-check/evals/files/7/Tidewatch/Resources/en.lproj/Localizable.stringsdict +70 -0
- package/packs/experience-design/skills/locale-check/evals/files/7/Tidewatch/Resources/he.lproj/Localizable.strings +157 -0
- package/packs/experience-design/skills/locale-check/evals/files/7/Tidewatch/Resources/he.lproj/Localizable.stringsdict +86 -0
- package/packs/experience-design/skills/locale-check/evals/files/7/Tidewatch/Resources/it.lproj/Localizable.strings +160 -0
- package/packs/experience-design/skills/locale-check/evals/files/7/Tidewatch/Resources/it.lproj/Localizable.stringsdict +68 -0
- package/packs/experience-design/skills/locale-check/evals/files/7/Tidewatch/Resources/ko.lproj/Localizable.strings +160 -0
- package/packs/experience-design/skills/locale-check/evals/files/7/Tidewatch/Resources/ko.lproj/Localizable.stringsdict +62 -0
- package/packs/experience-design/skills/locale-check/examples/settings-release.md +107 -0
- package/packs/experience-design/skills/locale-check/manifest.json +45 -0
- package/packs/experience-design/skills/locale-check/scripts/locale_check.py +1105 -0
- package/packs/interior-designer/pack.json +60 -0
- package/packs/interior-designer/skills/furniture-layout/SKILL.md +182 -0
- package/packs/interior-designer/skills/furniture-layout/evals/eval_queries.json +11 -0
- package/packs/interior-designer/skills/furniture-layout/evals/evals.json +133 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/2/living-room-notes.md +24 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/3/office-brief.md +18 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/4/furniture_schedule.csv +15 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/4/site_survey.txt +22 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/5/layout_v2.csv +14 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/5/measurements.txt +16 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/6/access_consultant_email.txt +19 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/6/furniture_stock.csv +5 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/6/site_measurements.txt +14 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/7/room_214_layout.csv +11 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/7/room_and_brand_standard.txt +20 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/8/email_from_practice_manager.txt +44 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/8/furniture_we_are_keeping.csv +10 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/9/reading_room_schedule.csv +15 -0
- package/packs/interior-designer/skills/furniture-layout/evals/files/9/room_notes.txt +23 -0
- package/packs/interior-designer/skills/furniture-layout/examples/king-bed-bedroom.md +121 -0
- package/packs/interior-designer/skills/furniture-layout/examples/king-bed-bedroom.svg +57 -0
- package/packs/interior-designer/skills/furniture-layout/manifest.json +44 -0
- package/packs/interior-designer/skills/furniture-layout/scripts/layout_check.py +1130 -0
- package/packs/interior-designer/skills/furniture-layout/templates/layout.json +26 -0
- package/packs/operations-manager/pack.json +60 -0
- package/packs/operations-manager/skills/shift-roster/SKILL.md +169 -0
- package/packs/operations-manager/skills/shift-roster/evals/eval_queries.json +38 -0
- package/packs/operations-manager/skills/shift-roster/evals/evals.json +135 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/1/shifts.csv +3 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/1/staff.csv +8 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/2/rota.csv +22 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/2/staff.csv +6 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/3/team.md +14 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/4/availability_export_wk47.csv +23 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/4/rota_notes.txt +20 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/5/rota_draft_16-29nov.csv +107 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/5/staff_list.csv +17 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/6/availability_notes.txt +24 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/6/peoplehub_staff_export.csv +14 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/6/rota_template.csv +25 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/7/leave_and_availability.txt +18 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/7/rota_wc_30nov.csv +47 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/7/staff_list.csv +15 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/8/availability_form_responses.csv +22 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/8/cover_requirements.csv +15 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/8/staff_export.csv +29 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/9/leave_and_restrictions.txt +16 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/9/rota_export_07-13Dec.csv +85 -0
- package/packs/operations-manager/skills/shift-roster/evals/files/9/staff_list.csv +27 -0
- package/packs/operations-manager/skills/shift-roster/examples/cafe-week.md +72 -0
- package/packs/operations-manager/skills/shift-roster/examples/cafe-week.svg +123 -0
- package/packs/operations-manager/skills/shift-roster/manifest.json +34 -0
- package/packs/operations-manager/skills/shift-roster/scripts/roster_check.py +633 -0
- package/packs/operations-manager/skills/shift-roster/templates/roster.json +22 -0
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 954 458" width="954" height="458" font-family="Helvetica, Arial, sans-serif" font-size="11">
|
|
2
|
+
<rect width="954" height="458" fill="#ffffff"/>
|
|
3
|
+
<text x="10" y="22" font-size="15" font-weight="bold">Rota</text>
|
|
4
|
+
<text x="10" y="40" fill="#555">0 failure(s), 0 warning(s). Red marks a shift or a person the check failed.</text>
|
|
5
|
+
<rect x="150" y="60" width="112" height="358" fill="#ffffff" stroke="#ddd"/>
|
|
6
|
+
<text x="206.0" y="72" text-anchor="middle" font-weight="bold">Mon</text>
|
|
7
|
+
<rect x="262" y="60" width="112" height="358" fill="#ffffff" stroke="#ddd"/>
|
|
8
|
+
<text x="318.0" y="72" text-anchor="middle" font-weight="bold">Tue</text>
|
|
9
|
+
<rect x="374" y="60" width="112" height="358" fill="#ffffff" stroke="#ddd"/>
|
|
10
|
+
<text x="430.0" y="72" text-anchor="middle" font-weight="bold">Wed</text>
|
|
11
|
+
<rect x="486" y="60" width="112" height="358" fill="#ffffff" stroke="#ddd"/>
|
|
12
|
+
<text x="542.0" y="72" text-anchor="middle" font-weight="bold">Thu</text>
|
|
13
|
+
<rect x="598" y="60" width="112" height="358" fill="#ffffff" stroke="#ddd"/>
|
|
14
|
+
<text x="654.0" y="72" text-anchor="middle" font-weight="bold">Fri</text>
|
|
15
|
+
<rect x="710" y="60" width="112" height="358" fill="#f4f4f6" stroke="#ddd"/>
|
|
16
|
+
<text x="766.0" y="72" text-anchor="middle" font-weight="bold">Sat</text>
|
|
17
|
+
<rect x="822" y="60" width="112" height="358" fill="#f4f4f6" stroke="#ddd"/>
|
|
18
|
+
<text x="878.0" y="72" text-anchor="middle" font-weight="bold">Sun</text>
|
|
19
|
+
<line x1="0" y1="76" x2="954" y2="76" stroke="#ccc"/>
|
|
20
|
+
<text x="10" y="94" font-weight="bold">Amira</text>
|
|
21
|
+
<text x="10" y="108" fill="#555">40 h / 37.5 contracted</text>
|
|
22
|
+
<rect x="154" y="82" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
23
|
+
<text x="159" y="94">06:30–14:30</text>
|
|
24
|
+
<text x="159" y="107" fill="#555">keyholder</text>
|
|
25
|
+
<rect x="266" y="82" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
26
|
+
<text x="271" y="94">06:30–14:30</text>
|
|
27
|
+
<text x="271" y="107" fill="#555">keyholder</text>
|
|
28
|
+
<rect x="378" y="82" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
29
|
+
<text x="383" y="94">06:30–14:30</text>
|
|
30
|
+
<text x="383" y="107" fill="#555">keyholder</text>
|
|
31
|
+
<rect x="490" y="82" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
32
|
+
<text x="495" y="94">06:30–14:30</text>
|
|
33
|
+
<text x="495" y="107" fill="#555">keyholder</text>
|
|
34
|
+
<rect x="602" y="82" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
35
|
+
<text x="607" y="94">06:30–14:30</text>
|
|
36
|
+
<text x="607" y="107" fill="#555">keyholder</text>
|
|
37
|
+
<line x1="0" y1="122" x2="954" y2="122" stroke="#ccc"/>
|
|
38
|
+
<text x="10" y="140" font-weight="bold">Ben</text>
|
|
39
|
+
<text x="10" y="154" fill="#555">23 h / 24 contracted</text>
|
|
40
|
+
<rect x="154" y="128" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
41
|
+
<text x="159" y="140">14:00–21:00</text>
|
|
42
|
+
<text x="159" y="153" fill="#555">barista</text>
|
|
43
|
+
<rect x="602" y="128" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
44
|
+
<text x="607" y="140">06:30–14:30</text>
|
|
45
|
+
<text x="607" y="153" fill="#555">barista</text>
|
|
46
|
+
<rect x="714" y="128" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
47
|
+
<text x="719" y="140">06:30–14:30</text>
|
|
48
|
+
<text x="719" y="153" fill="#555">barista</text>
|
|
49
|
+
<line x1="0" y1="168" x2="954" y2="168" stroke="#ccc"/>
|
|
50
|
+
<text x="10" y="186" font-weight="bold">Chloe</text>
|
|
51
|
+
<text x="10" y="200" fill="#555">29 h / 30 contracted</text>
|
|
52
|
+
<rect x="154" y="174" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
53
|
+
<text x="159" y="186">14:00–21:00</text>
|
|
54
|
+
<text x="159" y="199" fill="#555">keyholder</text>
|
|
55
|
+
<rect x="266" y="174" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
56
|
+
<text x="271" y="186">14:00–21:00</text>
|
|
57
|
+
<text x="271" y="199" fill="#555">keyholder</text>
|
|
58
|
+
<rect x="378" y="174" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
59
|
+
<text x="383" y="186">14:00–21:00</text>
|
|
60
|
+
<text x="383" y="199" fill="#555">keyholder</text>
|
|
61
|
+
<rect x="714" y="174" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
62
|
+
<text x="719" y="186">06:30–14:30</text>
|
|
63
|
+
<text x="719" y="199" fill="#555">keyholder</text>
|
|
64
|
+
<line x1="0" y1="214" x2="954" y2="214" stroke="#ccc"/>
|
|
65
|
+
<text x="10" y="232" font-weight="bold">Dev</text>
|
|
66
|
+
<text x="10" y="246" fill="#555">35 h / 37.5 contracted</text>
|
|
67
|
+
<rect x="266" y="220" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
68
|
+
<text x="271" y="232">14:00–21:00</text>
|
|
69
|
+
<text x="271" y="245" fill="#555">barista</text>
|
|
70
|
+
<rect x="378" y="220" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
71
|
+
<text x="383" y="232">14:00–21:00</text>
|
|
72
|
+
<text x="383" y="245" fill="#555">barista</text>
|
|
73
|
+
<rect x="490" y="220" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
74
|
+
<text x="495" y="232">14:00–21:00</text>
|
|
75
|
+
<text x="495" y="245" fill="#555">keyholder</text>
|
|
76
|
+
<rect x="602" y="220" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
77
|
+
<text x="607" y="232">14:00–21:00</text>
|
|
78
|
+
<text x="607" y="245" fill="#555">keyholder</text>
|
|
79
|
+
<rect x="714" y="220" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
80
|
+
<text x="719" y="232">14:00–21:00</text>
|
|
81
|
+
<text x="719" y="245" fill="#555">keyholder</text>
|
|
82
|
+
<line x1="0" y1="260" x2="954" y2="260" stroke="#ccc"/>
|
|
83
|
+
<text x="10" y="278" font-weight="bold">Ema</text>
|
|
84
|
+
<text x="10" y="292" fill="#555">21 h / 20 contracted</text>
|
|
85
|
+
<rect x="490" y="266" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
86
|
+
<text x="495" y="278">14:00–21:00</text>
|
|
87
|
+
<text x="495" y="291" fill="#555">barista</text>
|
|
88
|
+
<rect x="602" y="266" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
89
|
+
<text x="607" y="278">14:00–21:00</text>
|
|
90
|
+
<text x="607" y="291" fill="#555">barista</text>
|
|
91
|
+
<rect x="714" y="266" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
92
|
+
<text x="719" y="278">14:00–21:00</text>
|
|
93
|
+
<text x="719" y="291" fill="#555">barista</text>
|
|
94
|
+
<line x1="0" y1="306" x2="954" y2="306" stroke="#ccc"/>
|
|
95
|
+
<text x="10" y="324" font-weight="bold">Fay</text>
|
|
96
|
+
<text x="10" y="338" fill="#555">32 h / 30 contracted</text>
|
|
97
|
+
<rect x="154" y="312" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
98
|
+
<text x="159" y="324">06:30–14:30</text>
|
|
99
|
+
<text x="159" y="337" fill="#555">barista</text>
|
|
100
|
+
<rect x="266" y="312" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
101
|
+
<text x="271" y="324">06:30–14:30</text>
|
|
102
|
+
<text x="271" y="337" fill="#555">barista</text>
|
|
103
|
+
<rect x="378" y="312" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
104
|
+
<text x="383" y="324">06:30–14:30</text>
|
|
105
|
+
<text x="383" y="337" fill="#555">barista</text>
|
|
106
|
+
<rect x="490" y="312" width="104" height="30" rx="4" fill="#e6f0fb" stroke="#4a7fc1" stroke-width="1"/>
|
|
107
|
+
<text x="495" y="324">06:30–14:30</text>
|
|
108
|
+
<text x="495" y="337" fill="#555">barista</text>
|
|
109
|
+
<line x1="0" y1="352" x2="954" y2="352" stroke="#999"/>
|
|
110
|
+
<text x="10" y="370" font-weight="bold">Coverage</text>
|
|
111
|
+
<text x="156" y="370" fill="#2e7d32" font-weight="normal">Mon open 2/2</text>
|
|
112
|
+
<text x="156" y="388" fill="#2e7d32" font-weight="normal">Mon close 2/2</text>
|
|
113
|
+
<text x="268" y="370" fill="#2e7d32" font-weight="normal">Tue open 2/2</text>
|
|
114
|
+
<text x="268" y="388" fill="#2e7d32" font-weight="normal">Tue close 2/2</text>
|
|
115
|
+
<text x="380" y="370" fill="#2e7d32" font-weight="normal">Wed open 2/2</text>
|
|
116
|
+
<text x="380" y="388" fill="#2e7d32" font-weight="normal">Wed close 2/2</text>
|
|
117
|
+
<text x="492" y="370" fill="#2e7d32" font-weight="normal">Thu open 2/2</text>
|
|
118
|
+
<text x="492" y="388" fill="#2e7d32" font-weight="normal">Thu close 2/2</text>
|
|
119
|
+
<text x="604" y="370" fill="#2e7d32" font-weight="normal">Fri open 2/2</text>
|
|
120
|
+
<text x="604" y="388" fill="#2e7d32" font-weight="normal">Fri close 2/2</text>
|
|
121
|
+
<text x="716" y="370" fill="#2e7d32" font-weight="normal">Sat open 2/2</text>
|
|
122
|
+
<text x="716" y="388" fill="#2e7d32" font-weight="normal">Sat close 2/2</text>
|
|
123
|
+
</svg>
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "shift-roster",
|
|
3
|
+
"version": "0.2.1",
|
|
4
|
+
"description": "Build a staff rota for a week or a fortnight from who is available, what each shift needs and the working-time rules, and check it with a script before anyone sees it — every shift covered with the right skills, nobody double-booked, over their hours, short of rest between shifts or past the consecutive-day limit — drawn as a week grid. Use when a manager asks to \"make the rota\", \"build next week's schedule\", \"who should work which shift\", \"check this rota\", \"fill these shifts\", or has staff availability and shift needs for a shop, restaurant, clinic, warehouse or call centre.",
|
|
5
|
+
"entrypoint": "SKILL.md",
|
|
6
|
+
"deps": {
|
|
7
|
+
"npm": [],
|
|
8
|
+
"pip": []
|
|
9
|
+
},
|
|
10
|
+
"env": {
|
|
11
|
+
"required": [],
|
|
12
|
+
"optional": []
|
|
13
|
+
},
|
|
14
|
+
"related": [],
|
|
15
|
+
"tags": [
|
|
16
|
+
"rota",
|
|
17
|
+
"roster",
|
|
18
|
+
"scheduling",
|
|
19
|
+
"shifts",
|
|
20
|
+
"staffing",
|
|
21
|
+
"working-time",
|
|
22
|
+
"coverage"
|
|
23
|
+
],
|
|
24
|
+
"permissions": {
|
|
25
|
+
"network": [],
|
|
26
|
+
"commands": [],
|
|
27
|
+
"files": "named-paths",
|
|
28
|
+
"notes": "Reads the roster.json it is given and writes the SVG to the path passed with --svg."
|
|
29
|
+
},
|
|
30
|
+
"model": {
|
|
31
|
+
"tier": "standard",
|
|
32
|
+
"rationale": "Assigning people to shifts is constraint-heavy but bounded: the script checks every rule, so the model's job is a good first assignment and fixing what the check reports."
|
|
33
|
+
}
|
|
34
|
+
}
|