write-user-story — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited write-user-story (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Produces a complete, ready-to-groom user story following the standard Atlassian/agile format. It applies the INVEST criteria and the 3 Cs framework (Card, Conversation, Confirmation) to ensure each story is well-scoped, valuable, and testable — not just syntactically correct.
Reference: Atlassian — User stories with examples and a template
As a [persona],
I want to [action / capability],
so that [benefit / outcome].A well-formed story is:
| Letter | Criterion | What to check |
|---|---|---|
| I | Independent | Can be developed without another story blocking it? |
| N | Negotiable | Is it a conversation-starter, not a contract? |
| V | Valuable | Does it deliver value to the persona? |
| E | Estimable | Is it specific enough for the team to size? |
| S | Small | Completable within a single sprint? |
| T | Testable | Do the acceptance criteria make pass/fail possible? |
## User Story: [short title]
**As a** [persona],
**I want to** [action],
**so that** [benefit].
---
### Acceptance Criteria
- [ ] Given [context], when [action], then [outcome].
- [ ] Given [context], when [action], then [outcome].
- [ ] [Edge case or negative path]
### Definition of Done
- [ ] Acceptance criteria all pass.
- [ ] Code reviewed and merged.
- [ ] Unit/integration tests written and passing.
- [ ] Documented (if applicable).
- [ ] Deployed to staging and smoke-tested.
### INVEST check
| Criterion | Status | Note |
| --- | --- | --- |
| Independent | Pass / Fail | ... |
| Negotiable | Pass / Fail | ... |
| Valuable | Pass / Fail | ... |
| Estimable | Pass / Fail | ... |
| Small | Pass / Fail | ... |
| Testable | Pass / Fail | ... |
### Notes
- [Dependencies, assumptions, or open questions]Input: "Write a story for filtering search results by price range."
Expected output:
## User Story: Filter search results by price range
**As a** shopper,
**I want to** filter product search results by a minimum and maximum price,
**so that** I only see products I can afford and avoid scrolling through irrelevant results.
### Acceptance Criteria
- [ ] Given I am on a search results page, when I set a minimum price of $10 and a maximum of $50 and apply the filter, then only products priced between $10 and $50 are shown.
- [ ] Given I apply a price filter, when no products match, then a "No results found" message is shown and the filter values are preserved.
- [ ] Given I apply a price filter, when I clear it, then all results are restored.Input: "User can manage their account."
Expected output: Story flagged as failing Small (too broad) and Estimable (too vague). Skill proposes a split into: change email, change password, delete account — each as a separate story.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.