technical-requirements-standards
Skill1 starsChanged 8 days agoMITView on GitHub
Standards for Technical Requirements Documents (TRD) and Software Requirements Specifications (SRS). Use when specifying what a system must do in technically precise, testable, and traceable terms. Trigger on: "write a TRD", "technical requirements", "software requirements", "system requirements", "SRS", "interface specifications", "what the system shall do", or any requirement document that needs verification methods, traceability IDs, and testable acceptance criteria. For a dedicated document covering performance, availability, security, scalability, compliance, or DR targets, use non-functional-requirements-standards instead.
We split this skill into the rules it gives an agent
8 rules. About 0 are common, 7 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈7
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 16
Use this skill when defining or reviewing technical requirements that engineering teams must implement and verify.
- Very specific: line 51
Use shall for mandatory requirements.
- Distinctive: line 53
Keep statements atomic, clear, active, and objectively verifiable.
- Distinctive: line 54
Avoid hidden design choices unless the design constraint itself is a requirement.
- Distinctive: line 55
Use measurable criteria instead of vague quality adjectives.
- Distinctive: line 59
Every requirement should identify or support:
- Distinctive: line 109
Check each requirement for clarity, uniqueness, and testability.
- Distinctive: line 111
Verify traceability and verification approach.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Technical Requirements Standards
Use this skill when defining or reviewing technical requirements that engineering teams must implement and verify. A TRD or SRS should be specific enough to build and test against, without collapsing into solution code or architecture rationale.
Core Boundaries
- BRD / PRD define business or product intent
- FSD / FRD defines detailed functional behavior
- NFR defines dedicated quality-attribute targets (performance, availability, security, scalability, compliance, DR) — use that skill when NFRs need their own document
- TRD / SRS define the technical requirements, interfaces, constraints, and verification expectations
- ADR / SAD define technical decisions and architecture structure
Required Inputs
- Source business or product requirements
- Technical context, assumptions, and dependencies
- Interface and data expectations
- Target platforms, constraints, and compliance obligations
- Verification expectations and downstream testing needs
Recommended Structure
- Document Control
- Purpose and Scope
- System Overview
- Assumptions, Dependencies, and Constraints
- Specific Requirements
- Interfaces and Data Requirements
- Verification and Traceability
- Approval and Change Control
Writing Rules
- Use
shallfor mandatory requirements. - Give every requirement a unique identifier.
- Keep statements atomic, clear, active, and objectively verifiable.
- Avoid hidden design choices unless the design constraint itself is a requirement.
- Use measurable criteria instead of vague quality adjectives.
Verification and Traceability
Every requirement should identify or support:
- upward traceability to business or product need
- downward traceability to design, implementation, and tests
- a verification method such as test, analysis, demonstration, or inspection
Verification Method Selection
| Method | When to Use | Example |
| Test | Behavior can be exercised programmatically or manually | "shall authenticate in ≤ 200ms" → load test |
| Analysis | Behavior is proven through calculation or modelling | Memory capacity, bandwidth estimate |
| Demonstration | Behavior is shown by operating the system | UI accessibility, installation procedure |
| Inspection | Behavior is verified by examining code/config/document | Code review, config audit, license check |
Requirement Quality Checklist
Each individual requirement should be:
| Quality | Test | Bad | Good |
| Unambiguous | One interpretation only | "fast response" | "response ≤ 200ms at P95" |
| Testable | Pass/fail verifiable | "good security" | "shall pass OWASP Top 10 scan with no critical findings" |
| Atomic | One statement, one thing | "login and log out" | Separate TR-001 and TR-002 |
| Traceable | Links to source need | Orphan requirement | TR-042 carries Trace: BR-007 |
| Consistent | No contradiction with others | Conflicting timeouts | Reconcile in constraints section |
House IDs and traceability
TRD requirements use the house ID grammar from ../references/lifecycle.md: TR-NNN,
sequential, zero-padded to 3 (TR-004). Every TR carries a Trace: line to its upstream
BR-NNN/PRD-NNN/FR-NNN source (Engineering-imposed requirements with no business parent
follow lifecycle.md's rule for those); NFRs folded inline into a TRD keep TR-NNN IDs here or
graduate to NFR-NNN in a dedicated NFR document — never both. "What implements TR-004?" must
be answerable by grep -rn "TR-004".
Anti-pattern quick reference
| Anti-Pattern | Problem | Fix |
| Design choice stated as a requirement | "The system shall use Redis" | State the need ("shall respond in ≤50ms"); let architecture pick the mechanism unless the technology itself is the constraint |
| Vague quality adjective | "The system shall be reliable" | Give a measurable target — that belongs in an NFR, not a loose TRD line |
| Untraceable requirement | TR-014 has no link to a BRD/PRD/FSD source | Every requirement traces upward to a business or product need |
| No verification method | Requirement with no way to prove it's met | Assign test, analysis, demonstration, or inspection per requirement |
| Compound requirement | "The system shall authenticate and log every request" | Split into atomic, independently verifiable requirements |
| Requirements frozen too early | Baselined before interfaces/dependencies are known, causing rework | Baseline only after peer and stakeholder review confirms scope is stable |
Review Workflow
- Validate scope and technical context.
- Check each requirement for clarity, uniqueness, and testability.
- Confirm assumptions, interfaces, and constraints are explicit.
- Verify traceability and verification approach.
- Baseline the document only after peer and stakeholder review.
Pre-flight checklist — run before delivering any TRD
- Mandatory requirements use
shall - Every requirement has a unique ID
- Assumptions, dependencies, and constraints are explicit
- Interface and data requirements are not hidden in prose
- Verification method and traceability are addressed
- Approval and change-control expectations are clear
In this repository91 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- goSkill
- json-standardsSkill
- pythonSkill
- rabbitmqSkill
- rSkill
- rustSkill
- code-standardsSkill
- software-architectureSkill
- swiftSkill
- typescript-code-standardsSkill
- architecture-documentation-and-decision-recordsSkill
- business-requirements-standardsSkill
- developer-handoff-standardsSkill
- development-planning-standardsSkill
- document-writer-reviewerSkill
- feature-planning-standardsSkill
- functional-specification-standardsSkill
- non-functional-requirements-standardsSkill
- operations-standardsSkill
- product-requirements-standardsSkill
- documentationSkill
- solution-architecture-standardsSkill
- documenting-codeSkill
- github-circleci-standardsSkill
- graphifySkill
- puml-diagramsSkill
- software-architecture-progressionSkill
- testingSkill
- software-test-specificationSkill
- zeno-councilSkill
- zeno-debugSkill
- zeno-insightSkill
- zenoSkill
- zeno-stackSkill
- zeno-accessibilitySkill
- zeno-angular-developerSkill
- zeno-api-designSkill
- zeno-browser-qaSkill
- zeno-build-resolverSkill
- zeno-codebase-onboardingSkill
- zeno-code-tourSkill
- zeno-comment-analysisSkill
- zeno-config-gcSkill
- zeno-context-budgetSkill
- zeno-context-compactionSkill
- zeno-cost-reportSkill
- zeno-database-migrationsSkill
- zeno-deep-researchSkill
- zeno-deployment-patternsSkill
- zeno-design-systemSkill
- zeno-docker-patternsSkill
- zeno-e2e-testingSkill
- zeno-error-handlingSkill
- zeno-find-skillsSkill
- zeno-frontend-designSkill
- zeno-github-opsSkill
- zeno-git-workflowSkill
- zeno-harness-optimizerSkill
- The first 60 shown.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

