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.
Stars
163
Forks
31
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:
markdown
## 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
typescript
{
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:
json
{
"email": "user@example.com",
"password": "SecurePass123!"
}
Response (201):
json
{
"user": {
"id": "uuid",
"email": "user@example.com",
"emailVerified": false
}
}
Errors:
- 400: Invalid email format or weak password
- 409: Email already exists
POST /api/auth/login
Request:
json
{
"email": "user@example.com",
"password": "SecurePass123!"
}
Response (200):
json
{
"user": {
"id": "uuid",
"email": "user@example.com"
},
"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)
Didn't find tool you were looking for?