safety
Skill0 starsChanged 22 days agoMITView on GitHub
Prepare work health and safety paperwork for Australian building sites. Produces SWMS for high-risk construction work, the Site Safety Management Plan, site induction forms, toolbox talk records and incident or near miss reports, runs site safety inspections, and tracks subcontractor licences and insurance. Use when someone mentions a SWMS, safety plan, WHS or OHS, working at heights, scaffolding, asbestos, trenches, an induction or White Card, a toolbox talk, an accident, injury or near miss, SafeWork or WorkSafe, or checking a subbie's insurance or licence.
- Installs packages
7 other projects use a version of this.
Adopted by
Most recently taken up by
- langchain-ai/deepagentstheir own version, first seen Oct 13, 2026
- HeathHowren/claude-game-re-plugintheir own version, first seen Oct 13, 2026
- danmaps/gis-agent-skillstheir own version, first seen Oct 11, 2026
- davidhozic/mujoco-rstheir own version, first seen Oct 9, 2026
- hifly81/bikescouttheir own version, first seen May 7, 2026
- ffsshhttiikk/opencode-agents-skillstheir own version, first seen Feb 28, 2026
Other versions7 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 7
- langchain-ai/deepagents★ 31ksame name
- davidhozic/mujoco-rs★ 85same name
- danmaps/gis-agent-skills★ 30same name
- hifly81/bikescout★ 20same name
- ZackKorman/skills★ 19same name
- ffsshhttiikk/opencode-agents-skills★ 2same name
- HeathHowren/claude-game-re-plugin★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository15 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- accountsSkill
- claimsSkill
- contractsSkill
- estimatingSkill
- financialsSkill
- handoverSkill
- materialsSkill
- nccSkill
- noticesSkill
- projectsSkill
- siteSkill
- startSkill
- variationsSkill
The file
We split this skill into the rules it gives an agent
6 rules. 0 are common, 2 are distinctive, and 4 are very specific to this project.
0
Common
Most of the 6 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 21
Run commands from the user's own project folder (the current working directory), so my_project.yaml and out/ are theirs.
- Distinctive: line 38
Before anything else, know who you're helping and where:
- Very specific: line 44
Ask for the trade and state if the project file doesn't have them (python3 $ABB/tools/profile.py trades lists every trade.
- Distinctive: line 52
If the user describes an incident happening now, first: call 000 if anyone is injured, make the area safe, and don't disturb the scene …
- Very specific: line 103
Write it from the Structure section of brain/documents/<name>.md, which lists every section, field, table and prompt in order.
- Very specific: line 104
If they have their own branded Word template, tools/fill_template.py fills any .docx that uses the same [PLACEHOLDERS].
“Common” is measured: kept by at least 6 in 10 of the 6 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Safety
You help a builder run a safe site and keep the safety records the law expects. You are not a WHS consultant: for complex or high-consequence work, recommend a qualified safety professional.
Where things are
The brain (this repository) is at ${CLAUDE_PLUGIN_ROOT}. If that shows
literally as ${CLAUDE_PLUGIN_ROOT}, you are working in a clone instead: the
brain is the repository root, two levels up from this skill's folder. $ABB
below means the brain's folder: write it out as the real path in every
command. Paths starting brain/, templates/, tools/ and examples/ are
inside it.
Run commands from the user's own project folder (the current working
directory), so my_project.yaml and out/ are theirs. Never write into the
brain's folder: an installed plugin's folder is replaced on every update.
- Knowledge:
brain/contracts/work_health_and_safety.md(read it first),brain/playbooks/site_safety_inspection.md,brain/phases/(weather risks per phase) - Maths:
brain/computations/expiry_status.md - Templates:
templates/word/SWMS_TEMPLATE.docx,Site_Safety_Management_Plan_TEMPLATE.docx,Trade_Induction_Form_TEMPLATE.docx,Toolbox_Talk_Record_TEMPLATE.docx,Incident_Near_Miss_Report_TEMPLATE.docx;templates/excel/Subbie_Insurance_Licence_Tracker_TEMPLATE.xlsx;templates/pdf/Site_Safety_Inspection_Checklist.pdf - Examples:
examples/swms_spec.yaml,safety_plan_spec.yaml,induction_spec.yaml,toolbox_talk_spec.yaml,incident_spec.yaml,subbie_compliance_spec.yaml
For python3, use ${CLAUDE_PLUGIN_DATA}/venv/bin/python if it exists (the
plugin's setup hook creates it). Otherwise, if
python3 -c "import docx, openpyxl, yaml" fails, run
python3 -m pip install -r $ABB/requirements.txt first.
Profile: trade and location
Before anything else, know who you're helping and where:
python3 $ABB/tools/profile.py show --project my_project.yaml # or: --trade <trade> --state <STATE>Ask for the trade and state if the project file doesn't have them
(python3 $ABB/tools/profile.py trades lists every trade; builder sees
everything). Stay within the profile: use the NCC pages, skills, materials
and suppliers it lists, apply only that state's NCC variations and rules,
and read the state page for local differences.
Someone is hurt, or nearly was
If the user describes an incident happening now, first: call 000 if anyone is injured, make the area safe, and don't disturb the scene beyond that. If it may be a notifiable incident (a death, serious injury or illness, or a dangerous incident such as a collapse, a fall of materials, or contact with an energised line or gas), tell them to notify the state WHS regulator immediately. Paperwork comes after.
Then fill the Incident / Near Miss Report (examples/incident_spec.yaml):
tickthe type, the severity and the notifications madecellwhat happened, the immediate actions and the root cause. Ask "why" until you reach a cause the builder can fix; "worker error" is never the root cause on its own.fill_tablethe people involved (header "Name") and the corrective actions (header "Action"), each with an owner and a due date
Offer a toolbox talk on the lessons.
SWMS
- Confirm the work is high-risk construction work. Check the list in the brain page; the template's tick list mixes in hazards that aren't in the legal list. If it isn't high-risk construction work, a SWMS isn't legally required, but a task risk assessment is still good practice.
- Break the work into steps. For each step: the hazard, the risk (H, M or L), the control, the residual risk, and who is responsible. Prefer elimination and engineering controls over PPE.
- Fill it following
examples/swms_spec.yaml. Each hazard row ("1."to"8.") ishazard|risk|control|residual|responsible, with the step named in the hazard text. Delete unused rows, andtickthe high-risk work and the PPE. - Remind the user: workers sign on before starting, and the SWMS is reviewed when conditions change. Subbies usually provide their own SWMS for their work; check theirs rather than writing it for them.
Site Safety Management Plan
Fill it once per job (examples/safety_plan_spec.yaml). The project file
provides the address, duration and nearest hospital. replace each site
rule's [LOCATION] (first aid kit, extinguisher, toilet); row each
activity's Applicable and SWMS columns as ☒ Y ☐ N|☐ Y ☒ N; then the
emergency details; tick the review triggers.
Induction and toolbox talks
- Induction (
examples/induction_spec.yaml): the worker's details, including the White Card number, and a ☒ for each topic actually covered. Never tick a topic that wasn't covered. - Toolbox talk (
examples/toolbox_talk_spec.yaml): the topic, the key points, actions (header "Action Required") and attendees (header "Name"). Good topics: the current phase's hazards, weather, a recent near miss, and anything found in the last inspection.
Inspections and subbie compliance
- Walk
brain/playbooks/site_safety_inspection.mdweekly. Unsafe items get fixed or isolated before work continues. Record the inspection in the site diary. - Subbie compliance: check each subbie's ABN and licence on the public registers first (
$ABB/brain/playbooks/checking_registers.md) and take the licence expiry from the register, not from memory; take insurance expiries from their certificates of currency. Then, for each subbie, work out the status withpython3 $ABB/tools/compute.py expiry_status --param on_date=<today> --param 'items={"Licence": "...", "PL": "...", "WC": "..."}', then write the row and the computed status (examples/subbie_compliance_spec.yaml). Anyone Expired or Incomplete doesn't start until it's fixed.
Checks
tools/fill_template.py must report nothing left over (except [LOGO]),
no instructions_left, and no unmatched entries. Leave signature lines
blank: people sign them.
Your own format
The templates are references, not a straitjacket. If the user wants the document on their own letterhead, as an email, as a PDF, or can't run Python (for example in Claude.ai):
- Write it from the Structure section of
brain/documents/<name>.md, which lists every section, field, table and prompt in order. Keep every section, and keep the money exactly as the computation receipt gives it. - If they have their own branded Word template,
tools/fill_template.pyfills any.docxthat uses the same[PLACEHOLDERS].
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

