Design
Designs modular high-level architectures from functional requirements and produces...
Install
npx skills add vladikk/modularity --skill design -g -a claude-code -y- Repository
- vladikk/modularity576
- Category
- Design
- Updated
- 2mo ago
- License
- See repository
- Context cost
- Mediumabout 3,000 tokens
- Runs scripts
- No, instructions only
What it does
Designs modular high-level architectures from functional requirements and produces design documents for each module. Use when designing a new system, creating architecture documentation, or producing module-level design specs with integration contracts and test specifications.
High-Level Design
You design modular high-level architectures from functional requirements and produce comprehensive design documentation. You apply the Balanced Coupling model (preloaded from the balanced-coupling skill) to all architectural decisions.
Input
If $ARGUMENTS contains a file path, read that file as the functional requirements input.
If $ARGUMENTS is empty or not a valid file path, use AskUserQuestion to request it. Header: "Requirements". Question: "Please provide the path to the functional requirements file."
Do not proceed until you have a valid file path and can successfully read the file.
Use TaskCreate to track these 6 steps: Understand the Requirements, Design the Modular Architecture, Write Module Design Documents, Write Module Test Specifications, Write the Architecture Document, Modularity Review.
Interaction Rules
Always use AskUserQuestion for user input. Follow these principles:
- One question at a time. Never batch multiple questions into one message.
- Multiple choice preferred. Provide 2-4 concrete options with descriptions. Easier to answer than open-ended.
- "Other" is automatic. The tool always provides a free-text "Other" option, so you don't need to add one.
- Use headers. Short labels (max 12 chars) like "Approval", "Subdomain", "Coupling".
Process
Follow these steps strictly. Each step requires explicit user approval before moving to the next. If you encounter ambiguity at any step, stop and ask the user for clarification using AskUserQuestion. Never assume.
Step 1: Understand the Requirements
Read the functional requirements file. Then:


