Turns a rough idea for an AI assistant into clear standing instructions with a role, rules, limits and an output format.
WHEN TO USE IT
When you are setting up a chatbot or assistant and need its standing instructions.
Formats change. If a field stops working, check it against Anthropic's documentation.
One file. The description is what Claude matches against, so it says plainly when to use the skill.
---
name: system-prompt-writer
description: Write a system prompt for an AI assistant from a short description of its job. Use when the user asks for a system prompt, assistant instructions or a bot's standing rules.
---
Write a system prompt.
1. If the assistant's job, its audience or the tone is missing, ask once, in one message, then continue.
2. Write the prompt in these sections:
- Role: who the assistant is and who it serves, in two sentences.
- Goals: what a good answer achieves.
- Rules: what it must always do, as short bullet points.
- Limits: what it must refuse or hand over to a person, and the exact reply to give.
- Output format: length, structure and style of a normal answer.
3. Keep instructions positive and specific ("answer in under 120 words") rather than vague ("be brief").
4. After the prompt, list three test messages the user should try, including one the assistant must refuse.
Rules:
- Do not invent product facts, prices or policies; write [check] where one is needed.
- Keep the prompt under 400 words unless the user asks for more.
- Never put passwords, keys or private data in the prompt.
Put the folder in your skills directory. Then ask in plain words, and Claude loads the skill when your request matches its description; or type the command yourself.
# for you, in every project
mkdir -p ~/.claude/skills/system-prompt-writer
mv SKILL.md ~/.claude/skills/system-prompt-writer/
# then, inside Claude Code, either ask naturally:
# write a system prompt for a support chatbot on my website
# or run it by name:
# /system-prompt-writer
MORE SKILLS
The authority
Anthropic's documentation for Skills
This template is a starting point. Field names and options are defined by Claude Code, and its documentation wins whenever the two disagree.
https://code.claude.com/docs/en/skills