write-system-promptlisted
Install: claude install-skill ysz7/specrun
# Write a System Prompt
## When this applies
- Writing a prompt that will run more than a handful of times
- A model ignores rules that are clearly stated
- Outputs are inconsistent between calls
- A prompt has grown by accretion and nobody dares edit it
## Do not use for
- Data extraction specifically → `extract-structured-data`
- Agent tool descriptions → `../../../AI Agent/skills/design-agent-tools`
- Building the eval set → `../../../Evaluation and Testing/skills/build-eval-set`
## Inputs to collect first
| Input | Why needed | Default if unspecified |
|---|---|---|
| The task, in one sentence | Everything follows from it | **Blocking** |
| Output consumer: code or human? | Decides whether to force structure | Ask |
| Failure examples from the current prompt | The most useful input there is | Ask for 3 |
| Hard/ambiguous cases | Become the examples | Ask for 2 |
| Does it see untrusted content? | Decides delimitation and guardrails | Assume yes if it reads anything external |
## Procedure
### Step 1 — Write the objective and the stop condition first
One sentence each. If you cannot write the stop condition, the task is not defined well enough to prompt for.
**Stop condition:** both sentences exist and a stranger could apply them.
### Step 2 — List constraints in positive form
For each rule, write what the model **should do**, not only what it must not.
```
✗ Never mention pricing.
✓ When asked about pricing, say you cannot quote prices and offer to connect th