Install
$ agentstack add skill-anyoneanderson-agent-skills-spec-writing ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
spec-writing — Concrete Specification Writing
Apply compact writing rules that let readers follow a process without guessing what the system does or where its output goes.
Language Rules
- Auto-detect the requested output language and write in that language.
- For English output, read [writing-rules.md](references/writing-rules.md) and [abstract-verbs.md](references/abstract-verbs.md).
- For Japanese output, read [writing-rules.ja.md](references/writing-rules.ja.md) and [abstract-verbs.ja.md](references/abstract-verbs.ja.md).
- An explicit language override takes priority over automatic detection.
- Load one language pair only. Do not combine language-specific rules across pairs.
Scope
Use this skill to generate or revise requirements, designs, task plans, test plans, and related specification reports.
The skill provides two contracts:
writing-rules*defines sharedSW-*rules for process descriptions, audience separation, reasoning, and sequence diagrams.abstract-verbs*is the primary source for stableAV-*candidate patterns and the evidence required to make each use concrete.
Execution Flow
Step 1: Identify the document and audience
- Determine whether the output is a requirement, design, task plan, test plan, or a revision of one.
- Identify the readers of each section before drafting it.
- Keep an overview understandable with general system names. Put types, functions, events, and storage identifiers in implementation-facing sections.
Step 2: Load the writing contract
- Read the writing rules and abstract-verb vocabulary selected by the Language Rules.
- Treat
SW-*andAV-*IDs as stable identifiers when explaining or reporting a rewrite. - Apply the rules before generating new text and before changing existing text.
Step 3: Write observable processes
For every process description, make these elements traceable in the same sentence, list item, paragraph, or adjacent sequence-diagram messages:
- The actor that performs the process.
- The trigger, state, event, or input that starts it.
- The observable action, such as storing, comparing, calculating, sending, rejecting, or stopping.
- The destination or consumer of the result.
Do not force all four elements into one sentence when nearby text identifies them unambiguously. Do not invent an actor, trigger, action, or destination that the source requirements do not establish; use a visible placeholder or record the unresolved decision instead.
Step 4: Apply audience and reasoning rules
- Apply every common
SW-*rule in the selected writing reference. - Apply language-specific rules from that reference when present.
- State the mechanism behind a causal claim.
- Remove unsupported certainty, hedging, intensifiers, previews, summaries, and generic praise that add no requirement or design information.
- In a sequence diagram, name the data in each message and show the receiver's next observable action in an adjacent message or note.
Step 5: Self-check before delivery
- Search the draft for every
Patternin the selected abstract-verb table. - For each match, inspect nearby text for all four process elements and the row's
Required evidence. - Keep the term when the surrounding text makes the operation unambiguous, including a defined mathematical operation.
- Rewrite an underspecified use with concrete actions and destinations.
- Confirm that overview sections remain readable without implementation identifiers and that implementation-facing sections retain identifiers needed to build the system.
- Confirm that every sequence-diagram message names its payload and the receiver's subsequent action.
Error Handling
| Situation | Action | |---|---| | A selected reference file is missing | Name the missing file and stop before generating or revising the specification. | | An abstract-verb table has missing columns or duplicate IDs | Apply the available writing rules, report that the vocabulary self-check could not run, and do not infer replacement rows. | | The source does not determine one of the four process elements | Preserve the uncertainty with a named placeholder or unresolved decision; do not fabricate behavior. | | The term describes a defined mathematical operation | Keep the term when its input, transformation rule, and output are explicit. |
Attribution
This skill distills specification-focused rules from k16shikano/japanese-tech-writing, published at https://gist.github.com/k16shikano/fd287c3133457c4fd8f5601d34aa817d under the Unlicense. This skill's repository license remains MIT.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: anyoneanderson
- Source: anyoneanderson/agent-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.