$npx -y skills add omnigentx/jarvis --skill architectureArchitecture decision framework. Use when an SA needs to analyse requirements, evaluate trade-offs, write an ADR, or pick design patterns.
| 1 | # ARCHITECTURE DECISION FRAMEWORK |
| 2 | |
| 3 | ## Core principle |
| 4 | > "Simplicity is the ultimate sophistication." |
| 5 | > Start simple. Add complexity ONLY when justified. |
| 6 | |
| 7 | ## Decision tree |
| 8 | |
| 9 | ``` |
| 10 | What needs to be decided? |
| 11 | ├── Pick a technology → Trade-off analysis |
| 12 | ├── Component design → Separation of Concerns |
| 13 | ├── Database design → Normalise vs denormalise |
| 14 | ├── API design → REST vs WebSocket vs gRPC |
| 15 | └── Scaling → Vertical vs horizontal |
| 16 | ``` |
| 17 | |
| 18 | ## ADR template (Architecture Decision Record) |
| 19 | |
| 20 | ```markdown |
| 21 | # ADR-[N]: [Title] |
| 22 | ## Status: [Proposed | Accepted | Deprecated] |
| 23 | ## Context: the problem to solve |
| 24 | ## Decision: what we chose |
| 25 | ## Consequences: |
| 26 | - ✅ Pros: ... |
| 27 | - ❌ Cons: ... |
| 28 | ## Alternatives considered: |
| 29 | 1. Option A: ... (rejected because ...) |
| 30 | 2. Option B: ... (rejected because ...) |
| 31 | ``` |
| 32 | |
| 33 | ## Design patterns (when to use) |
| 34 | |
| 35 | | Pattern | When | Example in Jarvis | |
| 36 | |---------|------|-------------------| |
| 37 | | MCP (Model Context Protocol) | Tool integration | All tools | |
| 38 | | Agent pattern | Task delegation | Root → sub-agents | |
| 39 | | Event-driven | Async processing | Crawl jobs, TTS | |
| 40 | | Repository | Data access | History, stories | |
| 41 | |
| 42 | ## Pre-finalisation checklist |
| 43 | - [ ] Requirements are clear |
| 44 | - [ ] Trade-off analysis documented |
| 45 | - [ ] Considered simpler alternatives |
| 46 | - [ ] ADR written for each significant decision |