Change records
Writes up a system change for the business owner who has to sign it off: what was asked for, what was changed, what was decided and by whom, what was tested, and how to undo it. A Word document in your brand, in short bullets rather than paragraphs. The skill calls it a requirement document, or reqdoc.
A Claude plan with code execution turned on (Setup, step 1), the brand setup run once, and a change that is already built and tested, with someone waiting to sign it off. It records work that was done; it does not write a plan.
Add the skill
In the Claude web or desktop app, select Customize, then Skills › Add › Upload skill, and upload reqdoc-builder.skill from your download. Every upload tested so far used the file renamed to reqdoc-builder.zip; if the .skill file is not accepted, rename it and upload again. Setup walks through the screens.
Tested in Claude Code, the claude.ai web app and the Claude desktop app. See compatibility.
Ask for a change record
Type reqdoc: at the start of a message, then describe the change. “Write this change up” works too. Include what you have of:
- the change reference and a short description;
- the request, in the words of the person who asked, and who asked;
- what was configured, with the names as they appear on screen;
- the teams or departments it touches;
- questions that came up, the answers, who gave each one, and when;
- what was tested, including the thing next to it that should not have changed;
- anything you could not show in testing;
- how to undo it, and the values before the change.
It asks once for anything missing. If the brand setup gave you brand.json and logo.png to keep, attach both, with their names unchanged.
It does not invent test results or answers. Something you could not demonstrate goes into the testing section as a stated gap: what could not be shown, why, and how it will be confirmed.
What comes back
A Word file named with your change reference, such as ROAST_OPS_Batch_Disposition_Code_CR1042_REQDOC.docx: a cover, then fourteen sections in a fixed order, starting with Request. A section with nothing in it prints N/A, which says someone looked. Claude also says whether it rendered the pages to look at them.
Worked example
One request, typed into a new claude.ai chat with brand.json attached. ROAST WORKS is an invented coffee roastery.
What was typed
What came back
The file: ROAST_OPS_Batch_Disposition_Code_CR1042_REQDOC.docx, 4 pages.
Page 2 of what came back.
What gets checked
Before you get the file, the skill checks it:
- every section is there, in order, and none is left empty;
- each bullet stays short: a warning above two lines, a failure above three, with a little more room for a stated gap;
- every answer to a question carries a date, and a missing one is flagged;
- the page is US Letter with one-inch margins, and the promotion table has not been changed in Word;
- the file name follows your brand’s pattern and carries the change reference.
What no check can tell you: whether a person named beside an answer is real, whether the testing covers the thing that should not have changed, and whether the evidence is true. Nothing can tell a real test result from an invented one, which is why the skill stops rather than fills one in.
If it says no
It says the skill’s files are missing. Once in testing, a chat loaded the skill’s instructions without its files. Claude stopped and said so rather than build an unchecked copy. The same request in a new chat worked.
The change is not built or tested yet. It stops. Come back when it is: the document records what was done.
Nobody has to sign it off. It says you want a build note or a ticket comment instead, and builds nothing.
Your organization has its own template with different sections. It says so before building, rather than hand you a document that will be sent back for its shape.
You wanted step-by-step instructions. That is a procedure; it hands you to the SOP builder.
Using Claude Code instead
Extract the .skill file into your skills folder: ~/.claude/skills/ for every project, or .claude/skills/ inside one. A skill in that folder does not reach your claude.ai account, and one on your account does not reach that folder.
Needs Node on the machine; the pack is tested on Node 20 and Node 24. Nothing else to install: the one library the skill uses ships inside it.
The skill reads your brand from brand.json and logo.png, looking in this order and stopping at the first hit: the path in HPW_BRAND_KIT, the folder you build from, any folder above it, then the neutral defaults.
To confirm the install, run this from the folder you will build in. Exit 0 means every file is present:
To prove it end to end, build the shipped sample from a folder outside the skill. It builds the sample and checks it; expect PASS — clean: