Agent skill
technical-spec-writer
Creates detailed technical specifications including architecture, data models, APIs, and technology choices. Use when you need to document technical implementation details, system design, or API contracts. Provides concrete technical guidance for implementation.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/technical-spec-writer
SKILL.md
Technical Specification Writer Skill
Instructions
- Analyze requirements and determine technical approach
- Design system architecture and components
- Define data models and schemas
- Specify API contracts (endpoints, request/response formats)
- Identify technology stack and libraries
- Document integration points and interfaces
- Define configuration and deployment requirements
- Include code examples and patterns when helpful
Examples
Input: "User authentication system" Output:
## Technical Specifications
### Architecture
- **Pattern**: RESTful API with JWT authentication
- **Framework**: Express.js (Node.js)
- **Database**: PostgreSQL with Prisma ORM
- **Authentication**: JWT tokens stored in HTTP-only cookies
### Data Models
#### User Model
```typescript
{
id: string (UUID, primary key)
email: string (unique, indexed)
passwordHash: string (bcrypt, 60 chars)
createdAt: DateTime
updatedAt: DateTime
emailVerified: boolean
}
PasswordResetToken Model
{
id: string (UUID, primary key)
userId: string (foreign key -> User.id)
token: string (random 32-char hex, indexed)
expiresAt: DateTime
used: boolean
createdAt: DateTime
}
API Endpoints
POST /api/auth/register
Request:
{
"email": "[email protected]",
"password": "SecurePass123!"
}
Response (201):
{
"user": {
"id": "uuid",
"email": "[email protected]",
"emailVerified": false
}
}
Errors:
- 400: Invalid email format or weak password
- 409: Email already exists
POST /api/auth/login
Request:
{
"email": "[email protected]",
"password": "SecurePass123!"
}
Response (200):
{
"user": {
"id": "uuid",
"email": "[email protected]"
},
"token": "jwt.token.here"
}
Errors:
- 401: Invalid credentials
Technology Stack
- Runtime: Node.js 18+
- Framework: Express.js 4.x
- Database: PostgreSQL 14+
- ORM: Prisma 5.x
- Authentication: jsonwebtoken, bcrypt
- Validation: zod
- Testing: Jest, Supertest
Security Considerations
- Passwords hashed with bcrypt (10+ rounds)
- JWT tokens expire after 24 hours
- Password reset tokens expire after 1 hour
- Rate limiting: 5 requests/minute for auth endpoints
- CORS configured for specific origins only
## Format Guidelines
- Use clear section headers
- Include code examples for data models and APIs
- Specify exact versions for libraries when important
- Document error responses and status codes
- Include security and performance considerations
- Use standard formats (OpenAPI for APIs, ERD for data models)
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?