From openlogos
Design technical architecture and select technology stack. Use when product design exists in logos/resources/prd/2-product-design/ but logos/resources/prd/3-technical-plan/1-architecture/ is empty.
How this skill is triggered — by the user, by Claude, or both
Slash command
/openlogos:architecture-designerThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
> Before diving into per-scenario technical implementation, establish the project's technical global view — system architecture, technology selection, deployment topology, and non-functional constraints. Ensure that subsequent sequence diagrams, API designs, and code generation all proceed under consistent architectural constraints.
Before diving into per-scenario technical implementation, establish the project's technical global view — system architecture, technology selection, deployment topology, and non-functional constraints. Ensure that subsequent sequence diagrams, API designs, and code generation all proceed under consistent architectural constraints.
tech_stack field in logos-project.yamlArchitecture design is the bridge from Phase 2 (product design) to Phase 3 (technical implementation). Its inputs come from Phase 1/2, and its outputs influence all subsequent steps in Phase 3:
| Input (from Phase 1/2) | Output (influences subsequent Phase 3 steps) |
|---|---|
| Scenario list and complexity | System boundary definition → sequence diagram participants |
| Non-functional requirements (performance, security) | Technology selection constraints → API design decisions |
| Product interaction type (Web/Mobile/API) | Frontend tech stack → prototype implementation approach |
| Data volume and access patterns | Database selection → DB design |
| Third-party service dependencies (payment, email, etc.) | Integration approach → external participants in sequence diagrams |
Read the following documents to build an overall understanding of the project:
logos-project.yaml: Whether there are initial selections in the current tech_stackKey points to extract:
Choose an architecture pattern based on product complexity:
Simple Projects (personal SaaS, utility products):
Medium Projects (team SaaS, multi-role systems):
Complex Projects (multi-service, high-concurrency, multi-platform):
Draw system architecture diagram using Mermaid:
graph TB
subgraph Frontend
Web[Web App - Next.js]
end
subgraph Backend
API[API Server - Node.js]
Worker[Background Worker]
end
subgraph Data
DB[(PostgreSQL)]
Cache[(Redis)]
S3[Object Storage]
end
subgraph External
Auth[Supabase Auth]
Email[SendGrid]
end
Web -->|REST API| API
API --> DB
API --> Cache
API --> S3
API --> Auth
Worker --> DB
Worker --> Email
Provide selection and rationale for each technology dimension:
| Dimension | Selection | Rationale | Alternatives |
|-----------|-----------|-----------|-------------|
| Language | TypeScript | Unified frontend/backend, type safety | Go (when performance is priority) |
| Frontend Framework | Next.js 15 | SSR + RSC, mature ecosystem | Astro (content sites), Nuxt (Vue ecosystem) |
| Backend Framework | Hono | Lightweight, edge-first, native TS | Express (ecosystem), Fastify (performance) |
| Database | PostgreSQL | Feature-rich, JSONB, RLS | MySQL (simple scenarios) |
| Authentication | Supabase Auth | Out-of-the-box, RLS integration | NextAuth (self-hosted) |
| Deployment | Vercel + Supabase | Zero-ops, auto-scaling | AWS (full control) |
Selection Principles:
Define key non-functional requirements:
Catalog all external service dependencies for the project and determine the isolation strategy for each dependency during orchestration testing. The output of this step directly impacts whether Phase 3 Step 3 (orchestration testing) can be executed smoothly.
Available test strategies:
| Strategy | Description | Typical Scenario |
|---|---|---|
test-api | Test environment provides a backdoor API | Email/SMS verification codes |
fixed-value | Specific test data uses fixed values | Fixed verification code for test phone numbers |
env-disable | Environment variable disables the feature | CAPTCHA, slider verification |
mock-callback | Orchestration actively calls a simulated callback | Payment callbacks, Webhooks |
mock-service | Local mock service as replacement | OAuth Provider |
If the project has no external service dependencies (e.g., a pure CLI tool), this step can be skipped.
Write the confirmed technology selections into the tech_stack field of logos-project.yaml, and write external dependencies and test strategies into the external_dependencies field, ensuring that all subsequent Skills and AI tools can read the unified tech stack and testing conventions.
external_dependencies:
- name: "Email Service"
provider: "SendGrid"
used_in: ["S01-User Registration", "S03-Forgot Password"]
test_strategy: "test-api"
test_config: "GET /api/test/latest-email?to={email}"
logos/resources/prd/3-technical-plan/1-architecture/01-architecture-overview.mdtech_stack and external_dependencies fields in logos-project.yamltech_stack from logos-project.yaml — inaccurate selections will result in unusable generated codeThe following prompts can be copied directly for use with AI:
Help me design the technical architectureBased on the product design, help me make technology selectionsHelp me draw the system architecture diagramHelp me determine the tech stack and update logos-project.yamlnpx claudepluginhub miniidealab/openlogos --plugin openlogosProvides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.