From with-me
Transforms raw interview data into structured requirement specifications, detects ambiguities, contradictions, gaps, and suggests architecture, risks, and testing strategies.
npx claudepluginhub h315uk3/symbiosis --plugin with-meThis skill is limited to using the following tools:
This skill transforms raw interview data into structured, actionable requirement specifications.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
This skill transforms raw interview data into structured, actionable requirement specifications.
Use this skill after completing a requirement elicitation interview (e.g., via /good-question) when you have:
Do not use this skill:
Transform raw interview data into a formal specification organized by:
Identify and report:
Provide:
PREFERRED: Dimension Data JSON (from /good-question)
If invoked after a /good-question interview, provide dimension data in JSON format:
{
"purpose": {
"answered": true,
"content": "English summary of purpose answers with examples",
"examples": 2,
"contradictions": false
},
"data": {
"answered": true,
"content": "English summary of data answers with examples",
"examples": 1,
"contradictions": false
},
"behavior": {
"answered": true,
"content": "English summary of behavior answers with examples",
"examples": 3,
"contradictions": false
},
"constraints": {
"answered": true,
"content": "English summary of constraints answers with examples",
"examples": 1,
"contradictions": false
},
"quality": {
"answered": true,
"content": "English summary of quality answers with examples",
"examples": 0,
"contradictions": false
}
}
CRITICAL: Content fields MUST be in English for uncertainty calculation to work correctly.
ALTERNATIVE: Raw Interview Data
For ad-hoc analysis without /good-question, provide raw interview data:
## Interview Transcript
User said: "I want to build a dashboard..."
Question 1: What problem does this solve?
Answer: "Users need to see their metrics..."
Question 2: What data is involved?
Answer: "User activity logs, API call counts..."
[etc.]
Or as structured notes:
## Collected Information
Purpose: Users need visibility into system metrics
Data: Time-series data from monitoring APIs
Behavior: Real-time updates every 30 seconds
Constraints: Must work in mobile browsers
Quality: No specific test requirements mentioned
# Requirement Specification: [Project Name]
## 1. Purpose & Context
### Problem Statement
[Clear description of the problem being solved]
### Stakeholders
[Who will use this and how they benefit]
### Success Criteria
[What defines a successful implementation]
---
## 2. Functional Requirements
### Data Requirements
#### Inputs
- **Source**: [Where data comes from]
- **Format**: [Data structure and types]
- **Volume**: [Expected scale]
- **Validation**: [Required validations]
#### Outputs
- **Destination**: [Where results go]
- **Format**: [Output structure]
- **Transformations**: [Processing applied]
### Behavioral Requirements
#### Primary Flow
1. [Step-by-step description]
2. [Decision points and conditions]
3. [State changes]
#### Alternative Flows
- **Scenario**: [Alternative path description]
- **Trigger**: [What causes this path]
#### Edge Cases
- [Edge case 1]
- [Edge case 2]
---
## 3. Non-Functional Requirements
### Performance
- [Latency requirements]
- [Throughput requirements]
- [Resource constraints]
### Security
- [Authentication requirements]
- [Authorization rules]
- [Data protection needs]
### Compatibility
- [Platform requirements]
- [Browser/version support]
- [Dependency constraints]
---
## 4. Quality Requirements
### Testing Strategy
- **Unit Tests**: [What to test at unit level]
- **Integration Tests**: [What to test at integration level]
- **User Acceptance**: [How users will validate]
### Acceptance Criteria
- [ ] [Specific measurable criterion 1]
- [ ] [Specific measurable criterion 2]
---
## 5. Implementation Considerations
### Recommended Architecture
[Suggested technical approach with rationale]
### Technology Stack
- **Required**: [Must-use technologies]
- **Recommended**: [Suggested technologies]
- **Avoid**: [Technologies to avoid and why]
### Key Design Decisions
1. **Decision**: [What needs to be decided]
- **Options**: [Available choices]
- **Recommendation**: [Suggested choice with reasoning]
---
## 6. Risks & Challenges
### Technical Risks
- **Risk**: [Description]
- **Impact**: [Severity]
- **Mitigation**: [How to address]
### Requirement Risks
- **Risk**: [Ambiguity or gap]
- **Impact**: [Effect on implementation]
- **Resolution**: [How to clarify]
---
## 7. Open Questions
Questions that require clarification before or during implementation:
1. [Question about unclear aspect]
- **Why it matters**: [Impact on implementation]
- **Suggested resolution**: [How to resolve]
2. [Next question]
---
## 8. Next Steps
Recommended actions:
1. **Immediate**: [What to do right away]
2. **Before Implementation**: [Prerequisites]
3. **During Implementation**: [Ongoing considerations]
Group collected data by the five dimensions:
Scan for:
Based on the requirements:
Consider:
Input:
User wants to build a file upload feature with progress tracking.
- Files up to 1GB
- Must show upload progress
- Support multiple simultaneous uploads
- Works on mobile
- Mentioned "secure" but didn't specify details
Analysis Output:
# Requirement Specification: File Upload Feature
## 1. Purpose & Context
### Problem Statement
Users need to upload large files (up to 1GB) with visibility into upload progress.
### Stakeholders
- End users uploading files from desktop and mobile browsers
- Backend system receiving and processing uploads
### Success Criteria
- Files up to 1GB upload successfully
- Progress is visible throughout upload
- Multiple uploads can occur concurrently
- Works on mobile browsers
---
## 2. Functional Requirements
### Data Requirements
#### Inputs
- **Source**: User file selection (browser file input)
- **Format**: Binary files, any MIME type, max 1GB
- **Validation**: File size must not exceed 1GB
- **Volume**: Multiple concurrent uploads per user
#### Outputs
- **Destination**: Server storage endpoint
- **Format**: Uploaded file plus metadata (filename, size, MIME type)
- **Confirmation**: Upload completion status
### Behavioral Requirements
#### Primary Flow
1. User selects file(s) to upload
2. System validates file size (reject if >1GB)
3. Upload begins with chunking for progress tracking
4. Progress indicator updates as chunks complete
5. Upload completes, user receives confirmation
#### Alternative Flows
- **Network interruption**: Resume or retry mechanism needed
- **Validation failure**: Clear error message shown
#### Edge Cases
- Upload interrupted mid-transfer
- Multiple uploads competing for bandwidth
- Mobile network transitions (WiFi to cellular)
---
## 3. Non-Functional Requirements
### Performance
- Progress updates at least every 2-3 seconds
- Multiple uploads shouldn't block UI
- Mobile browsers may have memory constraints
### Security
⚠️ **AMBIGUITY DETECTED**: "Secure" was mentioned but not specified.
**Needs clarification:**
- Authentication required before upload?
- File type restrictions (prevent malicious files)?
- HTTPS required?
- Virus scanning?
### Compatibility
- Must work in mobile browsers (iOS Safari, Android Chrome)
- Desktop browser support (Chrome, Firefox, Safari, Edge)
---
## 4. Quality Requirements
### Testing Strategy
- **Unit Tests**: Chunking logic, progress calculation
- **Integration Tests**: Upload flow end-to-end
- **Load Tests**: Multiple concurrent uploads
- **Mobile Tests**: Network interruption handling
### Acceptance Criteria
- [ ] 1GB file uploads successfully
- [ ] Progress bar updates smoothly
- [ ] 3 simultaneous uploads work without issues
- [ ] Feature works on iOS Safari and Android Chrome
---
## 5. Implementation Considerations
### Recommended Architecture
- **Chunked uploads**: Split large files into chunks (5-10MB) for progress tracking and resumability
- **Background workers**: Use Web Workers to avoid blocking main thread
- **Upload queue**: Manage concurrent uploads to prevent resource exhaustion
### Technology Stack
- **Recommended**:
- XMLHttpRequest or Fetch API with upload progress events
- File API for client-side chunking
- Server: Multipart upload or chunked transfer encoding
- **Avoid**:
- Simple form POST (no progress tracking)
### Key Design Decisions
1. **Chunking Strategy**
- **Options**: Fixed chunk size vs. adaptive based on network speed
- **Recommendation**: Fixed 5MB chunks for simplicity
2. **Resume Mechanism**
- **Options**: Store upload state server-side vs. client-side
- **Recommendation**: Server-side with upload ID for reliability
---
## 6. Risks & Challenges
### Technical Risks
- **Mobile memory limits**: 1GB file may exceed mobile browser memory
- **Mitigation**: Stream chunks without loading entire file
- **Network instability**: Mobile uploads prone to interruption
- **Mitigation**: Implement resumable uploads
### Requirement Risks
- **Security underspecified**: Unknown threat model
- **Resolution**: Clarify authentication and file validation needs
---
## 7. Open Questions
1. **What security measures are required?**
- Why it matters: Affects authentication, validation, scanning
- Suggested resolution: Ask about user authentication and file type restrictions
2. **What happens after upload completes?**
- Why it matters: May need webhooks, notifications, or processing triggers
- Suggested resolution: Clarify post-upload workflow
3. **What's the expected concurrent upload limit per user?**
- Why it matters: Affects queue design and resource allocation
- Suggested resolution: Define reasonable upper bound (e.g., 5 uploads)
---
## 8. Next Steps
1. **Immediate**: Clarify security requirements (authentication, file validation)
2. **Before Implementation**: Decide on chunking and resume strategy
3. **During Implementation**: Test on actual mobile devices early
This skill succeeds when: