system-architect
Skill41 starsChanged 8 months agoMITView on GitHub
Acts as a Senior System Architect to design robust, scalable, and maintainable software architectures. Enforces industry standards (PEP 8 for Python, ESLint for JS/TS), modular design, and security best practices. Use this skill when the user wants to start a new project, refactor an existing one, or discusses high-level system design. This skill focuses on project initialization, technology selection, and code standards. 支持中文触发:启动新项目、重构现有项目、系统设计、技术选型、代码标准、项目初始化、架构设计。
- Reads credentials
- Installs packages
- Commits and pushes
32 other projects use a version of this, 3 of them edited.
Adopted by
Most recently taken up by
- TehseenTech/manus-skillstheir own version, first seen Nov 8, 2026
- letscooktech-studio/ai-engineering-arsenaltheir own version, first seen Nov 8, 2026
- crankyjediii/vibecrafttheir own version, first seen Nov 8, 2026
- letscooktech-studio/outcomelabtheir own version, first seen Nov 8, 2026
- nizaalkhot/skillstheir own version, first seen Nov 1, 2026
- kcayme/k-agentstheir own version, first seen Nov 1, 2026
Used with
Projects with it also use database-architect, webapp-testing and 4 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
xfstudioSkilldatabase-architect
Expert database architect specializing in data layer design from
Also in 3 projects that use this
JetBrainsSkillwebapp-testing
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
Also in 4 projects that use this
Microsoft AzureSkillgit-workflow
Squad branching model: dev-first workflow with insiders preview channel
Also in 3 projects that use this
BlockSkillfrontend-design
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
Also in 5 projects that use this
MicrosoftSkillmcp-builder
Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).
Also in 3 projects that use this
SentrySkillskill-creator
Create new agent skills following the Agent Skills specification. Use when asked to "create a skill", "add a new skill", "write a skill", "make a skill", "build a skill", or scaffold a new skill with SKILL.md. Guides through requirements, writing, registration, and verification.
Also in 5 projects that use this
Other versions32 projects use a version of this.
Word for word · 0
None found.
Edited · 3
- wonderslife/pdd-skills-v3★ 1599% same
- Fahrnetic/engineering-agent-skill-workflow★ 219% same
- Tgoldi/claude-skills★ 021% same
Wrote their own version · 29
- nahisaho/MUSUBI★ 74same name
- NatureBlueee/Nature-use-skills★ 39same name
- georgekhananaev/claude-skills-vault★ 28same name
- boxclawai/skills★ 9same name
- letscooktech-studio/ai-engineering-arsenal★ 7same name
- letscooktech-studio/outcomelab★ 7same name
- vignesh2027/Claude-Agentic-Skills2.0-version★ 6same name
- catch-the-wave/fullstack-ios-claude-skills★ 5same name
- Kshitijpalsinghtomar/depth-skills★ 5same name
- Data-Wise/craft★ 4same name
19 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository24 other files it gives its agents.
- expert-activitiSkill
- expert-arch-enforcerSkill
- expert-auto-refactorSkill
- expert-code-qualitySkill
- expert-entropy-auditorSkill
- expert-mysqlSkill
- expert-ruoyiSkill
- official-doc-writerSkill
- pdd-baSkill
- pdd-code-reviewerSkill
- pdd-doc-changeSkill
- pdd-doc-gardenerSkill
- pdd-entropy-reductionSkill
- pdd-extract-featuresSkill
- pdd-generate-specSkill
- pdd-implement-featureSkill
- pdd-mainSkill
- pdd-pr-batchSkill
- pdd-pr-createSkill
- pdd-pr-mergeSkill
- pdd-pr-reviewSkill
- pdd-verify-featureSkill
- software-architectSkill
- software-engineerSkill
The file
We split this skill into the rules it gives an agent
6 rules. 0 are common, 6 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 28 edited versions we read keep these.
6
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 506
When selecting technologies or making architectural decisions, follow this process:
- Distinctive: line 515
Consider build vs buy vs open source
- Distinctive: line 569
Security First: All decisions prioritize security
- Distinctive: line 571
Minimization: Follow YAGNI (You Aren't Gonna Need It) principle
- Distinctive: line 572
Containerization: Use Docker by default for deployment
- Distinctive: line 607
Must provide clear documentation and configuration templates
“Common” is measured: kept by at least 6 in 10 of the 28 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
System Architect
Overview
This skill serves as a Technical Lead role, responsible for:
- Project scaffolding and structure setup
- Technology stack decision-making
- Code standards enforcement
- Documentation template creation
Note: This is a high-level system architecture skill focused on project initialization and technology stack selection. For detailed architecture design, please use software-architect.
Directory Structure
system-architect/
├── SKILL.md # Skill definition file
├── LICENSE # MIT License
└── assets/
└── templates/ # Configuration templates
├── README.md
├── ARCHITECTURE.md
└── .editorconfigTrigger Conditions
Auto-trigger:
- Starting a new project or application
- Selecting technology stack (language, framework, database)
- Setting up project structure and scaffolding
- Defining code standards and linting rules
- Creating project documentation (README, ARCHITECTURE)
- Refactoring project structure
Manual trigger:
- User inputs commands like
/system-architect,/new-project,/setup, etc.
Core Capabilities
1. Technology Stack Selection Guide
1.1 Backend Technologies
| Technology | Use Cases | Pros | Cons |
| Python (FastAPI) | API, microservices, ML/AI | Rapid development, async support, type hints | GIL limits CPU-intensive tasks |
| Python (Django) | Full-featured web applications | Batteries included, Admin panel, ORM | Monolithic, slower for APIs |
| Java (Spring Boot) | Enterprise applications | Mature ecosystem, strong typing | Verbose, heavyweight |
| Node.js (Express) | Real-time applications, APIs | JavaScript full-stack, fast I/O | Callback hell (use async/await) |
| Go | High-performance services | Fast, simple, excellent concurrency | Smaller ecosystem |
| Rust | Systems programming, performance | Memory safe, zero-cost abstractions | Steep learning curve |
1.2 Frontend Technologies
| Technology | Use Cases | Pros | Cons |
| React | SPA, complex UI | Large ecosystem, flexible | Need to choose libraries |
| Vue.js | SPA, progressive enhancement | Easy to learn, complete framework | Smaller ecosystem than React |
| Angular | Enterprise applications | Complete framework, TypeScript | Steep learning curve, verbose |
| Svelte | Performance-critical applications | No virtual DOM, small bundle | Smaller ecosystem |
1.3 Databases
| Database | Use Cases | Pros | Cons |
| PostgreSQL | Relational data, ACID required | ACID, advanced features, JSONB | Vertical scaling limits |
| MySQL | Simple web applications | Widely adopted, easy setup | Fewer advanced features |
| MongoDB | Document storage, flexible schema | Flexible schema, horizontal scaling | No ACID transactions before 4.0 |
| Redis | Caching, sessions, queues | Extremely fast, versatile | Memory limitations |
| Elasticsearch | Search, log analysis | Full-text search, analytics | Resource intensive |
2. Project Structure Templates
2.1 Python Project Structure
project-name/
├── src/
│ ├── __init__.py
│ ├── main.py # Application entry point
│ ├── config/ # Configuration management
│ │ ├── __init__.py
│ │ ├── settings.py
│ │ └── logging.py
│ ├── api/ # API endpoints
│ │ ├── __init__.py
│ │ ├── routes/
│ │ └── dependencies.py
│ ├── services/ # Business logic
│ │ ├── __init__.py
│ │ └── user_service.py
│ ├── models/ # Data models
│ │ ├── __init__.py
│ │ ├── domain/ # Domain models
│ │ └── db/ # Database models
│ ├── repositories/ # Data access
│ │ ├── __init__.py
│ │ └── user_repository.py
│ └── utils/ # Utility functions
│ ├── __init__.py
│ └── helpers.py
├── tests/
│ ├── __init__.py
│ ├── unit/
│ ├── integration/
│ └── conftest.py
├── docs/
│ ├── README.md
│ └── ARCHITECTURE.md
├── scripts/
│ └── setup.sh
├── .env.example
├── .gitignore
├── requirements.txt
├── requirements-dev.txt
├── pyproject.toml
├── Dockerfile
├── docker-compose.yml
└── README.md2.2 Node.js/TypeScript Project Structure
project-name/
├── src/
│ ├── index.ts # Application entry point
│ ├── config/ # Configuration
│ │ ├── index.ts
│ │ └── database.ts
│ ├── routes/ # API routes
│ │ ├── index.ts
│ │ └── userRoutes.ts
│ ├── controllers/ # Request handlers
│ │ └── userController.ts
│ ├── services/ # Business logic
│ │ └── userService.ts
│ ├── models/ # Data models
│ │ └── User.ts
│ ├── repositories/ # Data access
│ │ └── userRepository.ts
│ ├── middleware/ # Express middleware
│ │ ├── auth.ts
│ │ └── errorHandler.ts
│ ├── types/ # TypeScript types
│ │ └── index.ts
│ └── utils/ # Utility functions
│ └── helpers.ts
├── tests/
│ ├── unit/
│ ├── integration/
│ └── setup.ts
├── docs/
│ ├── README.md
│ └── ARCHITECTURE.md
├── scripts/
│ └── setup.sh
├── .env.example
├── .gitignore
├── package.json
├── tsconfig.json
├── eslint.config.js
├── Dockerfile
├── docker-compose.yml
└── README.md3. Configuration Templates
3.1 .editorconfig
# EditorConfig - https://editorconfig.org
root = true
[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
[*.{py,js,ts,json,yml,yaml}]
indent_style = space
indent_size = 2
[*.md]
trim_trailing_whitespace = false
[Makefile]
indent_style = tab3.2 Python pyproject.toml
[tool.poetry]
name = "project-name"
version = "0.1.0"
description = "Project description"
authors = ["Your Name <your.email@example.com>"]
[tool.poetry.dependencies]
python = "^3.10"
fastapi = "^0.104.0"
uvicorn = "^0.24.0"
sqlalchemy = "^2.0.0"
pydantic = "^2.0.0"
python-dotenv = "^1.0.0"
[tool.poetry.dev-dependencies]
pytest = "^7.4.0"
pytest-cov = "^4.1.0"
black = "^23.10.0"
flake8 = "^6.1.0"
mypy = "^1.6.0"
[tool.black]
line-length = 100
target-version = ['py310']
[tool.mypy]
python_version = "3.10"
warn_return_any = true
warn_unused_configs = true
disallow_untyped_defs = true
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"3.3 TypeScript tsconfig.json
{
"compilerOptions": {
"target": "ES2022",
"module": "NodeNext",
"moduleResolution": "NodeNext",
"lib": ["ES2022"],
"outDir": "./dist",
"rootDir": "./src",
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"resolveJsonModule": true,
"declaration": true,
"declarationMap": true,
"sourceMap": true,
"noImplicitAny": true,
"strictNullChecks": true,
"strictFunctionTypes": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": true
},
"include": ["src/**/*"],
"exclude": ["node_modules", "dist", "tests"]
}3.4 ESLint Configuration
import js from '@eslint/js';
import ts from 'typescript-eslint';
import prettier from 'eslint-config-prettier';
export default [
js.configs.recommended,
...ts.configs.recommended,
prettier,
{
rules: {
'@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }],
'@typescript-eslint/explicit-function-return-type': 'off',
'@typescript-eslint/no-explicit-any': 'warn',
'no-console': ['warn', { allow: ['warn', 'error'] }],
},
},
];4. Documentation Templates
4.1 README Template
# Project Name
Brief description of what this project does.
## Features
- Feature 1
- Feature 2
- Feature 3
## Quick Start
### Prerequisites
- Python 3.10+ / Node.js 18+
- Docker and Docker Compose
- PostgreSQL 14+ (if not using Docker)
### Installation
\`\`\`bash
# Clone the repository
git clone https://github.com/your-org/project-name.git
cd project-name
# Install dependencies
pip install -r requirements.txt # Python
# or
npm install # Node.js
# Set up environment variables
cp .env.example .env
# Edit .env with your configuration
# Run the application
python src/main.py # Python
# or
npm run dev # Node.js
\`\`\`
### Docker Setup
\`\`\`bash
# Build and run with Docker Compose
docker-compose up -d
# View logs
docker-compose logs -f
# Stop services
docker-compose down
\`\`\`
## Project Structure
\`\`\`
project-name/
├── src/ # Source code
│ ├── api/ # API endpoints
│ ├── services/ # Business logic
│ ├── models/ # Data models
│ └── repositories/ # Data access
├── tests/ # Test files
├── docs/ # Documentation
└── scripts/ # Utility scripts
\`\`\`
## API Documentation
API documentation is available at `/docs` when running the application.
## Testing
\`\`\`bash
# Run all tests
pytest # Python
# or
npm test # Node.js
# Run with coverage
pytest --cov=src # Python
# or
npm run test:coverage # Node.js
\`\`\`
## Contributing
1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.4.2 ARCHITECTURE Template
# Architecture Overview
## System Components
### Component Diagram
\`\`\`mermaid
graph TB
Client[Client Application]
API[API Layer]
Service[Service Layer]
Repository[Repository Layer]
DB[(Database)]
Cache[(Redis Cache)]
Client --> API
API --> Service
Service --> Repository
Repository --> DB
Service --> Cache
\`\`\`
## Data Flow
1. **Request Flow**: Client → API → Service → Repository → Database
2. **Response Flow**: Database → Repository → Service → API → Client
3. **Caching**: Service checks Cache before Repository
## Technology Stack
| Component | Technology | Justification |
|-----------|------------|---------------|
| Backend | FastAPI/Express | Fast, async, type-safe |
| Database | PostgreSQL | ACID compliance, JSONB support |
| Cache | Redis | Fast in-memory caching |
| Container | Docker | Consistent deployment |
## Key Decisions
### Decision 1: Use PostgreSQL for Primary Database
**Context**: Need reliable data storage for financial transactions.
**Decision**: PostgreSQL with SQLAlchemy ORM.
**Consequences**:
- ✅ ACID compliance
- ✅ Strong ecosystem
- ❌ Vertical scaling limits
**Alternatives Considered**: MySQL (fewer features), MongoDB (no ACID)
### Decision 2: Layered Architecture
**Context**: Need maintainable codebase with clear separation of concerns.
**Decision**: Three-layer architecture (API → Service → Repository).
**Consequences**:
- ✅ Clear separation of concerns
- ✅ Easy to test
- ❌ More files to maintain
## Security
- **Authentication**: JWT tokens with refresh mechanism
- **Authorization**: Role-based access control (RBAC)
- **Data Protection**: Encryption at rest and in transit
- **Input Validation**: Pydantic/Joi validation on all inputs
## Scalability
- **Horizontal Scaling**: Stateless services behind load balancer
- **Database Scaling**: Read replicas for read-heavy workloads
- **Caching**: Redis for frequently accessed data
- **Async Processing**: Background jobs for long-running tasks
## Deployment
- **Containerization**: Docker for consistent environments
- **Orchestration**: Kubernetes for production (optional)
- **CI/CD**: GitHub Actions for automated deployment
- **Monitoring**: Prometheus + Grafana for metrics
## Development Workflow
1. **Local Development**: Docker Compose for all dependencies
2. **Testing**: Unit tests + integration tests + E2E tests
3. **Code Review**: Required for all changes
4. **Deployment**: Automated via CI/CD pipeline5. Decision Framework
When selecting technologies or making architectural decisions, follow this process:
- Understand Requirements
- Functional requirements
- Non-functional requirements (performance, scalability, security)
- Constraints (budget, team skills, timeline)
- Generate Options
- List at least 3 alternatives
- Consider build vs buy vs open source
- Evaluate Trade-offs
- Performance vs maintainability
- Cost vs features
- Learning curve vs productivity
- Make Decision
- Document the decision
- Document the rationale
- Document alternatives considered
- Validate
- Prototype if necessary
- Get team buy-in
- Plan migration if needed
6. Collaboration Table
6.1 Collaboration with Other Skills
| Collaborating Skill | Collaboration Mode | Description |
| software-architect | Delegate | After project initialization, delegate detailed architecture design |
| software-engineer | Delegate | Delegate specific feature implementation |
| expert-code-quality | Consult | Consult before establishing code standards |
| pdd-main | Sequential | Use PDD framework process for new projects |
| expert-mysql | Consult | Consult before database selection |
| expert-ruoyi | Consult | Consult when using RuoYi framework for Java projects |
6.2 Collaboration Workflow
New Project Startup
↓
Invoke system-architect
↓
Project scaffolding + Technology stack selection
↓
(If detailed architecture design needed) → Invoke software-architect
↓
(If code implementation needed) → Invoke software-engineer
↓
(If code quality check needed) → Invoke expert-code-quality
↓
Project initialization complete7. Rules
- Security First: All decisions prioritize security
- Scalability: Design for growth from the start
- Minimization: Follow YAGNI (You Aren't Gonna Need It) principle
- Containerization: Use Docker by default for deployment
- Linting: Enforce strict code quality standards
8. Quick Diagnosis Mode
8.1 Technology Stack Quick Diagnosis
| Problem Symptoms | Suggested Technology |
| Rapid API development | FastAPI (Python) / Express (Node.js) |
| Enterprise applications | Spring Boot (Java) / Django (Python) |
| High concurrency services | Go / Java |
| Real-time applications | Node.js / Socket.io |
| Microservices architecture | Go / Java / Node.js |
| Data analysis | Python (pandas, numpy) |
| AI/ML integration | Python (TensorFlow, PyTorch) |
8.2 Project Structure Quick Diagnosis
| Scenario | Suggested Structure |
| Monolithic application | Layered structure (api/service/repo) |
| Microservices | Independent service directories + shared libraries |
| Event-driven | Directories organized by domain/event type |
| Hexagonal architecture | core/ports/adapters |
9. Guardrails
- Technology stack selection must consider existing team skills
- Project structure must follow industry standards and best practices
- Security must be a default consideration
- Must provide clear documentation and configuration templates
- Decisions must include trade-off analysis and alternatives
Version History
v2.0 (2026-03-21)
- Unified to English descriptions
- Added collaboration table to clarify relationships with other skills
- Enhanced quick diagnosis mode
- Added decision framework
- Standardized output format
v1.0 (Initial version)
- Basic project scaffolding templates
- Technology stack selection guide
- Configuration templates
Remember: The system architect's responsibility is to lay a solid foundation for the project. Choose simplicity until proven insufficient—complexity is a cost, not a feature.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

